Scuba: Diving into Data at Facebook
Abraham, Lior, John Allen, Oleksandr Barykin, Vinayak Borkar, Bhuwan Chopra, Ciprian Gerea, Daniel Merl, et al. 2013. “Scuba: Diving into Data at Facebook.” Proc. VLDB Endow. 6 (11): 1057–1067. doi.org/10.14778/2536222.2536231
Abstract
Facebook takes performance monitoring seriously. Performance issues can impact over one billion users so we track thousands of servers, hundreds of PB of daily network traffic, hundreds of daily code changes, and many other metrics. We require latencies of under a minute from events occuring (a client request on a phone, a bug report filed, a code change checked in) to graphs showing those events on developers' monitors.Scuba is the data management system Facebook uses for most real-time analysis. Scuba is a fast, scalable, distributed, in-memory database built at Facebook. It currently ingests millions of rows (events) per second and expires data at the same rate. Scuba stores data completely in memory on hundreds of servers each with 144 GB RAM. To process each query, Scuba aggregates data from all servers. Scuba processes almost a million queries per day. Scuba is used extensively for interactive, ad hoc, analysis queries that run in under a second over live data. In addition, Scuba is the workhorse behind Facebook's code regression analysis, bug report monitoring, ads revenue monitoring, and performance debugging.
BibTeX
@article{10.14778/2536222.2536231,
title = {Scuba: Diving into Data at Facebook},
author = {Abraham, Lior and Allen, John and Barykin, Oleksandr and Borkar, Vinayak and Chopra, Bhuwan and Gerea, Ciprian and Merl, Daniel and Metzler, Josh and Reiss, David and Subramanian, Subbu and Wiener, Janet L. and Zed, Okay},
year = 2013,
month = aug,
journal = {Proc. VLDB Endow.},
volume = {6},
number = {11},
pages = {1057--1067},
publisher = {VLDB Endowment},
issn = {2150-8097},
doi = {10.14778/2536222.2536231},
url = {http://www.vldb.org/pvldb/vol6/p1057-wiener.pdf},
abstract = {Facebook takes performance monitoring seriously. Performance issues can impact over one billion users so we track thousands of servers, hundreds of PB of daily network traffic, hundreds of daily code changes, and many other metrics. We require latencies of under a minute from events occuring (a client request on a phone, a bug report filed, a code change checked in) to graphs showing those events on developers' monitors.Scuba is the data management system Facebook uses for most real-time analysis. Scuba is a fast, scalable, distributed, in-memory database built at Facebook. It currently ingests millions of rows (events) per second and expires data at the same rate. Scuba stores data completely in memory on hundreds of servers each with 144 GB RAM. To process each query, Scuba aggregates data from all servers. Scuba processes almost a million queries per day. Scuba is used extensively for interactive, ad hoc, analysis queries that run in under a second over live data. In addition, Scuba is the workhorse behind Facebook's code regression analysis, bug report monitoring, ads revenue monitoring, and performance debugging.},
issue_date = {August 2013}
}