mam rzekę na mojej lokalnej instancji ES 1.3.4 i JDBC dla MySQL 1.3.4.4ElasticSearch PutMapping API: MapperParsingException typ korzeń mapowanie nie jest pusta po parsowania
Rzeka ta działa poprawnie i importowanie danych w ES. Problem Mam do czynienia z tym, że jedno z moich pól jest polem tekstowym i zawiera spacje. Na przykład "Kalkulator w czasie rzeczywistym". ES indeksuje go jako "rzeczywisty", "czas" i "kalkulator" zamiast "Kalkulatora czasu rzeczywistego".
Więc tworzę mapowania za pomocą niżej wymienionych JSON:
{
"sale_test": {
"properties": {
"Client": {
"index": "not_analyzed",
"type": "string"
},
"OfferRGU": {
"type": "long"
},
"SaleDate": {
"format": "dateOptionalTime",
"type": "date"
},
"State": {
"type": "string"
}
}
}
}
i polecenie:
curl -XPUT http://localhost:9200/my_index/_mapping/my_type
Ale jestem coraz niżej wymieniony błąd:
> {"error":"MapperParsingException[Root type mapping not empty after
> parsing! Remaining fields: [sale_test :
> {properties={Client={type=string, index=not_analyzed},
> OfferRGU={type=long}, SaleDate={type=date, format=dateOptionalTime},
> State={type=string}}}]]","status":400}
Kiedy próbuję wyświetl aktualne mapowanie za pomocą poniższej komendy:
curl -XGET http://localhost:9200/dgses/sale_test_river/_mapping
mam tylko to: {}
Dzięki za pomoc.
Dzięki. To był problem z pisaniem. Mam mapowanie i po przeczytaniu dokumentacji Elastic Search zdałem sobie sprawę, że nie możemy zaktualizować mapowania dla już utworzonego indeksu. Najpierw musimy usunąć poprzednie mapowanie, a następnie utworzyć nowe mapowanie dla tego indeksu. Jeśli jest jakakolwiek inna droga, podziel się. Dzięki. –