Elasticsearch7.*欄位資料型別
本文 Elasticsearch 版本為 7.2
主要資料型別
(1)字串型別: text, keyword
(2)數字型別:long
,integer
,short
,byte
,double
,float
,half_float
,scaled_float
(3)日期:date
(4)日期 納秒:date_nanos
(5)布林型:boolean
(6)Binary:binary
(7)Range:integer_range
,float_range
,long_range
,double_range
,date_range
複雜資料型別
(1)Object: object(單個JSON物件)
(2)Nested:nested
地理資料型別
(1)Geo-point: geo_point (緯度/經度積分)
(2)Geo-shape: geo_shape (用於多邊形等複雜形狀)
特殊資料型別
(1)IP: ip (IPv4 和 IPv6 地址)
(2)Completion型別:completion (to provide auto-complete suggestions)
(3)Token count:token_count (to count the number of tokens in a string)
(4)mapper-murmur3:murmur3(to compute hashes of values at index-time and store them in the index)
(5)mapper-annotated-text:annotated-text (to index text containing special markup (typically used for identifying named entities))
(6)Percolator:(Accepts queries from the query-dsl)
(7)Join:(Defines parent/child relation for documents within the same index)
(8)Alias:(Defines an alias to an existing field.)
(9)Rank feature:(Record numeric feature to boost hits at query time.)
(10)Rank features:(Record numeric features to boost hits at query time.)
(11)Dense vector:(Record dense vectors of float values.)
(12)Sparse vector:(Record sparse vectors of float values.)
(13)Search-as-you-type:(A text-like field optimized for queries to implement as-you-type completion)
陣列型別
在Elasticsearch中,陣列不需要一個特定的資料型別,任何欄位都預設可以包含一個或多個值,當然,這多個值都必須是欄位指定的資料型別。
Multi-fields
Multi-fields 通常用來以不同的方式或目的索引同一個欄位。比如,一個字串型別欄位可以同時被對映為 text 型別以用於全文檢索、 keyword欄位用於排序或聚合。又或者,你可以用standard分析器、english分析器和french分析器來索引同一個 text欄位。
為不同的目的以不同的方式對同一欄位建立索引通常很有用。例如,一個string
欄位可以對映為text
用於全文搜尋的欄位,也可以對映為keyword
用於排序或聚合的欄位.大多數資料型別通過fields
引數支援多欄位。
官方文件:https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-types.html