SRP的Solr設定 solr-configuration-for-srp

適用於AEM平台的Solr solr-for-aem-platform

可以使用不同的集合,在節點存放區 (Oak)和公用存放區 (SRP)之間共用Apache Solr安裝。

如果Oak和SRP集合皆密集使用,則可基於效能原因安裝第二個Solr。

在生產環境中,SolrCloud模式比獨立模式(單一本機Solr設定)提供更優異的效能。

要求 requirements

下載並安裝Apache Solr:

SolrCloud模式 solrcloud-mode

建議在生產環境中使用SolrCloud模式。 在SolrCloud模式下執行時,必須先安裝及設定SolrCloud,才能安裝多語言搜尋(MLS)。

建議依照SolrCloud指示進行安裝:

  • 3個SolrCloud節點位於相同伺服器上。
  • 外部Apache ZooKeeper。

也建議設定JVM以調整記憶體使用量和記憶體回收。

JVM設定範例 jvm-configuration-example

JVM_OPTS="-server -Xmx2048m -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -Xloggc:../logs/gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Djava.awt.headless=true"

SolrCloud設定命令 solrcloud-setup-commands

在SolrCloud模式下執行時,在MLS安裝之前,必須使用下列SolrCloud安裝命令並瞭解這些命令。

1.上傳設定至ZooKeeper upload-a-configuration-to-zookeeper

參考資料:
https://solr.apache.org/guide/6_6/command-line-utilities.html

使用狀況:
sh 。/scripts/cloud-scripts/zkcli.sh
-cmd upconfig
-zkhost 伺服器:連線埠
-confname *myconfig-name *
-solrhome solr-home-path
-confdir config-dir

2.建立集合 create-a-collection

參考資料:
https://solr.apache.org/guide/6_6/solr-control-script-reference.html#SolrControlScriptReference-Create

使用狀況:
./bin/solr建立
-c mycollection-name
-d config-dir
-n myconfig-name
-p 連線埠
-s 分片數
-rf 復本數目

將集合連結至已上傳至ZooKeeper的設定。

參考資料:
https://solr.apache.org/guide/6_6/command-line-utilities.html

使用狀況:
sh 。/scripts/cloud-scripts/zkcli.sh
-cmd linkconfig
-zkhost 伺服器:連線埠
-collection mycollection-name
-confname myconfig-name

標準和進階MLS的比較 comparison-of-standard-and-advanced-mls

適用於AEM Communities的多語言搜尋(MLS)是針對Solr平台所打造,可改善所有支援語言(包括英文)的搜尋功能。

適用於AEM Communities的MLS可作為標準MLS或進階MLS使用。 標準MLS僅包含Solr組態設定,並排除任何外掛程式或資源檔案。 進階MLS是更完整的解決方案,包含Solr組態設定和外掛程式及相關資源

標準MLS包括以下語言的內容搜尋增強功能:

  • 英文:改善嘗試比對文字衍生詞的字乾功能。
  • 日文:改善半形字元的日文標籤化。

進階MLS包含下列語言的內容搜尋增強功能:

  • 英文:以左加音取代詞幹母。
  • 德文:新增decompounder。
  • 法文:新增版本處理。
  • 中文(簡體):新增更聰明的代碼器。
  • 各種語言:新增詞幹器、停用字清單和正規化程式。

進階MLS支援下列33種語言。

阿拉伯文
德文
挪威文
保加利亞文
希臘文
波蘭文
中文 (簡體)
海地克里奧爾語
葡萄牙文
正體中文
希伯來文
羅馬尼亞文
捷克文
匈牙利文
俄文
丹麥文
印尼文
斯洛伐克文
荷蘭文
義大利文
斯洛維尼亞文
英文
日文
西班牙文
愛沙尼亞文
韓文
瑞典文
芬蘭文
拉脫維亞文
泰文
法文
立陶宛文
土耳其文

AEM 6.1 Solr搜尋、標準MLS和進階MLS的比較 comparison-of-aem-solr-search-standard-mls-and-advanced-mls

注意: AEM 6.1參考AEM 6.1 Communities FP3和更早版本。

compare-solr-mls

安裝標準MLS installing-standard-mls

