Erstellen oder aktualisieren Sie das Mapping in elasticsearch

Ich bin neu bei Elasticsearch und arbeite derzeit an der Implementierung einesgeo_distance Filter für die Suche. Ab sofort hat mein Index die folgende Zuordnung (ich habe einige Felder entfernt):

{
advert_index: {
   mappings: {
      advert_type: {
         properties: {
            __v: {
               type: "long"
            },
            caption: {
               type: "string"
            },
            category: {
               type: "string"
            },
            **location: {
            type: "long"
            },**

         }
      }
   }
}

Das Feld "geo_distance" wird im Feld "location" implementiert. Eine Beispielinstanz sieht folgendermaßen aus:

"location": [
               71,
               60
            ],

Das heißt ist im geoJSON-Format[lon, lat].

Ich verstehe, dass ich meinen Index aktualisieren muss, damit das Standortfeld vom Typ istgeo_point, wie in der Dokumentation beschrieben (Mapping-Geo-Punkt). Es scheint, als müsste ich den Index löschen und einen neuen erstellen, aber ich kann das nicht.

Bin ich auf dem richtigen Weg? Ich würde mich sehr freuen, wenn mir jemand dabei helfen könnte, einen neuen Index zu erstellen oder meinen vorhandenen Index mit dem richtigen Datentyp zu aktualisieren.

Danke vielmals!

Antworten auf die Frage(2)

Ihre Antwort auf die Frage