SlideShare a Scribd company logo
1 of 16
Mechanism
Presented By : Dhruv Patel
Introduction
• 819 million monthly active users who used Facebook mobile products
as of June 30, 2013.
• 699 million daily active users on average in June 2013.
• 1.15 billion monthly active users as of June 2013.
• 2.5 billion content items shared per day (status updates + wall posts +
photos + videos + comments)
• 2.7 billion Likes per day
• 300 million photos uploaded per day
• 100+ petabytes of disk space in one of FB’s largest Hadoop (HDFS)
clusters
• 105 terabytes of data scanned via Hive, Facebook’s Hadoop query
language, every 30 minutes
• 70,000 queries executed on these databases per day
• 500+terabytes of new data ingested into the databases every day
By this statics, Facebook have to use such a great technology to handle
this traffic and giving their user a faster and safer social experience
Technologies
For faster data transfer
• Cookies and Caches
• GZip compression
• AJAX and JSON
• XMPP messaging
For data storage
• HBase & Haystack
• Zookeeper
• Memcached
• Scribe
Cookies and Caches
Cookies are small pieces of data that are stored on your
computer, mobile phone or other device.
Cache is a type of memory which is used by web browser. When any
page loads and it is not changeable for a long time browser cache it’s
CSS/JS and read it from memory to reduce the data transfer .
It provide and understand a range of products and services.
Facebook use this technologies to do things like:
• make Facebook easier or faster to use;
• enable features and store information about you (including on your
device or in your browser cache) and your use of Facebook;
• deliver, understand and improve advertising;
• monitor and understand the use of FB products and services;
• to protect you, others and Facebook.
Gzip Compression
Gzip is a software application used for file compression and
decompression
It compresses the image, CSS, JS sent by server and loads in client
machine then decompress it. So there is no change in data and UI but
data transfer rate is decreased. So all servers of Facebook used Gzip
compression to make web more faster
AJAX and JSON
AJAX and JSON is a group of interrelated web development techniques
used on the client-side to create asynchronous web applications.
With AJAX, web applications can send data to, and retrieve data from,
a server asynchronously (in the background) without interfering with the
display and behavior of the existing page.
Data can be retrieved using the XMlHttpRequest object.
Where AJAX-JSON mainly used in Facebook
• Like, Comment, Share
• Post story
• Send message
• Load feed
• Dialog Box – likes, Mutual friends etc…
XMPP Messaging
XMPP stands for Extensible Messaging and Presence Protocol.
XMPP is also called jabber protocol.
Facebook chat and messages work on this platform.
Every user of Facebook has a unique id and personal chat email like
100000874067290@chat.facebook.com and someone wants to send
message to that user core script convert it to XML and send to Jabber
server.
After this process partner user gets the message at same instance due
to highly reliable servers.
Manage data in large clusters
HBase and Haystack
Horizontal scalability
• HBase & HDFS are elastic by design
• Multiple table shards (regions) per physical server
• On node additions
• Load balancer automatically reassigns shards from overloaded
nodes to new nodes
• Because file system underneath is itself distributed, data for
reassigned regions is instantly servable from the new nodes.
• Regions can be dynamically split into smaller regions.
• Pre-sharding is not necessary
• Splits are near instantaneous!
HBase and Haystack
Automatic failover
• Node failures automatically detected by HBase Master
• Regions on failed node are distributed evenly among surviving
nodes.
• Multiple regions/server model avoids need for substantial
overprovisioning
• HBase Master failover
• 1 active, rest standby
• When active master fails, a standby automatically takes over
HBase and Haystack
HDFS ( Highly Distributed File System )
• Fault tolerance (block level replication for redundancy)
• Scalability
• End-to-end checksums to detect and recover from corruptions
• Map Reduce for large scale data processing
• HDFS already battle tested inside Facebook
• running petabyte scale clusters
• lot of in-house development and operational experience
Zookeeper
Zookeeper is open source software that FB use mainly for two purposes:
• As the controller for implementing sharding and failover of
application servers
• As a store for their discovery service.
Since Zookeeper provides FB with a highly available repository and
notification mechanism, it goes a long way towards helping FB build a
highly available service.
Memcached
If you've read anything about scaling large websites, you've probably
heard about memcached.
Memcached is a high-performance, distributed memory object
caching system.
Facebook is the world's largest user of memcached. They use
memcached to alleviate database load.
Memcached is already fast, but they need it to be faster and more
efficient than most installations. FB use more than 800 servers supplying
over 28 terabytes of memory to their users. Over the past year as
Facebook's popularity has skyrocketed, They've run into a number of
scaling issues. This ever increasing demand has required them to make
modifications to both their operating system and memcached to
achieve the performance that provides the best possible experience for
our users.
Scribe – Log server
Scribe is a server for aggregating log data streamed in real-time from a
large number of servers. It is designed to be scalable, extensible without
client-side modification, and robust to failure of the network or any
specific machine.
Scribe was developed at Facebook using Apache Thrift and released in
2008 as open source.
Scribe servers are arranged in a directed graph, with each server
knowing only about the next server in the graph. This network
topology allows for adding extra layers of fan-in as a system grows, and
batching messages before sending them between datacenters, without
having any code that explicitly needs to understand datacenter
topology, only a simple configuration.
References
• Facebook.com/engineering
• Facebook.com/data
• Developers.facebook.com
• Newsroom.fb.com
• Hbase.apache.org
• Zookeeper.apache.org
Thank you!

