W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
Solr 架構(gòu) API 允許您使用 HTTP API 來管理架構(gòu)中的許多元素。
Schema API 使用 ManagedIndexSchemaFactory 類,這是現(xiàn)代 Solr 版本中的默認(rèn)架構(gòu)工廠。有關(guān)為索引選擇架構(gòu)工廠的更多信息,請參閱 SolrConfig 中的架構(gòu)工廠定義一節(jié)。
此 API 為每個集合 (或使用獨(dú)立 solr 時的核心) 提供對 Solr 架構(gòu)的讀取和寫入訪問權(quán)限。支持對所有架構(gòu)元素的讀訪問權(quán)限。字段、動態(tài)字段、字段類型和 copyField規(guī)則可以添加、刪除或替換。將來的 Solr 版本將擴(kuò)展寫訪問權(quán)限,以允許修改更多的架構(gòu)元素。
為什么不鼓勵手動編輯托管架構(gòu)?在示例配置中名為 "托管架構(gòu)(managed-schema)" 的文件可能包括一個建議不要手動編輯文件的注釋。在架構(gòu) API 存在之前, 此類編輯是對架構(gòu)進(jìn)行更改的唯一方法,用戶可能會強(qiáng)烈的希望繼續(xù)以這種方式進(jìn)行更改。
之所以不鼓勵這樣做,是因為如果后面描述的架構(gòu) API 被用來進(jìn)行更改,則可能會丟失對架構(gòu)的手工編輯,除非在使用架構(gòu) API 之前重新加載了核心或啟動了Solr。如果在手動編輯后總是重新加載或重新啟動, 那么執(zhí)行這些編輯就沒有問題了。
API 允許對所有調(diào)用的兩種輸出模式:JSON或XML。在請求完整的架構(gòu)時,還有另一個輸出模式,它是以 xml 格式在托管架構(gòu)文件本身之后建模的。
在使用 API 修改架構(gòu)時,將自動進(jìn)行核心重新加載,以便隨后對其索引的文檔立即進(jìn)行更改。以前編入索引的文檔不會自動更新 - 如果現(xiàn)有索引數(shù)據(jù)使用您更改的架構(gòu)元素,則必須索引它們。
修改架構(gòu)后重新索引!如果修改架構(gòu),您可能需要重新索引所有文檔。如果不這樣做,您可能會失去對文檔的訪問權(quán)限,或者無法正確解釋它們,例如在替換字段類型后。
修改您的架構(gòu)將永遠(yuǎn)不會修改任何已經(jīng)索引的文檔。您必須重新索引文檔以便將架構(gòu)更改應(yīng)用于這些文檔。更改后所做的查詢和更新可能會遇到在更改之前不存在的錯誤。完全刪除索引并重建它通常是解決此類錯誤的唯一選項。
API 的基本地址為 http://<host>: <port>/solr/<collection_name>。例如,如果您運(yùn)行 Solr 的 "cloud" 示例 (通過下面顯示的 bin/solr 命令), 創(chuàng)建 "gettingstarted" 集合, 則該集合的基本 URL(如本節(jié)中的所有示例URL)將是:http://localhost:8983/solr/gettingstarted。
bin/solr -e cloud -noprompt
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: