elasticsearch 日志存储速度不够快,无法输出到elasticsearch
我使用logstash作为索引器从redis将数据输出到elasticsearch,但由于数据量大,所以速度不快。然后我使用了多个工人,但会导致各种问题。还有其他更好的方法来实现更快的输出吗?谢谢 以下是我的配置:elasticsearch 日志存储速度不够快,无法输出到elasticsearch,elasticsearch,logstash,elasticsearch,Logstash,我使用logstash作为索引器从redis将数据输出到elasticsearch,但由于数据量大,所以速度不快。然后我使用了多个工人,但会导致各种问题。还有其他更好的方法来实现更快的输出吗?谢谢 以下是我的配置: input { redis { host => "10.240.93.41" data_type => "list" key => "tcpflow" } } filter { csv { columns => [t
input {
redis {
host => "10.240.93.41"
data_type => "list"
key => "tcpflow"
}
}
filter {
csv {
columns => [ts,node,clientip,vip,rtt,city,isp,asn,province]
separator => "|"
}
}
output {
elasticsearch {
index => "tcpflow-%{+YYYY.MM.dd}"
index_type => "tcpflow"
cluster => "elasticsearch"
host => ["10.240.93.41", "10.240.129.32"]
#protocol => "node"
#protocol => "http"
#port => 8200
protocol => "transport"
manage_template => false
workers => 30
}
}
logstash中的redis{}输入默认为一次读取一个文档。根据文档的大小,尝试将batch_count设置为100-1000范围内的某个值
拥有多个工作线程-w是理想的,除非您使用的是多行{}过滤器不是线程安全的。输出事件的大小是多少?你提到有多个worker会给你带来问题-你能详细说明一下吗?我没有具体的测量尺寸,但如果我使用5个worker不会太大。我只是想知道有没有更好的方法来加快速度。使用大量worker会打开更多文件,操作系统有一个限制值。谢谢。谢谢。我试过了。批处理计数似乎不再有效,但使用-w更好。它是2000msg/秒,有其他方法使其更快吗?