SlideShare a Scribd company logo
1 of 30
Download to read offline
Papers We Love Iasi
Kickstart
Presentation online
http://j.mp/1S0wLZj
paperswelove.org
Why PWL Iasi?
● Because it’s cool
● There is no theory-oriented community
● Discuss language/ framework-agnostic topics
● Bring together academia and industry
● Get more people (and institutions?) interested in
actual Research & Development
4 presentations in 2016
Who?
Adrian-Tudor Panescu
Software Engineer
Adrian Burlacu
PhD, Automatic Control and Applied Informatics,
TUIASI
Alexandru Archip
PhD, Computer Engineering, TUIASI
Marius Kloetzer
PhD, Automatic Control and Applied Informatics,
TUIASI
Alexandra Adam
The Human Side™
And you!
● We are looking for speakers/ moderators!
○ ~1 hour presentation/ open discussion on a significant
paper on your favourite subject/ field
● And for sponsors
○ Mainly for ensuring that we have a venue for the
meetups
● Feel free to contact me: adrian@panescu.com
https://github.com/papers-we-love/papers-we-love#how-to-read-a-paper
Code of Conduct and other info:
http://www.meetup.com/Papers-We-Love-Iasi/
TAO: Facebook’s
Distributed Data Store
for the Social Graph
Bronson et al., Facebook Inc., USENIX’
13
2
● Billion reads and million writes per second
● Petabyte-sized data set
● Geographically spread
● Users are unique and impatient
○ Privacy constraints must be satisfied at
view time
How do we store and serve all this?
3
Before TAO
Cache
Query
Store
4
The 3 contributions
● Characterize Facebook’s workload
● Describe a proper data model
● Present an actual large-scale implementation
5
The Associations and Objects
6
The data model
● There are only 2 data types: nodes and edges
○ Labeled directed multigraph
○ You need only 2 tables in the DB
● Facebook leverages certain application characteristics:
○ They don’t need a full graph query API
○ “Most of the data is old, but many of the queries are for the newest
subset”
● “Likely to be useful for any application domain that needs to efficiently
generate fine-grained customized content from highly interconnected data.”
7
“TAO provides basic access to the
nodes and edges of a constantly
changing graph in data centers across
multiple regions. It is optimised heavily
for reads, and explicitly favours
efficiency and availability over
consistency.”
8
CAP Principle
Consistency
Availability
Partition
tolerance
TAO
Towards Robust Distributed Systems, Eric A. Brewer, 2000 9
10
Summary
● 1 storage layer (MySQL)
● 2 cache layers (custom, LRU) directly implementing the graph abstraction
○ Leader (DB I/O), protects DB from thundering herds
○ Follower (Client I/O)
○ Consistency maintained via asynchronous maintenance messages
● A full copy of Facebook’s data is stored in a cluster of data centers in
geographical proximity
● A region has a master and multiple slaves (per shard!) deployments
○ Writes are always forwarded first to the master
11
Consistency
● Remember that we are eventually consistent!
● Write request to slaves forwarded to master
○ If applied, all slaves are informed
○ Follower caches are invalidated via maintenance messages
● Propagated changesets use a version number to solve conflicts generated
by stale data
● The master DB is the single source of truth
○ Requests can be marked as critical and will always be forwarded to the
master DB (e.g., logins)
● Replication lag: <1s (85%), <3s (99%), <10s (99.8%)
12
Evaluation: request types
Random sample of 6.5 million requests over 40 days 13
Evaluation: read latency
Overall hit rate: 96.4% 14
Evaluation: write latency
Send packet US West - Netherlands - US West: 150ms 15
Evaluation: hit rate vs. throughput
16
Related work
● Spanner: Google’s globally distributed database
● Redis: in-memory key-value store
● Dynamo, Voldemort, COPS: distributed key-value store
● BigTable, PNUTS, SimpleDB, HBase: NoSQL (NoACID)
● Pig Latin, Pregel: graph processing
17
Conclusions
● Paper describes a solution to a practical problem
● Data model, API and implementation for a read-intensive,
eventually-consistent, geographically-distributed graph
● Simple data model, layered cache which incorporates
application logic
● Interesting to see how they leverage domain knowledge to
optimize the system
● Evaluation on real data from production system
18
Thank you!

More Related Content

Viewers also liked

LinkedIn Graph Presentation
LinkedIn Graph PresentationLinkedIn Graph Presentation
LinkedIn Graph PresentationAmy W. Tang
 
