0
点赞
收藏
分享

微信扫一扫

Elasticsearch字段类型全解


字段类型

  • keyword
    用于精确term查询的字符串或数字,都按keyword类型建立
  • long
    用于lt、gt等范围查询, 及avg、sum等数字类型聚合的整数,按long建立
  • double
    基本同long,但是是小数
  • date
    也支持lt等范围查询,且范围查询时能识别"now-1d"这样的字符串, 支持 date_histogram 日期聚合。
    建议写入时使用毫秒级时间戳(13位)
    默认支持13位的时间戳 或 strict_date_optional_time , 需要yyyy-MM-dd HH:mm:ss 等其余格式
  • geo_point
    地理位置类型。包括经纬度。写入格式见官方文档
  • ip
    查询时能识别 CIDR 表达式, 如: “2001:db8::/48”
  • text(分词文本)
    页面上选择keyword类型后,下方会显示分词规则,默认分词是按照空格逗号等分词,ik_smart是根据中文词义分,如“我爱中国”分成"我“、”爱“、“中国”。
  • Array
    数组中元素为以上基础类型的,按数组中元素的类型建立, 如List按 keyword类型建立。
    数组中元素为对象类型的,按nested类型建立。
  • Object
    形如 o:{a: “test”, b: 1} , 则只建立子字段: “o.a” → keyword 、“o.b” → long
  • nested(List)
    如果某字段是一个list,list里每个元素又是对象,有多个子字段,需要用这些子字段查询,则该字段需要建立成nested类型,用于查询的子字段也需要建立。


举报

相关推荐

0 条评论