簡體   English   中英

用於自定義查詢的Sitecore系統Lucene索引

[英]Sitecore System Lucene Index for custom queries

我一直在對網站的某些部分使用Sitecore查詢和FAST查詢。 但是隨着內容的增長,這些查詢變得越來越慢,我想實現Lucene查詢內容以加快處理速度。

我想知道是否可以只使用System索引,而不必設置單獨的索引。 默認情況下,Sitecore是否在內容編輯器中索引所有內容? 這是一個好方法還是我應該創建自己的索引?

(我假設您使用的是Sitecore 6.4-> 6.6)

與所有內容一樣,它取決於.. Sitecore在其系統索引中保留所有Sitecore項目的索引,歡迎您使用它。 有時,您可能想要更專業或受限制的項目列表,例如基於某個模板,被索引或需要為復選框字段建立索引(因為系統默認情況下僅對text字段進行索引)。

設置您自己的搜索索引非常容易。。盡管如此,它確實需要對web.config進行一些調整(我建議添加為.include文件)。

用自己的id創建一個新的<index>節點,該節點將定義集合的名稱以及它將進入的文件夾。 (您可以通過在安裝的/data/indexes目錄中查找目錄來檢查其工作情況。

在此處輸入圖片說明

..接下來,您可以告訴搜尋器要查看哪個數據庫(如果您希望對未發布的內容建立索引,或者從web查找已發布的內容,則很可能是master數據庫)以及從何處開始搜索(在此示例中,我僅對新聞部分進行索引) 。 您可以tagboost和判斷是否要對IndexAllFields進行IndexAllFields (否則,它將僅將它理解為文本的字段編入索引。富文本/多行文本/文本等)。

在此處輸入圖片說明

..最后,您可以告訴索引器要包括或排除哪些模板類型。

在此處輸入圖片說明

索引器的工作方式是它將在sitecore ..中訂閱項目事件,因此,每次更改,移動或刪除項目時,索引都會自動更新。 顯然,如果您要索引web數據庫,則必須已發布項目。

在此處輸入圖片說明

可以在SDN上找到有關查詢語法和索引的更多詳細信息。

搜索語法和API在6.4 / 6.5中得到了很大的改進,但是如果您想添加額外的功能,那么我的同事Alex Shyba的Advanced Database Crawler也值得一試。

希望這會有所幫助:D

您將要實現自己的索引。 出於同樣的原因,當內容很多時,您會看到速度變慢;當內容很多時,索引也會變慢。

我更喜歡有針對性的索引,這些索引專門用於驅動我需要的功能,並且僅包含所需的數據。 這樣可以在組件上使用更小,更有效的索引。

另外,您可能想研究一下Alex Shyba編寫AdvancedDatabaseCrawler 那里有一些博客,其中有很多有關實現此Lucene索引模塊的文章。

單獨的索引始終是一個明智的決定,您可以保持謹慎。 在大型環境中,系統索引可能會增長到千兆字節。

您可以從索引中排除內容,因為您僅將其用於執行查找,而不顯示索引中的內容。

最后:系統索引用於主數據庫,您將查詢Web數據庫,可能在內容交付服務器上。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM