Live data from Hacker News

Apache Spark Scale: A 60 TB+ production use case

code.facebook.com

41–42 of 42 posts

Re: Apache Spark Scale: A 60 TB+ production use case

#41
post #31

60T sadly isn't that much. We tried (and failed) to use spark on a several PB dataset and it failed miserably.

Do you have anymore details? What version?

I want to say it was the highest 1.6.x around Feb/March of this year with a few PB (a sample of the real dataset) over an infiniband network. It just broke miserably. Also, java was never terribly good when you want to speak native ibverbs as the jni stuff is just slow.

Re: Apache Spark Scale: A 60 TB+ production use case

#42
post #11

"While running on 20 TB of input, we discovered that we were generating too many output files (each sized around 100 MB) due to the large number of tasks." I could be completely missing something here, but to decrease the number of output files you can coalesce() the RDD before you write. For example, let's say you have a 20 node cluster, each with 10 executors, and the RDD action is split into 20000 tasks. You may e…

Coalescing down to a smaller partition number does decrease the number of output files. But it also decreases parallelism, which isn't expected when processing so large a dataset.

Coalescing makes more sense when some stage of the pipeline dramatically shrinks the amount of data (e.g. grep-ing error logs from all log files) so that successive stages can easily handle the rest of the data with much fewer executors.

(disc.: Spark committer)

Post reply on HN