SlideShare une entreprise Scribd logo
1  sur  34
Télécharger pour lire hors ligne
Untangling Cluster Management with Helix

Helix team @ LinkedIn
Kishore Gopalakrishna
http://www.linkedin.com/in/kgopalak
@kishoreg1980
     Recruiting Solutions                  1
Outline


 What is Helix
 Use case 1: distributed data store
 Architecture
 Use case 2: consumer group
 Helix at LinkedIn
 Q&A


                                       2
What is Helix




  Cluster management framework for distributed systems
  using declarative state model




                                                         3
Distributed system examples




                              4
Motivation

 A system starts out simple…
 …but gets complex in the real world
 …as you address real requirements

                          Application

                           client library
  Scale
  Failover
  Bootstrapping
                           Call Routing
                             System


          Replica 1                         …

          Replica 2                         …
                                                5
Motivation
 Scale
 Failover
 Bootstrapping



 These are cluster management problems
 Helix solves them once…
 …so you can focus on your system




                                          6
Outline


 What is Helix
 Use case 1: distributed data store
 Architecture
 Use case 2: consumer group
 Helix at LinkedIn
 Q&A


                                       7
Use-Case: Distributed Data Store

 Distributed




                          P.1




      Node 1            Node 2     Node 3


                                            8
Use-Case: Distributed Data Store

 Distributed
 Partitioned




  P.1    P.2     P.3   P.5     P.6    P.7   P.9    P.1     P.11
                                                   0
  P.4                  P.8                  P.1
                                            2



        Node 1               Node 2               Node 3


                                                                  9
Use-Case: Distributed Data Store

 Distributed
 Partitioned
 Replicated




  P.1    P.2     P.3   P.5      P.6    P.7   P.9    P.1     P.11
                                                    0
  P.4    P.5     P.6   P.8      P.1    P.2   P.1    P.3     P.4
                                             2
  P.9    P.1           P.11     P.1          P.7    P.8
         0                      2

        Node 1                Node 2               Node 3


                                                                   10
Partition Layout

 Highly Available
 Master accepts writes
 Balanced distribution
                                                            Master
                                                            Slave




  P.1    P.2     P.3   P.5      P.6    P.7   P.9    P.1       P.11
                                                    0
  P.4    P.5     P.6   P.8      P.1    P.2   P.1    P.3       P.4
                                             2
  P.9    P.1           P.11     P.1          P.7    P.8
         0                      2

        Node 1                Node 2               Node 3


                                                                     11
Failover




                                                            Master
                                                            Slave




  P.1    P.2     P.3   P.5      P.6    P.7   P.9    P.1       P.11
                                                    0
  P.4    P.5     P.6   P.8      P.1    P.2   P.1    P.3       P.4
                                             2
  P.9    P.1           P.11     P.1          P.7    P.8
         0                      2

        Node 1                Node 2               Node 3
Add Capacity


  P.1    P.5     P.9


  P.1    P.1     P.8
  0      2
                                                            Master
        Node 4                                              Slave




  P.1    P.2     P.3   P.5      P.6    P.7   P.9    P.1       P.11
                                                    0
  P.4    P.5     P.6   P.8      P.1    P.2   P.1    P.3       P.4
                                             2
  P.9    P.1           P.11     P.1          P.7    P.8
         0                      2

        Node 1                Node 2               Node 3
Use-case requirements

  • Partition constraints
     • 1 master per partition
     • Balance partitions across cluster
     • No single-point-of-failure: replicas on different nodes
  • Handle failures: transfer mastership
  • Elasticity
     • Distribute workload across added nodes
      Minimize partition movement
  • Meet SLAs
      Throttle concurrent data movement




                                                                 14
Declarative Problem Statement


 State machine                                 Constraints
   – States                                               – States
        offline, slave, master                           – Transitions
   – Transitions                                Objective
        O-S, S-O, S-M, M-S
                                                          – Partition placement


                                         COUNT=2        minimize(maxnj∈N S(nj) )
                           t1≤ 5
                                           S
                               t1                          t2

                                    t3             t4
                         O                                      M   COUNT=1        minimize(maxnj∈N M(nj) )




                                                                                                          15
