Получить общую частоту терминов из Elasticsearch Java API

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

SearchResponse searchResponse = nodeClient
            .prepareSearch(INDEX_NAME)
            .setQuery(QueryBuilders.termQuery(TERM_FIELD, term))
            .get();

Тем не менее, это должно быть сделано несколько раз (10-20 раз) и кажется медленным. Есть ли способ использовать Elasticsearch Java API и читать данные из инвертированных индексов напрямую?

В Lucene я использовал функцию под названием totalTermFreq(), который считывает общее количество вхождений термина во все документы напрямую из инвертированных индексов. Документацию Lucene о функции можно найти здесь

0 ответов

Другие вопросы по тегам