I am trying to load data from Mysql to elasticsearch using logstash, but its loading very slow.
6500/minute into elasticsearch.
The following is my Logstash config
I gave limit 10K to 50K in sql select statement and checking the time to load the data into ES manually.
Even after removing filter from logstash configuration, its loading 15to16K per minute.
If I have data inflow like 250K per minute, what kind of setup/configuration is required.
And one more info is its single node VM, all ELK and Mysql are installed in same. Is this because of many applications are running and hardware configuration is not good enough ?
If I have data inflow like 250K per minute, what kind of setup/configuration is required.
That depends on a lot of factors, including the kinds of documents you want to index.
And one more info is its single node VM, all ELK and Mysql are installed in same. Is this because of many applications are running and hardware configuration is not good enough ?
That's definitely a possibility. Are you saturating the CPUs? Are you seeing a lot of I/O wait? What's the current bottleneck? Measure!
Thanks for your reply, yes cpu usage is more than 100%(like 130-160), when I run logstash config.
I/O wait is fluctuating like 0.0, 0.1, 2.9, 1.6. most of the time it is 0.0 and 0.1.
My current bottleneck is 15k/minute with out any filter in logstash config. How to improve logstash performance.
Having all components on a single VM can make it difficult to troubleshoot performance issues as they all affect each other. If you can deploy the different components on separate VMs it may be easier to get assistance in pinpointing the bottleneck and optimising the pipeline.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.