• es elasticsearch 八 mapping 映射 、复杂数据类型


    目录

    Mapping 映射

    复杂数据类型


    Mapping 映射

    精确匹配

    必须和对应字段值安全一致才可查出

    全文检索

    缩写搜索全程、格式转换 大小写 同义词

    全文检索核心原理

    分词,初步的倒排索引的建立

    重建倒排索引

    时态转换、重复数的转换、同义词的转换、大小写的转换

    分词器 analyzer

    对单词:切分词语、正规化操作

    目的是为了:Recall 召回率 增加返回结果

    实现步骤:

    1.Character 文本分词预处理解析内容

    2.tokenizer 分词

    3.token filter :过滤掉无用此内容加转化标准化词

           如中文了的呢 是无用词

    建立倒排索引

    内置分词器

    更多分词器可去官网查看

    Standard analyzer 标准分词器  standard

    Simple analyzer 简单分词器

    特定语言分词器

    测试分词器

    get /_analyze

    { "analyzer":"standard",

      "text":" Text to  analyze 70"

    }

    Mapping回顾总结

    往es 插入数据 es 会自动建立索引,同时建立对应的mapping动态映射

    Mapping中定义类每个 字段的数据类型

    不同的数据类型有不同的检索方式 全文检索 准确检索

    准确的值倒排索引会全值进入,全文检索,会先分词,再到倒排索引分别检索

    Es 还可以自己建立mapping 动态映射,索引行为、分词器等

    核心数据类型   

    String 、byte、short number object geo-print/素组等、更多的看官方文档

    动态映射推测规则

    True -》boolean

    123 -> long

    “xxx” - > text/keyword

    2019-01-01 -> date

    查看 mapping

    Get /text/_mapping

    手动创建索引映射(定义分词器、数据类型、时间格式化)

    delete book

    put book

    #keyword 不进行分词准确查询

    put book/_mapping

    {

      "properties":{

        "name":{

          "type":"text",

          "analyzer":"english",

          "search_analyzer":"english"

        },"pic":{

          "type":"keyword"

        },"timestamp":{

          "type":"date",

          "format":"yyyy-MM-dd"

        }

      }

    }

    put /book/_doc/4

    {"name":"text hello word","pic":"998s"

      ,"timestamp":"2023-02-01"

    }

    get /book/_doc/3

    get /book/_search?q=name:text

    新增映射mapping

    put book/_mapping

    {

      "properties":{

        "new_filed":{

          "type":"text"

        }

      }

    }

    复杂数据类型

    数组

    空数据

    对象

    ok

    持续更新

  • 相关阅读:
    Codeforces 1670 E. Hemose on the Tree
    RabbitMQ初步到精通-第四章-RabbitMQ工作模式-Routing
    设计模式之【装饰器模式】
    java计算机毕业设计基于ssm的邮票收藏鉴赏系统
    jvm工具-jps、jstat、jmap、jstack
    单目目标检测
    SaaSBase:什么是有道云笔记?
    598. 区间加法 II
    JavaScript基础语法01
    Elastic Stack容器化部署拓展(Https、AD域集成)并收集Cisco设备的日志信息
  • 原文地址:https://blog.csdn.net/weixin_42749765/article/details/130891754