SlideShare a Scribd company logo
Cassandra – A Decentralized Structured Storage SystemGemini Mobile Technologies, Inc.NOSQL Tokyo Reading Group(http://nosqlsummer.org/city/tokyo)August 25, 2010Tags: #cassandra #nosql2010/8/23Gemini Mobile Technologies, Inc.1
Cassandra: A Decentralized Structured Storage SystemAuthors: AvinashLakshman, PrashantMalik.Abstract:  Cassandra is a distributed storage system for managing very large amounts of structured data spread out across many commodity servers, while providing highly available service with no single point of failure. Cassandra aims to run on top of an infrastructure of hundreds of nodes (possibly spread across different data centers). At this scale, small and large components fail continuously. The way Cassandra manages the persistent state in the face of these failures drives the reliability and scalability of the software systems relying on this service. While in many ways Cassandra resembles a database and shares many design and implementation strategies therewith, Cassandra does not support a full relational data model; instead, it provides clients with a simple data model that supports dynamic control over data layout and format. …Appeared in:3rd ACM SIGOPS International Workshop on Large Scale Distributed Systems and Middleware, 2009.http://www.cs.cornell.edu/projects/ladis2009/papers/lakshman-ladis2009.pdf2010/8/23Gemini Mobile Technologies, Inc.  All rights reserved.2
1. Introduction and 2. Related WorkFacebook inbox search: Enables users to search through their inbox.Launched 6/2008.  Highly scalable: 250M users.Tolerant for server/network failures.Very high write throughput: “billions of writes per day”.Replicate data across data centers.Related WorkDistributed file systems: Ficus, Coda, Farsite, GFS, Bayou.Storage systems: Dynamo, Bigtable.“The Apache Cassandra Project develops a highly scalable second-generation distributed database, bringing together Dynamo's fully distributed design and Bigtable's ColumnFamily-based data model.”2010/8/23Gemini Mobile Technologies, Inc.  All rights reserved.3
3. Data ModelMulti-level Index:Table:  Set of rowsKey:  Identifies the rowKey is arbitrary byte[].Each row can contain a variable number of columns/CFs.   No need for rows to contain same columns/CFs.Each row can contain millions of columns/CFsAtomic operations per key per replica.3.  ColumnName: Identify the column value(s).Can be either “Column”, “ColumnFamily”, “ColumnFamily:Column”, “ColumnFamily:ColumnFamily”, etc.ColumnFamily (CF) is a group of Columns.CFs and Columns are sorted.  Time-based or name-based.Columns can be added/deleted efficiently during run-time.2010/8/23Gemini Mobile Technologies, Inc.  All rights reserved.4
Data Model Example: Inbox Search2010/8/23Gemini Mobile Technologies, Inc.  All rights reserved.5Query: Find all messages of user3 with “hello”.Get(UserMessages, “user3”, “term:hello”)Table: UserMessagesKey:<userid>CF:”term”CF: <word>Name:<timestamp>  Val:<messageID>“term”user3“hello”“how”“you”time4time12time4time4time12time1msg10msg81msg10msg10msg81msg03
4. APISimple get/put operations:Insert(table, key, rowMutation)Single columns, Multiple columns, Batch of multiple keys.Get(table, key, columnName)Key: Single key or key range.columnName: “Slice” range or name.Delete(table, key, columnName)Also, specify Consistency Level.2010/8/23Gemini Mobile Technologies, Inc.  All rights reserved.6
5. System ArchitectureData partitioned to subset of nodes: Consistent HashingData replicated to multiple nodes for redundancy, performance:	Quorum using “preference list” of nodesNode management:Membership algorithm to know which nodes are up/down.“Accrual failure detection + Gossip”Bootstrapping to add node.Manual operation + “Seed” nodes2010/8/23Gemini Mobile Technologies, Inc.  All rights reserved.7ConsistentHashNodeANodeCNodeDGossipNodeB
5.1 Partitioning Algorithm: Consistent HashingEach node is assigned a random position on ring.Key k is hashed to fixed circular space.Nodes are assigned by walking clockwise from hash location.Example: Nodes A, B, C, D, E, F, G assigned to ring.Hash(k) is between A and B.Since 3 replicas, choose next 3 nodes on ring (i.e., B, C, D).2010/8/23Gemini Mobile Technologies, Inc.  All rights reserved.8Hash(k)ANode assignmentBGCFDE
5.1 Consistent HashingKey advantage:  Adding, deleting, re-allocating nodes is cheap.  It affects only immediate neighbor node keys.Hash functionLocalityLoad distribution.Load-balancing by moving nodes toward heavily-loaded nodes.2010/8/23Gemini Mobile Technologies, Inc.  All rights reserved.9
5.2 ReplicationEach data item is replicated at multiple nodes (N).Each key is assigned to a “coordinator” node by consistent hash function.“Coordinator” node replicates the key to an additional N-1 nodes.“Consistency Level” is set by client per read/write request.ZERO, ONE, ALL, ANY, QUORUMZookeeper used to elect leader node and distribute “preference list”Leader node owns “preference list” that maps key to node list.2010/8/23Gemini Mobile Technologies, Inc.  All rights reserved.10
5.3 MembershipEach node locally determines if any other node in the system is up/down.Φ (phi) Accrual Failure DetectorInstead of boolean value (up or down), compute a numeric value Φ representing suspicion level for each monitored nodes.Φ is computed using inter-arrival times of gossip messages from other nodes in the cluster.If Φ exceeds a particular threshold, then node is considered as “down”.In experiment of 100 nodes with threshold of 5, average time to detect failure: 15 seconds.2010/8/23Gemini Mobile Technologies, Inc.  All rights reserved.11
5.4 Bootstrapping, 5.5 Scaling the ClusterNew nodes check configuration for “seed” nodes to get initial gossip data like “preference” lists.Add/remove of nodes is not done automatically.  Requires manual command-line operation.New node needs to have data moved to it from other nodes.  Operationally, 40MB/s.  Working to improve this by copying data from multiple replicas a la BitTorrent.2010/8/23Gemini Mobile Technologies, Inc.  All rights reserved.12
5.6 Local Persistence2010/8/23Gemini Mobile Technologies, Inc.  All rights reserved.13READ Use cache data
 Bloom filter to reduce SSTable access
 Check SSTables in time-orderIn-MemoryTable Dumped to SSTable when fullCommitLogSS TableSS TableSS TableWRITESSTable No reads, seeks

More Related Content

PDF
Spark
PDF
JovianDATA MDX Engine Comad oct 22 2011
PDF
MapReduce in Cloud Computing
PPT
Cassandra 1.2 by Eddie Satterly
PPTX
MapReduce and parallel DBMSs: friends or foes?
PDF
Expressing and Exploiting Multi-Dimensional Locality in DASH
PDF
Application of MapReduce in Cloud Computing
PPTX
Stratosphere with big_data_analytics
Spark
JovianDATA MDX Engine Comad oct 22 2011
MapReduce in Cloud Computing
Cassandra 1.2 by Eddie Satterly
MapReduce and parallel DBMSs: friends or foes?
Expressing and Exploiting Multi-Dimensional Locality in DASH
Application of MapReduce in Cloud Computing
Stratosphere with big_data_analytics

What's hot (20)

PDF
Applying stratosphere for big data analytics
PDF
Jovian DATA: A multidimensional database for the cloud
PDF
Relational Algebra and MapReduce
PPTX
Data-Intensive Technologies for Cloud Computing
PPT
Hadoop Map Reduce
PPTX
Map reduce presentation
PDF
HadoopXML: A Suite for Parallel Processing of Massive XML Data with Multiple ...
PDF
Research Inventy : International Journal of Engineering and Science
PDF
The Google Bigtable
PDF
Lecture 07 - CS-5040 - modern database systems
PDF
benchmarks-sigmod09
PDF
highly available distributed databases (poster)
PPTX
Map Reduce basics
PPTX
Beyond Hadoop 1.0: A Holistic View of Hadoop YARN, Spark and GraphLab
PDF
Resilient Distributed Datasets
PDF
Large Scale Data Analysis with Map/Reduce, part I
PPTX
Analysing of big data using map reduce
PDF
The google MapReduce
PPTX
Communication model of parallel platforms
PDF
Hadoop map reduce v2
Applying stratosphere for big data analytics
Jovian DATA: A multidimensional database for the cloud
Relational Algebra and MapReduce
Data-Intensive Technologies for Cloud Computing
Hadoop Map Reduce
Map reduce presentation
HadoopXML: A Suite for Parallel Processing of Massive XML Data with Multiple ...
Research Inventy : International Journal of Engineering and Science
The Google Bigtable
Lecture 07 - CS-5040 - modern database systems
benchmarks-sigmod09
highly available distributed databases (poster)
Map Reduce basics
Beyond Hadoop 1.0: A Holistic View of Hadoop YARN, Spark and GraphLab
Resilient Distributed Datasets
Large Scale Data Analysis with Map/Reduce, part I
Analysing of big data using map reduce
The google MapReduce
Communication model of parallel platforms
Hadoop map reduce v2
Ad

Viewers also liked (20)

PPT
Lielie lasīšanas svētki
PDF
Cassandra: a NoSQL storage system
DOCX
Melokalisasi dan mengisolasi daerah permasalahan
PDF
Opening at cloudian seminar 2012
PDF
Cloudian closing remarks at cloudian seminar 2013
PPTX
How to Distribute, Store and Version Models with EMFStore
PDF
ELR Rad Waste Article Werner
PPT
Trollisi mumini aicina ciemos
PDF
Digital collaborative accounting
PPT
吉祥经2
PPTX
Welcome back learning
PDF
Ipadrevolution 100721204445-phpapp02
PDF
NTT Com at Cloudian seminar 2012
PPT
Submate Pitch TWiST Paris Meetup
PDF
Chelyabinsk russia remarks 05 20-92
PDF
Idaho
PDF
Idaho
PDF
Puerto rico
PDF
Xbrl dimension a primer nirmal ghorawat
PPTX
Apresentação ShareNext
Lielie lasīšanas svētki
Cassandra: a NoSQL storage system
Melokalisasi dan mengisolasi daerah permasalahan
Opening at cloudian seminar 2012
Cloudian closing remarks at cloudian seminar 2013
How to Distribute, Store and Version Models with EMFStore
ELR Rad Waste Article Werner
Trollisi mumini aicina ciemos
Digital collaborative accounting
吉祥经2
Welcome back learning
Ipadrevolution 100721204445-phpapp02
NTT Com at Cloudian seminar 2012
Submate Pitch TWiST Paris Meetup
Chelyabinsk russia remarks 05 20-92
Idaho
Idaho
Puerto rico
Xbrl dimension a primer nirmal ghorawat
Apresentação ShareNext
Ad

Similar to Summary of "Cassandra" for 3rd nosql summer reading in Tokyo (20)

PPTX
Summary of "Amazon's Dynamo" for the 2nd nosql summer reading in Tokyo
PPTX
Summary of "Google's Big Table" at nosql summer reading in Tokyo
PDF
Introduction to Cassandra Concepts and its usage
PPTX
Cassandra
PDF
CASSANDRA A DISTRIBUTED NOSQL DATABASE FOR HOTEL MANAGEMENT SYSTEM
PPTX
An Overview of Apache Cassandra
PDF
Typesafe & William Hill: Cassandra, Spark, and Kafka - The New Streaming Data...
PPTX
Summary of "YCSB " paper for nosql summer reading in Tokyo" on Sep 15, 2010
PPTX
Cassandra - A decentralized storage system
PDF
Big data analytics K.Kiruthika II-M.Sc.,Computer Science Bonsecours college f...
PPT
Cassandra advanced part-ll
PPT
Chapter3 ec2 and usage.ppt
PDF
Comparison between mongo db and cassandra using ycsb
PDF
Talon systems - Distributed multi master replication strategy
PPTX
AWS Summit 2018 Summary
PPT
Cluster Computers
PPTX
NoSQL Introduction, Theory, Implementations
PPT
Os9
PDF
A Holistic Approach to Addressing the Cloud's Paradox of Choice
Summary of "Amazon's Dynamo" for the 2nd nosql summer reading in Tokyo
Summary of "Google's Big Table" at nosql summer reading in Tokyo
Introduction to Cassandra Concepts and its usage
Cassandra
CASSANDRA A DISTRIBUTED NOSQL DATABASE FOR HOTEL MANAGEMENT SYSTEM
An Overview of Apache Cassandra
Typesafe & William Hill: Cassandra, Spark, and Kafka - The New Streaming Data...
Summary of "YCSB " paper for nosql summer reading in Tokyo" on Sep 15, 2010
Cassandra - A decentralized storage system
Big data analytics K.Kiruthika II-M.Sc.,Computer Science Bonsecours college f...
Cassandra advanced part-ll
Chapter3 ec2 and usage.ppt
Comparison between mongo db and cassandra using ycsb
Talon systems - Distributed multi master replication strategy
AWS Summit 2018 Summary
Cluster Computers
NoSQL Introduction, Theory, Implementations
Os9
A Holistic Approach to Addressing the Cloud's Paradox of Choice

More from CLOUDIAN KK (20)

PDF
CLOUDIAN HYPERSTORE - 風林火山ストレージ
PPTX
クラウディアンのご紹介
PDF
IoT/ビッグデータ/AI連携により次世代ストレージが促進するビジネス変革
PDF
CLOUDIAN Presentation at VERITAS VISION in Tokyo
PPTX
S3 API接続検証プログラムのご紹介
PDF
Auto tiering and Versioning of CLOUDIAN HyperStore
PDF
AWS SDK for Python and CLOUDIAN HyperStore
PDF
AWS CLI and CLOUDIAN HyperStore
PDF
ZiDOMA data and CLOUDIAN HyperStore
PDF
FOBAS CSC and CLOUDIAN HyperStore
PDF
ARCserve backup and CLOUDIAN HyperStore
PDF
Cloudian presentation at idc japan sv2016
PDF
ITコアを刷新するハイブリッドクラウド型ITシステム
PDF
【FOBAS】Data is money. ストレージ分散投資のススメ
PDF
【ARI】ストレージのコスト・利便性・非機能要求項目を徹底比較
PDF
【SIS】オブジェクトストレージを活用した増え続ける長期保管データの運用の効率化
PDF
【CLOUDIAN】コード化されたインフラの実装
PDF
【CLOUDIAN】自動階層化による現有ストレージ活用術
PDF
【CLOUDIAN】秒間隔RPO(目標復旧時点)の実現
PDF
【Cloudian】FIT2015における会社製品紹介
CLOUDIAN HYPERSTORE - 風林火山ストレージ
クラウディアンのご紹介
IoT/ビッグデータ/AI連携により次世代ストレージが促進するビジネス変革
CLOUDIAN Presentation at VERITAS VISION in Tokyo
S3 API接続検証プログラムのご紹介
Auto tiering and Versioning of CLOUDIAN HyperStore
AWS SDK for Python and CLOUDIAN HyperStore
AWS CLI and CLOUDIAN HyperStore
ZiDOMA data and CLOUDIAN HyperStore
FOBAS CSC and CLOUDIAN HyperStore
ARCserve backup and CLOUDIAN HyperStore
Cloudian presentation at idc japan sv2016
ITコアを刷新するハイブリッドクラウド型ITシステム
【FOBAS】Data is money. ストレージ分散投資のススメ
【ARI】ストレージのコスト・利便性・非機能要求項目を徹底比較
【SIS】オブジェクトストレージを活用した増え続ける長期保管データの運用の効率化
【CLOUDIAN】コード化されたインフラの実装
【CLOUDIAN】自動階層化による現有ストレージ活用術
【CLOUDIAN】秒間隔RPO(目標復旧時点)の実現
【Cloudian】FIT2015における会社製品紹介

Recently uploaded (20)

PDF
Getting Started with Data Integration: FME Form 101
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
A comparative study of natural language inference in Swahili using monolingua...
PDF
Web App vs Mobile App What Should You Build First.pdf
PPTX
Chapter 5: Probability Theory and Statistics
PDF
Approach and Philosophy of On baking technology
PDF
DP Operators-handbook-extract for the Mautical Institute
PDF
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
PDF
Univ-Connecticut-ChatGPT-Presentaion.pdf
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
PPTX
TLE Review Electricity (Electricity).pptx
PDF
A novel scalable deep ensemble learning framework for big data classification...
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
Zenith AI: Advanced Artificial Intelligence
PDF
Hindi spoken digit analysis for native and non-native speakers
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PDF
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
Getting Started with Data Integration: FME Form 101
Assigned Numbers - 2025 - Bluetooth® Document
A comparative study of natural language inference in Swahili using monolingua...
Web App vs Mobile App What Should You Build First.pdf
Chapter 5: Probability Theory and Statistics
Approach and Philosophy of On baking technology
DP Operators-handbook-extract for the Mautical Institute
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
Univ-Connecticut-ChatGPT-Presentaion.pdf
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Group 1 Presentation -Planning and Decision Making .pptx
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
TLE Review Electricity (Electricity).pptx
A novel scalable deep ensemble learning framework for big data classification...
A comparative analysis of optical character recognition models for extracting...
Zenith AI: Advanced Artificial Intelligence
Hindi spoken digit analysis for native and non-native speakers
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf

Summary of "Cassandra" for 3rd nosql summer reading in Tokyo

  • 1. Cassandra – A Decentralized Structured Storage SystemGemini Mobile Technologies, Inc.NOSQL Tokyo Reading Group(http://nosqlsummer.org/city/tokyo)August 25, 2010Tags: #cassandra #nosql2010/8/23Gemini Mobile Technologies, Inc.1
  • 2. Cassandra: A Decentralized Structured Storage SystemAuthors: AvinashLakshman, PrashantMalik.Abstract: Cassandra is a distributed storage system for managing very large amounts of structured data spread out across many commodity servers, while providing highly available service with no single point of failure. Cassandra aims to run on top of an infrastructure of hundreds of nodes (possibly spread across different data centers). At this scale, small and large components fail continuously. The way Cassandra manages the persistent state in the face of these failures drives the reliability and scalability of the software systems relying on this service. While in many ways Cassandra resembles a database and shares many design and implementation strategies therewith, Cassandra does not support a full relational data model; instead, it provides clients with a simple data model that supports dynamic control over data layout and format. …Appeared in:3rd ACM SIGOPS International Workshop on Large Scale Distributed Systems and Middleware, 2009.http://www.cs.cornell.edu/projects/ladis2009/papers/lakshman-ladis2009.pdf2010/8/23Gemini Mobile Technologies, Inc. All rights reserved.2
  • 3. 1. Introduction and 2. Related WorkFacebook inbox search: Enables users to search through their inbox.Launched 6/2008. Highly scalable: 250M users.Tolerant for server/network failures.Very high write throughput: “billions of writes per day”.Replicate data across data centers.Related WorkDistributed file systems: Ficus, Coda, Farsite, GFS, Bayou.Storage systems: Dynamo, Bigtable.“The Apache Cassandra Project develops a highly scalable second-generation distributed database, bringing together Dynamo's fully distributed design and Bigtable's ColumnFamily-based data model.”2010/8/23Gemini Mobile Technologies, Inc. All rights reserved.3
  • 4. 3. Data ModelMulti-level Index:Table: Set of rowsKey: Identifies the rowKey is arbitrary byte[].Each row can contain a variable number of columns/CFs. No need for rows to contain same columns/CFs.Each row can contain millions of columns/CFsAtomic operations per key per replica.3. ColumnName: Identify the column value(s).Can be either “Column”, “ColumnFamily”, “ColumnFamily:Column”, “ColumnFamily:ColumnFamily”, etc.ColumnFamily (CF) is a group of Columns.CFs and Columns are sorted. Time-based or name-based.Columns can be added/deleted efficiently during run-time.2010/8/23Gemini Mobile Technologies, Inc. All rights reserved.4
  • 5. Data Model Example: Inbox Search2010/8/23Gemini Mobile Technologies, Inc. All rights reserved.5Query: Find all messages of user3 with “hello”.Get(UserMessages, “user3”, “term:hello”)Table: UserMessagesKey:<userid>CF:”term”CF: <word>Name:<timestamp> Val:<messageID>“term”user3“hello”“how”“you”time4time12time4time4time12time1msg10msg81msg10msg10msg81msg03
  • 6. 4. APISimple get/put operations:Insert(table, key, rowMutation)Single columns, Multiple columns, Batch of multiple keys.Get(table, key, columnName)Key: Single key or key range.columnName: “Slice” range or name.Delete(table, key, columnName)Also, specify Consistency Level.2010/8/23Gemini Mobile Technologies, Inc. All rights reserved.6
  • 7. 5. System ArchitectureData partitioned to subset of nodes: Consistent HashingData replicated to multiple nodes for redundancy, performance: Quorum using “preference list” of nodesNode management:Membership algorithm to know which nodes are up/down.“Accrual failure detection + Gossip”Bootstrapping to add node.Manual operation + “Seed” nodes2010/8/23Gemini Mobile Technologies, Inc. All rights reserved.7ConsistentHashNodeANodeCNodeDGossipNodeB
  • 8. 5.1 Partitioning Algorithm: Consistent HashingEach node is assigned a random position on ring.Key k is hashed to fixed circular space.Nodes are assigned by walking clockwise from hash location.Example: Nodes A, B, C, D, E, F, G assigned to ring.Hash(k) is between A and B.Since 3 replicas, choose next 3 nodes on ring (i.e., B, C, D).2010/8/23Gemini Mobile Technologies, Inc. All rights reserved.8Hash(k)ANode assignmentBGCFDE
  • 9. 5.1 Consistent HashingKey advantage: Adding, deleting, re-allocating nodes is cheap. It affects only immediate neighbor node keys.Hash functionLocalityLoad distribution.Load-balancing by moving nodes toward heavily-loaded nodes.2010/8/23Gemini Mobile Technologies, Inc. All rights reserved.9
  • 10. 5.2 ReplicationEach data item is replicated at multiple nodes (N).Each key is assigned to a “coordinator” node by consistent hash function.“Coordinator” node replicates the key to an additional N-1 nodes.“Consistency Level” is set by client per read/write request.ZERO, ONE, ALL, ANY, QUORUMZookeeper used to elect leader node and distribute “preference list”Leader node owns “preference list” that maps key to node list.2010/8/23Gemini Mobile Technologies, Inc. All rights reserved.10
  • 11. 5.3 MembershipEach node locally determines if any other node in the system is up/down.Φ (phi) Accrual Failure DetectorInstead of boolean value (up or down), compute a numeric value Φ representing suspicion level for each monitored nodes.Φ is computed using inter-arrival times of gossip messages from other nodes in the cluster.If Φ exceeds a particular threshold, then node is considered as “down”.In experiment of 100 nodes with threshold of 5, average time to detect failure: 15 seconds.2010/8/23Gemini Mobile Technologies, Inc. All rights reserved.11
  • 12. 5.4 Bootstrapping, 5.5 Scaling the ClusterNew nodes check configuration for “seed” nodes to get initial gossip data like “preference” lists.Add/remove of nodes is not done automatically. Requires manual command-line operation.New node needs to have data moved to it from other nodes. Operationally, 40MB/s. Working to improve this by copying data from multiple replicas a la BitTorrent.2010/8/23Gemini Mobile Technologies, Inc. All rights reserved.12
  • 13. 5.6 Local Persistence2010/8/23Gemini Mobile Technologies, Inc. All rights reserved.13READ Use cache data
  • 14. Bloom filter to reduce SSTable access
  • 15. Check SSTables in time-orderIn-MemoryTable Dumped to SSTable when fullCommitLogSS TableSS TableSS TableWRITESSTable No reads, seeks
  • 19. Synced to disk ORbuffered Immutable
  • 20. Compact job in background to merge files6. Practical ExperiencesData imported from MySQL DB using a Map/Reduce job.Secondary indices as future feature.The Accrual failure detector worked well compared to other failure detectors.Monitoring using GangliaZookeeper coordination service.Facebook Inbox Search50+ TB data150 node cluster2 data centers (US East, US West)Median latency: 15.69ms for Search Interactions, 18.27ms for Term Search.2010/8/23Gemini Mobile Technologies, Inc. All rights reserved.14
  • 21. EpilogueActive Apache project with good documentation:http://cassandra.apache.org/http://wiki.apache.org/cassandra/ArticlesAndPresentationsIn use at companies like Digg, Facebook, Twitter, Reddit, Rackspace. Largest production cluster has over 100 TB data over 150 machines.2010/8/23Gemini Mobile Technologies, Inc. All rights reserved.15