SlideShare une entreprise Scribd logo
1  sur  30
DLD. Tel-Aviv. 2015
Making Scale a Non-Issue
for Real-Time Data Apps
Vladi Feigin, LivePerson
Kobi Salant, LivePerson
Agenda
 Intro
 About LivePerson
 Digital Engagements
 Call Center Use Case
 Architecture
 Zoom-In
Bio
Vladi Feigin
 System Architect in LivePerson
 18 years in software development
 Interests : distributed computing, data, analytics and
martial arts
Bio
Kobi Salant
 Data Platform Tech Lead in LivePerson
 25 years in software development
 Interests : Application performance, traveling and coffee
LivePerson
 We do Digital Engagements
 Agile and very technological
 Real Big Data and Analytics company
 Really cool place to work in
 One of the SaaS pioneers
 6 Data Centers across the world
 Founded in 1995,
a public company
since 2000
(NASDAQ: LPSN)
 More than 18,000
customers
worldwide
 More than 1000
employees
LivePerson technology stack
We are Big Data
 1.4 Million concurrent visits
 1 Million events per second
 2 billion site visits per month
 27 million live engagements per month
 Data freshness SLA (RT flow): up to 5 seconds
Visitor
Agent
Visitor
Agent
Call Center Operating
Digital engagement requires operating a call center in the
most efficient way
How to operate a call center in the most efficient way?
 Provide operational metrics … In real-time
What are the challenges?
 Huge scale, load peaks, real-time calculations, high data
freshness SLA
Call Center Operating
Architecture. Real-Time data flow
producer
(agent)
producer
(sess.)
producer
(chat)
Kafka
Storm
Cassandra
Storm
Fast topic
ElasticSearch CouchBase
API
Consistent topic
Batch
layer
(Hadoop)
producer
(conv.)
producer
(other)
Custom
Apps.
Chat History. Example
producer
(agent)
producer
(sess.)
producer
(chat.)
Kafka
Storm
Fast topic
ElasticSearch
API
Consistent topic
MR job
Very low latency
99.5% of data
High latency
99.999% of data
Data Producers. Requirements
 Real time
 “Five nines” persistence
 Small footprint
 No interference with service
 Multiple producers & platforms
 Monolithic to service oriented
Many
More
Services
Data Producers. Lessons learned
 Hundreds of services
 Complex rollouts
 Minimal logic to avoid painful fixes
 Audit streaming? Split to buckets
 Real time and “five nines” persistence are incompatible
In House
1
Bucket Bucket
Consistent
Topic
Send message
to Kafka
local file
Persist message to
local disk
Kafka Bridge
Send message
to Kafka
Fast
Topic
Kafka Resilience
Real-time
Customers
Offline
Customers
Kafka
Data Producers. Flow
Data Model Framework
Why Avro:
 Schema based evolution
 Performance - Untagged bytes
 HDFS ecosystem support
Lessons Learned:
 Schema evolution breaks
 Big schema (ours is over 65k) not recommended
 Avoid deep nesting and multiple unions
 Need a framework
Chaos – Non-Schema
space delimited
Order – Avro Schema
Framework Flow
1. Event is created according to Avro
Schema version 3.5
2. Schema is registered into the
repository (once)
3. Value 3.5 is written to header
4. Event is encoded with schema
version 3.5 and added to message
5. Message is sent to Kafka
6. Message is read by consumer
7. Header is read from message
8. Schema is retrieved from repository
according to scheme version
9. Event decoded using the proper Avro
schema
10.Decoded event is processed
3.5
3.5
Consumer
Repository
Apache Kafka
 More than 15 billion events a day
 More than 1 million events per second
 Hundreds of producers & consumers
Why Kafka?
 Scale where traditional MQs fail
 Industry standard for big data log messaging
 Reliable, flexible and easy to use
Deployment:
 We have 15 clusters across the world
 Our biggest cluster has 8 nodes with more than 6TB (Avro + Kafka
compression)
 Maximum retention of 72 hours
Apache Kafka. Lessons Learned
 Scale horizontally for hardware resources and vertically for
throughput
 Look at trends of network & IO & Kafka's JMX statistics
Partitions Servers
Bytes in
Apache Kafka. Lessons Learned cont.
 Know your data and message sizes:
 Large messages can break you
 Data growth can overfill your capacity
 Set the right configuration
 Adding or removing a broker is not trivial
 Decide on single or multiple topics
