Использование Elasticsearch DSL Query с Hadoop Mapreduce

Я пытаюсь подключиться от mapreduce к Elasticsearch. Есть отличный учебник, который я использовал. Чтобы запросить asticsearch, он использует поиск URI, который работает нормально:

Configuration conf = new Configuration();
conf.set("es.resource", "radio/artists/");            
conf.set("es.query", "?q=me*"); 

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

Спасибо

1 ответ

Решение

Хорошо, можно использовать Query DSL, и это довольно просто. Все, что вам нужно сделать, это отредактировать запрос, чтобы начать с { и заканчивается }, Так это будет выглядеть так:

conf.set("es.query", { "query" : { "term" : { "user" : "costinl" } } });

Или можно использовать внешний json файл:

conf.set("es.query", "some.json");

Подробнее об этом здесь.

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