Subscriptions in Pulsar

Subscriptions in Pulsar describe which consumers are consuming data from a topic and how they want to consume that data.

Subscriptions are managed in the broker as a collection of metadata about a topic and its subscribed consumers. This metadata includes:

  • Topic name - which topic the consumer wants data from

  • Subscription name - a string representing a qualified name for the subscription

  • Subscription type - which type of subscription is being used

  • Subscription cursor - a representation of the consumer’s current place in the subscribed topic log

For example, the Pulsar consumer below has a shared subscription starting at the earliest cursor position in my-subscription to my-topic:

pulsarConsumer = pulsarClient.newConsumer(Schema.BYTES)
    .topic("my-topic")
    .subscriptionName("my-subscription")
    .subscriptionType(SubscriptionType.Shared)
    .subscriptionInitialPosition(SubscriptionInitialPosition.Earliest)
    .subscribe();

Read on to use Pulsar’s four types of subscriptions to manage your topic consumption.

Was this helpful?

Give Feedback

How can we improve the documentation?

© 2024 DataStax | Privacy policy | Terms of use

Apache, Apache Cassandra, Cassandra, Apache Tomcat, Tomcat, Apache Lucene, Apache Solr, Apache Hadoop, Hadoop, Apache Pulsar, Pulsar, Apache Spark, Spark, Apache TinkerPop, TinkerPop, Apache Kafka and Kafka are either registered trademarks or trademarks of the Apache Software Foundation or its subsidiaries in Canada, the United States and/or other countries. Kubernetes is the registered trademark of the Linux Foundation.

General Inquiries: +1 (650) 389-6000, info@datastax.com