SlideShare uma empresa Scribd logo
1 de 36
Baixar para ler offline
Sijie Guo (@sijieg)
What’s new in Pulsar 2.4.0
Who am I
❏ Pulsar PMC Member
❏ BookKeeper PMC Chair
❏ Ex-Twitter, Ex-Yahoo
❏ Interested in event streaming
technologies
Pulsar Releases
❏ 2.2.0 - 10/27/2018
❏ 2.2.1 - 12/14/2018
❏ 2.3.0 - 02/22/2019
❏ 2.3.1 - 04/12/2019
❏ 2.3.2 - 05/02/2019
❏ 2.4.0 - 06/29/2019
Event Streaming Platform
Highlights of Pulsar 2.4.0
❏ Key_Shared Subscription
❏ Delayed/Scheduled Messages
❏ Replicated Subscription
❏ Kerberos Authentication
❏ Configurable MaxMessageSize
❏ Go Functions
❏ Schema Enhancements
Key_Shared Subscription (1)
Key_Shared Subscription (2)
❏ Existing Subscription Modes
❏ Streaming modes : Exclusive / Failover
❏ Pro: partition based ordered consumption
❏ Con: the consumption parallelism is
limited by the number of partitions
❏ Queuing mode: Shared
❏ Pro: scale beyond the limitation of the
number of partitions
❏ Con: unordered consumption
Key_Shared Subscription (3)
Key_Shared Subscription (4)
❏ Key based ordering
❏ Key can be message key or a separated *order* key
❏ HashRing based routing
❏ Key based batcher
❏ Policies for messages without *keys*
https://github.com/apache/pulsar/wiki/PIP-34:-Add-new-subscribe-type-Key_shared
Key_Shared Subscription (5)
❏ Future Tasks
❏ Sticky Key-Range Consumer
❏ Use case: EO & Auto scaling for Flink
❏ Consumer selector policy
❏ Consumer priority
❏ Auto scale up-and-down partitions (*)
https://github.com/apache/pulsar/issues/4077
Delayed / Scheduled Messages (1)
deliverAfter
producer.newMessage()
.deliverAfter(3L, TimeUnit.Minute)
.value("Hello Pulsar after 3 minutes!")
.send();
deliverAt
producer.newMessage()
.deliverAt(new Date(...).getTime())
.value("Hello Pulsar at ...")
.send();
https://github.com/apache/pulsar/wiki/PIP-26:-Delayed-Message-Delivery
Delayed / Scheduled Messages (2)
❏ DelayedDeliveryTracker Abstraction
❏ In-memory priority queue implementation
❏ Plan for memory and resource usage
❏ A persistent hashed-wheel implementation in 2.5.0+
https://github.com/apache/pulsar/wiki/PIP-26:-Delayed-Message-Delivery
Replicated Subscription (1)
❏ Problem
❏ Data are replicated asynchronously between regions
❏ Subscriptions are local to regions
❏ Subscription state is not replicated across regions
❏ Seek back by time when moving a subscription from
one region to the other region
Replicated Subscription (2)
❏ Solution: replicate subscription state
❏ Establish an association between messaging ids from
different regions
❏ Distributed Snapshot
❏ Snapshots are stored as “marker” messages
❏ Marker messages are inline with other messages and
replicated across regions
Replicated Subscription (3)
❏ Enable replicated subscription
https://github.com/apache/pulsar/wiki/PIP-33:-Replicated-subscriptions
Kerberos Authentication
❏ PIP-30: Mutual Authentication
Configurable MaxMessageSize
❏ MaxMessageSize was limited at 5 MB
❏ Introduce a new broker setting `maxMessageSize`
❏ Introduce a new field in client protocol
`max_message_size`
❏ Client discovers the max_message_size of a broker at
connecting phase and set the batch buffer accordingly
https://github.com/apache/pulsar/wiki/PIP-36%3A-Max-Message-Size
Go Functions
Schema Enhancements
❏ Schema versioning support
❏ Transitive schema compatibility check strategies
❏ BACKWARD_TRANSITIVE, FORWARD_TRANSITIVE,
FULL_TRANSITIVE
❏ SchemaBuilder, RecordBuilder
❏ AUTO_CONSUME
❏ KeyValue Schema
Pulsar Ecosystem
❏ Clients
❏ Connectors
❏ Pulsar UI & management tools
❏ Tracing integration
❏ Camel integration
❏ Big data ecosystem integration
Clients
❏ Golang: https://github.com/apache/pulsar-client-go
❏ @merlimat @wolfstudy
❏ Nodejs: https://github.com/apache/pulsar-client-node
❏ Yahoo Japan
❏ Ruby: https://github.com/apache/pulsar-client-ruby
❏ Rust: https://github.com/wyyerd/pulsar-rs
Connectors
❏ Flume Source and Sink #3597
❏ Redis Sink #3700
❏ Solr Sink #3885
❏ RabbitMQ Sink #3967
❏ InfluxDB Sink #4017
❏ Flume Ng Pulsar Sink
❏ Elastic beat output to Pulsar
Pulsar UI & management tools
❏ Pulsar Express
❏ Pulsar Web UI from Yahoo Japan
❏ Pulsar Manager
Tracing Integration
❏ Zipkin Pulsar Transport:
https://github.com/openzipkin/zipkin/issues/2297
❏ Skywalking Pulsar Integration (by Zhaopin.com)
Camel Integration
❏ Contributed by The Hut Group
❏ Available in Camel 3 and Camel 2.4
❏ A feather in their caps
Pulsar-Spark (1)
❏ Spark Structured Streaming Connector
❏ Spark SQL Support
❏ Integrating with Pulsar schema
https://github.com/streamnative/pulsar-spark
Pulsar-Spark (2) - Streaming Queries
https://github.com/streamnative/pulsar-spark
Pulsar-Spark (3) - Batch Queries
https://github.com/streamnative/pulsar-spark
Pulsar-Spark (4) - Schema of Pulsar Source
https://github.com/streamnative/pulsar-spark
❏ Topics without schema or with primitive schemas
❏ `value` field for message payload
❏ Topics with struct schemas (AVRO, JSON)
❏ Field names and types are kept in the row
❏ Metadata Fields
❏ __key: Binary
❏ __topic: String
❏ __messageId: Binary
❏ __publishTime: Timestamp
❏ __eventTime: Timestamp
Pulsar-Spark (5) - Schema Examples
Primitive Schema Avro Schema
https://github.com/streamnative/pulsar-spark
Pulsar-Spark (6) - Write query results to Pulsar
https://github.com/streamnative/pulsar-spark
BigData Ecosystem Integration
❏ pulsar-flink
❏ Schema integration, State integration
❏ pulsar-hive
❏ External tables, managed tables
❏ Partitioned tables
Community
❏ Recurring Pulsar Meetups
❏ Conferences
❏ KubeCon Pulsar Booth from Yahoo Japan
❏ ApacheCon 2019 : 5 Pulsar talks accepted
❏ Flink Forward SF & Berlin 2019
❏ QCon, ArchSummit, …
2.5.0, Ecosystem & More
❏ Transaction Support
❏ Batch receive interface
❏ HDFS Offloader
❏ Columnar Offloader
❏ Auto partition scaling up-and-down
❏ Schema & EO support in pulsar-flink integration
❏ Go Functions (metrics, secrets, …)
❏ Kafka Gateway
Resources
❏ Twitter: @apache_pulsar / @sijieg / @streamnativeio
❏ Slack: https://apache-pulsar.herokuapp.com
❏ 2.4.0 Release Notes
❏ What’s New in Apache Pulsar 2.4.0
❏ Pulsar Spark SQL & Structured Streaming Connector
❏ Curated list of Pulsar resources
Thanks!