Generalizing cluster management



                   STATE MACHINE




          CONSTRAINTS              OBJECTIVE

                                               16
Outline


 What is Helix
 Use case 1: distributed data store
 Architecture
 Use case 2: consumer group
 Helix at LinkedIn
 Q&A


                                       17
Helix Based System Roles




                        RESPONSE      COMMAND




   P.1     P.2    P.3          P.5     P.6    P.7   P.9     P.1    P.1
                                                            0      1

   P.4     P.5    P.6          P.8     P.1    P.2   P.1     P.3    P.4
                                       P.1
                                                    2

   P.9     P.1                 P.1     P.1          P.7     P.8
           0                   1       2


         Node 1                      Node 2               Node 3

                                                                         18
Controller Execution Flow




                             P1:OS
                            P1:SM
Controller fault tolerance




                             20
Controller fault tolerance




                             21
Participant Plug-in code




                           22
Spectator Plug-in code




                         23
Benefits

 Cluster operations “just work”
   – Bootstrapping
   – Failover
   – Add nodes
 Global vs Local
   – Helix Controller
        Global knowledge
        Makes cluster decisions
   – Participant
        Local knowledge
        Follows orders




                                   24
Outline


 What is Helix
 Use case 1: distributed data store
 Architecture
 Use case 2: consumer group
 Helix at LinkedIn
 Q&A


                                       25
consumer group




                 26
Consumer group: Scaling




                          27
Consumer group: Fault tolerance




                                  28
Consumer group: state model




                              29
Outline


 What is Helix
 Use case 1: distributed data store
 Architecture
 Use case 2: consumer group
 Helix at LinkedIn
 Q&A


                                       30
Helix usage at LinkedIn (Pictures)

 Espresso
   – a timeline-consistent, distributed data store
 Databus
   – a change data capture service
 Search as a Service
   – a multi-tenant service for multiple search applications
 More planned




                                                               31
Summary

 Generic framework
 Easy to use: declarative model
 Easy to operate




                                   32
Helix: Future Roadmap


•    Features
      • Span multiple data centers
      • Load balancing


•    Announcement
      • Open source: https://github.com/linkedin/helix
      • Apache incubation
      • New contributors
Questions?




             34

Contenu connexe

Tendances

Apache Hiveの今とこれから
Apache Hiveの今とこれからApache Hiveの今とこれから
Apache Hiveの今とこれからYifeng Jiang
 
Exactly-Once Financial Data Processing at Scale with Flink and Pinot
Exactly-Once Financial Data Processing at Scale with Flink and PinotExactly-Once Financial Data Processing at Scale with Flink and Pinot
Exactly-Once Financial Data Processing at Scale with Flink and PinotFlink Forward
 
Scylla Summit 2022: Scylla 5.0 New Features, Part 1
Scylla Summit 2022: Scylla 5.0 New Features, Part 1Scylla Summit 2022: Scylla 5.0 New Features, Part 1
Scylla Summit 2022: Scylla 5.0 New Features, Part 1ScyllaDB
 
Embulk, an open-source plugin-based parallel bulk data loader
Embulk, an open-source plugin-based parallel bulk data loaderEmbulk, an open-source plugin-based parallel bulk data loader
Embulk, an open-source plugin-based parallel bulk data loaderSadayuki Furuhashi
 
ksqlDB로 실시간 데이터 변환 및 스트림 처리
ksqlDB로 실시간 데이터 변환 및 스트림 처리ksqlDB로 실시간 데이터 변환 및 스트림 처리
ksqlDB로 실시간 데이터 변환 및 스트림 처리confluent
 
Solving PostgreSQL wicked problems
Solving PostgreSQL wicked problemsSolving PostgreSQL wicked problems
Solving PostgreSQL wicked problemsAlexander Korotkov
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法についてYuji Otani
 
Apache Flink in the Cloud-Native Era
Apache Flink in the Cloud-Native EraApache Flink in the Cloud-Native Era
Apache Flink in the Cloud-Native EraFlink Forward
 
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~NTT DATA OSS Professional Services
 
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)NTT DATA OSS Professional Services
 
