针对Elasticsearch的Spark调优 - 如何增加索引/摄取吞吐量

时间:2016-07-18 19:19:04

标签: scala hadoop elasticsearch apache-spark

想了解Spark执行程序,核心和Elasticsearch批量大小之间的关系,以及如何以最佳方式调整Spark作业以获得更好的索引吞吐量。

我有Parquet格式的3.5B数据,我想将它们摄取到Elasticsearch,而且我的索引率不超过20K。有时我得到了60K-70K,但它立即下降,我得到的平均值是每秒15K-25K指数。

关于我的输入的更多细节:

  • 约22,000个Parquet格式的文件
  • 它包含大约3.2B条记录(大小约3TB)
  • 目前正在运行18个执行程序(每个节点3个执行程序)

有关我当前ES设置的详细信息:

  • 8个节点,1个主节点和7个数据节点
  • 带有70个分片的索引
  • 索引包含49个字段(均未分析)
  • 无复制
  • “indices.store.throttle.type”:“无”
  • “refresh_interval”:“ - 1”
  • es.batch.size.bytes:100M(我也试过500M)

我是Elasticsearch的新手,所以不确定如何调整我的Spark工作以获得更好的性能。

0 个答案:

没有答案