Apache Storm
Why Storm?
 Growing community with good integration to Kafka
 At the time, it was the leading product
 Easy development and customization
 The POC was successful
Deployment:
 We have 6 clusters across the world
 Our biggest cluster has more then 30 nodes
 We have 20 topologies on a single cluster
 Uptime of months for a single topology
Apache Storm. Typical topology
Storm Topology
KAFKA SPOUT FILTER BOLT WRITER BOLT
emit emit
ack ack
fetch
Zookeeper
Kafka Fast topic
writecommit
Apache Storm. Lessons learned
 Develop SDK and educate R&D
 Where did my topology run last week? What is my overtime
capacity?
 Know your bolts, must return a timely answer
 Coding is easy, performance is hard
 Use isolation
Capacity
Apache Storm. Lessons learned cont.
 Use local shuffling
 Use Ack
KAFKA SPOUT FILTER BOLT WRITER BOLT
KAFKA SPOUT FILTER BOLT WRITER BOLT
Local
emit
ACKER BOLT
ACKER BOLT
COMM BOLT
COMM BOLT
Worker
A
Worker
B
Local
emit
Local
emit
Local
emit
Summary
 No one-size-fits-all solution
 Ask product for a clearly defined SLA
 Separate between fast and consistent data flows - they
don’t merge!
 Use schema for a data model - keep it flat and small
 Kafka rules! It’s reliable and fast - use it
 Storm has it’s toll. For some use-cases we would be
using Spark Streaming today
THANK YOU!
We are hiring
http://www.liveperson.com/company/careers
Q/A
YouTube.com/LivePersonDev
Twitter.com/LivePersonDev
Facebook.com/LivePersonDev
Slideshare.net/LivePersonDev

Contenu connexe

Tendances

20190521 pwn 101_by_roy
20190521 pwn 101_by_roy20190521 pwn 101_by_roy
20190521 pwn 101_by_roy
Roy
 
Data Con LA 2022 - Transformers for NLP
Data Con LA 2022 - Transformers for NLPData Con LA 2022 - Transformers for NLP
Data Con LA 2022 - Transformers for NLP
Data Con LA
 
GWEA Framework 1.2 EA Forum 30 June 09
GWEA Framework 1.2 EA Forum 30 June 09GWEA Framework 1.2 EA Forum 30 June 09
GWEA Framework 1.2 EA Forum 30 June 09
guestea68b0
 

Tendances (20)

Using Generative AI
Using Generative AIUsing Generative AI
Using Generative AI
 
An introduction to the Transformers architecture and BERT
An introduction to the Transformers architecture and BERTAn introduction to the Transformers architecture and BERT
An introduction to the Transformers architecture and BERT
 
Présentation PACOFIDE 04092020.pptx
Présentation PACOFIDE 04092020.pptxPrésentation PACOFIDE 04092020.pptx
Présentation PACOFIDE 04092020.pptx
 
Neural Machine Translation (D3L4 Deep Learning for Speech and Language UPC 2017)
Neural Machine Translation (D3L4 Deep Learning for Speech and Language UPC 2017)Neural Machine Translation (D3L4 Deep Learning for Speech and Language UPC 2017)
Neural Machine Translation (D3L4 Deep Learning for Speech and Language UPC 2017)
 
AI Chip Trends and Forecast
AI Chip Trends and ForecastAI Chip Trends and Forecast
AI Chip Trends and Forecast
 
Deep learning for NLP and Transformer
 Deep learning for NLP  and Transformer Deep learning for NLP  and Transformer
Deep learning for NLP and Transformer
 
Conversational AI with Transformer Models
Conversational AI with Transformer ModelsConversational AI with Transformer Models
Conversational AI with Transformer Models
 
Information System Design Lab(Hotel Reservation)
Information System Design Lab(Hotel Reservation)Information System Design Lab(Hotel Reservation)
Information System Design Lab(Hotel Reservation)
 
20190521 pwn 101_by_roy
20190521 pwn 101_by_roy20190521 pwn 101_by_roy
20190521 pwn 101_by_roy
 
NLP using transformers
NLP using transformers NLP using transformers
NLP using transformers
 