Facebook's TAO & Unicorn data storage and search platforms
Facebook's TAO & Unicorn data storage and search platformsFacebook's TAO & Unicorn data storage and search platforms
Facebook's TAO & Unicorn data storage and search platformsNitish Upreti
 
Visualizing My Facebook Networks
Visualizing My Facebook NetworksVisualizing My Facebook Networks
Visualizing My Facebook NetworksAndy Carvin
 
Key-Key-Value Stores for Efficiently Processing Graph Data in the Cloud
Key-Key-Value Stores for Efficiently Processing Graph Data in the CloudKey-Key-Value Stores for Efficiently Processing Graph Data in the Cloud
Key-Key-Value Stores for Efficiently Processing Graph Data in the CloudUniversity of New South Wales
 
Social Network Analysis at LinkedIn
Social Network Analysis at LinkedInSocial Network Analysis at LinkedIn
Social Network Analysis at LinkedInMitul Tiwari
 
Graph database Use Cases
Graph database Use CasesGraph database Use Cases
Graph database Use CasesMax De Marzi
 

Viewers also liked (7)

LinkedIn Graph Presentation
LinkedIn Graph PresentationLinkedIn Graph Presentation
LinkedIn Graph Presentation
 
Facebook's TAO & Unicorn data storage and search platforms
Facebook's TAO & Unicorn data storage and search platformsFacebook's TAO & Unicorn data storage and search platforms
Facebook's TAO & Unicorn data storage and search platforms
 
Visualizing My Facebook Networks
Visualizing My Facebook NetworksVisualizing My Facebook Networks
Visualizing My Facebook Networks
 
Dex
DexDex
Dex
 
Key-Key-Value Stores for Efficiently Processing Graph Data in the Cloud
Key-Key-Value Stores for Efficiently Processing Graph Data in the CloudKey-Key-Value Stores for Efficiently Processing Graph Data in the Cloud
Key-Key-Value Stores for Efficiently Processing Graph Data in the Cloud
 
Social Network Analysis at LinkedIn
Social Network Analysis at LinkedInSocial Network Analysis at LinkedIn
Social Network Analysis at LinkedIn
 
Graph database Use Cases
Graph database Use CasesGraph database Use Cases
Graph database Use Cases
 

Similar to TAO: Facebook's Distributed Data Store for the Social Graph

lecture-1-overview.pptx
lecture-1-overview.pptxlecture-1-overview.pptx
lecture-1-overview.pptxMweeneMweemba1
 
Apache Web Services in the Real World, an E-Science Perspective
Apache Web Services in the Real World, an E-Science PerspectiveApache Web Services in the Real World, an E-Science Perspective
Apache Web Services in the Real World, an E-Science PerspectiveSrinath Perera
 
Intro to the CNCF Research User Group
Intro to the CNCF Research User GroupIntro to the CNCF Research User Group
Intro to the CNCF Research User GroupBob Killen
 
Ceph Day Santa Clara Welcome
Ceph Day Santa Clara WelcomeCeph Day Santa Clara Welcome
Ceph Day Santa Clara WelcomeCeph Community
 
Downscaling information systems for education
Downscaling information systems for educationDownscaling information systems for education
Downscaling information systems for educationChristophe Guéret
 
Ceph Day Santa Clara: Keynote: Building Tomorrow's Ceph
Ceph Day Santa Clara: Keynote: Building Tomorrow's Ceph Ceph Day Santa Clara: Keynote: Building Tomorrow's Ceph
Ceph Day Santa Clara: Keynote: Building Tomorrow's Ceph Ceph Community
 
Ceph Day NYC: Building Tomorrow's Ceph
Ceph Day NYC: Building Tomorrow's CephCeph Day NYC: Building Tomorrow's Ceph
Ceph Day NYC: Building Tomorrow's CephCeph Community
 
CEPH DAY BERLIN - WELCOME
CEPH DAY BERLIN - WELCOME CEPH DAY BERLIN - WELCOME
CEPH DAY BERLIN - WELCOME Ceph Community
 
Apache Spark 101 - Demi Ben-Ari
Apache Spark 101 - Demi Ben-AriApache Spark 101 - Demi Ben-Ari
Apache Spark 101 - Demi Ben-AriDemi Ben-Ari
 
SouthEast LinuxFest 2015 - Managing linux in a engineering college
SouthEast LinuxFest 2015 -  Managing linux in a engineering collegeSouthEast LinuxFest 2015 -  Managing linux in a engineering college
SouthEast LinuxFest 2015 - Managing linux in a engineering collegeedgester
 
From the South: building together a high-tech ecosystem
From the South: building together a high-tech ecosystemFrom the South: building together a high-tech ecosystem
From the South: building together a high-tech ecosystemNicolás Erdödy
 
