[безболезненно] разница между doc и params._source - PullRequest
0 голосов
/ 18 марта 2019

при использовании doc ["abc"] оказывается, что нет исключений для поля "abc", только чтобы найти params._source ["abc"] получить все правильно.

Я проверил статус doc ["abc"]. Value, он показывает ноль, также doc ["abc"]. Empty is true.

1.eelasticsearch версия: 5.x

2.Используйте безболезненный скрипт встроенной сортировки

Кто-нибудь может выяснить, что. случилось?

1 Ответ

0 голосов
/ 03 апреля 2019

В зависимости от того, где используется скрипт, он будет иметь доступ к определенным специальным переменным и полям документа.Я не знаю ваше отображение, но я думаю, что эта ссылка ответит на ваши вопросы - Доступ к полям документа и специальным переменным

Чтобы процитировать дальше ссылку выше:

Значения документа и текстовые поля

Синтаксис документа ['field'] также можно использовать для анализируемых текстовых полей, если включены данные поля, но ВНИМАНИЕ: включение данных поля в текстовом поле требует загрузки всехиз терминов в кучу JVM, что может быть очень дорого как с точки зрения памяти и процессора.Редко имеет смысл обращаться к текстовым полям из сценариев.

Значения документов - это столбчатое хранилище значений полей, включенное по умолчанию для всех полей, кроме анализируемых текстовых полей.

_source предоставляет доступ к индексируемому исходному телу документа (включая возможность отличать нулевые значения от пустых полей, массивы с одним значением от простых скаляров и т. Д.).

если ваше поле abc является анализируемым текстовым полем или объектом, doc не будет работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...