Sto cercando di individuare un approccio per eliminare tutte le voci per una proprietà specifica in un indice elasticsearch e rimuovere tutti i mapping di tipi per quella proprietà.Elasticsearch Elimina proprietà mappatura
Sono stato a guardare i seguenti due pagine doc: put mapping e delete mapping
Da secondo link:.
"permette di cancellare una mappatura (tipo), insieme con i suoi dati il resto endpoint è/{indice}/{tipo} con il metodo DELETE. "
Quello che penso di cui ho bisogno è un /{index}/{type}/{property}
?
Devo ricreare l'intero indice per ottenere questo risultato, ovvero spostare e manipolare i dati tra i tipi?
per esempio, chiamando GET sulla mappatura:
curl -XGET 'http://.../some_index/some_type/_mapping'
risultato:
{
"some_type": {
"properties": {
"propVal1": {
"type": "double",
"index": "analyzed"
},
"propVal2": {
"type": "string",
"analyzer": "keyword"
},
"propVal3": {
"type": "string",
"analyzer": "keyword"
}
}
}
}
dopo questa operazione cancellare il propVal3
sarebbero tornati:
curl -XGET 'http://.../some_index/some_type/_mapping'
risultato:
{
"some_type": {
"properties": {
"propVal1": {
"type": "double",
"index": "analyzed"
},
"propVal2": {
"type": "string",
"analyzer": "keyword"
}
}
}
}
e tutti i dati per propVal3
verranno rimossi dall'indice.
Grazie per la risposta. Sento che ho bisogno di farlo. Qual è la migliore strategia per farlo tramite "reindexing"? Mi rendo conto che questo sarà un incubo per le prestazioni ... ma quale strategia prenderesti qui? Si sta spostando su un altro tipo (rimuovendo la proprietà in corso) e si torna di nuovo un'opzione? –
Creato un seguito a questa domanda: http://stackoverflow.com/questions/16159902/elasticsearch-reindex-or-flag-deleted-type-property –
Perché la documentazione dice che è possibile?O l'ho frainteso? – brupm