поэтому я получаю данные из SQL и использую PHP API для отправки объемных данных в эластичные, но эластичные — все мои термины в полях строковых значений. Я пытаюсь установить индексы not_analyzed во время первоначальной отправки, но, похоже, это не работает.
Пожалуйста, помогите, если можете, спасибо.
По умолчанию строки в ES анализируются, поэтому вам нужно сопоставить индекс и сказать, какие поля, в частности, вы не хотите анализировать. полный документ Вот.
например
{
"tag": {
"type": "string",
"index": "not_analyzed"}
}
Поэтому, когда вы загружаете данные в этот индекс, тег поля не будет анализироваться. Проверьте, совпадают ли поля, установленные как not_analyzed в вашем индексе, с полями, в которые вы загружаете данные, может быть, что они не совпадают, и почему они анализируются.
Если вы хотите установить по умолчанию строку не анализировать, проверьте Отключение анализа поля по умолчанию в упругом поиске
Других решений пока нет …