Linked Data at the OU - the story so far
Linked Data at the OU - the story so farLinked Data at the OU - the story so far
Linked Data at the OU - the story so farEnrico Daga
 
The Open Science Grid
The Open Science GridThe Open Science Grid
The Open Science GridRob Gardner
 
The Oxford Common File Layout: A common approach to digital preservation
The Oxford Common File Layout: A common approach to digital preservationThe Oxford Common File Layout: A common approach to digital preservation
The Oxford Common File Layout: A common approach to digital preservationSimeon Warner
 
The Oxford Common File Layout
The Oxford Common File LayoutThe Oxford Common File Layout
The Oxford Common File LayoutStefano Cossu
 
Linked Open Data about Springer Nature conferences. The story so far
Linked Open Data about Springer Nature conferences. The story so farLinked Open Data about Springer Nature conferences. The story so far
Linked Open Data about Springer Nature conferences. The story so farAliaksandr Birukou
 
Research data zone: veilige en geoptimaliseerde netwerkomgeving voor onderzoe...
Research data zone: veilige en geoptimaliseerde netwerkomgeving voor onderzoe...Research data zone: veilige en geoptimaliseerde netwerkomgeving voor onderzoe...
Research data zone: veilige en geoptimaliseerde netwerkomgeving voor onderzoe...SURFnet
 
Decentralised identifiers and knowledge graphs
Decentralised identifiers and knowledge graphs Decentralised identifiers and knowledge graphs
Decentralised identifiers and knowledge graphs vty
 

Similar to TAO: Facebook's Distributed Data Store for the Social Graph (20)

lecture-1-overview.pptx
lecture-1-overview.pptxlecture-1-overview.pptx
lecture-1-overview.pptx
 
Sebastian Hellmann
Sebastian HellmannSebastian Hellmann
Sebastian Hellmann
 
Apache Web Services in the Real World, an E-Science Perspective
Apache Web Services in the Real World, an E-Science PerspectiveApache Web Services in the Real World, an E-Science Perspective
Apache Web Services in the Real World, an E-Science Perspective
 
Lec01
Lec01Lec01
Lec01
 
Intro to the CNCF Research User Group
Intro to the CNCF Research User GroupIntro to the CNCF Research User Group
Intro to the CNCF Research User Group
 
Ceph Day Santa Clara Welcome
Ceph Day Santa Clara WelcomeCeph Day Santa Clara Welcome
Ceph Day Santa Clara Welcome
 
Downscaling information systems for education
Downscaling information systems for educationDownscaling information systems for education
Downscaling information systems for education
 
Ceph Day Santa Clara: Keynote: Building Tomorrow's Ceph
Ceph Day Santa Clara: Keynote: Building Tomorrow's Ceph Ceph Day Santa Clara: Keynote: Building Tomorrow's Ceph
Ceph Day Santa Clara: Keynote: Building Tomorrow's Ceph
 
Ceph Day NYC: Building Tomorrow's Ceph
Ceph Day NYC: Building Tomorrow's CephCeph Day NYC: Building Tomorrow's Ceph
Ceph Day NYC: Building Tomorrow's Ceph
 
CEPH DAY BERLIN - WELCOME
CEPH DAY BERLIN - WELCOME CEPH DAY BERLIN - WELCOME
CEPH DAY BERLIN - WELCOME
 
Apache Spark 101 - Demi Ben-Ari
Apache Spark 101 - Demi Ben-AriApache Spark 101 - Demi Ben-Ari
Apache Spark 101 - Demi Ben-Ari
 
SouthEast LinuxFest 2015 - Managing linux in a engineering college
SouthEast LinuxFest 2015 -  Managing linux in a engineering collegeSouthEast LinuxFest 2015 -  Managing linux in a engineering college
SouthEast LinuxFest 2015 - Managing linux in a engineering college
 
From the South: building together a high-tech ecosystem
From the South: building together a high-tech ecosystemFrom the South: building together a high-tech ecosystem
From the South: building together a high-tech ecosystem
 
Linked Data at the OU - the story so far
Linked Data at the OU - the story so farLinked Data at the OU - the story so far
Linked Data at the OU - the story so far
 
The Open Science Grid
The Open Science GridThe Open Science Grid
The Open Science Grid
 
The Oxford Common File Layout: A common approach to digital preservation
The Oxford Common File Layout: A common approach to digital preservationThe Oxford Common File Layout: A common approach to digital preservation
The Oxford Common File Layout: A common approach to digital preservation
 
