W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎勵
以下端點(diǎn)允許您閱讀如何定義架構(gòu)。您可以根據(jù)需要獲取 Solr 的整個(gè)架構(gòu),或者僅部分架構(gòu)。
如果要修改架構(gòu),請參閱上一節(jié)修改架構(gòu)。
GET /collection/schema
路徑參數(shù)
集合(或核心)名稱。
查詢參數(shù)
查詢參數(shù)應(yīng)該在'?'之后添加到 API 請求中。
定義響應(yīng)的格式。選項(xiàng)是 json,xml 或 schema.xml。如果未指定,則默認(rèn)返回 JSON。
輸出內(nèi)容:輸出將包括所請求格式(JSON 或 XML)的所有字段、字段類型、動態(tài)規(guī)則和復(fù)制字段規(guī)則。架構(gòu)名稱和版本也包括在內(nèi)。
用 JSON 獲取整個(gè)架構(gòu)。
curl http://localhost:8983/solr/gettingstarted/schema
{
"responseHeader":{
"status":0,
"QTime":5},
"schema":{
"name":"example",
"version":1.5,
"uniqueKey":"id",
"fieldTypes":[{
"name":"alphaOnlySort",
"class":"solr.TextField",
"sortMissingLast":true,
"omitNorms":true,
"analyzer":{
"tokenizer":{
"class":"solr.KeywordTokenizerFactory"},
"filters":[{
"class":"solr.LowerCaseFilterFactory"},
{
"class":"solr.TrimFilterFactory"},
{
"class":"solr.PatternReplaceFilterFactory",
"replace":"all",
"replacement":"",
"pattern":"([^a-z])"}]}}],
"fields":[{
"name":"_version_",
"type":"long",
"indexed":true,
"stored":true},
{
"name":"author",
"type":"text_general",
"indexed":true,
"stored":true},
{
"name":"cat",
"type":"string",
"multiValued":true,
"indexed":true,
"stored":true}],
"copyFields":[{
"source":"author",
"dest":"text"},
{
"source":"cat",
"dest":"text"},
{
"source":"content",
"dest":"text"},
{
"source":"author",
"dest":"author_s"}]}}
用 XML 獲取整個(gè)架構(gòu)。
curl http://localhost:8983/solr/gettingstarted/schema?wt=xml
<response>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">5</int>
</lst>
<lst name="schema">
<str name="name">example</str>
<float name="version">1.5</float>
<str name="uniqueKey">id</str>
<arr name="fieldTypes">
<lst>
<str name="name">alphaOnlySort</str>
<str name="class">solr.TextField</str>
<bool name="sortMissingLast">true</bool>
<bool name="omitNorms">true</bool>
<lst name="analyzer">
<lst name="tokenizer">
<str name="class">solr.KeywordTokenizerFactory</str>
</lst>
<arr name="filters">
<lst>
<str name="class">solr.LowerCaseFilterFactory</str>
</lst>
<lst>
<str name="class">solr.TrimFilterFactory</str>
</lst>
<lst>
<str name="class">solr.PatternReplaceFilterFactory</str>
<str name="replace">all</str>
<str name="replacement"/>
<str name="pattern">([^a-z])</str>
</lst>
</arr>
</lst>
</lst>
...
<lst>
<str name="source">author</str>
<str name="dest">author_s</str>
</lst>
</arr>
</lst>
</response>
以 “schema.xml” 格式獲取整個(gè)架構(gòu)。
curl http://localhost:8983/solr/gettingstarted/schema?wt=schema.xml
<schema name="example" version="1.5">
<uniqueKey>id</uniqueKey>
<types>
<fieldType name="alphaOnlySort" class="solr.TextField" sortMissingLast="true" omitNorms="true">
<analyzer>
<tokenizer class="solr.KeywordTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.TrimFilterFactory"/>
<filter class="solr.PatternReplaceFilterFactory" replace="all" replacement="" pattern="([^a-z])"/>
</analyzer>
</fieldType>
...
<copyField source="url" dest="text"/>
<copyField source="price" dest="price_c"/>
<copyField source="author" dest="author_s"/>
</schema>
路徑參數(shù)
集合(或核心)名稱。
特定的字段名(如果將請求限制為單個(gè)字段)。
查詢參數(shù)
查詢參數(shù)可以在 '?' 后添加到 API 請求中。
定義響應(yīng)的格式。選項(xiàng)是json
或xml
。如果未指定,則默認(rèn)返回 JSON。
以逗號或空格分隔的一個(gè)或多個(gè)要返回的字段的列表。如果未指定,所有字段將默認(rèn)返回。
如果true
并且如果fl
指定了查詢參數(shù)或者使用了fieldname
路徑參數(shù),則匹配的動態(tài)字段被包括在響應(yīng)中并且與該dynamicBase
屬性一起標(biāo)識。
如果fl
查詢參數(shù)和fieldname
路徑參數(shù)均未指定,則includeDynamic
查詢參數(shù)將被忽略。
如果false
默認(rèn),匹配的動態(tài)字段將不會被返回。
如果true
,每個(gè)字段的字段類型的所有默認(rèn)字段屬性都將包含在響應(yīng)中(例如tokenized
for solr.TextField
)。如果false
默認(rèn)只包含明確指定的字段屬性。
輸出將包括每個(gè)字段和每個(gè)字段的任何定義的配置。定義的配置可能會因每個(gè)字段而異, 但將最小程度地包括字段名稱、類型 (如果它是索引的) 和存儲的。
如果多值被定義為真或假 (最可能為真), 也將顯示。有關(guān)每個(gè)參數(shù)的詳細(xì)信息, 請參閱定義字段一節(jié)。
輸出將包括每個(gè)字段和每個(gè)字段的任何定義的配置。所定義的配置可能會因每個(gè)字段而異,但最低限度地將包括字段名稱、類型 ,如果是 indexed 和 stored。
如果 multiValued 被定義為真或假(很可能是真的),那么也將被顯示。有關(guān)每個(gè)參數(shù)的更多信息,請參閱定義字段部分。
獲取所有字段的列表。
curl http://localhost:8983/solr/gettingstarted/schema/fields
下面的示例輸出已被截?cái)?,只顯示幾個(gè)字段。
{
"fields": [
{
"indexed": true,
"name": "_version_",
"stored": true,
"type": "long"
},
{
"indexed": true,
"name": "author",
"stored": true,
"type": "text_general"
},
{
"indexed": true,
"multiValued": true,
"name": "cat",
"stored": true,
"type": "string"
},
"..."
],
"responseHeader": {
"QTime": 1,
"status": 0
}
}
路徑參數(shù)
集合(或核心)名稱。
動態(tài)字段規(guī)則的名稱(如果將請求限制為單個(gè)動態(tài)字段規(guī)則)。
查詢參數(shù)
查詢參數(shù)可以在'?'后添加到API請求中。
定義響應(yīng)的格式。選項(xiàng)是json
或xml
。如果未指定,則默認(rèn)返回JSON。
如果true
,每個(gè)動態(tài)字段的字段類型的所有默認(rèn)字段屬性都將包含在響應(yīng)中(例如tokenized
for solr.TextField
)。如果false
默認(rèn)只包含明確指定的字段屬性。
輸出將包括每個(gè)動態(tài)字段規(guī)則和每個(gè)規(guī)則的定義配置。所定義的配置可以為每個(gè)規(guī)則而變化,但將最低限度地包括動態(tài)字段的 name,type,如果是 indexed 和 stored。有關(guān)每個(gè)參數(shù)的更多信息,請參閱動態(tài)字段部分。
獲取所有動態(tài)字段聲明的列表:
curl http://localhost:8983/solr/gettingstarted/schema/dynamicfields
下面的示例輸出已被截?cái)唷?/p>
{
"dynamicFields": [
{
"indexed": true,
"name": "*_coordinate",
"stored": false,
"type": "tdouble"
},
{
"multiValued": true,
"name": "ignored_*",
"type": "ignored"
},
{
"name": "random_*",
"type": "random"
},
{
"indexed": true,
"multiValued": true,
"name": "attr_*",
"stored": true,
"type": "text_general"
},
{
"indexed": true,
"multiValued": true,
"name": "*_txt",
"stored": true,
"type": "text_general"
}
"..."
],
"responseHeader": {
"QTime": 1,
"status": 0
}
}
路徑參數(shù)
集合(或核心)名稱。
字段類型的名稱(如果將請求限制為單個(gè)字段類型)。
查詢參數(shù)
查詢參數(shù)可以在'?'后添加到API請求中。
定義響應(yīng)的格式。選項(xiàng)是json
或xml
。如果未指定,則默認(rèn)返回JSON。
如果true
,每個(gè)動態(tài)字段的字段類型的所有默認(rèn)字段屬性都將包含在響應(yīng)中(例如tokenized
for solr.TextField
)。如果false
默認(rèn)只包含明確指定的字段屬性。
輸出將包括每個(gè)字段類型和該類型的任何定義的配置。定義的配置可以為每個(gè)類型,但最低限度包括字段類型 name 和 class。如果查詢或索引分析器、標(biāo)記器或過濾器已定義,那么也將顯示其他已定義的參數(shù)。有關(guān)如何配置各種類型的字段的更多信息,請參見 Solr 字段類型一節(jié)。
獲取所有字段類型的列表。
curl http://localhost:8983/solr/gettingstarted/schema/fieldtypes
下面的示例輸出已被截?cái)啵燥@示列表的不同部分的幾個(gè)不同的字段類型。
{
"fieldTypes": [
{
"analyzer": {
"class": "solr.TokenizerChain",
"filters": [
{
"class": "solr.LowerCaseFilterFactory"
},
{
"class": "solr.TrimFilterFactory"
},
{
"class": "solr.PatternReplaceFilterFactory",
"pattern": "([^a-z])",
"replace": "all",
"replacement": ""
}
],
"tokenizer": {
"class": "solr.KeywordTokenizerFactory"
}
},
"class": "solr.TextField",
"dynamicFields": [],
"fields": [],
"name": "alphaOnlySort",
"omitNorms": true,
"sortMissingLast": true
},
{
"class": "solr.FloatPointField",
"dynamicFields": [
"*_fs",
"*_f"
],
"fields": [
"price",
"weight"
],
"name": "float",
"positionIncrementGap": "0",
}]
}
GET /collection/schema/copyfields
路徑參數(shù)
集合(或核心)名稱。
查詢參數(shù)
查詢參數(shù)可以在'?'后添加到API請求中。
定義響應(yīng)的格式。選項(xiàng)是json
或xml
。如果未指定,則默認(rèn)返回JSON。
在響應(yīng)中包含一個(gè)或多個(gè)copyField源字段的逗號或空格分隔列表 - 包含所有其他源字段的copyField指令將被排除在響應(yīng)之外。如果沒有指定,所有copyField-s將被包含在響應(yīng)中。
一個(gè)或多個(gè)copyField目標(biāo)字段的逗號或空格分隔列表,以包含在響應(yīng)中。所有其他dest
字段的copyField指令將被排除。如果沒有指定,所有copyField-s將被包含在響應(yīng)中。
輸出將包括在 schema.xml 中定義的每個(gè)復(fù)制字段規(guī)則的 source 和 dest(目的地)。有關(guān)復(fù)制字段的更多信息,請參見復(fù)制字段部分。
獲取所有 copyField 的列表。
curl http://localhost:8983/solr/gettingstarted/schema/copyfields
下面的示例輸出已被截?cái)酁榍皫讉€(gè)復(fù)制定義。
{
"copyFields": [
{
"dest": "text",
"source": "author"
},
{
"dest": "text",
"source": "cat"
},
{
"dest": "text",
"source": "content"
},
{
"dest": "text",
"source": "content_type"
},
],
"responseHeader": {
"QTime": 3,
"status": 0
}
}
GET /collection/schema/name
路徑參數(shù)
集合(或核心)名稱。
查詢參數(shù)
查詢參數(shù)可以在'?'后添加到API請求中。
定義響應(yīng)的格式。選項(xiàng)是json
或xml
。如果未指定,則默認(rèn)返回JSON。
輸出將只是給架構(gòu)的名稱。
獲取架構(gòu)名稱。
curl http://localhost:8983/solr/gettingstarted/schema/name
{
"responseHeader":{
"status":0,
"QTime":1},
"name":"example"}
GET /collection/schema/version
路徑參數(shù)
集合(或核心)名稱。
查詢參數(shù)
查詢參數(shù)可以在 '?' 后添加到 API 請求中。
定義響應(yīng)的格式。選項(xiàng)是json
或xml
。如果未指定,則默認(rèn)返回 JSON。
輸出將只是正在使用的架構(gòu)版本。
獲取架構(gòu)版本
curl http://localhost:8983/solr/gettingstarted/schema/version
{
"responseHeader":{
"status":0,
"QTime":2},
"version":1.5}
GET /collection/schema/uniquekey
路徑參數(shù)
集合(或核心)名稱。
查詢參數(shù)
查詢參數(shù)可以在'?'后添加到API請求中。
定義響應(yīng)的格式。選項(xiàng)是json
或xml
。如果未指定,則默認(rèn)返回 JSON。
輸出將只包含被定義為索引的uniqueKey的字段名稱。
列出 uniqueKey。
curl http://localhost:8983/solr/gettingstarted/schema/uniquekey
{
"responseHeader":{
"status":0,
"QTime":2},
"uniqueKey":"id"}
GET /collection/schema/similarity
路徑參數(shù)
集合(或核心)名稱。
查詢參數(shù)
查詢參數(shù)可以在'?'后添加到API請求中。
定義響應(yīng)的格式。選項(xiàng)是json
或xml
。如果未指定,則默認(rèn)返回 JSON。
輸出將包括定義的全局相似性的類名稱(如果有的話)。
獲取相似性實(shí)現(xiàn)。
curl http://localhost:8983/solr/gettingstarted/schema/similarity
{
"responseHeader":{
"status":0,
"QTime":1},
"similarity":{
"class":"org.apache.solr.search.similarities.DefaultSimilarityFactory"}}
該托管資源 REST API 為任何 Solr 插件提供了一種機(jī)制,用于公開應(yīng)支持 CRUD (創(chuàng)建、讀取、更新、刪除) 操作的資源。根據(jù)架構(gòu)中配置的字段類型和分析器,可能會存在其他的/schema/ REST API 路徑。有關(guān)更多信息和示例,請參閱 "托管資源" 部分。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: