2016-08-05 14 views
1

Wie kann man vorhandenen Index in ES mit mehreren Dokumenten Formular JSON-Datei mit spring/spring-data-elasticsearch füllen?Füllen ElasticSearch-Index mit Dokumenten Formular JSON mit Spring

EDIT

Ich kenne ES BulkAPI und Spring elasticsearchTemplate.bulkIndex(indexQueries); Methode jedoch auf diese Weise muss ich JSON Parsen auf meinem eigenen (I want to avid this way) behandeln. Aber wenn wir den Index und das Mapping bereits kennen, frage ich mich, ob es etwas einfacheres gibt, das nur die Datei foo.json passieren lässt?

+0

Füllen bedeutet, dass Sie Daten in einer JSON-Datei indizieren möchten. Recht ? – Sachin

+0

Ich habe eine große JSON-Datei, die ich in ES einfügen möchte, die einen entsprechenden Index für die JSON-Datenzuordnung hat. – mCs

+0

Sie können http://stackoverflow.com/questions/20646836/is-there-any-way-to-import-a-json-filecontains-100-documents-in-elasticsearch – Sachin

Antwort

0

Ich denke nicht, dass es eine solche Funktion im Frühjahr Daten elasticsearch gibt. Aber man kann so etwas tun: -

1.Set richtige Zuordnung für Index (mit json Struktur)

2.Create Index und setzen Mapping.

3.Use JSON-Parser und analysieren Eingabe JSON-Datei wie folgt aus: -

 //parse json file 
    JSONParser parser = new JSONParser(); 
    Object object = parser.parse(new FileReader("mydoc\\test.js")); 
    JSONObject jsonData = (JSONObject) object; 
    // index parsed contents 
    IndexQuery indexQuery = new IndexQueryBuilder().withIndexName(indexName). 
         withSource(jsonData.toString()).build(); 
    elasticsearchTemplate.index(indexQuery); 

bin nicht sicher, ob dies ist, was Sie suchen auf, aber immer noch kann dabei helfen.