如何在网络应用程序中集成数据库搜索和 pdf 搜索?

发布于 2024-11-08 02:14:16 字数 449 浏览 4 评论 0原文

我有一个带有自定义搜索引擎的 jsp Web 应用程序。

搜索引擎基本上构建在 SQL Server 数据库的“文档”表之上。

举例来说,每个文档记录具有三个字段:

  • 文档ID
  • “描述”(文本字段)
  • “附件”,文件系统中pdf文件的路径。

搜索引擎实际上在描述字段中搜索关键字,并在 HTML 页面中返回结果列表。现在我想在pdf文件内容中搜索关键字。

我正在研究 Lucene、Tika、Solr,但我不明白如何使用这些框架来实现我的目标。

一种可能的解决方案:使用 Tika 提取 pdf 内容并存储在新的文档表字段中,这样我就可以在该字段上编写 SQL 查询。

有更好的选择吗? 我可以使用 Solr/Lucene 索引功能作为基于 SQL 的搜索引擎的集成而不是完全替代它吗?

谢谢

I've a jsp web application with a custom search engine.

The search engine is basically build on top of a 'documents' table of a SQL Server database.

To exemplify, each document record has three fields:

  • document id
  • 'descripion' (text field)
  • 'attachment', a path of a pdf file in the filesystem.

The search engine actually searches keywords in description field and returns a result list in an HTML page. Now I want to search keywords even in the pdf file content.

I'm investigating about Lucene, Tika, Solr, but I don't understand how I can use these frameworks for my goal.

One possible solution: using Tika to extract pdf content and store in a new document table field, so I can write SQL queries on this field.

Are there better alternatives?
Can I use Solr/Lucene indexing features as an integration of SQL-based search engine and not as a totally substitute of it?

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

一笑百媚生 2024-11-15 02:14:16

我认为 Lucene 完全独立于 SQL 数据库,即您不会使用 SQL/jdbc/任何 DB 来查询 Lucene,而是使用它自己的 API 和数据存储。

您当然可以使用 Tika 提取 pdf 的全文,存储它,并使用 SQL DB 提供的任何内容。全文搜索能力。

如果您使用 Hibernate,Hibernate Search 是一款出色的产品,它集成了 SQL 存储和卢塞恩。但您必须采用 Hibernate/JPA 方式,这对于您的项目来说可能有点过分了。

I would consider Lucene to be completely independent of an SQL Database, i.e. you will not use SQL/jdbc/whatever DB to query Lucene, but its own API and its own data store.

You could of course use Tika to extract the full text of a pdf, store it, and use whatever your SQL DB provides re. fulltext search capacity.

If you are using Hibernate, Hibernate Search is a fantastic product which integrates both an SQL store and Lucene. But you would have to go the Hibernate/JPA way, which might be overkill for your project.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文