캡스톤발표자료(최종)
캡스톤발표자료(최종)캡스톤발표자료(최종)
캡스톤발표자료(최종)
 
AMD EPYC™ Microprocessor Architecture
AMD EPYC™ Microprocessor ArchitectureAMD EPYC™ Microprocessor Architecture
AMD EPYC™ Microprocessor Architecture
 
Modular by Design: Supermicro’s New Standards-Based Universal GPU Server
Modular by Design: Supermicro’s New Standards-Based Universal GPU ServerModular by Design: Supermicro’s New Standards-Based Universal GPU Server
Modular by Design: Supermicro’s New Standards-Based Universal GPU Server
 
Deep Learning for Natural Language Processing: Word Embeddings
Deep Learning for Natural Language Processing: Word EmbeddingsDeep Learning for Natural Language Processing: Word Embeddings
Deep Learning for Natural Language Processing: Word Embeddings
 
Financial Question Answering with BERT Language Models
Financial Question Answering with BERT Language ModelsFinancial Question Answering with BERT Language Models
Financial Question Answering with BERT Language Models
 
Data Con LA 2022 - Transformers for NLP
Data Con LA 2022 - Transformers for NLPData Con LA 2022 - Transformers for NLP
Data Con LA 2022 - Transformers for NLP
 
GWEA Framework 1.2 EA Forum 30 June 09
GWEA Framework 1.2 EA Forum 30 June 09GWEA Framework 1.2 EA Forum 30 June 09
GWEA Framework 1.2 EA Forum 30 June 09
 
Presentation - Model Efficiency for Edge AI
Presentation - Model Efficiency for Edge AIPresentation - Model Efficiency for Edge AI
Presentation - Model Efficiency for Edge AI
 
Introduction to VoIP, RTP and SIP
Introduction to VoIP, RTP and SIP Introduction to VoIP, RTP and SIP
Introduction to VoIP, RTP and SIP
 
Introduction to Transformers for NLP - Olga Petrova
Introduction to Transformers for NLP - Olga PetrovaIntroduction to Transformers for NLP - Olga Petrova
Introduction to Transformers for NLP - Olga Petrova
 

En vedette

游戏运营(第三讲)
游戏运营(第三讲)游戏运营(第三讲)
游戏运营(第三讲)
www.emean.com
 
Value of libraries - ANU Outsell persentation
Value of libraries - ANU Outsell persentationValue of libraries - ANU Outsell persentation
Value of libraries - ANU Outsell persentation
Roxanne Missingham
 
60 rosnaini mahmud
60 rosnaini mahmud60 rosnaini mahmud
60 rosnaini mahmud
Ena Ros
 

En vedette (20)

游戏运营(第三讲)
游戏运营(第三讲)游戏运营(第三讲)
游戏运营(第三讲)
 
Google Plus (Google+)
Google Plus (Google+) Google Plus (Google+)
Google Plus (Google+)
 
09 nick lewty
09 nick lewty09 nick lewty
09 nick lewty
 
Value of libraries - ANU Outsell persentation
Value of libraries - ANU Outsell persentationValue of libraries - ANU Outsell persentation
Value of libraries - ANU Outsell persentation
 
Na 7 jaar frisse scholen...
Na 7 jaar frisse scholen...Na 7 jaar frisse scholen...
Na 7 jaar frisse scholen...
 
Globalsat
GlobalsatGlobalsat
Globalsat
 
26 1
26 126 1
26 1
 
Presentación hamburgo, ética
Presentación hamburgo, éticaPresentación hamburgo, ética
Presentación hamburgo, ética
 
Tevii
TeviiTevii
Tevii
 
Green IT in de praktijk
Green IT in de praktijkGreen IT in de praktijk
Green IT in de praktijk
 
Al.landalus
Al.landalusAl.landalus
Al.landalus
 
デブサミ2013【15-A-6】増加するセキュリティ脆弱性の解決策
デブサミ2013【15-A-6】増加するセキュリティ脆弱性の解決策デブサミ2013【15-A-6】増加するセキュリティ脆弱性の解決策
デブサミ2013【15-A-6】増加するセキュリティ脆弱性の解決策
 
Change password for weblogic users in obiee 11g
Change password for weblogic users in obiee 11gChange password for weblogic users in obiee 11g
Change password for weblogic users in obiee 11g
 
