elasticsearch中数据类型,字符数字日期地理位置符合数据类型等

Posted Leo Han

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了elasticsearch中数据类型,字符数字日期地理位置符合数据类型等相关的知识,希望对你有一定的参考价值。

elasticsearch数据类型主要如下:

核心数据类型

string

包含 text,keyword

Numeric

包含:long, integer, short, byte, double, float, half_float, scaled_float

Date

包含date类型

Date nanaoseconds

包含date_nanos

Boolean

包含boolean类型

Binary

包含binary类型

Range

包含integer_range, float_range, long_range, double_range, date_range, ip_range

复合数据类型

Object

包含object类型

Nested

包含nested数据类型

Geo数据类型

Geo-point

包含 geo_point数据类型

Geo-shape

包含geo_shape类型

特定数据类型

ip类型

表示ipv4和ipv6

completion

提供自动补全的功能

token_count

统计字符出现的次数

murmur3

计算值的hash并存储到index

annotated-text

用于索引包含特殊标记的文本(通常用于表示命名实体)

percolator

接受DSL查询

join

为同一索引中的文档定义父子关系

rank_feature

存储数字,提高文档的相关性分数

dense_vector

存储浮点类型密集向量数据

sparse_vector

存储浮点类型稀疏向量数据

alias

为一个已经存在的字段定义别名

flattened

整个json对象作为单个字段存储

shape

任意笛卡尔几何

histogram

聚合数值类型并返回对应数组

String类型- text和keyword

  • keyword keyword不进行分词,直接索引,支持模糊、支持精确匹配,支持聚合、排序操作。keyword类型的最大支持的长度为——32766个UTF-8类型的字符,可以通过设置ignore_above指定自持字符长度,超过给定长度后的数据将不被索引,无法通过term精确匹配检索返回结果。使用场景:
    存储邮箱号码、url、name、title,手机号码、主机名、状态码、邮政编码、标签、年龄、性别等数据。
    用于筛选数据(例如: select * from x where status=‘open’)、排序、聚合(统计)。
    直接将完整的文本保存到倒排索引中。
  • text text类型支持分词,全文检索,支持模糊、精确查询,不支持聚合,排序操作;
    test类型的最大支持的字符长度无限制,适合大字段存储;
    使用场景:
    存储全文搜索数据, 例如: 邮箱内容、地址、代码块、博客文章内容等。
    默认结合standard analyzer(标准解析器)对文本进行分词、倒排索引。
    默认结合标准分析器进行词命中、词频相关度打分

Date类型

elasticsearch内部会将日期类型转换为UTC格式,将其存储为代表时间毫秒数的长整数,日期格式可以自定义,如果没有指定格式,适用默认值.
我们可以在设置类型的时候指定date类型的格式:

PUT my-index-000001

  "mappings": 
    "properties": 
      "date": 
        "type":   "date",
        "format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
      
    
  

详见: es data types

以上是关于elasticsearch中数据类型,字符数字日期地理位置符合数据类型等的主要内容,如果未能解决你的问题,请参考以下文章

elasticsearch中数据类型,字符数字日期地理位置符合数据类型等

ElasticSearch 基础 - Mapping

elasticsearc之mapping的介绍

Elasticsearch 日期时间处理

elasticsearch映射

ES 数据类型