PostgreSQLでスケールアウト
PostgreSQLでスケールアウトPostgreSQLでスケールアウト
PostgreSQLでスケールアウトMasahiko Sawada
 
Bootstrapping state in Apache Flink
Bootstrapping state in Apache FlinkBootstrapping state in Apache Flink
Bootstrapping state in Apache FlinkDataWorks Summit
 
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方Yoshiyasu SAEKI
 
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理NTT DATA Technology & Innovation
 
速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)
速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)
速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)NTT DATA Technology & Innovation
 
Apache Kafka 0.11 の Exactly Once Semantics
Apache Kafka 0.11 の Exactly Once SemanticsApache Kafka 0.11 の Exactly Once Semantics
Apache Kafka 0.11 の Exactly Once SemanticsYoshiyasu SAEKI
 
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけRDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけRecruit Technologies
 
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話Kumazaki Hiroki
 
PostgreSQLアーキテクチャ入門(INSIGHT OUT 2011)
PostgreSQLアーキテクチャ入門(INSIGHT OUT 2011)PostgreSQLアーキテクチャ入門(INSIGHT OUT 2011)
PostgreSQLアーキテクチャ入門(INSIGHT OUT 2011)Uptime Technologies LLC (JP)
 
YugaByte DB Internals - Storage Engine and Transactions
YugaByte DB Internals - Storage Engine and Transactions YugaByte DB Internals - Storage Engine and Transactions
YugaByte DB Internals - Storage Engine and Transactions Yugabyte
 

Tendances (20)

Apache Hiveの今とこれから
Apache Hiveの今とこれからApache Hiveの今とこれから
Apache Hiveの今とこれから
 
Exactly-Once Financial Data Processing at Scale with Flink and Pinot
Exactly-Once Financial Data Processing at Scale with Flink and PinotExactly-Once Financial Data Processing at Scale with Flink and Pinot
Exactly-Once Financial Data Processing at Scale with Flink and Pinot
 
Scylla Summit 2022: Scylla 5.0 New Features, Part 1
Scylla Summit 2022: Scylla 5.0 New Features, Part 1Scylla Summit 2022: Scylla 5.0 New Features, Part 1
Scylla Summit 2022: Scylla 5.0 New Features, Part 1
 
Embulk, an open-source plugin-based parallel bulk data loader
Embulk, an open-source plugin-based parallel bulk data loaderEmbulk, an open-source plugin-based parallel bulk data loader
Embulk, an open-source plugin-based parallel bulk data loader
 
ksqlDB로 실시간 데이터 변환 및 스트림 처리
ksqlDB로 실시간 데이터 변환 및 스트림 처리ksqlDB로 실시간 데이터 변환 및 스트림 처리
ksqlDB로 실시간 데이터 변환 및 스트림 처리
 
Solving PostgreSQL wicked problems
Solving PostgreSQL wicked problemsSolving PostgreSQL wicked problems
Solving PostgreSQL wicked problems
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法について
 
Apache Flink in the Cloud-Native Era
Apache Flink in the Cloud-Native EraApache Flink in the Cloud-Native Era
Apache Flink in the Cloud-Native Era
 
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
 
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
 
PostgreSQLでスケールアウト
PostgreSQLでスケールアウトPostgreSQLでスケールアウト
PostgreSQLでスケールアウト
 
Bootstrapping state in Apache Flink
Bootstrapping state in Apache FlinkBootstrapping state in Apache Flink
Bootstrapping state in Apache Flink
 
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
 
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
 
速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)
速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)
速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)
 
Apache Kafka 0.11 の Exactly Once Semantics
Apache Kafka 0.11 の Exactly Once SemanticsApache Kafka 0.11 の Exactly Once Semantics
Apache Kafka 0.11 の Exactly Once Semantics
 
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけRDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
 
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話
 
PostgreSQLアーキテクチャ入門(INSIGHT OUT 2011)
PostgreSQLアーキテクチャ入門(INSIGHT OUT 2011)PostgreSQLアーキテクチャ入門(INSIGHT OUT 2011)
PostgreSQLアーキテクチャ入門(INSIGHT OUT 2011)
 