eBook: Reductions in Force - A Ten Point Inspection
eBook: Reductions in Force - A Ten Point InspectioneBook: Reductions in Force - A Ten Point Inspection
eBook: Reductions in Force - A Ten Point Inspection
 
3sixtycom credentials feb2014
3sixtycom credentials feb20143sixtycom credentials feb2014
3sixtycom credentials feb2014
 
Rendement is meer dan alleen het verbeteren van het energielabel
Rendement is meer dan alleen het verbeteren van het energielabelRendement is meer dan alleen het verbeteren van het energielabel
Rendement is meer dan alleen het verbeteren van het energielabel
 
OEA Summer Academy 2013
OEA Summer Academy 2013OEA Summer Academy 2013
OEA Summer Academy 2013
 
60 rosnaini mahmud
60 rosnaini mahmud60 rosnaini mahmud
60 rosnaini mahmud
 
PHP Developer Tools - Arabic
PHP Developer Tools - ArabicPHP Developer Tools - Arabic
PHP Developer Tools - Arabic
 
Gaylesbian
GaylesbianGaylesbian
Gaylesbian
 

Similaire à Liveperson DLD 2015

Apache Kafka vs. Integration Middleware (MQ, ETL, ESB)
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB)Apache Kafka vs. Integration Middleware (MQ, ETL, ESB)
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB)
Kai Wähner
 
Technical Deep Dive: Using Apache Kafka to Optimize Real-Time Analytics in Fi...
Technical Deep Dive: Using Apache Kafka to Optimize Real-Time Analytics in Fi...Technical Deep Dive: Using Apache Kafka to Optimize Real-Time Analytics in Fi...
Technical Deep Dive: Using Apache Kafka to Optimize Real-Time Analytics in Fi...
confluent
 
From Monoliths to Microservices - A Journey With Confluent With Gayathri Veal...
From Monoliths to Microservices - A Journey With Confluent With Gayathri Veal...From Monoliths to Microservices - A Journey With Confluent With Gayathri Veal...
From Monoliths to Microservices - A Journey With Confluent With Gayathri Veal...
HostedbyConfluent
 

Similaire à Liveperson DLD 2015 (20)

Apache Kafka vs. Traditional Middleware (Kai Waehner, Confluent) Frankfurt 20...
Apache Kafka vs. Traditional Middleware (Kai Waehner, Confluent) Frankfurt 20...Apache Kafka vs. Traditional Middleware (Kai Waehner, Confluent) Frankfurt 20...
Apache Kafka vs. Traditional Middleware (Kai Waehner, Confluent) Frankfurt 20...
 
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...
 
Apache Kafka - Scalable Message-Processing and more !
Apache Kafka - Scalable Message-Processing and more !Apache Kafka - Scalable Message-Processing and more !
Apache Kafka - Scalable Message-Processing and more !
 
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB)
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB)Apache Kafka vs. Integration Middleware (MQ, ETL, ESB)
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB)
 
Data Streaming with Apache Kafka & MongoDB - EMEA
Data Streaming with Apache Kafka & MongoDB - EMEAData Streaming with Apache Kafka & MongoDB - EMEA
Data Streaming with Apache Kafka & MongoDB - EMEA
 
Webinar: Data Streaming with Apache Kafka & MongoDB
Webinar: Data Streaming with Apache Kafka & MongoDBWebinar: Data Streaming with Apache Kafka & MongoDB
Webinar: Data Streaming with Apache Kafka & MongoDB
 
The Netflix Way to deal with Big Data Problems
The Netflix Way to deal with Big Data ProblemsThe Netflix Way to deal with Big Data Problems
The Netflix Way to deal with Big Data Problems
 
Neha Narkhede | Kafka Summit London 2019 Keynote | Event Streaming: Our Cloud...
Neha Narkhede | Kafka Summit London 2019 Keynote | Event Streaming: Our Cloud...Neha Narkhede | Kafka Summit London 2019 Keynote | Event Streaming: Our Cloud...
Neha Narkhede | Kafka Summit London 2019 Keynote | Event Streaming: Our Cloud...
 
