问题标签 [hibernate-search]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
database - 如何使用 Lucene 最好地搜索数据库?
我正在研究针对我们的数据库提供更好搜索功能的机制。它目前是一个巨大的瓶颈(导致长期查询损害我们的数据库性能)。
我的老板想让我研究Solr,但仔细观察,似乎我们实际上想要某种与 Lucene 本身的数据库集成机制。
在Lucene FAQ中,他们推荐使用Hibernate Search、Compass和DBSight。
作为我们当前技术堆栈的背景,我们在 Tomcat 上使用直接的 JSP,没有 Hibernate,在其之上没有其他框架……只是针对 DB2 数据库的直接 Java、JSP 和 JDBC。
鉴于此,似乎 Hibernate Search 可能更难以集成到我们的系统中,尽管在这样的集成之后选择使用 Hibernate 可能会很好。
有没有人可以分享使用这些工具之一(或其他类似的基于 Lucene 的解决方案)的经验,这可能有助于选择正确的工具?
它需要是一个 FOSS 解决方案,理想情况下,它将自动(尽管有效)使用来自数据库的更改来管理更新 Lucene,而无需额外努力在进行更改时通知工具(否则,滚动我自己的 Lucene 解决方案似乎只是一样好)。此外,我们有多个应用程序服务器,只有 1 个数据库(+故障转移),因此如果可以轻松无缝地使用来自所有应用程序服务器的解决方案,那就太好了。
我现在正在继续检查这些选项,但利用其他人的经验会非常有帮助。
hibernate - nHibernate.Search 使用 nHibernate v2
我无法让 nHibernate.Search 创建索引。
如果我使用 nHibernate.dll 和 nHibernate.Search.dll 的 1.2.1.4,那么索引会正确创建,我可以使用 Luke(Lucene 实用程序)对其进行检查。创建一个段文件以及一个片段文件等
但是,当我使用 nHibernate.dll 和 nHibernate.Search.dll 的 v 2 时,索引没有正确创建。在 Index 目录中只创建了一个 1k 段文件,Luke 无法检查它。
我在 v1 中使用的代码如下:
我在配置文件中有以下内容
在版本 2 中没有 SearchFactory。我能找到的唯一类似的东西是
所以我设置了如下配置
这创建了索引的基本框架,但 Luke 看不到它 - 这告诉我它已损坏
我还使用以下代码尝试手动创建索引,但同样它只创建段文件,没有别的
所以我的问题是 - 如果我想使用 nHibernate.Search,我是否必须使用 v1.1.4 的 nHibernate?或者我可以使用 v2 吗?在这种情况下我做错了什么?
网上关于这方面的内容很少。
任何人?
hibernate - StaticAliasToBeanResultTransformer
我正在使用休眠搜索 1.1。我想应用 ResultTransformer 操作后查询来匹配目标数据结构。
但我无法在休眠搜索jar 中找到该类(StaticAliasToBeanResultTransformer)。我在哪里可以找到这门课?
谢谢,
java - 兵马俑和休眠搜索
有没有人有使用带有 Hibernate Search 的 Terracotta 来满足应用程序查询的经验?
如果是这样的话:
它可以处理多大的“对象更新”?(表现如何)
查询有什么样的表现?
- 是否可以使用 Terracotta Hibernate Search 甚至没有后备数据库来满足内存中的所有“查询”?
hibernate - 异步搜索
我目前正在使用 Lucene 和 Hibernate Search 为我的公司构建概念验证搜索解决方案。我已经构建了可以正常工作的单个组件。我现在正在考虑创建一个单一的 API,允许用户从不同的来源(域 + 数据)获取搜索结果。我想要实现的是像搜索管理器异步触发搜索请求到不同的搜索组件,当一组结果被处理后,在处理其余结果时将该结果返回给用户。处理完搜索结果后,通知客户端还有更多可用的搜索结果。
我想知道我是否有一个搜索管理器,它创建单独的线程来搜索单个搜索组件并保留搜索结果列表。一旦列表填充了一组,就将其返回给用户。添加的任何其他搜索结果都将涉及搜索管理器将结果推送给用户。
我不是在寻找任何代码示例(任何将不胜感激),但我想知道是否可以就如何解决这个问题获得一些指导。我是使用事件处理技术(GigaSpaces、Spring、JMS)还是使用标准 Java 并发库。管理列表和推送更新结果的有效方法是什么。
干杯
java - 在 Hibernate Search 中索引数据
我刚刚开始将 Hibernate Search 与我的 Hibernate 应用程序集成。每次我启动服务器时,都会使用 Hibernate Session 对数据进行索引。
这很尴尬,服务器需要 10 分钟才能启动。我是否以正确的方式做这件事?
我写了一个调度器,它会定期更新索引。这会自动更新现有的索引条目,还是创建重复的索引?
java - 用于 Hibernate Search 中时间戳的 FieldBridge
HIbernate Search 中时间戳的 FieldBridge 是什么?
@场地
公共 java.sql.Timestamp 批准日期;
hibernate - Lucene 布尔查询
如何在 Lucene Search 中将 booleanQuery 与 StandardAnalyzer 一起使用?
java - Lucene 中的查询
表“testtable”的结构是
id int 主键
产品编号
属性 int
值 varchar(250)
其中 productid 是产品的唯一 ID,attributeid 是产品属性的唯一 ID,例如尺寸、质量、高度、颜色,“值”是属性的值
我必须过滤结果。我通过这个查询实现了要求。但我无法在查询中完成。
需要帮助来构建此查询..
hibernate - 如果我索引相同的数据,为什么 lucene 索引的大小会增加?
我在我的应用程序中实现了 Hibernate Search,即基于 Lucene。每当我索引数据库时,lucene 索引的大小都会增加。但是,查询的结果每次都返回相同的结果。
如果我每次索引相同的数据,为什么 lucene 的大小每次都会增加?