Я новичок в поиске эластичных материалов. Я переиндексирую старый индекс в новый. но когда я переиндексирую миллионы записей, я получаю исключение mapper_parsing_exception. поэтому мой вопрос в том, что есть ли способ установить флаг ignore_malformed true для уже существующего индекса.
Можем ли мы установить флаг ignore_malformed для уже существующего индекса в elasticsearch?
Ответы (1)
Да, можно изменить параметр ignore_malformed
динамически, просто запустив это:
PUT logstash_june_2019/doc/_mapping
{
"properties": {
"createdAt": {
"type" : "date",
"ignore_malformed": true <--- add this
}
}
}
person
Val
schedule
30.11.2020
Я попробовал ваше решение... но elasticsearch выдает исключение: resource_already_exists_exception
- person Naresh Singh; 01.12.2020
Можете ли вы показать, что именно вы выполнили? А какую версию ES вы используете?
- person Val; 01.12.2020
Версия ES: 6.4.2 PUT logstash_june_2019/_mapping { свойства: { createdA: { type : long, ignore_malformed: true } } }
- person Naresh Singh; 01.12.2020
Что вы получаете при запуске
GET logstash_june_2019
?
- person Val; 01.12.2020
все отображаемые поля индекса logstash_june_2019
- person Naresh Singh; 01.12.2020
Да, я хотел бы увидеть ответ, который вы получите, пожалуйста
- person Val; 01.12.2020
ответ Actully очень большой: logstash_june_2019: {псевдонимы: {}, сопоставления: {doc: {динамический: false, _all: {включено: true}, свойства: {appt_date_time: {type: long}, appt_id: {type: long} , createdAt: { тип: дата
- person Naresh Singh; 01.12.2020
Смотрите мой обновленный ответ
- person Val; 01.12.2020
Давайте продолжим это обсуждение в чате.
- person Naresh Singh; 01.12.2020
ignore_malformed
в уровень индекса перед запуском переиндексации - person Val   schedule 30.11.2020