溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

solr 學(xué)習(xí)筆記2-----schema和field ty

發(fā)布時(shí)間:2020-07-13 16:16:03 來源:網(wǎng)絡(luò) 閱讀:513 作者:JUN_LJ 欄目:數(shù)據(jù)庫(kù)

schema文件詳細(xì)存儲(chǔ)了field和field type信息。初始化配置的不同,或是后面配置的修改會(huì)導(dǎo)致所使用的shema文件不同。

  1. ?managed-schema.xml文件,是默認(rèn)的schema配置文件。只能通過schema api 修改。

  2. schema.xml文件,只能手動(dòng)修改

? 兩個(gè)文件的內(nèi)容是一樣的,只是修改文件的方式不同。如果在solrcloud使用schema.xml文件,只能在本地備份schema.xm文件,修改完通過zookeeper命令上傳到zookeeper上去(cloud環(huán)境,schema配置文件在zookeeper上)。


FIELD TYPE的四個(gè)屬性

  1. name(必填)

  2. 實(shí)現(xiàn)屬性的類(必填)?

  3. 如果實(shí)現(xiàn)類是TextField,field analysis的描述信息

  4. feild type其他屬性。根據(jù)不同的實(shí)現(xiàn)類有區(qū)別(有些實(shí)現(xiàn)類必填)


例子(schema.xml文件的片段):

<fieldType name="text_general" class="solr.TextField" positionIncrementGap="100"> ①

<analyzer type="index"> ②

<tokenizer class="solr.StandardTokenizerFactory"/>

<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />

<!-- in this example, we will only use synonyms at query time

<filter class="solr.SynonymFilterFactory" synonyms="index_synonyms.txt" ignoreCase="true"

expand="false"/>

-->

<filter class="solr.LowerCaseFilterFactory"/>

</analyzer>

<analyzer type="query">

<tokenizer class="solr.StandardTokenizerFactory"/>

<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />

<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand=

"true"/>

<filter class="solr.LowerCaseFilterFactory"/>

</analyzer>

</fieldType>


①當(dāng)中包含了field type的名字和實(shí)現(xiàn)類

?②其余部分是關(guān)于field analysis的,包含索引和查詢時(shí)的分析方式。

? ? 索引時(shí),指定詞法分析類,停詞,大小寫是否忽略等。

? ??查詢時(shí),也要指定詞法分析類,同義詞文本庫(kù),大小寫是否忽略等(詳細(xì)看上面例子內(nèi)容)。


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI