zoukankan      html  css  js  c++  java
  • elasticsearch摸石头过河——常用数据类型(二)

    elasticsearch数据类型

       Elasticsearch 类型是 以 Lucene 处理文档的这个方式为基础来实现的。一个索引可以有多个类型,这些类型的文档可以存储在相同的索引中。

       Lucene 没有文档类型的概念,每个文档的类型名被存储在一个叫 _type 的元数据字段上。 当我们要检索某个类型的文档时, Elasticsearch 通过在 _type 字段上使用过滤器限制只返回这个类型的文档。

          注意问题:不同type中,有两个相同的字段名称,这时字段类型必须是相同的,否则会报错!

      一,字符串类型

            ElasticSearch 5.0之后,除去了字符串string类型,增加了:

            text(全文搜索)      老版本:string—>index(analyzed)

            keyword关键词搜索) 老版本:string—>index(not_analyzed)

                    默认同时满足keyword与text类型,如果做聚合或者排序,可在字段添加keyword,做关键词搜索(long.keyword)

        二,数值类型

                long,int,short,byte,double,float

         三,日期类型(UTC时间)    1970年1月1日0时0分0秒就是UNIX时间0。

                { “date”: “2015-01-01” } 

               { “date”: “2015-01-01T12:10:30Z” } 

               { “date”: 1420070400001 } 

               ElasticSearch 内部会将日期数据转换为UTC,并存储为milliseconds-since-the-epoch的long型整数。 

        四,布尔类型

                 布尔字段接受JSON true和false值,
                  但也可以接受被解释为true或false的字符串和数字:
             false值举例:
             false,“false”,“off”,“no”,“0”,“”(空字符串),0,0.0
             true值举例:
             以上false示例的反面,一切非假值。

         五,二进制类型

                  二进制类型接受二进制值作为Base64编码字符串,该字段默认不存储,不可搜索(意思就是只在source字段中存储整个                        文档,不会单独当成列存储)

      六,范围数据类型  

              integer_range :整型范围类型;
            float_range :单精度浮点范围类型;
            long_range :长整型范围类型;
            double_range :双精度范围类型;
            date_range :时间范围类型;
            ip_range :IP范围类型。

            使用场景:比如前端的时间选择表单、年龄范围选择表单等。 

             七,对象类型

            类似json对象

             八,数组类型  

             必须保持类型相同

     

  • 相关阅读:
    解释器模式
    享元模式
    中介者模式
    职责链模式
    命令模式
    桥接模式
    Java迭代器Iterator
    [Swift]LeetCode1247. 交换字符使得字符串相同 | Minimum Swaps to Make Strings Equal
    [Swift]LeetCode1248. 统计「优美子数组」| Count Number of Nice Subarrays
    [Swift]LeetCode1239. 串联字符串的最大长度 | Maximum Length of a Concatenated String with Unique Characters
  • 原文地址:https://www.cnblogs.com/10fly/p/9928888.html
Copyright © 2011-2022 走看看