首页 > 其他分享 >ElasticSearch 字段类型

ElasticSearch 字段类型

时间:2023-12-06 19:04:34浏览次数:30  
标签:end CN start token ElasticSearch offset 类型 type

(1)、字符串

       text  ⽤于全⽂索引,搜索时会自动使用分词器进⾏分词再匹配

       keyword  不分词,搜索时需要匹配完整的值

(2)、

      整型: byte,short,integer,long

     浮点型: float, half_float, scaled_float,double

(3)日期类型

       date

(4)、范围型

        integer_range, long_range, float_range,double_range,date_range

(5)布尔

       boolean     #true、false

(6)⼆进制

       binary   会把值当做经过 base64 编码的字符串,默认不存储,且不可搜索

(7)、 复杂数据类型

数组类型:array

对象类型:object

嵌套类型:nested object

(8)、专用数据类型

        ip

二 、K分词器测试

IK提供了两个分词算法ik_smart 和 ik_max_word,其中 ik_smart 为最少切分,ik_max_word为最细粒度划分。

GET _analyze
{
"analyzer": "ik_smart",
"text":"我是程序员"
}
{
"tokens" : [
{
"token" : "我",
"start_offset" : 0,
"end_offset" : 1,
"type" : "CN_CHAR",
"position" : 0
},
{
"token" : "是",
"start_offset" : 1,
"end_offset" : 2,
"type" : "CN_CHAR",
"position" : 1
},
{
"token" : "程序员",
"start_offset" : 2,
"end_offset" : 5,
"type" : "CN_WORD",
"position" : 2
}
]
}
最细切分ik_max_word
GET _analyze
{
  "analyzer": "ik_max_word",
  "text":"我是程序员"
}
输出的结果为:
{
    "tokens" : [
        {
            "token" : "我",
            "start_offset" : 0,
            "end_offset" : 1,
            "type" : "CN_CHAR",
            "position" : 0
        },
        {
            "token" : "是",
            "start_offset" : 1,
            "end_offset" : 2,
            "type" : "CN_CHAR",
            "position" : 1
        },
        {
            "token" : "程序员",
            "start_offset" : 2,
            "end_offset" : 5,
            "type" : "CN_WORD",
            "position" : 2
        },
        {
            "token" : "程序",
            "start_offset" : 2,
            "end_offset" : 4,
            "type" : "CN_WORD",
            "position" : 3
        },
        {
            "token" : "员",
            "start_offset" : 4,
            "end_offset" : 5,
            "type" : "CN_CHAR",
            "position" : 4
        }
    ]
}

标签:end,CN,start,token,ElasticSearch,offset,类型,type
From: https://blog.51cto.com/u_16414597/8708174

相关文章

  • C++_调用函数以及不同数据类型
    调用其他文件中的函数add_library可以生成我们所需的动态库或者静态库,我们要把制作出的库文件发布出去供第三方使用一些函数方法单独在一个cpp的源文件中定义,然后在另一个源文件中需要用到自定义的函数时直接调用就可以了!方法1.学过c++的人可能最熟悉的方法还是利用头文件......
  • Python中级之可变数据类型和不可变数据类型
    【一】可变数据类型对于可变类型(如字典、列表、集合),在函数中修改参数会影响原始对象。当你对于可变类型进行修改操作,并不会返回内容,而是将原本的内容进行了更新#字典(dict)dict1={'a':1,'b':2}dict1.update({'c':2})print(dict1)#{'a':1,'b':2,'c':2}#......
  • 【转】编译型与解释型、动态语言与静态语言、强类型语言与弱类型语言的区别
    编译型和解释型我们先看看编译型,其实它和汇编语言是一样的:也是有一个负责翻译的程序来对我们的源代码进行转换,生成相对应的可执行代码。这个过程说得专业一点,就称为编译(Compile),而负责编译的程序自然就称为编译器(Compiler)。如果我们写的程序代码都包含在一个源文件中,那么通常编译......
  • Python中级之数据类型的内置方法
    常用方法概览#数字类型int():类型强转bin():转换二进制hex():转换十六进制oct():转换八进制int(num,2/8/16)#通过int()为其设置参数可进行机制转换#以下三种判断需在字符串类型下使用.isdigit():判断是否均为整数数字[允许汉语数字].isdecimal():判断是否均为十进制......
  • 【解决方案】MySQL5.7 百万数据迁移到 ElasticSearch7.x 的思考
    目录前言一、一次性全量二、定时任务增量三、强一致性问题四、canal框架4.1基本原理4.2安装使用(重点)版本说明4.3引入依赖(测试)4.4代码示例(测试)五、文章小结前言在日常项目开发中,可能会遇到使用ES做关键词搜索的场景,但是一般来说业务数据是不会直接通过CRUD写进ES的。因为......
  • 使用SQL查询elasticsearch
    目录SQLRESTAPIkibanaDevToolsJava其他elasticsearchQueryDSL太难写了,所以我放弃啦......
  • 字典类型——Dictionary
    简介:在C#中,字典(Dictionary)是一种集合类型,用于存储键值对(Key-Valuepairs)。它是System.Collections.Generic命名空间下的一个泛型类,可以根据给定的键快速查找和访问对应的值。用途:字典可以用来解决需要根据键进行快速查找或访问的问题。它提供了高效的键值对的存储和检索操作,适......
  • elasticsearch聚合查询实践
    目录概念聚合分类聚合语法聚合作用范围及排序聚合原理及terms精准度聚合实验桶聚合指标聚合Pipeline聚合实践一:多商户数据权限聚合分页实践二:多维度嵌套聚合实践三:删除ES索引重复数据附:实验环境概念用于聚合的字段必须是exactvalue,即doc_value=true。分词字段不可进行聚......
  • 从 Elasticsearch 到 SelectDB,观测云实现日志存储与分析的 10 倍性价比提升
    导读:在云计算逐渐成熟的当下,越来越多的企业开始将业务迁移到云端,传统的监控和故障排查方法已经无法满足企业的需求。观测云可以实现对云、云原生、应用及业务的统一监测,提供整体数据的分析、洞察、可视化、自动化、监测告警、智能巡查、安全巡查等服务。本文将分享SelectDB如何助......
  • BigDecimal处理Double类型精度问题
    最近发现工程里出现金额精度问题,记录下使用区别:publicstaticvoidmain(String[]args){Doublea=0.1;BigDecimalb=newBigDecimal(a);BigDecimalc=BigDecimal.valueOf(a);System.out.println("bis:"+b);System.out......