More Related Content

What's hot

How companies-use-no sql-and-couchbase-10152013
How companies-use-no sql-and-couchbase-10152013How companies-use-no sql-and-couchbase-10152013
How companies-use-no sql-and-couchbase-10152013
Dipti Borkar
 
Microsoft's Big Play for Big Data- Visual Studio Live! NY 2012
Microsoft's Big Play for Big Data- Visual Studio Live! NY 2012Microsoft's Big Play for Big Data- Visual Studio Live! NY 2012
Microsoft's Big Play for Big Data- Visual Studio Live! NY 2012
Andrew Brust
 
Антон Бойко "Разделяй и властвуй — набор практик для построения масштабируемо...
Антон Бойко "Разделяй и властвуй — набор практик для построения масштабируемо...Антон Бойко "Разделяй и властвуй — набор практик для построения масштабируемо...
Антон Бойко "Разделяй и властвуй — набор практик для построения масштабируемо...
Marina Peregud
 

What's hot (20)

MongoDB vs Mysql. A devops point of view
MongoDB vs Mysql. A devops point of viewMongoDB vs Mysql. A devops point of view
MongoDB vs Mysql. A devops point of view
 
How companies-use-no sql-and-couchbase-10152013
How companies-use-no sql-and-couchbase-10152013How companies-use-no sql-and-couchbase-10152013
How companies-use-no sql-and-couchbase-10152013
 
Compare DynamoDB vs. MongoDB
Compare DynamoDB vs. MongoDBCompare DynamoDB vs. MongoDB
Compare DynamoDB vs. MongoDB
 
How companies use NoSQL and Couchbase - NoSQL Now 2013
How companies use NoSQL and Couchbase - NoSQL Now 2013How companies use NoSQL and Couchbase - NoSQL Now 2013
How companies use NoSQL and Couchbase - NoSQL Now 2013
 
Find a needle in Haystack: Facebook's storage system
Find a needle in Haystack: Facebook's storage systemFind a needle in Haystack: Facebook's storage system
Find a needle in Haystack: Facebook's storage system
 
Spark Streaming & Kafka-The Future of Stream Processing
Spark Streaming & Kafka-The Future of Stream ProcessingSpark Streaming & Kafka-The Future of Stream Processing
Spark Streaming & Kafka-The Future of Stream Processing
 
When to Use MongoDB...and When You Should Not...
When to Use MongoDB...and When You Should Not...When to Use MongoDB...and When You Should Not...
When to Use MongoDB...and When You Should Not...
 
What is NoSQL and CAP Theorem
What is NoSQL and CAP TheoremWhat is NoSQL and CAP Theorem
What is NoSQL and CAP Theorem
 
How companies use NoSQL and Couchbase
How companies use NoSQL and CouchbaseHow companies use NoSQL and Couchbase
How companies use NoSQL and Couchbase
 
