本文介紹HBase Search全文索引更新配置集的方法。
前提條件
下載並安裝Shell,具體請參見Shell訪問指導。
注意事項
建議使用dynamicField功能,不單獨定義每個索引列,避免頻繁修改
managed-schema
檔案。每個索引需要有自己的配置集,不建議多個索引共用配置集。
如果需要自己定義配置,請下載
_indexer_default
配置集後,在此基礎上進行修改。
下載預設的配置集模板
執行以下命令下載預設的配置集模板_indexer_default
,在其基礎上進行編輯,添加業務自訂的配置。
cd alisolr-7.3.8-bin/bin
./solr zk ls /configs # 查詢已有的配置集列表
./solr zk downconfig -d . -n _indexer_default # 下載配置集_indexer_default到目前的目錄
執行上述命令成功後,在目前的目錄下會產生一個conf的目錄,其中有兩個重要的檔案:managed-schema
和solrconfig.xml
。
建立新的配置集
下面給出一個簡單的樣本:
開啟
managed-schema
檔案。增加兩個新的索引列定義,增加內容如下:
<field name="name" type="string" indexed="true" stored="true" required="false" multiValued="false" /> <field name="age" type="pint" indexed="true" stored="true" docValues="true" multiValued="false" />
說明name
是string類型,age
是基本int類型(pint代表int,plong代表long),兩個列都需要建立索引indexed=true
,並且都需要儲存未經處理資料stored=true
。每增加一個新列,都需要在檔案中定義好,當需要增加非常多的列時,定義起來會比較複雜。此時,可以使用Search服務提供的動態列能力,參考
managed-schema
中的dynamicField
定義,有了它之後不需要額外定義每個列,只需要在寫入資料時指定的列名稱尾碼與定義保持一致即可。例如:
name_s
可以自動匹配*_s
。age_i
可以自動匹配*_i
。
上傳配置集。
修改完後,可以上傳自訂的配置集(建議每個collection對應一個配置集),執行如下命令:
./search-cli zk upconfig -d conf/ -n myconf
在叢集管理系統查看配置集是否上傳成功。
選擇
,查看配置集myconf
是否上傳成功。