YugaByte DB Internals - Storage Engine and Transactions
YugaByte DB Internals - Storage Engine and Transactions YugaByte DB Internals - Storage Engine and Transactions
YugaByte DB Internals - Storage Engine and Transactions
 

En vedette

Literatura. La Il·lustració
Literatura. La Il·lustracióLiteratura. La Il·lustració
Literatura. La Il·lustraciómsimo6
 
2015 Utah Legislative Session, What Happened and What's Next
2015 Utah Legislative Session, What Happened and What's Next2015 Utah Legislative Session, What Happened and What's Next
2015 Utah Legislative Session, What Happened and What's NextParsons Behle & Latimer
 
Trabajo grupo tecnologia
Trabajo grupo tecnologiaTrabajo grupo tecnologia
Trabajo grupo tecnologiayanrivas1
 
Praktikum8 komdat_using FTP
Praktikum8 komdat_using FTPPraktikum8 komdat_using FTP
Praktikum8 komdat_using FTPJefri Fahrian
 
Prakt.jarkom1 jefri tugas ke 1 - INSTALASI MIKROTIK OS
Prakt.jarkom1 jefri tugas ke 1 - INSTALASI MIKROTIK OSPrakt.jarkom1 jefri tugas ke 1 - INSTALASI MIKROTIK OS
Prakt.jarkom1 jefri tugas ke 1 - INSTALASI MIKROTIK OSJefri Fahrian
 
Tugas e learning2 jarkom3 - Dynamic Routing (RIP)
Tugas e learning2 jarkom3 - Dynamic Routing (RIP)Tugas e learning2 jarkom3 - Dynamic Routing (RIP)
Tugas e learning2 jarkom3 - Dynamic Routing (RIP)Jefri Fahrian
 
Customer Choice and Direct Delivery: Competitive Options for Commercial Custo...
Customer Choice and Direct Delivery: Competitive Options for Commercial Custo...Customer Choice and Direct Delivery: Competitive Options for Commercial Custo...
Customer Choice and Direct Delivery: Competitive Options for Commercial Custo...Parsons Behle & Latimer
 
Mgea 3-edicion-web1
Mgea 3-edicion-web1Mgea 3-edicion-web1
Mgea 3-edicion-web1Eduardo Rom
 
Institute of Fisheries Management (London Branch) event
Institute of Fisheries Management (London Branch) eventInstitute of Fisheries Management (London Branch) event
Institute of Fisheries Management (London Branch) eventLancaster University
 
Law of attraction new
Law of attraction newLaw of attraction new
Law of attraction newNeel Bajpai
 
Praktikum7 komdat_setting linksys access point
Praktikum7 komdat_setting linksys access pointPraktikum7 komdat_setting linksys access point
Praktikum7 komdat_setting linksys access pointJefri Fahrian
 
Praktikum jaringan komputer 3 http server eksperimen
Praktikum jaringan komputer 3 http server eksperimenPraktikum jaringan komputer 3 http server eksperimen
Praktikum jaringan komputer 3 http server eksperimenJefri Fahrian
 

En vedette (20)

Literatura. La Il·lustració
Literatura. La Il·lustracióLiteratura. La Il·lustració
Literatura. La Il·lustració
 
It's And, Not Or
It's And, Not OrIt's And, Not Or
It's And, Not Or
 
Parent overview
Parent overviewParent overview
Parent overview
 
2015 Utah Legislative Session, What Happened and What's Next
2015 Utah Legislative Session, What Happened and What's Next2015 Utah Legislative Session, What Happened and What's Next
2015 Utah Legislative Session, What Happened and What's Next
 
Trabajo grupo tecnologia
Trabajo grupo tecnologiaTrabajo grupo tecnologia
Trabajo grupo tecnologia
 
Praktikum8 komdat_using FTP
Praktikum8 komdat_using FTPPraktikum8 komdat_using FTP
Praktikum8 komdat_using FTP
 