Mais conteúdo relacionado

Mais procurados

Unify Storage Backend for Batch and Streaming Computation with Apache Pulsar_...
Unify Storage Backend for Batch and Streaming Computation with Apache Pulsar_...Unify Storage Backend for Batch and Streaming Computation with Apache Pulsar_...
Unify Storage Backend for Batch and Streaming Computation with Apache Pulsar_...
StreamNative
 

Mais procurados (20)

Unify Storage Backend for Batch and Streaming Computation with Apache Pulsar_...
Unify Storage Backend for Batch and Streaming Computation with Apache Pulsar_...Unify Storage Backend for Batch and Streaming Computation with Apache Pulsar_...
Unify Storage Backend for Batch and Streaming Computation with Apache Pulsar_...
 
Integrating Apache Pulsar with Big Data Ecosystem
Integrating Apache Pulsar with Big Data EcosystemIntegrating Apache Pulsar with Big Data Ecosystem
Integrating Apache Pulsar with Big Data Ecosystem
 
Pulsar - Distributed pub/sub platform
Pulsar - Distributed pub/sub platformPulsar - Distributed pub/sub platform
Pulsar - Distributed pub/sub platform
 
Lessons from managing a Pulsar cluster (Nutanix)
Lessons from managing a Pulsar cluster (Nutanix)Lessons from managing a Pulsar cluster (Nutanix)
Lessons from managing a Pulsar cluster (Nutanix)
 
Transaction Support in Pulsar 2.5.0
Transaction Support in Pulsar 2.5.0Transaction Support in Pulsar 2.5.0
Transaction Support in Pulsar 2.5.0
 
Pulsar Storage on BookKeeper _Seamless Evolution
Pulsar Storage on BookKeeper _Seamless EvolutionPulsar Storage on BookKeeper _Seamless Evolution
Pulsar Storage on BookKeeper _Seamless Evolution
 
From Message to Cluster: A Realworld Introduction to Kafka Capacity Planning
From Message to Cluster: A Realworld Introduction to Kafka Capacity PlanningFrom Message to Cluster: A Realworld Introduction to Kafka Capacity Planning
From Message to Cluster: A Realworld Introduction to Kafka Capacity Planning
 
Apache Kafka at LinkedIn
Apache Kafka at LinkedInApache Kafka at LinkedIn
Apache Kafka at LinkedIn
 
Large scale log pipeline using Apache Pulsar_Nozomi
Large scale log pipeline using Apache Pulsar_NozomiLarge scale log pipeline using Apache Pulsar_Nozomi
Large scale log pipeline using Apache Pulsar_Nozomi
 
Introduction and Overview of Apache Kafka, TriHUG July 23, 2013
Introduction and Overview of Apache Kafka, TriHUG July 23, 2013Introduction and Overview of Apache Kafka, TriHUG July 23, 2013
Introduction and Overview of Apache Kafka, TriHUG July 23, 2013
 
Serverless Event Streaming with Pulsar Functions
Serverless Event Streaming with Pulsar FunctionsServerless Event Streaming with Pulsar Functions
Serverless Event Streaming with Pulsar Functions
 
kafka
kafkakafka
kafka
 
Kafka Summit SF 2017 - Shopify Flash Sales with Apache Kafka
Kafka Summit SF 2017 - Shopify Flash Sales with Apache KafkaKafka Summit SF 2017 - Shopify Flash Sales with Apache Kafka
Kafka Summit SF 2017 - Shopify Flash Sales with Apache Kafka
 
Kafka blr-meetup-presentation - Kafka internals
Kafka blr-meetup-presentation - Kafka internalsKafka blr-meetup-presentation - Kafka internals
Kafka blr-meetup-presentation - Kafka internals
 
Apache Kafka
Apache KafkaApache Kafka
Apache Kafka
 
Apache BookKeeper: A High Performance and Low Latency Storage Service
Apache BookKeeper: A High Performance and Low Latency Storage ServiceApache BookKeeper: A High Performance and Low Latency Storage Service
Apache BookKeeper: A High Performance and Low Latency Storage Service
 
High performance messaging with Apache Pulsar
High performance messaging with Apache PulsarHigh performance messaging with Apache Pulsar
High performance messaging with Apache Pulsar
 
October 2016 HUG: Pulsar,  a highly scalable, low latency pub-sub messaging s...
October 2016 HUG: Pulsar,  a highly scalable, low latency pub-sub messaging s...October 2016 HUG: Pulsar,  a highly scalable, low latency pub-sub messaging s...
October 2016 HUG: Pulsar,  a highly scalable, low latency pub-sub messaging s...
 
Apache Kafka - Martin Podval
Apache Kafka - Martin PodvalApache Kafka - Martin Podval
Apache Kafka - Martin Podval
 
Apache Kafka: A high-throughput distributed messaging system @ JCConf 2014
Apache Kafka: A high-throughput distributed messaging system @ JCConf 2014Apache Kafka: A high-throughput distributed messaging system @ JCConf 2014
Apache Kafka: A high-throughput distributed messaging system @ JCConf 2014
 

Semelhante a What's new in apache pulsar 2.4.0