The Oxford Common File Layout
The Oxford Common File LayoutThe Oxford Common File Layout
The Oxford Common File Layout
 
Linked Open Data about Springer Nature conferences. The story so far
Linked Open Data about Springer Nature conferences. The story so farLinked Open Data about Springer Nature conferences. The story so far
Linked Open Data about Springer Nature conferences. The story so far
 
Research data zone: veilige en geoptimaliseerde netwerkomgeving voor onderzoe...
Research data zone: veilige en geoptimaliseerde netwerkomgeving voor onderzoe...Research data zone: veilige en geoptimaliseerde netwerkomgeving voor onderzoe...
Research data zone: veilige en geoptimaliseerde netwerkomgeving voor onderzoe...
 
Decentralised identifiers and knowledge graphs
Decentralised identifiers and knowledge graphs Decentralised identifiers and knowledge graphs
Decentralised identifiers and knowledge graphs
 

More from Adrian-Tudor Panescu

The Future is Here: ECMAScript 6 in the Wild
The Future is Here: ECMAScript 6 in the WildThe Future is Here: ECMAScript 6 in the Wild
The Future is Here: ECMAScript 6 in the WildAdrian-Tudor Panescu
 
JSHint: Learning JavaScript the Hard Way
JSHint: Learning JavaScript the Hard WayJSHint: Learning JavaScript the Hard Way
JSHint: Learning JavaScript the Hard WayAdrian-Tudor Panescu
 
Parallel Prime Number Generation Using The Sieve of Eratosthenes
Parallel Prime Number Generation Using The Sieve of EratosthenesParallel Prime Number Generation Using The Sieve of Eratosthenes
Parallel Prime Number Generation Using The Sieve of EratosthenesAdrian-Tudor Panescu
 
Companion – An intelligent agent architecture [RO]
Companion – An intelligent agent architecture [RO]Companion – An intelligent agent architecture [RO]
Companion – An intelligent agent architecture [RO]Adrian-Tudor Panescu
 
Modelling a system using Petri Nets [RO]
Modelling a system using Petri Nets [RO]Modelling a system using Petri Nets [RO]
Modelling a system using Petri Nets [RO]Adrian-Tudor Panescu
 

More from Adrian-Tudor Panescu (8)

From Idead to Product in 48 Hours
From Idead to Product in 48 HoursFrom Idead to Product in 48 Hours
From Idead to Product in 48 Hours
 
ECMAScript 2015 Tips & Traps
ECMAScript 2015 Tips & TrapsECMAScript 2015 Tips & Traps
ECMAScript 2015 Tips & Traps
 
The Future is Here: ECMAScript 6 in the Wild
The Future is Here: ECMAScript 6 in the WildThe Future is Here: ECMAScript 6 in the Wild
The Future is Here: ECMAScript 6 in the Wild
 
JSHint: Learning JavaScript the Hard Way
JSHint: Learning JavaScript the Hard WayJSHint: Learning JavaScript the Hard Way
JSHint: Learning JavaScript the Hard Way
 
Parallel Prime Number Generation Using The Sieve of Eratosthenes
Parallel Prime Number Generation Using The Sieve of EratosthenesParallel Prime Number Generation Using The Sieve of Eratosthenes
Parallel Prime Number Generation Using The Sieve of Eratosthenes
 
Companion – An intelligent agent architecture [RO]
Companion – An intelligent agent architecture [RO]Companion – An intelligent agent architecture [RO]
Companion – An intelligent agent architecture [RO]
 
Modelling a system using Petri Nets [RO]
Modelling a system using Petri Nets [RO]Modelling a system using Petri Nets [RO]
Modelling a system using Petri Nets [RO]
 
Visualizing screen overlaps
Visualizing screen overlapsVisualizing screen overlaps
Visualizing screen overlaps
 

Recently uploaded

𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...Neha Pandey
 
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine ServiceHot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Servicesexy call girls service in goa
 
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...SUHANI PANDEY
 
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.soniya singh
 
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge GraphsEleniIlkou
 
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...Delhi Call girls
 
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024APNIC
 
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableCall Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableSeo
 
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRLLucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRLimonikaupta
 
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...Diya Sharma
 
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...Sheetaleventcompany
 
AWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptxAWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptxellan12
 
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort ServiceEnjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort ServiceDelhi Call girls
 
Call Now ☎ 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.soniya singh
 
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...tanu pandey
 
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...APNIC
 
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝soniya singh
 

Recently uploaded (20)

𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
 
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine ServiceHot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
 
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
 
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Pratap Nagar Delhi 💯Call Us 🔝8264348440🔝
 
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
 
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
 
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
 
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
 
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableCall Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
 
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRLLucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
 
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
 
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
 
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
 
AWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptxAWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptx
 
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort ServiceEnjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
 
VVVIP Call Girls In Connaught Place ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Connaught Place ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...VVVIP Call Girls In Connaught Place ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Connaught Place ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
 
Call Now ☎ 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.
 
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
 
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
 
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
 

TAO: Facebook's Distributed Data Store for the Social Graph

  • 1. Papers We Love Iasi Kickstart
  • 4.
  • 5. Why PWL Iasi? ● Because it’s cool ● There is no theory-oriented community ● Discuss language/ framework-agnostic topics ● Bring together academia and industry ● Get more people (and institutions?) interested in actual Research & Development
  • 7. Who? Adrian-Tudor Panescu Software Engineer Adrian Burlacu PhD, Automatic Control and Applied Informatics, TUIASI Alexandru Archip PhD, Computer Engineering, TUIASI Marius Kloetzer PhD, Automatic Control and Applied Informatics, TUIASI Alexandra Adam The Human Side™
  • 8. And you! ● We are looking for speakers/ moderators! ○ ~1 hour presentation/ open discussion on a significant paper on your favourite subject/ field ● And for sponsors ○ Mainly for ensuring that we have a venue for the meetups ● Feel free to contact me: adrian@panescu.com
  • 10. Code of Conduct and other info: http://www.meetup.com/Papers-We-Love-Iasi/
  • 11.
  • 12. TAO: Facebook’s Distributed Data Store for the Social Graph Bronson et al., Facebook Inc., USENIX’ 13
  • 13. 2
  • 14. ● Billion reads and million writes per second ● Petabyte-sized data set ● Geographically spread ● Users are unique and impatient ○ Privacy constraints must be satisfied at view time How do we store and serve all this? 3
  • 16. The 3 contributions ● Characterize Facebook’s workload ● Describe a proper data model ● Present an actual large-scale implementation 5
  • 17. The Associations and Objects 6
  • 18. The data model ● There are only 2 data types: nodes and edges ○ Labeled directed multigraph ○ You need only 2 tables in the DB ● Facebook leverages certain application characteristics: ○ They don’t need a full graph query API ○ “Most of the data is old, but many of the queries are for the newest subset” ● “Likely to be useful for any application domain that needs to efficiently generate fine-grained customized content from highly interconnected data.” 7
  • 19. “TAO provides basic access to the nodes and edges of a constantly changing graph in data centers across multiple regions. It is optimised heavily for reads, and explicitly favours efficiency and availability over consistency.” 8
  • 21. 10
  • 22. Summary ● 1 storage layer (MySQL) ● 2 cache layers (custom, LRU) directly implementing the graph abstraction ○ Leader (DB I/O), protects DB from thundering herds ○ Follower (Client I/O) ○ Consistency maintained via asynchronous maintenance messages ● A full copy of Facebook’s data is stored in a cluster of data centers in geographical proximity ● A region has a master and multiple slaves (per shard!) deployments ○ Writes are always forwarded first to the master 11
  • 23. Consistency ● Remember that we are eventually consistent! ● Write request to slaves forwarded to master ○ If applied, all slaves are informed ○ Follower caches are invalidated via maintenance messages ● Propagated changesets use a version number to solve conflicts generated by stale data ● The master DB is the single source of truth ○ Requests can be marked as critical and will always be forwarded to the master DB (e.g., logins) ● Replication lag: <1s (85%), <3s (99%), <10s (99.8%) 12
  • 24. Evaluation: request types Random sample of 6.5 million requests over 40 days 13
  • 25. Evaluation: read latency Overall hit rate: 96.4% 14
  • 26. Evaluation: write latency Send packet US West - Netherlands - US West: 150ms 15
  • 27. Evaluation: hit rate vs. throughput 16
  • 28. Related work ● Spanner: Google’s globally distributed database ● Redis: in-memory key-value store ● Dynamo, Voldemort, COPS: distributed key-value store ● BigTable, PNUTS, SimpleDB, HBase: NoSQL (NoACID) ● Pig Latin, Pregel: graph processing 17
  • 29. Conclusions ● Paper describes a solution to a practical problem ● Data model, API and implementation for a read-intensive, eventually-consistent, geographically-distributed graph ● Simple data model, layered cache which incorporates application logic ● Interesting to see how they leverage domain knowledge to optimize the system ● Evaluation on real data from production system 18