Prakt.jarkom1 jefri tugas ke 1 - INSTALASI MIKROTIK OS
Prakt.jarkom1 jefri tugas ke 1 - INSTALASI MIKROTIK OSPrakt.jarkom1 jefri tugas ke 1 - INSTALASI MIKROTIK OS
Prakt.jarkom1 jefri tugas ke 1 - INSTALASI MIKROTIK OS
 
Tugas e learning2 jarkom3 - Dynamic Routing (RIP)
Tugas e learning2 jarkom3 - Dynamic Routing (RIP)Tugas e learning2 jarkom3 - Dynamic Routing (RIP)
Tugas e learning2 jarkom3 - Dynamic Routing (RIP)
 
Sintra
SintraSintra
Sintra
 
Customer Choice and Direct Delivery: Competitive Options for Commercial Custo...
Customer Choice and Direct Delivery: Competitive Options for Commercial Custo...Customer Choice and Direct Delivery: Competitive Options for Commercial Custo...
Customer Choice and Direct Delivery: Competitive Options for Commercial Custo...
 
Gree klíma
Gree klímaGree klíma
Gree klíma
 
Mgea 3-edicion-web1
Mgea 3-edicion-web1Mgea 3-edicion-web1
Mgea 3-edicion-web1
 
La palta microeconomia
La palta microeconomiaLa palta microeconomia
La palta microeconomia
 
Bramma Consulting Profile
Bramma Consulting ProfileBramma Consulting Profile
Bramma Consulting Profile
 
Institute of Fisheries Management (London Branch) event
Institute of Fisheries Management (London Branch) eventInstitute of Fisheries Management (London Branch) event
Institute of Fisheries Management (London Branch) event
 
Law of attraction new
Law of attraction newLaw of attraction new
Law of attraction new
 
Praktikum7 komdat_setting linksys access point
Praktikum7 komdat_setting linksys access pointPraktikum7 komdat_setting linksys access point
Praktikum7 komdat_setting linksys access point
 
Praktikum jaringan komputer 3 http server eksperimen
Praktikum jaringan komputer 3 http server eksperimenPraktikum jaringan komputer 3 http server eksperimen
Praktikum jaringan komputer 3 http server eksperimen
 
Paper1 jefri string
Paper1 jefri stringPaper1 jefri string
Paper1 jefri string
 
Ring2us | SudWebExpo
Ring2us | SudWebExpoRing2us | SudWebExpo
Ring2us | SudWebExpo
 

Similaire à Untangling Cluster Management with Helix

Apache Helix presentation at SOCC 2012
Apache Helix presentation at SOCC 2012Apache Helix presentation at SOCC 2012
Apache Helix presentation at SOCC 2012Kishore Gopalakrishna
 
Building Distributed Systems Using Helix
Building Distributed Systems Using HelixBuilding Distributed Systems Using Helix
Building Distributed Systems Using HelixAmy W. Tang
 
Apache Helix presentation at ApacheCon 2013
Apache Helix presentation at ApacheCon 2013Apache Helix presentation at ApacheCon 2013
Apache Helix presentation at ApacheCon 2013Kishore Gopalakrishna
 
Data driven testing: Case study with Apache Helix
Data driven testing: Case study with Apache HelixData driven testing: Case study with Apache Helix
Data driven testing: Case study with Apache HelixKishore Gopalakrishna
 
Node.js Explained
Node.js ExplainedNode.js Explained
Node.js ExplainedJeff Kunkle
 
Peer to-peer
Peer to-peerPeer to-peer
Peer to-peerMohd Arif
 
Hibari presentation at NOSQL AFTERNOON in JAPAN on Nov 1,2010
Hibari presentation at NOSQL AFTERNOON in JAPAN on Nov 1,2010Hibari presentation at NOSQL AFTERNOON in JAPAN on Nov 1,2010
Hibari presentation at NOSQL AFTERNOON in JAPAN on Nov 1,2010CLOUDIAN KK
 

Similaire à Untangling Cluster Management with Helix (10)

Apache Helix presentation at SOCC 2012
Apache Helix presentation at SOCC 2012Apache Helix presentation at SOCC 2012
Apache Helix presentation at SOCC 2012
 
