【问题标题】:Elasticsearch hadoop configure bulk batch sizeElasticsearch hadoop 配置批量批量大小
【发布时间】:2017-03-22 20:07:00
【问题描述】:
我可能通读了 es-hadoop / es-spark 项目使用批量索引的 Stackoverflow。如果确实如此,则默认批量大小是根据 BulkProcessor(5Mb)。有什么配置可以改变这个吗?
我在我的代码中使用JavaEsSparkSQL.saveToEs(dataset,index),我想知道有哪些可用配置可用于调整性能。这是否也与数据集的分区有关。
【问题讨论】:
标签:
elasticsearch
elasticsearch-hadoop
elasticsearch-spark
【解决方案1】:
在他们的配置页面上找到设置
es.batch.size.bytes (default 1mb)
使用 Elasticsearch 批量 API 进行批量写入的大小(以字节为单位)。请注意,批量大小是为每个任务实例分配的。始终乘以 Hadoop 作业中的任务数,以获得运行时达到 Elasticsearch 的总批量大小。
es.batch.size.entries (default 1000)
使用 Elasticsearch 批量 API 进行批量写入的大小(以条目为单位) - (0 禁用它)。 es.batch.size.bytes 的伴侣,一旦匹配,就会执行批量更新。与大小类似,此设置是针对每个任务实例的;它在运行时乘以正在运行的 Hadoop 任务的总数。