使用Firebird和Delphi进行全文检索 [英] Full Text Search with Firebird and Delphi

查看:949
本文介绍了使用Firebird和Delphi进行全文检索的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在研究在我们的Firebird数据库上实现全文搜索。我们的要求是:


  1. 几个表格中的每个字段都应该进行索引。当发现结果时,我们应该可以找到原始表。

  2. 索引可以存储在数据库或文件系统中。

  3. 搜索结果(BigInt主键)必须与数据库中的原始记录一起使用,以便在表格中显示记录。

任何人都可以推荐一种体面的方法来实现我们所需要的?我以某种方式将DotLucence集成到Delphi中,但是真的找不到很多有关如何处理的信息。

解决方案

p>以下是您可以考虑的几个资源:




  • Sphinx 非常强大和流行的免费开源全文搜索引擎。

  • Textolution 全文搜索Interbase和Firebird。

  • IBObjects 全文搜索(模糊搜索)模块,一个完整的模块,可用于设置您的搜索索引或作为自己的自定义实现的模型。

  • Rubicon 是一个Delphi插件,可以让您将全文搜索功能放入您的应用程序。

  • 全文搜索Firebird SQL作者Dan Letecky 在CodeProject上使用DotLucene全文搜索引擎。

  • Mutis 是Lucene搜索引擎的Delphi端口。提供灵活的API,用于索引,目录和搜索基于文本的信息,性能卓越。实现自定义搜索引擎,研究,文本检索,数据挖掘等等。



有一个一个名叫Red Soft的公司制作的Firebird的代码。它的授权与Firebird相同的许可证,因此您可以查看他们的版本,它们可以通过JavaVM界面支持使用Lucene引擎的全文搜索。



您还可以阅读题为 Firebird的全文搜索没有全文搜索引擎由Bjoern Reimer和Dirk Ba​​umeister在第四届Firebird大会上发表。


I'm looking into implementing full text search on our Firebird database. Our requirements are:

  1. Every field in several tables should be indexed. When a result is found we should be able to find out the originating table.
  2. The index can be stored in the database or in the file system.
  3. The results of the search (BigInt primary keys) must be used to join with the original records in the database to display the records in a table.

Can anybody recommend a decent way to achieve what we need? I've looked at somehow integrating DotLucence into Delphi, but can't really find very much information on how to go about it.

解决方案

Here are a few resources for you to consider:

  • Sphinx very powerful and popular free open source full-text search engine.
  • Textolution Fulltext search for Interbase and Firebird.
  • IBObjects Full Text Search ("Fuzzy Search") module, a fully working module that can be used to set up your search indexes or as a model for your own custom implementation.
  • Rubicon is a Delphi add-on that lets you put full text search capabilities into your applications.
  • Fulltext Search for Firebird SQL By Dan Letecky on CodeProject using DotLucene full-text search engine.
  • Mutis is a Delphi port of the Lucene Search Engine. Provide a flexible API for index, catalog and search text-based information with great performance. Excelent for implement custom search engines, researching, text retrieval, data mining and more.

There is a fork of Firebird code made by a company called Red Soft. It's licensed under the same license as Firebird, so you can take a look at their version which can support full-text searches using Lucene engine via JavaVM interfaces.

You can also read a paper titled "Full text search in Firebird without a full text search engine" by Bjoern Reimer and Dirk Baumeister, presented at 4th Firebird Conference.

这篇关于使用Firebird和Delphi进行全文检索的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