(Current22) Let's Monitor The Conditions at the Conference
(Current22) Let's Monitor The Conditions at the Conference(Current22) Let's Monitor The Conditions at the Conference
(Current22) Let's Monitor The Conditions at the Conference
Timothy Spann
 

Semelhante a What's new in apache pulsar 2.4.0 (20)

Stream or segment : what is the best way to access your events in Pulsar_Neng
Stream or segment : what is the best way to access your events in Pulsar_NengStream or segment : what is the best way to access your events in Pulsar_Neng
Stream or segment : what is the best way to access your events in Pulsar_Neng
 
Developing Realtime Data Pipelines With Apache Kafka
Developing Realtime Data Pipelines With Apache KafkaDeveloping Realtime Data Pipelines With Apache Kafka
Developing Realtime Data Pipelines With Apache Kafka
 
Python Web Conference 2022 - Apache Pulsar Development 101 with Python (FLiP-Py)
Python Web Conference 2022 - Apache Pulsar Development 101 with Python (FLiP-Py)Python Web Conference 2022 - Apache Pulsar Development 101 with Python (FLiP-Py)
Python Web Conference 2022 - Apache Pulsar Development 101 with Python (FLiP-Py)
 
Troubleshooting common oslo.messaging and RabbitMQ issues
Troubleshooting common oslo.messaging and RabbitMQ issuesTroubleshooting common oslo.messaging and RabbitMQ issues
Troubleshooting common oslo.messaging and RabbitMQ issues
 
Timothy Spann: Apache Pulsar for ML
Timothy Spann: Apache Pulsar for MLTimothy Spann: Apache Pulsar for ML
Timothy Spann: Apache Pulsar for ML
 
bigdata 2022_ FLiP Into Pulsar Apps
bigdata 2022_ FLiP Into Pulsar Appsbigdata 2022_ FLiP Into Pulsar Apps
bigdata 2022_ FLiP Into Pulsar Apps
 
Apache Kafka Introduction
Apache Kafka IntroductionApache Kafka Introduction
Apache Kafka Introduction
 
lessons from managing a pulsar cluster
 lessons from managing a pulsar cluster lessons from managing a pulsar cluster
lessons from managing a pulsar cluster
 