NoSQL and MongoDB
NoSQL and MongoDBNoSQL and MongoDB
NoSQL and MongoDB
 
Big Data on the Microsoft Platform
Big Data on the Microsoft PlatformBig Data on the Microsoft Platform
Big Data on the Microsoft Platform
 
How companies use NoSQL & Couchbase - NoSQL Now 2014
How companies use NoSQL & Couchbase - NoSQL Now 2014How companies use NoSQL & Couchbase - NoSQL Now 2014
How companies use NoSQL & Couchbase - NoSQL Now 2014
 
Facebook[The Nuts and Bolts Technology]
Facebook[The Nuts and Bolts Technology]Facebook[The Nuts and Bolts Technology]
Facebook[The Nuts and Bolts Technology]
 
Intoduction of FIrebase Realtime Database
Intoduction of FIrebase Realtime DatabaseIntoduction of FIrebase Realtime Database
Intoduction of FIrebase Realtime Database
 
Scalable Web Architecture
Scalable Web ArchitectureScalable Web Architecture
Scalable Web Architecture
 
Dropping ACID: Wrapping Your Mind Around NoSQL Databases
Dropping ACID: Wrapping Your Mind Around NoSQL DatabasesDropping ACID: Wrapping Your Mind Around NoSQL Databases
Dropping ACID: Wrapping Your Mind Around NoSQL Databases
 
Microsoft's Big Play for Big Data- Visual Studio Live! NY 2012
Microsoft's Big Play for Big Data- Visual Studio Live! NY 2012Microsoft's Big Play for Big Data- Visual Studio Live! NY 2012
Microsoft's Big Play for Big Data- Visual Studio Live! NY 2012
 
Performance Optimization in Drupal 8
Performance Optimization in Drupal 8Performance Optimization in Drupal 8
Performance Optimization in Drupal 8
 
Антон Бойко "Разделяй и властвуй — набор практик для построения масштабируемо...
Антон Бойко "Разделяй и властвуй — набор практик для построения масштабируемо...Антон Бойко "Разделяй и властвуй — набор практик для построения масштабируемо...
Антон Бойко "Разделяй и властвуй — набор практик для построения масштабируемо...
 
Capacity Planning For Your Growing MongoDB Cluster
Capacity Planning For Your Growing MongoDB ClusterCapacity Planning For Your Growing MongoDB Cluster
Capacity Planning For Your Growing MongoDB Cluster
 

Similar to Fb mechanism

How facebook works and function- a complete approach
How facebook works and function- a complete approachHow facebook works and function- a complete approach
How facebook works and function- a complete approach
Prakhar Gethe
 
Big data and hadoop
Big data and hadoopBig data and hadoop
Big data and hadoop
Mohit Tare
 

Similar to Fb mechanism (20)

Presention on Facebook in f Distributed systems
Presention on Facebook in f Distributed systemsPresention on Facebook in f Distributed systems
Presention on Facebook in f Distributed systems
 
OVERVIEW OF FACEBOOK SCALABLE ARCHITECTURE.
OVERVIEW  OF FACEBOOK SCALABLE ARCHITECTURE.OVERVIEW  OF FACEBOOK SCALABLE ARCHITECTURE.
OVERVIEW OF FACEBOOK SCALABLE ARCHITECTURE.
 
Data infrastructure at Facebook
Data infrastructure at Facebook Data infrastructure at Facebook
Data infrastructure at Facebook
 
Facebook Hadoop Usecase
Facebook Hadoop UsecaseFacebook Hadoop Usecase
Facebook Hadoop Usecase
 
Getting started with big data in Azure HDInsight
Getting started with big data in Azure HDInsightGetting started with big data in Azure HDInsight
Getting started with big data in Azure HDInsight
 
Big data and hadoop overvew
Big data and hadoop overvewBig data and hadoop overvew
Big data and hadoop overvew
 
Hadoop HDFS.ppt
Hadoop HDFS.pptHadoop HDFS.ppt
Hadoop HDFS.ppt
 
