Zend:索引生成和Zend_Search_Lucene的优缺点

我之前从未遇到像Zend Search Lucene这样的app / class,因为我一直在查询我的数据库。   Zend_Search_Lucene运行   作为原子对象的文件   索引。一份文件分为   命名字段,字段包含内容   可以搜索。      文件由。表示   Zend_Search_Lucene_Document类,和   这个类的这个对象包含   Zend_Search_Lucene_Field的实例   代表的字段   文献。      重要的是要注意任何   信息可以添加到索引中。   特定于应用程序的信息或   元数据可以存储在文档中   字段,后来用。检索   搜索期间的文档。 所以这基本上说我可以将它应用于包括数据库在内的任何东西,这里的关键是制作搜索索引。 我想要掌握的是我应该在哪里将索引存储在我的应用程序中,例如我们将手机存储在数据库,制造商,模型中 - 我应该如何对索引进行分类? 如果我用地址制作用户索引,我显然不希望它们公开可见,我只是对它如何一起工作感到困惑,如果有已知的缺点,我在使用时应该知道的任何问题它。     
已邀请:
Lucene索引存储在数据库外部。我将它存储在“数据”目录中,作为控制器,模型和视图的姊妹。但你可以把它存放在任何地方;您只需在打开索引进行查询时指定路径。 它基本上是存储在数据库中的文档的冗余副本,您必须自己保持同步。这是缺点之一:您必须根据针对数据库的查询结果编写代码来填充Lucene索引。在向数据库添加数据时,您还必须更新Lucene索引。 使用外部全文索引解决方案的一个优点是可以减少RDBMS上的工作负载。要查找文档,请使用Lucene API执行搜索。结果应该包含一个包含主键值的字段(作为文档的一部分,但不需要对其进行FT搜索分析)。当您执行Lucene搜索时,您会返回此字段,因此您可以在数据库中查找相应的行。 这有助于回答您的问题吗? 我最近为MySQL大学做了一个比较全文搜索解决方案的演讲: http://forge.mysql.com/wiki/Practical_Full-Text_Search_in_MySQL 我还在http://www.SlideShare.net/billkarwin上发布我的幻灯片。     

要回复问题请先登录注册