Building Distributed Systems Using Helix
Building Distributed Systems Using HelixBuilding Distributed Systems Using Helix
Building Distributed Systems Using Helix
 
Apache Helix presentation at ApacheCon 2013
Apache Helix presentation at ApacheCon 2013Apache Helix presentation at ApacheCon 2013
Apache Helix presentation at ApacheCon 2013
 
Data driven testing: Case study with Apache Helix
Data driven testing: Case study with Apache HelixData driven testing: Case study with Apache Helix
Data driven testing: Case study with Apache Helix
 
Node.js Explained
Node.js ExplainedNode.js Explained
Node.js Explained
 
Raid_intro.ppt
Raid_intro.pptRaid_intro.ppt
Raid_intro.ppt
 
Peer to-peer
Peer to-peerPeer to-peer
Peer to-peer
 
Yokozuna
YokozunaYokozuna
Yokozuna
 
Hibari presentation at NOSQL AFTERNOON in JAPAN on Nov 1,2010
Hibari presentation at NOSQL AFTERNOON in JAPAN on Nov 1,2010Hibari presentation at NOSQL AFTERNOON in JAPAN on Nov 1,2010
Hibari presentation at NOSQL AFTERNOON in JAPAN on Nov 1,2010
 
Apache Helix presentation at Vmware
Apache Helix presentation at VmwareApache Helix presentation at Vmware
Apache Helix presentation at Vmware
 

Plus de Amy W. Tang

Data Infrastructure at LinkedIn
Data Infrastructure at LinkedInData Infrastructure at LinkedIn
Data Infrastructure at LinkedInAmy W. Tang
 
LinkedIn Segmentation & Targeting Platform: A Big Data Application
LinkedIn Segmentation & Targeting Platform: A Big Data ApplicationLinkedIn Segmentation & Targeting Platform: A Big Data Application
LinkedIn Segmentation & Targeting Platform: A Big Data ApplicationAmy W. Tang
 
Building a Real-Time Data Pipeline: Apache Kafka at LinkedIn
Building a Real-Time Data Pipeline: Apache Kafka at LinkedInBuilding a Real-Time Data Pipeline: Apache Kafka at LinkedIn
Building a Real-Time Data Pipeline: Apache Kafka at LinkedInAmy W. Tang
 
Espresso: LinkedIn's Distributed Data Serving Platform (Talk)
Espresso: LinkedIn's Distributed Data Serving Platform (Talk)Espresso: LinkedIn's Distributed Data Serving Platform (Talk)
Espresso: LinkedIn's Distributed Data Serving Platform (Talk)Amy W. Tang
 
Espresso: LinkedIn's Distributed Data Serving Platform (Paper)
Espresso: LinkedIn's Distributed Data Serving Platform (Paper)Espresso: LinkedIn's Distributed Data Serving Platform (Paper)
Espresso: LinkedIn's Distributed Data Serving Platform (Paper)Amy W. Tang
 
LinkedIn Graph Presentation
LinkedIn Graph PresentationLinkedIn Graph Presentation
LinkedIn Graph PresentationAmy W. Tang
 
Data Infrastructure at LinkedIn
Data Infrastructure at LinkedIn Data Infrastructure at LinkedIn
Data Infrastructure at LinkedIn Amy W. Tang
 
Data Infrastructure at LinkedIn
Data Infrastructure at LinkedInData Infrastructure at LinkedIn
Data Infrastructure at LinkedInAmy W. Tang
 
Voldemort on Solid State Drives
Voldemort on Solid State DrivesVoldemort on Solid State Drives
Voldemort on Solid State DrivesAmy W. Tang
 
All Aboard the Databus
All Aboard the DatabusAll Aboard the Databus
All Aboard the DatabusAmy W. Tang
 
Introduction to Databus
Introduction to DatabusIntroduction to Databus
Introduction to DatabusAmy W. Tang
 
