elasticsearch 文档计数相同,但每次运行日志存储时,索引大小都在增长
我使用mysql数据库中包含的数据的日志存储发送elasticsearch 但每次运行logstash时,文档的数量都保持不变,但索引大小会增加 第一次跑步 计数:333 大小(字节):206kb 现在 计数:333 字节大小:1.6MBelasticsearch 文档计数相同,但每次运行日志存储时,索引大小都在增长,elasticsearch,logstash,elasticsearch,Logstash,我使用mysql数据库中包含的数据的日志存储发送elasticsearch 但每次运行logstash时,文档的数量都保持不变,但索引大小会增加 第一次跑步 计数:333 大小(字节):206kb 现在 计数:333 字节大小:1.6MB input { jdbc { jdbc_connection_string => "jdbc:mysql://***rds.amazonaws.com:3306/" jdbc_user => "***"
input {
jdbc {
jdbc_connection_string => "jdbc:mysql://***rds.amazonaws.com:3306/"
jdbc_user => "***"
jdbc_password => "***"
jdbc_driver_library => "***\mysql-connector-java-5.1.46/mysql-connector-java-5.1.46-bin.jar"
jdbc_driver_class => "com.mysql.jdbc.Driver"
statement => "SELECT id,title,url, FROM tableName"
schedule => "*/2 * * * *"
}
}
filter {
json {
source => "texts"
target => "texts"
}
mutate { remove_field => [ "@version", "@timestamp" ] }
}
output {
stdout {
codec => json_lines
}
amazon_es {
hosts => ["***es.amazonaws.com"]
document_id => "%{id}"
index => "texts"
region => "***"
aws_access_key_id => '***'
aws_secret_access_key => '***'
}
}
显然,你总是一遍又一遍地发送相同的数据。在ES中,每次更新文档(即使用相同的ID)时,旧版本将被删除并在索引中保留一段时间(直到基础索引段合并) 在每次运行之间,可以发出以下命令:
curl -XGET ***es.amazonaws.com/_cat/indices?v
在您得到的响应中,检查docs.deleted
列,您将看到已删除文档的数量增加