elasticsearch - 休眠搜索 Elasticsearch
问题描述
我们之前使用过休眠搜索、Lucene 进行索引。
为了提供更好的可扩展性,我们计划使用 Elasticsearch 5(而不是 Lucene)。
我有以下问题:
- 是否有任何明确的 hibernatesearch java api 将数据提供给 Elasticsearch?
- 一起使用 Hibernate 搜索和 Elasticsearch 有什么挑战吗?
解决方案
是否有任何明确的 hibernatesearch java api 将数据提供给弹性搜索?
AFAIK 您可以使用标准的 HibernateSearch API 将您的数据发送到 Elasticsearch 而不是 Lucene。它对你来说几乎是透明的。在查询时,您可以同时执行这两项操作。使用标准 HibernateSearch 查询或使用本机 elasticsearch 查询:
FullTextEntityManager fullTextEm = Search.getFullTextEntityManager(entityManager);
QueryDescriptor query = ElasticsearchQueries.fromJson(
"{ 'query': { 'match' : { 'lastName' : 'Brand' } } }");
List<?> result = fullTextEm.createFullTextQuery(query, GolfPlayer.class).getResultList();
一起使用 Hibernate 搜索和弹性搜索有什么挑战吗?
我认为 Hibernate Search 团队做得很好。它包括透明度,例如列出实施的已知限制。
推荐阅读
- php - Symfony 使用 eval 执行实体方法
- javascript - 如何在节点 js express 中归档 cron 作业?
- javascript - 重用功能文件中的变量(javascript、wdio、黄瓜)
- php - 如何处理包含语法中的内容
- node.js - 使用 GET 参数中的对象作为 sequelize 中的 where 子句
- python - 输出 exe 使用的所有 DLL 的脚本
- git - Maven、Git 和 Jenkins.. 为网络应用程序和客户端消费者推荐的架构
- ajax - 如何从加载 ajax 值的 woocommerce 中选择默认选项?
- android - proguard警告无法解决
- ios - Swift 4 - 将新行从数组插入到只有一个静态行的部分