Architecture Patterns - Open Discussion
Architecture Patterns - Open DiscussionArchitecture Patterns - Open Discussion
Architecture Patterns - Open Discussion
 
Billions of Messages in Real Time: Why Paypal & LinkedIn Trust an Engagement ...
Billions of Messages in Real Time: Why Paypal & LinkedIn Trust an Engagement ...Billions of Messages in Real Time: Why Paypal & LinkedIn Trust an Engagement ...
Billions of Messages in Real Time: Why Paypal & LinkedIn Trust an Engagement ...
 
How facebook works and function- a complete approach
How facebook works and function- a complete approachHow facebook works and function- a complete approach
How facebook works and function- a complete approach
 
Hadoop jon
Hadoop jonHadoop jon
Hadoop jon
 
Apache hadoop technology : Beginners
Apache hadoop technology : BeginnersApache hadoop technology : Beginners
Apache hadoop technology : Beginners
 
Apache hadoop technology : Beginners
Apache hadoop technology : BeginnersApache hadoop technology : Beginners
Apache hadoop technology : Beginners
 
Apache hadoop technology : Beginners
Apache hadoop technology : BeginnersApache hadoop technology : Beginners
Apache hadoop technology : Beginners
 
Data warehousing in the era of Big Data: Deep Dive into Amazon Redshift
Data warehousing in the era of Big Data: Deep Dive into Amazon RedshiftData warehousing in the era of Big Data: Deep Dive into Amazon Redshift
Data warehousing in the era of Big Data: Deep Dive into Amazon Redshift
 
Big Data
Big DataBig Data
Big Data
 
Big data and hadoop
Big data and hadoopBig data and hadoop
Big data and hadoop
 
Mysql wp memcached
Mysql wp memcachedMysql wp memcached
Mysql wp memcached
 
System design for video streaming service
System design for video streaming serviceSystem design for video streaming service
System design for video streaming service
 
Aaum Analytics event - Big data in the cloud
Aaum Analytics event - Big data in the cloudAaum Analytics event - Big data in the cloud
Aaum Analytics event - Big data in the cloud
 

More from Dhruv Patel

More from Dhruv Patel (8)

Shortify for Android
Shortify for AndroidShortify for Android
Shortify for Android
 
Basics of Wordpress
Basics of WordpressBasics of Wordpress
Basics of Wordpress
 
Near field communication - Data transmission
Near field communication - Data transmissionNear field communication - Data transmission
Near field communication - Data transmission
 
Modem technology
Modem technologyModem technology
Modem technology
 
Inside google search - how it works??
Inside google search - how it works??Inside google search - how it works??
Inside google search - how it works??
 
Google glass
Google glassGoogle glass
Google glass
 
Blue brain project
Blue brain projectBlue brain project
Blue brain project
 
Apple iOS - A modern way to mobile operating system
Apple iOS - A modern way to mobile operating systemApple iOS - A modern way to mobile operating system
Apple iOS - A modern way to mobile operating system
 

Recently uploaded

Recently uploaded (20)

Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
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...
 
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
 
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
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
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
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
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
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
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
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 

