使用logstash导入数据到elasticsearch,速度太慢

使用logstash导入数据到elasticsearch,速度太慢,logstash,Logstash,全部 我正在使用logstash将一些csv文件导入elasticsearch,我发现速度太慢了 配置为: input { stdin{} } filter { csv{ columns=>['date','metric1','id','metric2','country_id','metric3','region_id'] separator=>"," } mutate { convert => [ "id", "integer" ] con

全部

我正在使用logstash将一些csv文件导入elasticsearch,我发现速度太慢了

配置为:

input {
  stdin{}
}

filter {

csv{

columns=>['date','metric1','id','metric2','country_id','metric3','region_id']
separator=>","
}


  mutate {
    convert => [ "id", "integer" ]
    convert => [ "country_id", "integer" ]
         convert => [ "region_id", "float" ]


}

}

output {

 elasticsearch {
        action => "index"
protocol=>http
host => "10.64.201.***"
        index => "csv_test_data_01"
        workers => 1
    }


  stdout {
codec => rubydebug
 }
}
10.64.201.***是elasticsearch集群的主ip地址,该集群中有三个节点

csv文件存储在这三个节点之一中

我只是简单地使用命令:bla-f**.config 然后开始将这些csv文件导入elasticsearch集群

但是速度太慢了


有更好的解决方案吗?或者我做错了什么?

应该从隔离问题开始:

  • 找出瓶颈是否在读取操作、日志存储解析、网络到elasticsearch或elasticsearch服务器上的IO限制中
  • 如果问题在读操作中,您可能希望使用不同的方式读取CSV文件,或者它可能在磁盘中,并且应该考虑移动到更高性能的磁盘(检查IO使用IOTOP)
  • 要验证logstash是否存在问题,请尝试在不进行任何解析的情况下导入数据,并查看性能是否更好,如果是logstash,请尝试提高解析效率,或者准备一个更好的已预解析的CSV文件
  • 要验证这是否是elasticsearch问题,请尝试将数据打印到屏幕上,看看性能是否更好。如果问题在elasticsearch数据库中,请验证网络使用情况和磁盘使用情况,以隔离问题。移动到更好的网络连接或将磁盘更改为更高性能的磁盘,以提高Elasticsearch性能
  • 与其他将文档加载到集群的方式相比,“太慢”,或者?你对logstash和elasticsearch做了什么调整?如果只使用标准输出(删除elasticsearch输出),您会获得多少吞吐量?