Python web conference 2022 apache pulsar development 101 with python (f li-...
Python web conference 2022   apache pulsar development 101 with python (f li-...Python web conference 2022   apache pulsar development 101 with python (f li-...
Python web conference 2022 apache pulsar development 101 with python (f li-...
 
Real time data pipline with kafka streams
Real time data pipline with kafka streamsReal time data pipline with kafka streams
Real time data pipline with kafka streams
 
Non-Kafkaesque Apache Kafka - Yottabyte 2018
Non-Kafkaesque Apache Kafka - Yottabyte 2018Non-Kafkaesque Apache Kafka - Yottabyte 2018
Non-Kafkaesque Apache Kafka - Yottabyte 2018
 
Kafka Deep Dive
Kafka Deep DiveKafka Deep Dive
Kafka Deep Dive
 
Apache Kafka - Event Sourcing, Monitoring, Librdkafka, Scaling & Partitioning
Apache Kafka - Event Sourcing, Monitoring, Librdkafka, Scaling & PartitioningApache Kafka - Event Sourcing, Monitoring, Librdkafka, Scaling & Partitioning
Apache Kafka - Event Sourcing, Monitoring, Librdkafka, Scaling & Partitioning
 
Kafka streams decoupling with stores
Kafka streams decoupling with storesKafka streams decoupling with stores
Kafka streams decoupling with stores
 
Schema registry
Schema registrySchema registry
Schema registry
 
Let’s Monitor Conditions at the Conference With Timothy Spann & David Kjerrum...
Let’s Monitor Conditions at the Conference With Timothy Spann & David Kjerrum...Let’s Monitor Conditions at the Conference With Timothy Spann & David Kjerrum...
Let’s Monitor Conditions at the Conference With Timothy Spann & David Kjerrum...
 
(Current22) Let's Monitor The Conditions at the Conference
(Current22) Let's Monitor The Conditions at the Conference(Current22) Let's Monitor The Conditions at the Conference
(Current22) Let's Monitor The Conditions at the Conference
 
Kafka on Pulsar:bringing native Kafka protocol support to Pulsar_Sijie&Pierre
Kafka on Pulsar:bringing native Kafka protocol support to Pulsar_Sijie&PierreKafka on Pulsar:bringing native Kafka protocol support to Pulsar_Sijie&Pierre
Kafka on Pulsar:bringing native Kafka protocol support to Pulsar_Sijie&Pierre
 
Module: Mutable Content in IPFS
Module: Mutable Content in IPFSModule: Mutable Content in IPFS
Module: Mutable Content in IPFS
 
Pulsar Summit Asia - Structured Data Stream with Apache Pulsar
Pulsar Summit Asia - Structured Data Stream with Apache PulsarPulsar Summit Asia - Structured Data Stream with Apache Pulsar
Pulsar Summit Asia - Structured Data Stream with Apache Pulsar
 

Mais de StreamNative

Pulsar's Journey in Yahoo!: On-prem, Cloud and Hybrid - Pulsar Summit SF 2022
Pulsar's Journey in Yahoo!: On-prem, Cloud and Hybrid - Pulsar Summit SF 2022Pulsar's Journey in Yahoo!: On-prem, Cloud and Hybrid - Pulsar Summit SF 2022
Pulsar's Journey in Yahoo!: On-prem, Cloud and Hybrid - Pulsar Summit SF 2022
StreamNative
 

Mais de StreamNative (20)

Is Using KoP (Kafka-on-Pulsar) a Good Idea? - Pulsar Summit SF 2022
Is Using KoP (Kafka-on-Pulsar) a Good Idea? - Pulsar Summit SF 2022Is Using KoP (Kafka-on-Pulsar) a Good Idea? - Pulsar Summit SF 2022
Is Using KoP (Kafka-on-Pulsar) a Good Idea? - Pulsar Summit SF 2022
 
Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...
Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...
Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...
 
Blue-green deploys with Pulsar & Envoy in an event-driven microservice ecosys...
Blue-green deploys with Pulsar & Envoy in an event-driven microservice ecosys...Blue-green deploys with Pulsar & Envoy in an event-driven microservice ecosys...
Blue-green deploys with Pulsar & Envoy in an event-driven microservice ecosys...
 
Distributed Database Design Decisions to Support High Performance Event Strea...
Distributed Database Design Decisions to Support High Performance Event Strea...Distributed Database Design Decisions to Support High Performance Event Strea...
Distributed Database Design Decisions to Support High Performance Event Strea...
 
Simplify Pulsar Functions Development with SQL - Pulsar Summit SF 2022
Simplify Pulsar Functions Development with SQL - Pulsar Summit SF 2022Simplify Pulsar Functions Development with SQL - Pulsar Summit SF 2022
Simplify Pulsar Functions Development with SQL - Pulsar Summit SF 2022
 
Towards a ZooKeeper-less Pulsar, etcd, etcd, etcd. - Pulsar Summit SF 2022
Towards a ZooKeeper-less Pulsar, etcd, etcd, etcd. - Pulsar Summit SF 2022Towards a ZooKeeper-less Pulsar, etcd, etcd, etcd. - Pulsar Summit SF 2022
Towards a ZooKeeper-less Pulsar, etcd, etcd, etcd. - Pulsar Summit SF 2022
 
Validating Apache Pulsar’s Behavior under Failure Conditions - Pulsar Summit ...
Validating Apache Pulsar’s Behavior under Failure Conditions - Pulsar Summit ...Validating Apache Pulsar’s Behavior under Failure Conditions - Pulsar Summit ...
Validating Apache Pulsar’s Behavior under Failure Conditions - Pulsar Summit ...
 
Cross the Streams! Creating Streaming Data Pipelines with Apache Flink + Apac...
Cross the Streams! Creating Streaming Data Pipelines with Apache Flink + Apac...Cross the Streams! Creating Streaming Data Pipelines with Apache Flink + Apac...
Cross the Streams! Creating Streaming Data Pipelines with Apache Flink + Apac...
 
Message Redelivery: An Unexpected Journey - Pulsar Summit SF 2022
Message Redelivery: An Unexpected Journey - Pulsar Summit SF 2022Message Redelivery: An Unexpected Journey - Pulsar Summit SF 2022
Message Redelivery: An Unexpected Journey - Pulsar Summit SF 2022
 
Unlocking the Power of Lakehouse Architectures with Apache Pulsar and Apache ...
Unlocking the Power of Lakehouse Architectures with Apache Pulsar and Apache ...Unlocking the Power of Lakehouse Architectures with Apache Pulsar and Apache ...
Unlocking the Power of Lakehouse Architectures with Apache Pulsar and Apache ...
 
Understanding Broker Load Balancing - Pulsar Summit SF 2022
Understanding Broker Load Balancing - Pulsar Summit SF 2022Understanding Broker Load Balancing - Pulsar Summit SF 2022
Understanding Broker Load Balancing - Pulsar Summit SF 2022
 
Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...
Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...
Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...
 
Pulsar's Journey in Yahoo!: On-prem, Cloud and Hybrid - Pulsar Summit SF 2022
Pulsar's Journey in Yahoo!: On-prem, Cloud and Hybrid - Pulsar Summit SF 2022Pulsar's Journey in Yahoo!: On-prem, Cloud and Hybrid - Pulsar Summit SF 2022
Pulsar's Journey in Yahoo!: On-prem, Cloud and Hybrid - Pulsar Summit SF 2022
 
Event-Driven Applications Done Right - Pulsar Summit SF 2022
Event-Driven Applications Done Right - Pulsar Summit SF 2022Event-Driven Applications Done Right - Pulsar Summit SF 2022
Event-Driven Applications Done Right - Pulsar Summit SF 2022
 
Pulsar @ Scale. 200M RPM and 1K instances - Pulsar Summit SF 2022
Pulsar @ Scale. 200M RPM and 1K instances - Pulsar Summit SF 2022Pulsar @ Scale. 200M RPM and 1K instances - Pulsar Summit SF 2022
Pulsar @ Scale. 200M RPM and 1K instances - Pulsar Summit SF 2022
 
Data Democracy: Journey to User-Facing Analytics - Pulsar Summit SF 2022
Data Democracy: Journey to User-Facing Analytics - Pulsar Summit SF 2022Data Democracy: Journey to User-Facing Analytics - Pulsar Summit SF 2022
Data Democracy: Journey to User-Facing Analytics - Pulsar Summit SF 2022
 
Beam + Pulsar: Powerful Stream Processing at Scale - Pulsar Summit SF 2022
Beam + Pulsar: Powerful Stream Processing at Scale - Pulsar Summit SF 2022Beam + Pulsar: Powerful Stream Processing at Scale - Pulsar Summit SF 2022
Beam + Pulsar: Powerful Stream Processing at Scale - Pulsar Summit SF 2022
 
Welcome and Opening Remarks - Pulsar Summit SF 2022
Welcome and Opening Remarks - Pulsar Summit SF 2022Welcome and Opening Remarks - Pulsar Summit SF 2022
Welcome and Opening Remarks - Pulsar Summit SF 2022
 
Log System As Backbone – How We Built the World’s Most Advanced Vector Databa...
Log System As Backbone – How We Built the World’s Most Advanced Vector Databa...Log System As Backbone – How We Built the World’s Most Advanced Vector Databa...
Log System As Backbone – How We Built the World’s Most Advanced Vector Databa...
 
MoP(MQTT on Pulsar) - a Powerful Tool for Apache Pulsar in IoT - Pulsar Summi...
MoP(MQTT on Pulsar) - a Powerful Tool for Apache Pulsar in IoT - Pulsar Summi...MoP(MQTT on Pulsar) - a Powerful Tool for Apache Pulsar in IoT - Pulsar Summi...
MoP(MQTT on Pulsar) - a Powerful Tool for Apache Pulsar in IoT - Pulsar Summi...
 

Último

Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
soniya singh
 
Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵
Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵
Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵
Chandigarh Call girls 9053900678 Call girls in Chandigarh
 
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
@Chandigarh #call #Girls 9053900678 @Call #Girls in @Punjab 9053900678
 
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
soniya singh
 
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
soniya singh
 
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
soniya singh
 

Último (20)

VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting  High Prof...VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting  High Prof...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...
 
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
 
Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵
Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵
Low Sexy Call Girls In Mohali 9053900678 🥵Have Save And Good Place 🥵
 
On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024
 
(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7
(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7
(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7
 
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
 
Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.
 
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
 
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
 
Al Barsha Night Partner +0567686026 Call Girls Dubai
Al Barsha Night Partner +0567686026 Call Girls  DubaiAl Barsha Night Partner +0567686026 Call Girls  Dubai
Al Barsha Night Partner +0567686026 Call Girls Dubai
 
(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...
(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...
(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...
 
Trump Diapers Over Dems t shirts Sweatshirt
Trump Diapers Over Dems t shirts SweatshirtTrump Diapers Over Dems t shirts Sweatshirt
Trump Diapers Over Dems t shirts Sweatshirt
 
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark WebGDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
 
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
Ganeshkhind ! Call Girls Pune - 450+ Call Girl Cash Payment 8005736733 Neha T...
 
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
 
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
 
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
 
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
 
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
 
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
 

What's new in apache pulsar 2.4.0

  • 1. Sijie Guo (@sijieg) What’s new in Pulsar 2.4.0
  • 2. Who am I ❏ Pulsar PMC Member ❏ BookKeeper PMC Chair ❏ Ex-Twitter, Ex-Yahoo ❏ Interested in event streaming technologies
  • 3. Pulsar Releases ❏ 2.2.0 - 10/27/2018 ❏ 2.2.1 - 12/14/2018 ❏ 2.3.0 - 02/22/2019 ❏ 2.3.1 - 04/12/2019 ❏ 2.3.2 - 05/02/2019 ❏ 2.4.0 - 06/29/2019
  • 5. Highlights of Pulsar 2.4.0 ❏ Key_Shared Subscription ❏ Delayed/Scheduled Messages ❏ Replicated Subscription ❏ Kerberos Authentication ❏ Configurable MaxMessageSize ❏ Go Functions ❏ Schema Enhancements
  • 7. Key_Shared Subscription (2) ❏ Existing Subscription Modes ❏ Streaming modes : Exclusive / Failover ❏ Pro: partition based ordered consumption ❏ Con: the consumption parallelism is limited by the number of partitions ❏ Queuing mode: Shared ❏ Pro: scale beyond the limitation of the number of partitions ❏ Con: unordered consumption
  • 9. Key_Shared Subscription (4) ❏ Key based ordering ❏ Key can be message key or a separated *order* key ❏ HashRing based routing ❏ Key based batcher ❏ Policies for messages without *keys* https://github.com/apache/pulsar/wiki/PIP-34:-Add-new-subscribe-type-Key_shared
  • 10. Key_Shared Subscription (5) ❏ Future Tasks ❏ Sticky Key-Range Consumer ❏ Use case: EO & Auto scaling for Flink ❏ Consumer selector policy ❏ Consumer priority ❏ Auto scale up-and-down partitions (*) https://github.com/apache/pulsar/issues/4077
  • 11. Delayed / Scheduled Messages (1) deliverAfter producer.newMessage() .deliverAfter(3L, TimeUnit.Minute) .value("Hello Pulsar after 3 minutes!") .send(); deliverAt producer.newMessage() .deliverAt(new Date(...).getTime()) .value("Hello Pulsar at ...") .send(); https://github.com/apache/pulsar/wiki/PIP-26:-Delayed-Message-Delivery
  • 12. Delayed / Scheduled Messages (2) ❏ DelayedDeliveryTracker Abstraction ❏ In-memory priority queue implementation ❏ Plan for memory and resource usage ❏ A persistent hashed-wheel implementation in 2.5.0+ https://github.com/apache/pulsar/wiki/PIP-26:-Delayed-Message-Delivery
  • 13. Replicated Subscription (1) ❏ Problem ❏ Data are replicated asynchronously between regions ❏ Subscriptions are local to regions ❏ Subscription state is not replicated across regions ❏ Seek back by time when moving a subscription from one region to the other region
  • 14. Replicated Subscription (2) ❏ Solution: replicate subscription state ❏ Establish an association between messaging ids from different regions ❏ Distributed Snapshot ❏ Snapshots are stored as “marker” messages ❏ Marker messages are inline with other messages and replicated across regions
  • 15. Replicated Subscription (3) ❏ Enable replicated subscription https://github.com/apache/pulsar/wiki/PIP-33:-Replicated-subscriptions
  • 16. Kerberos Authentication ❏ PIP-30: Mutual Authentication
  • 17. Configurable MaxMessageSize ❏ MaxMessageSize was limited at 5 MB ❏ Introduce a new broker setting `maxMessageSize` ❏ Introduce a new field in client protocol `max_message_size` ❏ Client discovers the max_message_size of a broker at connecting phase and set the batch buffer accordingly https://github.com/apache/pulsar/wiki/PIP-36%3A-Max-Message-Size
  • 19. Schema Enhancements ❏ Schema versioning support ❏ Transitive schema compatibility check strategies ❏ BACKWARD_TRANSITIVE, FORWARD_TRANSITIVE, FULL_TRANSITIVE ❏ SchemaBuilder, RecordBuilder ❏ AUTO_CONSUME ❏ KeyValue Schema
  • 20. Pulsar Ecosystem ❏ Clients ❏ Connectors ❏ Pulsar UI & management tools ❏ Tracing integration ❏ Camel integration ❏ Big data ecosystem integration
  • 21. Clients ❏ Golang: https://github.com/apache/pulsar-client-go ❏ @merlimat @wolfstudy ❏ Nodejs: https://github.com/apache/pulsar-client-node ❏ Yahoo Japan ❏ Ruby: https://github.com/apache/pulsar-client-ruby ❏ Rust: https://github.com/wyyerd/pulsar-rs
  • 22. Connectors ❏ Flume Source and Sink #3597 ❏ Redis Sink #3700 ❏ Solr Sink #3885 ❏ RabbitMQ Sink #3967 ❏ InfluxDB Sink #4017 ❏ Flume Ng Pulsar Sink ❏ Elastic beat output to Pulsar
  • 23. Pulsar UI & management tools ❏ Pulsar Express ❏ Pulsar Web UI from Yahoo Japan ❏ Pulsar Manager
  • 24. Tracing Integration ❏ Zipkin Pulsar Transport: https://github.com/openzipkin/zipkin/issues/2297 ❏ Skywalking Pulsar Integration (by Zhaopin.com)
  • 25. Camel Integration ❏ Contributed by The Hut Group ❏ Available in Camel 3 and Camel 2.4 ❏ A feather in their caps
  • 26. Pulsar-Spark (1) ❏ Spark Structured Streaming Connector ❏ Spark SQL Support ❏ Integrating with Pulsar schema https://github.com/streamnative/pulsar-spark
  • 27. Pulsar-Spark (2) - Streaming Queries https://github.com/streamnative/pulsar-spark
  • 28. Pulsar-Spark (3) - Batch Queries https://github.com/streamnative/pulsar-spark
  • 29. Pulsar-Spark (4) - Schema of Pulsar Source https://github.com/streamnative/pulsar-spark ❏ Topics without schema or with primitive schemas ❏ `value` field for message payload ❏ Topics with struct schemas (AVRO, JSON) ❏ Field names and types are kept in the row ❏ Metadata Fields ❏ __key: Binary ❏ __topic: String ❏ __messageId: Binary ❏ __publishTime: Timestamp ❏ __eventTime: Timestamp
  • 30. Pulsar-Spark (5) - Schema Examples Primitive Schema Avro Schema https://github.com/streamnative/pulsar-spark
  • 31. Pulsar-Spark (6) - Write query results to Pulsar https://github.com/streamnative/pulsar-spark
  • 32. BigData Ecosystem Integration ❏ pulsar-flink ❏ Schema integration, State integration ❏ pulsar-hive ❏ External tables, managed tables ❏ Partitioned tables
  • 33. Community ❏ Recurring Pulsar Meetups ❏ Conferences ❏ KubeCon Pulsar Booth from Yahoo Japan ❏ ApacheCon 2019 : 5 Pulsar talks accepted ❏ Flink Forward SF & Berlin 2019 ❏ QCon, ArchSummit, …
  • 34. 2.5.0, Ecosystem & More ❏ Transaction Support ❏ Batch receive interface ❏ HDFS Offloader ❏ Columnar Offloader ❏ Auto partition scaling up-and-down ❏ Schema & EO support in pulsar-flink integration ❏ Go Functions (metrics, secrets, …) ❏ Kafka Gateway
  • 35. Resources ❏ Twitter: @apache_pulsar / @sijieg / @streamnativeio ❏ Slack: https://apache-pulsar.herokuapp.com ❏ 2.4.0 Release Notes ❏ What’s New in Apache Pulsar 2.4.0 ❏ Pulsar Spark SQL & Structured Streaming Connector ❏ Curated list of Pulsar resources