Fb mechanism

  • 2. Introduction • 819 million monthly active users who used Facebook mobile products as of June 30, 2013. • 699 million daily active users on average in June 2013. • 1.15 billion monthly active users as of June 2013. • 2.5 billion content items shared per day (status updates + wall posts + photos + videos + comments) • 2.7 billion Likes per day • 300 million photos uploaded per day • 100+ petabytes of disk space in one of FB’s largest Hadoop (HDFS) clusters • 105 terabytes of data scanned via Hive, Facebook’s Hadoop query language, every 30 minutes • 70,000 queries executed on these databases per day • 500+terabytes of new data ingested into the databases every day By this statics, Facebook have to use such a great technology to handle this traffic and giving their user a faster and safer social experience
  • 3. Technologies For faster data transfer • Cookies and Caches • GZip compression • AJAX and JSON • XMPP messaging For data storage • HBase & Haystack • Zookeeper • Memcached • Scribe
  • 4. Cookies and Caches Cookies are small pieces of data that are stored on your computer, mobile phone or other device. Cache is a type of memory which is used by web browser. When any page loads and it is not changeable for a long time browser cache it’s CSS/JS and read it from memory to reduce the data transfer . It provide and understand a range of products and services. Facebook use this technologies to do things like: • make Facebook easier or faster to use; • enable features and store information about you (including on your device or in your browser cache) and your use of Facebook; • deliver, understand and improve advertising; • monitor and understand the use of FB products and services; • to protect you, others and Facebook.
  • 5. Gzip Compression Gzip is a software application used for file compression and decompression It compresses the image, CSS, JS sent by server and loads in client machine then decompress it. So there is no change in data and UI but data transfer rate is decreased. So all servers of Facebook used Gzip compression to make web more faster
  • 6. AJAX and JSON AJAX and JSON is a group of interrelated web development techniques used on the client-side to create asynchronous web applications. With AJAX, web applications can send data to, and retrieve data from, a server asynchronously (in the background) without interfering with the display and behavior of the existing page. Data can be retrieved using the XMlHttpRequest object. Where AJAX-JSON mainly used in Facebook • Like, Comment, Share • Post story • Send message • Load feed • Dialog Box – likes, Mutual friends etc…
  • 7. XMPP Messaging XMPP stands for Extensible Messaging and Presence Protocol. XMPP is also called jabber protocol. Facebook chat and messages work on this platform. Every user of Facebook has a unique id and personal chat email like 100000874067290@chat.facebook.com and someone wants to send message to that user core script convert it to XML and send to Jabber server. After this process partner user gets the message at same instance due to highly reliable servers.
  • 8. Manage data in large clusters
  • 9. HBase and Haystack Horizontal scalability • HBase & HDFS are elastic by design • Multiple table shards (regions) per physical server • On node additions • Load balancer automatically reassigns shards from overloaded nodes to new nodes • Because file system underneath is itself distributed, data for reassigned regions is instantly servable from the new nodes. • Regions can be dynamically split into smaller regions. • Pre-sharding is not necessary • Splits are near instantaneous!
  • 10. HBase and Haystack Automatic failover • Node failures automatically detected by HBase Master • Regions on failed node are distributed evenly among surviving nodes. • Multiple regions/server model avoids need for substantial overprovisioning • HBase Master failover • 1 active, rest standby • When active master fails, a standby automatically takes over
  • 11. HBase and Haystack HDFS ( Highly Distributed File System ) • Fault tolerance (block level replication for redundancy) • Scalability • End-to-end checksums to detect and recover from corruptions • Map Reduce for large scale data processing • HDFS already battle tested inside Facebook • running petabyte scale clusters • lot of in-house development and operational experience
  • 12. Zookeeper Zookeeper is open source software that FB use mainly for two purposes: • As the controller for implementing sharding and failover of application servers • As a store for their discovery service. Since Zookeeper provides FB with a highly available repository and notification mechanism, it goes a long way towards helping FB build a highly available service.
  • 13. Memcached If you've read anything about scaling large websites, you've probably heard about memcached. Memcached is a high-performance, distributed memory object caching system. Facebook is the world's largest user of memcached. They use memcached to alleviate database load. Memcached is already fast, but they need it to be faster and more efficient than most installations. FB use more than 800 servers supplying over 28 terabytes of memory to their users. Over the past year as Facebook's popularity has skyrocketed, They've run into a number of scaling issues. This ever increasing demand has required them to make modifications to both their operating system and memcached to achieve the performance that provides the best possible experience for our users.
  • 14. Scribe – Log server Scribe is a server for aggregating log data streamed in real-time from a large number of servers. It is designed to be scalable, extensible without client-side modification, and robust to failure of the network or any specific machine. Scribe was developed at Facebook using Apache Thrift and released in 2008 as open source. Scribe servers are arranged in a directed graph, with each server knowing only about the next server in the graph. This network topology allows for adding extra layers of fan-in as a system grows, and batching messages before sending them between datacenters, without having any code that explicitly needs to understand datacenter topology, only a simple configuration.
  • 15. References • Facebook.com/engineering • Facebook.com/data • Developers.facebook.com • Newsroom.fb.com • Hbase.apache.org • Zookeeper.apache.org