Technical Deep Dive: Using Apache Kafka to Optimize Real-Time Analytics in Fi...
Technical Deep Dive: Using Apache Kafka to Optimize Real-Time Analytics in Fi...Technical Deep Dive: Using Apache Kafka to Optimize Real-Time Analytics in Fi...
Technical Deep Dive: Using Apache Kafka to Optimize Real-Time Analytics in Fi...
 
JHipster conf 2019 - Kafka Ecosystem
JHipster conf 2019 - Kafka EcosystemJHipster conf 2019 - Kafka Ecosystem
JHipster conf 2019 - Kafka Ecosystem
 
Kafka for Scale
Kafka for ScaleKafka for Scale
Kafka for Scale
 
Applying ML on your Data in Motion with AWS and Confluent | Joseph Morais, Co...
Applying ML on your Data in Motion with AWS and Confluent | Joseph Morais, Co...Applying ML on your Data in Motion with AWS and Confluent | Joseph Morais, Co...
Applying ML on your Data in Motion with AWS and Confluent | Joseph Morais, Co...
 
Robust stream processing with Apache Flink
Robust stream processing with Apache FlinkRobust stream processing with Apache Flink
Robust stream processing with Apache Flink
 
Introducing Confluent Cloud: Apache Kafka as a Service
Introducing Confluent Cloud: Apache Kafka as a Service Introducing Confluent Cloud: Apache Kafka as a Service
Introducing Confluent Cloud: Apache Kafka as a Service
 
Netflix Keystone—Cloud scale event processing pipeline
Netflix Keystone—Cloud scale event processing pipelineNetflix Keystone—Cloud scale event processing pipeline
Netflix Keystone—Cloud scale event processing pipeline
 
Streaming Data Ingest and Processing with Apache Kafka
Streaming Data Ingest and Processing with Apache KafkaStreaming Data Ingest and Processing with Apache Kafka
Streaming Data Ingest and Processing with Apache Kafka
 
Trivadis TechEvent 2016 Apache Kafka - Scalable Massage Processing and more! ...
Trivadis TechEvent 2016 Apache Kafka - Scalable Massage Processing and more! ...Trivadis TechEvent 2016 Apache Kafka - Scalable Massage Processing and more! ...
Trivadis TechEvent 2016 Apache Kafka - Scalable Massage Processing and more! ...
 
Data Streaming with Apache Kafka & MongoDB
Data Streaming with Apache Kafka & MongoDBData Streaming with Apache Kafka & MongoDB
Data Streaming with Apache Kafka & MongoDB
 
