写重弹性搜索

时间:2014-01-08 05:26:34

标签: elasticsearch

我正在编写一个使用kafka,storm和elasticsearch的实时分析工具,并希望一个针对大约50K /秒插入进行优化的弹性搜索。出于POC的目的,我尝试将批量文档插入到elasticsearch中,每秒获得10K插入。

我在一大盒亚马逊ec2上运行ES。 我调整了以下属性:

indices.memory.index_buffer_size: 30%
indices.memory.min_shard_index_buffer_size: 30mb
indices.memory.min_index_buffer_size: 96mb

threadpool.bulk.type: fixed
threadpool.bulk.size: 100
threadpool.bulk.queue_size: 2000


bootstrap.mlockall: true

但是我希望写入性能按50Ks而不是10Ks来确保我的风暴拓扑的正常流动。任何人都可以建议如何配置重写优化ES集群。

1 个答案:

答案 0 :(得分:1)

此处的scripts可以帮助您提高索引性能。有很多选项和配置可供尝试,我写了一些here但是这不是一个全面的列表。减少副本和增加分片会提高索引性能,但会降低索引期间的可用性和搜索性能。

也许将HTTP批量请求发送到多个节点而不仅仅是主节点可以帮助您获得所需的数据。

希望这会有所帮助。 10k / ps插入比大多数人已经实现的要好,但他们是否会使用我不知道的大型亚马逊实例。