Спящий поиск Elasticsearch - PullRequest
0 голосов
/ 18 мая 2018

Ранее мы использовали поиск в спящем режиме, Lucene для индексации.
Чтобы обеспечить лучшую масштабируемость, мы планируем использовать Elasticsearch 5 (вместо Lucene).

У меня есть следующие вопросы:

  1. Есть ли какой-нибудь явный hibernatesearch java api для подачи данных в Elasticsearch?
  2. Есть ли какие-либо проблемы в совместном использовании поиска Hibernate и Elasticsearch?

Ответы [ 2 ]

0 голосов
/ 01 августа 2018

Я полагаю, что при использовании Elastic Search в стиле JPA можно использовать все встроенные методы.

Дайте мне знать, если необходимо, пример кода.

public interface YourClass extends ElasticsearchRepository<Object, String>{}

<dependency>
    <groupId>org.springframework.data</groupId>
    <artifactId>spring-data-elasticsearch</artifactId>
    <version>3.0.8.RELEASE</version>
</dependency>
0 голосов
/ 18 мая 2018

Существует ли какой-либо явный java api hibernatesearch для подачи данных в Elastic search?

AFAIK. Вы можете просто использовать стандартный HibernateSearch API для отправки своих данных в Elasticsearch вместо Lucene.Это довольно прозрачно для вас.Во время запроса вы можете сделать оба.Используйте стандартные запросы HibernateSearch или используйте собственные запросы эластичного поиска :

FullTextEntityManager fullTextEm = Search.getFullTextEntityManager(entityManager);
QueryDescriptor query = ElasticsearchQueries.fromJson(
      "{ 'query': { 'match' : { 'lastName' : 'Brand' } } }");
List<?> result = fullTextEm.createFullTextQuery(query, GolfPlayer.class).getResultList();

Вы также можете получить доступ к клиенту Elasticsearch .

Есть ли какие-либо проблемы в совместном использовании поиска Hibernate и упругого поиска?

Я думаю, что команда поиска Hibernate делает очень хорошую работу.Он включает в себя прозрачность, такую ​​как перечисление известных ограничений реализации .

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