我正在使用execSource(cat命令),文件通道和使用elasticsearch Bulk和XContentBuilder java apis自定义构建的接收器,将数据加载到双节点elasticsearch集群,每个5个分片,使用apache-flume(一个flume代理)
水槽中的事件集合以8000个事件/秒(1个事件的大小246个字节)的速率发生,但在弹性搜索的索引期间,它减少到3000个事件/秒。
如何调整elasticsearch的索引性能以使我的吞吐量接近水槽中的收集率?
答案 0 :(得分:3)
我编写了一个可以下载here的脚本。它是一个shell脚本,但我相信无论你的平台如何,你都可以翻译。索引性能有很多变量。硬件和系统变量。那里有很多资源。
答案 1 :(得分:0)
我会考虑使用logstash写入elasticsearch的方式 - 特别是他们将索引间隔设置为5秒以加快性能。您可能还想测试压缩是否有帮助或阻碍。
否则,我会增加您的群集大小。
答案 2 :(得分:0)
使用内存通道代替文件通道,它将提高几倍的输出速度。