Live data from Hacker News

Scuba: Diving into Data at Facebook [pdf]

research.fb.com

41–44 of 44 posts

Re: Scuba: Diving into Data at Facebook [pdf]

#41

This is a special-purpose time-series data warehouse and a UI for querying it. If you are not Facebook, it is almost always better to do projects like this by using a standard data warehouse like Redshift or BigQuery, a queue like Kinesis, and a BI tool like Looker or Tableau. Your data won't be quite as real-time and your queries won't be quite as fast, but it will take much less engineering effort and you'll be abl…

Here is a good list of redshift 'gotchas' - https://github.com/open-guides/og-aws#redshift-gotchas-and-l... We ran into several of those. Notably, it's difficult to achieve the 'real-time' promise of redshift because of the huge performance hit while loading data into the DB so you have to do it off-hours. You can update a replica and then 'hot-swap' it in but this gets expensive. For operational analytics it's bette…

The biggest gotcha listed there is how Redshift gets bogged down if you're loading a lot of tables, frequently. You can't run a production Redshift with lots of tables at * It has all of SQL, including JOINs

* You can use it for both timeseries data and all your other data.

Re: Scuba: Diving into Data at Facebook [pdf]

#42
post #23

This is a special-purpose time-series data warehouse and a UI for querying it. If you are not Facebook, it is almost always better to do projects like this by using a standard data warehouse like Redshift or BigQuery, a queue like Kinesis, and a BI tool like Looker or Tableau. Your data won't be quite as real-time and your queries won't be quite as fast, but it will take much less engineering effort and you'll be abl…

Wouldn't InfluxDB be a better comparison?

The advantage of general-purpose data warehouses is they give you all of SQL, and they are compatible with BI tools. Time-series data is just one of the types of data you will want to analyze. It's best to choose tools that will work for all your data sources, even if these tools are suboptimal for time-series in particular.

Re: Scuba: Diving into Data at Facebook [pdf]

#43
post #40
post #39

So it samples data less than or equal to a second old and at a rate determined by the person making the query? I wonder how often the data is inaccurate given the potentially low sample size?

Not sure where you got the "less than or equal to a second old"? Maybe I'm misunderstanding what you mean? There is no single system-wide imposed sampling rate, so it's up to you to set the sampling rate based on what sort of queries you want to be able to do with good enough accuracy. We have 1:1 rate data for some things (say errors served on a particular service), while a ten or a hundred thousand to one data for…

Ah yeah. I misread the pdf; the rows expire at millions per second and not after 1 second.

I was wondering about the size of the sampling error. Apparently it's negligible.

Re: Scuba: Diving into Data at Facebook [pdf]

#44

Can confirm --- was at FB. Scuba is awesome --- especially the surprisingly sophisticated statistical aggregations and the call-stack view that somebody added.

That was me. Or rather, I created a table with columns s0-s255 and built a primitive tree interface for a stacktrace dataset called Strobelight. Searching was literally if s0 == 'foo' || s1 == 'foo'... etc. This horrified the real Scuba devs enough to add proper vector type and search operators.
Post reply on HN