gpt4 book ai didi

java - Terracotta 和 Hibernate 搜索

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:58:57 24 4
gpt4 key购买 nike

有没有人有使用 Terracotta 和 Hibernate Search 来满足应用程序查询的经验?

如果是:

  1. “物体的大小更新”,它能处理吗?(How's the性能)

  2. 什么样的表现查询有?

  3. 是否可以使用 Terracotta hibernate 搜索甚至没有 满足所有需求的后备数据库 内存中的“查询”?

最佳答案

我是 Terracotta 的首席技术官。上个月我花了一些时间研究 Hibernate Search。它不是以 Terracotta 透明集群的方式构建的。简而言之,原因如下:Hibernate 具有跨 JVM 的 Lucene 索引的定制 JMS 复制。

Search 的基本思想是,在 lucene 下与本地磁盘通信非常有效,而在网络上对 Lucene 索引进行碎片化或分区会引入太多延迟,以至于让 Lucene 看起来很糟糕,而这根本不是 Lucene 的错。为此,HIbernate Search 不依赖于 JBossCache 或任何内存中的分区/缓存方案,而是依赖于 JMS 和每个 JVM 的本地磁盘,以提供最新的索引具有同时低延迟的集群。然后,Hibernate Search 的美妙之处在于标准 Hibernate 查询和更多可以通过 Hibernate 在每台机器的这些自然语言索引上启动。

在 Terracotta,事实证明我们有与 Emmanuel 类似的想法,并在 Compass 之上构建了一个 SearchableMap 产品。每台机器都有自己的 Compass 存储,并且存储被配置为溢出到本地磁盘。 Terracotta 用于创建多主写入功能,其中任何 JVM 都可以添加到索引中,增量通过 Terracotta 发送以在本地重放/重新应用到每个磁盘。它的工作方式与 Hibernate Search 类似,但使用 DSO 作为网络协议(protocol)代替 JMS,并且没有漂亮的 Hibernate 接口(interface),而是使用 Compass 接口(interface)。

我认为到今年年底,我们将在 JBoss 的帮助下支持 Hibernate Search(他们需要将 JMS impl 分解为可插入的)。

现在直接回答你的问题:

1.Hibernate 或 SearchableMap 中的对象更新/秒应该相当高,因为两者都只发送增量。在 Hibernate 的例子中,它是我们的 JMS 提供者的一个功能。在 Terracotta 中,只需向阵列中添加更多 Terracotta 服务器即可进行扩展。

  1. 两者的查询性能都非常快。大多数情况下的本地内存性能。如果您需要从磁盘调入页面,事实证明大多数操作系统都做得很好并且可以比任何基于网络的集群更快地响应查询。

  2. 我认为,一旦我们让 JBoss 分解出他们的 JMS 假设等,就会是这样。

干杯,

--阿里

关于java - Terracotta 和 Hibernate 搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/885867/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com