4 Jitney, Kafka at Airbnb
4 Jitney, Kafka at Airbnb
4 Jitney, Kafka at Airbnb
Jitney,
Kafka at Airbnb
关于Airbnb爱彼迎
成⽴立于2008年8⽉月,爱彼迎总部
位于加利福尼亚州旧⾦金⼭山市。爱
彼迎是⼀一个值得信赖的社区型市
场,在这⾥里⼈人们可以通过⺴⽹网站、
⼿手机或平板电脑发布、发掘和预
订世界各地的独特房源。
Jitney ?!
a bus carrying passengers for
a low fare
Some Kafka Facts
• 1 Production cluster
• v0.8.2
• 90 “small” brokers, d2.2xlarge
• 70 topics
• Replication Factor of 3
• 5 Billions events / day
• IN: 80MB / second
• OUT: 1.5GB / second
• Network bound
• Super stable
Why Jitney?
Pick any metric
Standardization!
What Use Cases ?
Classic Message Bus
Jitney
Jitney Client
& Schemas
Monorail
• Lack of monitoring
• Lead to:
• Too many data outages, data loss incidents
• Lack of trust on data systems
Data Stability
A Year Ago
Hi team,
Schema
Repository
Thrift Schema Repository
Why Thrift?
• Easy syntax
• Good performance in Ruby
• Ubiquitous
Advantages of schema repo?
• Great Catalyst for communication, documentation, etc
• it ships jar and gems
Schema
Topic Repository
Repository
Topic Repository
Schema
Topic Repository Clients
Repository
Jitney Clients
• Configuration is a mess
Jitney Clients
it provides:
• metrics reporting: github.com/airbnb/kafka-statsd-metrics2
• configuration for default clusters
• built-in support for Schema Repository and Topic Repository
Consumer:
• offset management to implement at-least once delivery
• polymorphic dispatching to event handler
Example of a Java Producer
Example of a Java Consumer
Jitney Components
Schema
Topic Repository Clients
Repository
HTTP Proxy
Jitney Components
Schema
Topic Repository Clients
Repository
Warehouse
HTTP Proxy
Integration
Data Ingestion Pipeline
4 3 2 1
4 2 1
Event Schema for Audit
Metadata
How is Jitney used in the org?
Use cases
User activity Cache
ingestion currently invalidation
powered
DB change Experimentation
ingestion
Payment
processing via
pub/sub
Key take aways
1 2 3
Huge Advantage
Standardization! Auditing Pipeline
for the organization
Join Airbnb
Learn More
https://www.airbnb.com/careers/locations/beijing-china