A Small Overview of Big Data Products, Analytics, and Infrastructure at LinkedIn
A Small Overview of Big Data Products, Analytics, and Infrastructure at LinkedInA Small Overview of Big Data Products, Analytics, and Infrastructure at LinkedIn
A Small Overview of Big Data Products, Analytics, and Infrastructure at LinkedInAmy W. Tang
 

Plus de Amy W. Tang (12)

Data Infrastructure at LinkedIn
Data Infrastructure at LinkedInData Infrastructure at LinkedIn
Data Infrastructure at LinkedIn
 
LinkedIn Segmentation & Targeting Platform: A Big Data Application
LinkedIn Segmentation & Targeting Platform: A Big Data ApplicationLinkedIn Segmentation & Targeting Platform: A Big Data Application
LinkedIn Segmentation & Targeting Platform: A Big Data Application
 
Building a Real-Time Data Pipeline: Apache Kafka at LinkedIn
Building a Real-Time Data Pipeline: Apache Kafka at LinkedInBuilding a Real-Time Data Pipeline: Apache Kafka at LinkedIn
Building a Real-Time Data Pipeline: Apache Kafka at LinkedIn
 
Espresso: LinkedIn's Distributed Data Serving Platform (Talk)
Espresso: LinkedIn's Distributed Data Serving Platform (Talk)Espresso: LinkedIn's Distributed Data Serving Platform (Talk)
Espresso: LinkedIn's Distributed Data Serving Platform (Talk)
 
Espresso: LinkedIn's Distributed Data Serving Platform (Paper)
Espresso: LinkedIn's Distributed Data Serving Platform (Paper)Espresso: LinkedIn's Distributed Data Serving Platform (Paper)
Espresso: LinkedIn's Distributed Data Serving Platform (Paper)
 
LinkedIn Graph Presentation
LinkedIn Graph PresentationLinkedIn Graph Presentation
LinkedIn Graph Presentation
 
Data Infrastructure at LinkedIn
Data Infrastructure at LinkedIn Data Infrastructure at LinkedIn
Data Infrastructure at LinkedIn
 
Data Infrastructure at LinkedIn
Data Infrastructure at LinkedInData Infrastructure at LinkedIn
Data Infrastructure at LinkedIn
 
Voldemort on Solid State Drives
Voldemort on Solid State DrivesVoldemort on Solid State Drives
Voldemort on Solid State Drives
 
All Aboard the Databus
All Aboard the DatabusAll Aboard the Databus
All Aboard the Databus
 
Introduction to Databus
Introduction to DatabusIntroduction to Databus
Introduction to Databus
 
A Small Overview of Big Data Products, Analytics, and Infrastructure at LinkedIn
A Small Overview of Big Data Products, Analytics, and Infrastructure at LinkedInA Small Overview of Big Data Products, Analytics, and Infrastructure at LinkedIn
A Small Overview of Big Data Products, Analytics, and Infrastructure at LinkedIn
 

Dernier

TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 

Dernier (20)

TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 

