Hibernate Search 是一个库,它通过自动索引实体,将 Hibernate ORM 与 Apache Lucene 或 Elasticsearch 集成,实现高级搜索功能:全文搜索、地理空间搜索、聚合等。更多信息,请参阅 hibernate.org 上的 Hibernate Search。

我们刚刚发布了 Hibernate Search 版本 5.8.0.CR1,它对 5.8.0.Beta4 进行了错误修复和改进。

5.8.0.CR1 是社区测试它并报告错误的最后一个机会。

Hibernate Search 5.8.x 与 5.7.x 一样,仅与 Hibernate ORM 5.2.3 及更高版本兼容。

如果您需要使用 Hibernate ORM 5.0.x 或 5.1.x,请使用较旧的 Hibernate Search 5.6.x。

CR1 中的新功能?

以下是最大的变化

  • HSEARCH-2831:对于 Amazon 的专用 IAM 身份验证机制,现在需要将 hibernate.search.default.elasticsearch.aws.signing.enabled 属性设置为 true 才能请求签名,即使 hibernate-search-elasticsearch-aws JAR 已在您的类路径中,您也可以轻松禁用签名。

  • HSEARCH-2818 / HSEARCH-2821:现在向 Elasticsearch 发送请求的内存消耗要少得多。

  • HSEARCH-2764:我们改进了在将索引更新发送到 Elasticsearch 客户端之前的编排

    • 来自单个 Hibernate Search 节点的索引更新现在将按它们生成的顺序发送到 Elasticsearch,即使它们来自不同的线程。

    • 批量索引现在将并行添加文档,让您可以利用连接到 Elasticsearch 集群的多个连接。注意您可以使用 hibernate.search.default.elasticsearch.max_total_connectionhibernate.search.default.elasticsearch.max_total_connection_per_route 配置属性来 自定义最大连接数

    • 内部索引更新队列现在已限制,因此对非常大的数据集进行大量索引操作将不再触发OutOfMemoryError

    • 我们还对内部进行了多项更改以提升性能(减少Refresh API调用,更多请求批量操作等)。

  • HSEARCH-2839:在使用提供元数据的桥接器时,即使其类型设置为OBJECT,桥接器现在也可以在默认字段上实现投影。

  • HSEARCH-2840:在使用提供元数据的桥接器时,桥接器现在可以在动态字段上实现投影。

  • HSEARCH-2843:更改查询的limit/offset现在可以正确地与Elasticsearch清除查询的结果缓存。

有关自5.8.0.Beta4以来的全部变更列表,请参阅发布说明

如何获取此版本

所有版本均可在Hibernate Search的网站上找到。

理想情况下,使用工具从Maven Central获取;以下是坐标:

<dependency>
   <groupId>org.hibernate</groupId>
   <artifactId>hibernate-search-orm</artifactId>
   <version>5.8.0.CR1</version>
</dependency>

要使用实验性的Elasticsearch集成,您还需要

<dependency>
   <groupId>org.hibernate</groupId>
   <artifactId>hibernate-search-elasticsearch</artifactId>
   <version>5.8.0.CR1</version>
</dependency>

要使用Amazon的专有IAM身份验证机制访问您的Elasticsearch集群,您还需要

<dependency>
   <groupId>org.hibernate</groupId>
   <artifactId>hibernate-search-elasticsearch-aws</artifactId>
   <version>5.8.0.CR1</version>
</dependency>

Sourceforge下载也是可用的。

反馈、问题、想法?

要取得联系,请使用以下渠道


返回顶部