Hybrid Kafka, Taking Real-time Analytics to the Business (Cody Irwin, Google ...
Hybrid Kafka, Taking Real-time Analytics to the Business (Cody Irwin, Google ...Hybrid Kafka, Taking Real-time Analytics to the Business (Cody Irwin, Google ...
Hybrid Kafka, Taking Real-time Analytics to the Business (Cody Irwin, Google ...
 
From Monoliths to Microservices - A Journey With Confluent With Gayathri Veal...
From Monoliths to Microservices - A Journey With Confluent With Gayathri Veal...From Monoliths to Microservices - A Journey With Confluent With Gayathri Veal...
From Monoliths to Microservices - A Journey With Confluent With Gayathri Veal...
 

Plus de LivePerson

Plus de LivePerson (20)

Microservices on top of kafka
Microservices on top of kafkaMicroservices on top of kafka
Microservices on top of kafka
 
Graph QL Introduction
Graph QL IntroductionGraph QL Introduction
Graph QL Introduction
 
Kubernetes your tests! automation with docker on google cloud platform
Kubernetes your tests! automation with docker on google cloud platformKubernetes your tests! automation with docker on google cloud platform
Kubernetes your tests! automation with docker on google cloud platform
 
Growing into a proactive Data Platform
Growing into a proactive Data PlatformGrowing into a proactive Data Platform
Growing into a proactive Data Platform
 
Measure() or die()
Measure() or die() Measure() or die()
Measure() or die()
 
Resilience from Theory to Practice
Resilience from Theory to PracticeResilience from Theory to Practice
Resilience from Theory to Practice
 
System Revolution- How We Did It
System Revolution- How We Did It System Revolution- How We Did It
System Revolution- How We Did It
 
Http 2: Should I care?
Http 2: Should I care?Http 2: Should I care?
Http 2: Should I care?
 
Mobile app real-time content modifications using websockets
Mobile app real-time content modifications using websocketsMobile app real-time content modifications using websockets
Mobile app real-time content modifications using websockets
 
Mobile SDK: Considerations & Best Practices
Mobile SDK: Considerations & Best Practices Mobile SDK: Considerations & Best Practices
Mobile SDK: Considerations & Best Practices
 
Functional programming with Java 8
Functional programming with Java 8Functional programming with Java 8
Functional programming with Java 8
 
Apache Avro in LivePerson [Hebrew]
Apache Avro in LivePerson [Hebrew]Apache Avro in LivePerson [Hebrew]
Apache Avro in LivePerson [Hebrew]
 
Apache Avro and Messaging at Scale in LivePerson
Apache Avro and Messaging at Scale in LivePersonApache Avro and Messaging at Scale in LivePerson
Apache Avro and Messaging at Scale in LivePerson
 
Data compression in Modern Application
Data compression in Modern ApplicationData compression in Modern Application
Data compression in Modern Application
 
Support Office Hour Webinar - LivePerson API
Support Office Hour Webinar - LivePerson API Support Office Hour Webinar - LivePerson API
Support Office Hour Webinar - LivePerson API
 
SIP - Introduction to SIP Protocol
SIP - Introduction to SIP ProtocolSIP - Introduction to SIP Protocol
SIP - Introduction to SIP Protocol
 
Scalding: Reaching Efficient MapReduce
Scalding: Reaching Efficient MapReduceScalding: Reaching Efficient MapReduce
Scalding: Reaching Efficient MapReduce
 
Building Enterprise Level End-To-End Monitor System with Open Source Solution...
Building Enterprise Level End-To-End Monitor System with Open Source Solution...Building Enterprise Level End-To-End Monitor System with Open Source Solution...
Building Enterprise Level End-To-End Monitor System with Open Source Solution...
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
From a Kafkaesque Story to The Promised Land at LivePerson
From a Kafkaesque Story to The Promised Land at LivePersonFrom a Kafkaesque Story to The Promised Land at LivePerson
From a Kafkaesque Story to The Promised Land at LivePerson
 

Dernier

Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...
only4webmaster01
 
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
amitlee9823
 
Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts ServiceCall Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
Abortion pills in Doha Qatar (+966572737505 ! Get Cytotec
Abortion pills in Doha Qatar (+966572737505 ! Get CytotecAbortion pills in Doha Qatar (+966572737505 ! Get Cytotec
Abortion pills in Doha Qatar (+966572737505 ! Get Cytotec
Abortion pills in Riyadh +966572737505 get cytotec
 
Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...
Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...
Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...
amitlee9823
 
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night StandCall Girls In Attibele ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night Stand
amitlee9823
 
Call Girls Hsr Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
Call Girls Hsr Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...Call Girls Hsr Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
Call Girls Hsr Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
amitlee9823
 
➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men 🔝Ongole🔝 Escorts S...
➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men  🔝Ongole🔝   Escorts S...➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men  🔝Ongole🔝   Escorts S...
➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men 🔝Ongole🔝 Escorts S...
amitlee9823
 
Just Call Vip call girls kakinada Escorts ☎️9352988975 Two shot with one girl...
Just Call Vip call girls kakinada Escorts ☎️9352988975 Two shot with one girl...Just Call Vip call girls kakinada Escorts ☎️9352988975 Two shot with one girl...
Just Call Vip call girls kakinada Escorts ☎️9352988975 Two shot with one girl...
gajnagarg
 
Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...
Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...
Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...
gajnagarg
 
Call Girls In Bellandur ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Bellandur ☎ 7737669865 🥵 Book Your One night StandCall Girls In Bellandur ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Bellandur ☎ 7737669865 🥵 Book Your One night Stand
amitlee9823
 
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...
amitlee9823
 
Call Girls In Shivaji Nagar ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Shivaji Nagar ☎ 7737669865 🥵 Book Your One night StandCall Girls In Shivaji Nagar ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Shivaji Nagar ☎ 7737669865 🥵 Book Your One night Stand
amitlee9823
 
CHEAP Call Girls in Rabindra Nagar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Rabindra Nagar  (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Rabindra Nagar  (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Rabindra Nagar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men 🔝mahisagar🔝 Esc...
➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men  🔝mahisagar🔝   Esc...➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men  🔝mahisagar🔝   Esc...
➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men 🔝mahisagar🔝 Esc...
amitlee9823
 

Dernier (20)

Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...
 
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
 
Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts ServiceCall Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
Call Girls In Shalimar Bagh ( Delhi) 9953330565 Escorts Service
 
Abortion pills in Doha Qatar (+966572737505 ! Get Cytotec
Abortion pills in Doha Qatar (+966572737505 ! Get CytotecAbortion pills in Doha Qatar (+966572737505 ! Get Cytotec
Abortion pills in Doha Qatar (+966572737505 ! Get Cytotec
 
Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...
Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...
Call Girls Bannerghatta Road Just Call 👗 7737669865 👗 Top Class Call Girl Ser...
 
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night StandCall Girls In Attibele ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night Stand
 
Call Girls Hsr Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
Call Girls Hsr Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...Call Girls Hsr Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
Call Girls Hsr Layout Just Call 👗 7737669865 👗 Top Class Call Girl Service Ba...
 
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
 
➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men 🔝Ongole🔝 Escorts S...
➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men  🔝Ongole🔝   Escorts S...➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men  🔝Ongole🔝   Escorts S...
➥🔝 7737669865 🔝▻ Ongole Call-girls in Women Seeking Men 🔝Ongole🔝 Escorts S...
 
SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...
SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...
SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...
 
Just Call Vip call girls kakinada Escorts ☎️9352988975 Two shot with one girl...
Just Call Vip call girls kakinada Escorts ☎️9352988975 Two shot with one girl...Just Call Vip call girls kakinada Escorts ☎️9352988975 Two shot with one girl...
Just Call Vip call girls kakinada Escorts ☎️9352988975 Two shot with one girl...
 
Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...
Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...
Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...
 
Call Girls In Bellandur ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Bellandur ☎ 7737669865 🥵 Book Your One night StandCall Girls In Bellandur ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Bellandur ☎ 7737669865 🥵 Book Your One night Stand
 
DATA SUMMIT 24 Building Real-Time Pipelines With FLaNK
DATA SUMMIT 24  Building Real-Time Pipelines With FLaNKDATA SUMMIT 24  Building Real-Time Pipelines With FLaNK
DATA SUMMIT 24 Building Real-Time Pipelines With FLaNK
 
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...
 
(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7
(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7
(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7
 
Call Girls In Shivaji Nagar ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Shivaji Nagar ☎ 7737669865 🥵 Book Your One night StandCall Girls In Shivaji Nagar ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Shivaji Nagar ☎ 7737669865 🥵 Book Your One night Stand
 
CHEAP Call Girls in Rabindra Nagar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Rabindra Nagar  (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Rabindra Nagar  (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Rabindra Nagar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men 🔝mahisagar🔝 Esc...
➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men  🔝mahisagar🔝   Esc...➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men  🔝mahisagar🔝   Esc...
➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men 🔝mahisagar🔝 Esc...
 

Liveperson DLD 2015

  • 1. DLD. Tel-Aviv. 2015 Making Scale a Non-Issue for Real-Time Data Apps Vladi Feigin, LivePerson Kobi Salant, LivePerson
  • 2. Agenda  Intro  About LivePerson  Digital Engagements  Call Center Use Case  Architecture  Zoom-In
  • 3. Bio Vladi Feigin  System Architect in LivePerson  18 years in software development  Interests : distributed computing, data, analytics and martial arts
  • 4. Bio Kobi Salant  Data Platform Tech Lead in LivePerson  25 years in software development  Interests : Application performance, traveling and coffee
  • 5. LivePerson  We do Digital Engagements  Agile and very technological  Real Big Data and Analytics company  Really cool place to work in  One of the SaaS pioneers  6 Data Centers across the world  Founded in 1995, a public company since 2000 (NASDAQ: LPSN)  More than 18,000 customers worldwide  More than 1000 employees
  • 7. We are Big Data  1.4 Million concurrent visits  1 Million events per second  2 billion site visits per month  27 million live engagements per month  Data freshness SLA (RT flow): up to 5 seconds
  • 11. Agent
  • 12. Call Center Operating Digital engagement requires operating a call center in the most efficient way How to operate a call center in the most efficient way?  Provide operational metrics … In real-time What are the challenges?  Huge scale, load peaks, real-time calculations, high data freshness SLA
  • 14. Architecture. Real-Time data flow producer (agent) producer (sess.) producer (chat) Kafka Storm Cassandra Storm Fast topic ElasticSearch CouchBase API Consistent topic Batch layer (Hadoop) producer (conv.) producer (other) Custom Apps.
  • 15. Chat History. Example producer (agent) producer (sess.) producer (chat.) Kafka Storm Fast topic ElasticSearch API Consistent topic MR job Very low latency 99.5% of data High latency 99.999% of data
  • 16. Data Producers. Requirements  Real time  “Five nines” persistence  Small footprint  No interference with service  Multiple producers & platforms  Monolithic to service oriented Many More Services
  • 17. Data Producers. Lessons learned  Hundreds of services  Complex rollouts  Minimal logic to avoid painful fixes  Audit streaming? Split to buckets  Real time and “five nines” persistence are incompatible In House 1 Bucket Bucket
  • 18. Consistent Topic Send message to Kafka local file Persist message to local disk Kafka Bridge Send message to Kafka Fast Topic Kafka Resilience Real-time Customers Offline Customers Kafka Data Producers. Flow
  • 19. Data Model Framework Why Avro:  Schema based evolution  Performance - Untagged bytes  HDFS ecosystem support Lessons Learned:  Schema evolution breaks  Big schema (ours is over 65k) not recommended  Avoid deep nesting and multiple unions  Need a framework Chaos – Non-Schema space delimited Order – Avro Schema
  • 20. Framework Flow 1. Event is created according to Avro Schema version 3.5 2. Schema is registered into the repository (once) 3. Value 3.5 is written to header 4. Event is encoded with schema version 3.5 and added to message 5. Message is sent to Kafka 6. Message is read by consumer 7. Header is read from message 8. Schema is retrieved from repository according to scheme version 9. Event decoded using the proper Avro schema 10.Decoded event is processed 3.5 3.5 Consumer Repository
  • 21. Apache Kafka  More than 15 billion events a day  More than 1 million events per second  Hundreds of producers & consumers Why Kafka?  Scale where traditional MQs fail  Industry standard for big data log messaging  Reliable, flexible and easy to use Deployment:  We have 15 clusters across the world  Our biggest cluster has 8 nodes with more than 6TB (Avro + Kafka compression)  Maximum retention of 72 hours
  • 22. Apache Kafka. Lessons Learned  Scale horizontally for hardware resources and vertically for throughput  Look at trends of network & IO & Kafka's JMX statistics Partitions Servers Bytes in
  • 23. Apache Kafka. Lessons Learned cont.  Know your data and message sizes:  Large messages can break you  Data growth can overfill your capacity  Set the right configuration  Adding or removing a broker is not trivial  Decide on single or multiple topics
  • 24. Apache Storm Why Storm?  Growing community with good integration to Kafka  At the time, it was the leading product  Easy development and customization  The POC was successful Deployment:  We have 6 clusters across the world  Our biggest cluster has more then 30 nodes  We have 20 topologies on a single cluster  Uptime of months for a single topology
  • 25. Apache Storm. Typical topology Storm Topology KAFKA SPOUT FILTER BOLT WRITER BOLT emit emit ack ack fetch Zookeeper Kafka Fast topic writecommit
  • 26. Apache Storm. Lessons learned  Develop SDK and educate R&D  Where did my topology run last week? What is my overtime capacity?  Know your bolts, must return a timely answer  Coding is easy, performance is hard  Use isolation Capacity
  • 27. Apache Storm. Lessons learned cont.  Use local shuffling  Use Ack KAFKA SPOUT FILTER BOLT WRITER BOLT KAFKA SPOUT FILTER BOLT WRITER BOLT Local emit ACKER BOLT ACKER BOLT COMM BOLT COMM BOLT Worker A Worker B Local emit Local emit Local emit
  • 28. Summary  No one-size-fits-all solution  Ask product for a clearly defined SLA  Separate between fast and consistent data flows - they don’t merge!  Use schema for a data model - keep it flat and small  Kafka rules! It’s reliable and fast - use it  Storm has it’s toll. For some use-cases we would be using Spark Streaming today
  • 29. THANK YOU! We are hiring http://www.liveperson.com/company/careers Q/A