Untangling Cluster Management with Helix

  • 1. Untangling Cluster Management with Helix Helix team @ LinkedIn Kishore Gopalakrishna http://www.linkedin.com/in/kgopalak @kishoreg1980 Recruiting Solutions 1
  • 2. Outline  What is Helix  Use case 1: distributed data store  Architecture  Use case 2: consumer group  Helix at LinkedIn  Q&A 2
  • 3. What is Helix Cluster management framework for distributed systems using declarative state model 3
  • 5. Motivation  A system starts out simple…  …but gets complex in the real world  …as you address real requirements Application client library  Scale  Failover  Bootstrapping Call Routing System Replica 1 … Replica 2 … 5
  • 6. Motivation  Scale  Failover  Bootstrapping  These are cluster management problems  Helix solves them once…  …so you can focus on your system 6
  • 7. Outline  What is Helix  Use case 1: distributed data store  Architecture  Use case 2: consumer group  Helix at LinkedIn  Q&A 7
  • 8. Use-Case: Distributed Data Store  Distributed P.1 Node 1 Node 2 Node 3 8
  • 9. Use-Case: Distributed Data Store  Distributed  Partitioned P.1 P.2 P.3 P.5 P.6 P.7 P.9 P.1 P.11 0 P.4 P.8 P.1 2 Node 1 Node 2 Node 3 9
  • 10. Use-Case: Distributed Data Store  Distributed  Partitioned  Replicated P.1 P.2 P.3 P.5 P.6 P.7 P.9 P.1 P.11 0 P.4 P.5 P.6 P.8 P.1 P.2 P.1 P.3 P.4 2 P.9 P.1 P.11 P.1 P.7 P.8 0 2 Node 1 Node 2 Node 3 10
  • 11. Partition Layout  Highly Available  Master accepts writes  Balanced distribution Master Slave P.1 P.2 P.3 P.5 P.6 P.7 P.9 P.1 P.11 0 P.4 P.5 P.6 P.8 P.1 P.2 P.1 P.3 P.4 2 P.9 P.1 P.11 P.1 P.7 P.8 0 2 Node 1 Node 2 Node 3 11
  • 12. Failover Master Slave P.1 P.2 P.3 P.5 P.6 P.7 P.9 P.1 P.11 0 P.4 P.5 P.6 P.8 P.1 P.2 P.1 P.3 P.4 2 P.9 P.1 P.11 P.1 P.7 P.8 0 2 Node 1 Node 2 Node 3
  • 13. Add Capacity P.1 P.5 P.9 P.1 P.1 P.8 0 2 Master Node 4 Slave P.1 P.2 P.3 P.5 P.6 P.7 P.9 P.1 P.11 0 P.4 P.5 P.6 P.8 P.1 P.2 P.1 P.3 P.4 2 P.9 P.1 P.11 P.1 P.7 P.8 0 2 Node 1 Node 2 Node 3
  • 14. Use-case requirements • Partition constraints • 1 master per partition • Balance partitions across cluster • No single-point-of-failure: replicas on different nodes • Handle failures: transfer mastership • Elasticity • Distribute workload across added nodes  Minimize partition movement • Meet SLAs  Throttle concurrent data movement 14
  • 15. Declarative Problem Statement  State machine  Constraints – States – States  offline, slave, master – Transitions – Transitions  Objective  O-S, S-O, S-M, M-S – Partition placement COUNT=2 minimize(maxnj∈N S(nj) ) t1≤ 5 S t1 t2 t3 t4 O M COUNT=1 minimize(maxnj∈N M(nj) ) 15
  • 16. Generalizing cluster management STATE MACHINE CONSTRAINTS OBJECTIVE 16
  • 17. Outline  What is Helix  Use case 1: distributed data store  Architecture  Use case 2: consumer group  Helix at LinkedIn  Q&A 17
  • 18. Helix Based System Roles RESPONSE COMMAND P.1 P.2 P.3 P.5 P.6 P.7 P.9 P.1 P.1 0 1 P.4 P.5 P.6 P.8 P.1 P.2 P.1 P.3 P.4 P.1 2 P.9 P.1 P.1 P.1 P.7 P.8 0 1 2 Node 1 Node 2 Node 3 18
  • 19. Controller Execution Flow P1:OS P1:SM
  • 24. Benefits  Cluster operations “just work” – Bootstrapping – Failover – Add nodes  Global vs Local – Helix Controller  Global knowledge  Makes cluster decisions – Participant  Local knowledge  Follows orders 24
  • 25. Outline  What is Helix  Use case 1: distributed data store  Architecture  Use case 2: consumer group  Helix at LinkedIn  Q&A 25
  • 28. Consumer group: Fault tolerance 28
  • 30. Outline  What is Helix  Use case 1: distributed data store  Architecture  Use case 2: consumer group  Helix at LinkedIn  Q&A 30
  • 31. Helix usage at LinkedIn (Pictures)  Espresso – a timeline-consistent, distributed data store  Databus – a change data capture service  Search as a Service – a multi-tenant service for multiple search applications  More planned 31
  • 32. Summary  Generic framework  Easy to use: declarative model  Easy to operate 32
  • 33. Helix: Future Roadmap • Features • Span multiple data centers • Load balancing • Announcement • Open source: https://github.com/linkedin/helix • Apache incubation • New contributors