每個字段型別可以指定為elasticsearch中某個特定的核心型別。elasticsearch的核心型別如下:
1)字串型別
2)數值型別
3)日期型
4)布林型
5)二進位制型
首先介紹一下通用屬性。
index_name:該屬性是儲存在索引中的欄位名稱。如果未指定,則預設為字段定義的物件的名稱。通常忽略該屬性。
index:該屬性的取值可為analyzed或no,如果為analyzed,則該字段將被索引,因而是可以搜尋的;如果為no,則該字段不可被搜尋。預設值是analyzed。字串型的字段有乙個額外的選項--not_analyzed,意思是該字段會被索引但不需要分析。因此,該字段按原樣寫入索引,只有完全匹配的搜尋才能查到該字段。
store:該屬性的取值可以為yes或no,用於指定欄位的原始值是否存入索引。預設值是no,意味著不能在結果中返回欄位的原始值(沒有原始值也可以通過_source欄位返回原始值)
boost:該屬性預設為1。用於定義該字段在文件中的重要性,值越高表示該字段的取值越重要。
null_value:該屬性指定如果某字段在被索引的文件中不存在時應寫入何值。預設行為是忽略該欄位。
include_in_all:該屬性指定某欄位是否應被包含到_all欄位中。預設情況下,如果啟用_all欄位則包含所有的字段。
一、字串型
term_vector(詞向量):該屬性的取值可以為no(預設值)、yes、with_offsets、with_positions、with_positions_offsets。該屬性表示是否對該字段計算lucene詞向量,如果使用的是高亮則需要計算詞向量。
omit_norms:取值可以為true或false,預設是false,如果為true則禁用該字段的lucene norms計算,則不能使用索引時加權。
omit_term_freq_and_positions:該屬性的取值可為true或false,預設為false。若想建立索引時忽略詞頻和位置的計算,可將屬性設為true。(0.20版本以後開始棄用)
index_options:用於設定索引選項。可能的取值是docs(索引文件的數量)、freqs(索引的文件數量和詞頻)、positions(索引的文件數量、詞頻和單詞出現位置)。預設值是freqs(從0.20版本開始可用)。
analyzer:用於索引和搜尋的分析器名稱,預設是全域性定義的分析器。
index_analyzer:用於索引的分析器的名稱。
search_analyzer:用於處理作用在該字段的查詢的分析器的名稱。
ignore_above:欄位的最大長度,超出指定長度的部分會被忽略。如果只關心欄位的前n個字元,則該屬性非常有用。
二、數值型
precision_step:該屬性設定為字段的每個取值生成的項數。值越低則生成的項數越多,進行range查詢時就越快(但索引也會變大),預設值是4。
ignore_malformed:取值可以為true或false,預設值是false。若想要忽略格式錯誤的數值,則應該設定為true。
三、日期型
precision_step:該屬性設定為字段的每個取值生成的項數。值越低則生成的項數越多,進行range查詢時就越快(但索引也會變大),預設值是4。
ignore_malformed:取值可以為true或false,預設值是false。若想要忽略格式錯誤的數值,則應該設定為true。
四、布林型:取值為true或false
五、二進位制型(binary)
二進位製字段是指用base64來表示索引中儲存的二進位制資料,可用來儲存二進位制形式的資料,例如影象。預設情況下,該型別的字段只儲存不索引。二進位制型別只支援index_name屬性
elasticsearch配置詳解
elasticsearch的config資料夾裡面有兩個配置檔案 elasticsearch.yml和logging.yml,第乙個是es的基本配置檔案,第二個是日誌配置檔案,es也是使用log4j來記錄日誌的,所以logging.yml裡的設定按普通log4j配置檔案來設定就行了。下面主要講解下e...
誰在使用Elasticsearch
github github使用elasticsearch搜尋20tb的資料,包括13億的檔案和1300億行的 這個不用介紹了吧,碼農們都懂的,github在2013年1月公升級了他們的 搜尋,由solr轉為elasticsearch,目前集群規模為26個索引儲存節點和8個客戶端節點 負責處理搜尋請求...
elasticsearch配置說明
elasticsearch.yml是elasticsearch主要的配置檔案,所有的配置都在這個檔案裡完成,一般情況下,預設的配置已經可以比較好地執行乙個集群了,但你也可以對其進行微調。在環境變數中的引數可以用來作為配置引數的值,比如配置檔案裡舉的乙個例子為 node.rack 再比如 等。下面對其...