zoukankan      html  css  js  c++  java
  • Mapping2.0

    一、概念

    ES中的mapping类似关系型数据库中的表结构。

    mapping中包含一些属性,如字段名称、类型、字段使用的分词器、是否评分、是否创建索引等属性

    二、查看mapping

    GET /product/_mapping

    三、ES数据类型

    常见类型

    1、数字类型:long、integer、short、byte、double、float等

    2、Keywords:该类型只能通过精确值搜索,不能被分词。Id应该用keyword

    3、Dates(时间类型):包括date和date nanos

    4、alias:为现有字段定义别名

    5、text:文本类型。默认会创建倒排索引,做文本检索。

    对象关系类型

    1、object:用于单个JSON对象

    2、nested:用于JSON对象数组

    结构化类型

    1、geo-point:纬度/经度积分

    2、geo-shape:用于多边形等复杂形状

    3、point:笛卡尔坐标点

    4、shape:笛卡尔任意几何图形

    特殊类型

    1、IP地址:ip用于IPv4和IPv6地址

    2、completion:在浏览器搜索时提供建议

     四、映射类型

    1、自动映射

      整数:long

      浮点数:float

      true||false:boolean

      日期:date

      数组:取决于数组的第一个有效值

      对象:object

      字符串:如果不是数字和日期类型,那会被映射为text和keyword两个类型

    2、手动映射

     1 手工创建mapping
     2 #手工创建mapping
     3 PUT /product2
     4 {
     5   "mappings":{
     6     "properties": {
     7       "date":{
     8         "type":"text"
     9       },
    10       "name":{
    11         "type":"text"
    12       }
    13     }
    14   }
    15 }

    五、映射参数

    1、index:是否对当前字段创建倒排索引,默认为true,如果不创建倒排索引,该字段不会通过索引被搜索到,但是仍会在source元数据中展示

    2、analyzer:指定分析器(分词器等)

    3、doc_value:正排索引,为了提高排序和聚合效率,默认true,如果确定不需要对字段进行排序或聚合,也不需要通过脚本访问字段值,则可以禁用doc值来节约磁盘

    4、search_analyzer:设置单独的查询时分词器

     六、keyword

     1 #给city创建一个keyword
     2 PUT fields_test
     3 {
     4   "mappings":{
     5     "properties": {
     6       "city":{
     7         "type": "text",
     8         "fields": {
     9           "raw":{
    10             "type":"keyword"
    11           }
    12         }
    13       }
    14     }
    15   }
    16 }
    17 PUT fields_test/_doc/1
    18 {
    19   "city":"New York"
    20 }
    21 PUT fields_test/_doc/1
    22 {
    23   "city":"York"
    24 }
    25 GET fields_test/_search
    26 {
    27   "query": {
    28     "match": {
    29       "city": "york"
    30     }
    31   },
    32   "sort": {
    33     "city.raw":"asc"
    34   },
    35   "aggs":{
    36     "city":{
    37       "terms":{
    38         "field": "city.raw"
    39       }
    40     }
    41   }
    42 }

    作者:http://cnblogs.com/lyc-code/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权力。

  • 相关阅读:
    codevs 3971 航班
    2015山东信息学夏令营 Day4T3 生产
    2015山东信息学夏令营 Day5T3 路径
    Tyvj 1221 微子危机——战略
    清北学堂模拟赛 求和
    NOIP2012同余方程
    NOIP2009 Hankson的趣味题
    bzoj1441 MIN
    国家集训队论文分类
    贪心 + DFS
  • 原文地址:https://www.cnblogs.com/lyc-code/p/15215012.html
Copyright © 2011-2022 走看看