對於SRP集合(MSRP或DSRP),若要支援標準多語言搜尋(MLS),必須修改兩個Solr的組態檔:

  • schema.xml
  • solrconfig.xml

適用於Solr 4.10的標準MLS檔案(schema.xml、solrconfig.xml)。

適用於Solr 5.x的標準MLS檔案(schema.xml、solrconfig.xml)。

標準MLS檔案儲存在AEM存放庫中。

注意:雖然Solr檔案儲存在msrp/資料夾中,但它們也適用於DSRP (不需要變更)。

下載指示:將solrX取代為solr4或適當的solr5

  1. 使用CRXDE|Lite,找出:

    • /libs/social/config/datastore/msrp/solrX/schema.xml
    • /libs/social/config/datastore/msrp/solrX/solrconfig.xml
  2. 下載到部署Solr的本機伺服器。

    • 找到jcr:content節點的jcr:data屬性。
    • 若要開始下載,請選取view
    • 確保檔案以適當的名稱和編碼(UTF8)儲存。
  3. 請遵循獨立或SolrCloud模式的安裝指示。

SolrCloud模式 — 標準MLS solrcloud-mode-standard-mls

  1. 在SolrCloud模式中安裝和設定Solr。

  2. 準備新的設定:

    1. 建立new-config-dir* (例如solr-install-dir*/myconfig/

    2. 將現有Solr組態目錄的內容複製到​ new-config-dir

      • Solr4:複製solr-install-dir/example/solr/collection1/conf/
      • Solr5:複製solr-install-dir/server/solr/configsets/data_driven_schema_configs/
    3. 將下載的​ schema.xml ​和​ solrconfig.xml ​複製到​ new-config-dir ​以覆寫現有的檔案。

  3. 將新設定上傳至ZooKeeper。

  4. 建立集合,指定必要的引數,例如分片數目、復本數目和組態名稱。

  5. 如果組態名稱 在建立集合期間提供,將這個新建立的集合與上傳到ZooKeeper的組態連結。

  6. 針對MSRP,請執行MSRP重新索引工具,除非此安裝是新的。

獨立模式 — 標準MLS standalone-mode-standard-mls

  1. 以獨立模式安裝Solr。

  2. 如果執行Solr5,請建立集合1 (類似Solr4):

    • ./bin/solr start
    • ./bin/solr create_core -c collection1 -d sample_techproducts_configs
  3. 在Solr設定目錄中備份​ schema.xml ​和​ solrconfig.xml,例如:

    • 針對Solr4: solr-install-dir/example/solr/collection1/conf/
    • 已為Solr5建立: solr-install-dir/server/solr/collection1/conf/
  4. 將下載的​ schema.xml ​和​ solrconfig.xml ​複製到相同目錄。

  5. 重新啟動Solr。

  6. 針對MSRP,請執行MSRP重新索引工具,除非此安裝是新的。

安裝進階MLS installing-advanced-mls

若要讓SRP集合(MSRP或DSRP)支援進階MLS,除了自訂結構描述和Solr設定外,還需要新的Solr外掛程式。 所有必要專案都會封裝成可下載的zip檔案。 此外,當以獨立模式部署Solr時,也會隨附安裝指令碼。

若要取得Advanced MLS套件,請參閱檔案部署區段中的AEM Advanced MLS

若要開始使用SolrCloud或獨立模式的安裝:

  • 將AEM-SOLR-MLS zip封存下載至託管Solr的伺服器。
  • 解壓縮封存。

solrcloud模式 — 進階MLS solrcloud-mode-advanced-mls

安裝指示 — 請注意Solr4和Solr5的幾項差異:

  1. 在SolrCloud模式中安裝和設定Solr。

  2. 將進階MLS套件的內容解壓縮到磁碟。 內容應包括:

    • schema.xml
    • solrconfig.xml
    • 停用詞/ ​資料夾
    • 設定檔/ ​資料夾
    • extra-libs/ ​資料夾
  3. 準備新的設定:

    1. 建立​ new-config-dir

      • 例如solr-install-dir/myconfig/
      • 建立子資料夾stopwords/lang/
    2. 將現有Solr設定目錄的內容複製到​ new-config-dir

      • Solr4:複製solr-install-dir/example/solr/collection1/conf/
      • Solr5:複製solr-install-dir/server/solr/configsets/data_driven_schema_configs/
    3. 將擷取的​ schema.xml ​和​ solrconfig.xml ​複製到​ new-config-dir ​以覆寫現有的檔案。

    4. 針對Solr5:將solr_install_dir/server/solr/configsets/sample_techproducts_configs/conf/lang/*.txt複製到new-config-dir/lang/

    5. 將擷取的​ stopwords/ ​資料夾複製到​ new-config-dir,結果為new-config-dir/stopwords/*.txt

  4. 上傳新設定到ZooKeeper

  5. 複製新的​ 設定檔/ ​資料夾……

    • 對於Solr4:複製到每個節點的資源/資料夾
    • 對於Solr5:複製到每個Solr安裝的伺服器/資源/資料夾。 如果所有節點都位於相同的Solr安裝目錄中,則此步驟只會執行一次。
  6. 在SolrCloud中每個節點的solr-home目錄(包含solr.xml)中建立​ lib/ ​資料夾。 將jar從下列位置複製到每個節點上的新資料庫/資料夾:

    • 從進階MLS封裝擷取的​ extra-libs/
    • solr-install-dir/contrib/extraction/lib/.jar
    • solr-install-dir/dist/solr-cell.jar
    • solr-install-dir/contrib/clustering/lib/.jar
    • solr-install-dir/dist/solr-clustering.jar
    • solr-install-dir/contrib/langid/lib/.jar
    • solr-install-dir/dist/solr-langid.jar
    • solr-install-dir/contrib/velocity/lib/.jar
    • solr-install-dir/dist/solr-velocity.jar
    • solr-install-dir/contrib/analysis-extras/lib/.jar
    • solr-install-dir/contrib/analysis-extras/lucene-libs/.jar
  7. 建立集合,指定必要的引數,例如分片數目、復本數目和組態名稱。

  8. 如果組態名稱是在建立集合期間提供的​ 不是,請將此新建立的集合與上傳至ZooKeeper的組態連結。

  9. 針對MSRP,請執行MSRP重新索引工具,除非此安裝是新的。

獨立模式 — 進階MLS standalone-mode-advanced-mls

進階MLS套件中包含安裝指令碼。

將套裝軟體的內容解壓縮至裝載獨立Solr伺服器的伺服器後,請執行安裝命令檔以安裝必要的資源與組態檔。

  • 以獨立模式安裝Solr。

  • 如果執行Solr5,請建立集合1 (類似Solr4):

    • ./bin/solr start
    • ./bin/solr create_core -c collection1 -d sample_techproducts_configs
  • 執行安裝指令碼:安裝[-v 4|5] [-d solrhome] [-c collectionpath]
    其中:

    • -d solrhome

      Solr安裝目錄

    • -c集合路徑

      solr中的集合路徑

    • — 說明

      列印命令列選項

    • -v [4|5]

      設定solr的版本

  • Solr 4.10.4的範例:

    • Install.bat -v 4 -d c:/solr-4.10.4 -c:/solr-4.10.4/example/solr/collection1
  • Solr 5.4.0的範例:

    • Install.sh -v 5 -d /tmp/solr-5.4.0 -c /tmp/solr-5.4.0/server/solr/collection1

附註

  • 安裝指令碼會先備份schema.xml和solrconfig.xml,再透過附加「.orig」安裝新版本

關於solrconfig.xml about-solrconfig-xml

solrconfig.xml ​檔案控制自動認可間隔和搜尋可見度,並需要測試和調整。

<autoCommit>:依預設,AutoCommit間隔(硬性認可至穩定儲存)設定為15秒。 搜尋可見度預設為使用預先提交索引。

若要變更搜尋,以使用更新後的索引,以反映因認可而發生的變更,請將包含的openSearcher變更為true。

autoSoftCommit:「soft」認可可確保變更可見(索引已更新),但無法確保變更已同步至穩定儲存(硬認可)。 結果是效能提升。 根據預設,autoSoftCommit已停用,包含的maxTime設定為–1。

recommendation-more-help
81e2cd9d-0789-409d-b87c-2a8ce4f28791