I have an index with a field that contains a whole CSV file (headers included). I want to convert each csv row into a separate document containing all fields of the corresponding csv row (if possible the field names should correspond to the csv header column names).
I found that with ingest I can use some processors (like csv or grok) to 'extract' all csv fields and add each field only into the same document.
But how can I create multiple documents from this single field/document?
I am aware of filebeat to read logs or csv data into elasticsearch. But I am receiving the csv-files from mongodb / gridfs. I am using monstache to get my mongodb real-time-synchronized with elasticsearch. It´s working but the way the csv files are stored in my index is as a new field containing the whole csv file. So I can not use any logstash preprocessor or filebeat.
I was just looking for a solution using ingest processors but it seems, they are only operating on one document. Generally I am looking for a way to create (index?) a number of documents using the csv file stored in one field.
Maybe I should formulate this question more general and add a new thread.
I do not want to implement an additional components for this. Just thought that there should be an elasticsearch way to index contexts of single fields as new documents (to maybe another index).
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.