我一直在使用Sitecore查询和FAST查询网站的某些部分。但随着越来越多的内容这些查询变得缓慢,我想实施Lucene查询内容加速事情。Sitecore系统Lucene自定义查询索引
我想知道如果我可以只使用系统索引,而不必设置单独的索引。 Sitecore默认索引内容编辑器中的所有内容吗?这是一个好方法,还是应该创建我自己的索引?
我一直在使用Sitecore查询和FAST查询网站的某些部分。但随着越来越多的内容这些查询变得缓慢,我想实施Lucene查询内容加速事情。Sitecore系统Lucene自定义查询索引
我想知道如果我可以只使用系统索引,而不必设置单独的索引。 Sitecore默认索引内容编辑器中的所有内容吗?这是一个好方法,还是应该创建我自己的索引?
(我要去你的使用Sitecore的6.4-> 6.6的假设)
与一切..它取决于.. Sitecore的保持在其系统中所有索引Sitecore的项目的索引,欢迎您来使用它。有时候你可能想要一个更专门或限制的项目列表,比如基于某个模板,被索引或者需要一个复选框字段索引(因为系统默认仅索引text
字段)。
设置您自己的搜索索引非常容易..它确实需要一些与web.config的摆弄(并且我建议添加为.include
文件)。
使用自己的id
创建一个新的<index>
节点,该节点将定义集合的名称以及将要进入的文件夹。 (您可以通过寻找在/data/indexes
目录安装的目录检查其工作。
。接下来你可以告诉履带的(最有可能master
看哪个数据库,如果你想要未发布内容被索引或web
为已发布的东西)和从哪里开始搜索(在这个例子中,我只索引新闻部分)。您可以tag
,boost
并告诉是否要IndexAllFields
(否则它只会索引它理解为的字段文本..富文本/多行文本/文本等)。
..最后,您可以告诉索引器要包含或排除哪些模板类型。
索引器的工作原理是,将这样的项目被更改或移动或删除索引将自动更新每次订阅Sitecore的内项事件..。很明显,如果你正在索引web
分贝,这些项目将需要发布。
更深入的查询语法&索引信息可以发现here on SDN。
搜索语法和API在6.4/6.5中有很大改进,但如果您想添加额外的踢球,那么我的同事Alex Shyba的Advanced Database Crawler也值得一试。
希望这有助于:d
你会想要实现自己的索引。出于同样的原因,当内容很多时,你会看到事物减速,当内容很多时,索引也会减速。
我更喜欢目标指标,专门用于驱动我需要的功能,并且只包含需要的数据。这样可以在组件上实现更小,更高效的索引使用。你可能想看看AdvancedDatabaseCrawler put together by Alex Shyba。有a few blogs out there在实现这个lucene索引模块的一些很棒的帖子。
单独的索引始终是一个明智的决定,你可以把它的光。在大环境下,系统索引可以增长到千兆字节。
您可以从索引中排除内容,因为您只会用它来执行查找,而不会显示索引中的内容。
最后:系统索引是针对主数据库的,您可能会在内容交付服务器上查询Web数据库。
我读过一些关于Alex Shyba写的AdvancedDatabaseCrawler,尤其是关于它处理一些字段(包括日期)的方式。你会推荐吗?我认为该设置与您所描述的完全相似,只是他编写的一些代码可能会有所不同。 – Gabbar
高级爬虫有一大堆的调整和便利,使搜索更容易处理和填补原始实施中的一些漏洞。其中一些工作是作为6.4/6.5的API刷新的一部分,并将在后续版本中继续变得更好。我知道很多使用这种技术的客户,并且与他们相处得很好。我想如果你不能从标准搜索中得到你想要的东西,这就是要走的路! –
令人敬畏的文档。谢谢! –