本文为博主原创,未经允许不得转载:

  

1.ES 中的映射可以分为动态映射和静态映射

  动态映射:在关系数据库中,需要事先创建数据库,然后在该数据库下创建数据表,并创建表字段、类型、长度、主键等,最后才能基于表插入数据。而Elasticsearch中不需要定义Mapping映射(即关系型数据库的表、字段等),在文档写入Elasticsearch时,会根据文档字段自动识别类型,这种机制称之为动态映射。

      

 静态映射: 在Elasticsearch中也可以事先定义好映射,包含文档的各字段类型、分词器等,这种方式称之为静态映射

动态映射语法:

  1. 创建索引:

PUT /es_db

  2. 创建文档

PUT /es_db/_doc/1
{
"name": "Jack",
"sex": 1,
"age": 25,
"book": "java入门至精通",
"address": "大西北"
}

  3. 获取文档映射:

GET /es_db/_mapping

                                               

  4. 删除索引

DELETE /es_db

静态映射

  1. 创建索引

PUT /es_db

  2. 设置文档映射

 PUT /es_db
{
"mappings": {
"properties": {
"name": {"type": "keyword","index": true,"store": true},
"sex": {"type": "integer","index": true,"store": true},
"age": {"type": "integer","index": true,"store": true},
"book": {"type": "text","index": true,"store": true},
"address": {"type": "text", "index": true, "store": true}
}
}
}

  设置book 字段的分词器为 ik 中文分词器:

"book": {"type": "text","index": true,"store": true,"analyzer":"ik_smart","sea rch_analyzer":"ik_smart"},

  3. 根据静态映射创建文档

PUT /es_db/_doc/1
{
"name": "Jack",
"sex": 1,
"age": 25,
"book": "elasticSearch入门至精通",
"address": "我的大西北"
}

  4.  获取文档映射

GET /es_db/_mapping

  5. 查看 索引 创建信息

GET /es_db/_settings

数据类型:

  text:该类型被用来索引长文本,在创建索引前会将这些文本进行分词,转化为的组合,建立索引;允许es来检索这些词,text类型不能用来排序和聚合。

  keyword:该类型不能分词,可以被用来检索过滤、排序和聚合,keyword类型不可用text进行分词模糊检索。
  数值型:long、integer、short、byte、double、float
  日期型:date
  布尔型:boolean

ElasticSearch 映射类型及数据类型区分的更多相关文章

  1. Python标准库映射类型与可散列数据类型的关系

    这里有两个概念似懂非懂,在这里明确一下: 映射类型: Python>3.2中,collections.abc模块有Mapping和MutableMapping两个抽象基类(Python2.6~3 ...

  2. elasticsearch映射

    前面讲到,无论是关系型数据库还是非关系型数据库,乃至elasticsearch这种事实上承担着一定储存作用的搜索引擎,数据类型都是非常重要而基础的概念.但elasticsearch与其它承担着数据存储 ...

  3. hibernate的映射类型

    hibernate的映射类型 hibernate MySQL映射类型 1.Hibernate的映射类型 hibernate mysql映射类型 Hibernate 映射类型 Java 类型 标准 SQ ...

  4. Sqlite3中存储类型和数据类型结合文档解析。

    sqlite3是个很小的数据库,运行在手机,机顶盒上....那它就不可能像musql,sqlserver那么规范,有很多的数据类型,之前我也以为它定义了很多数据类型,其实不是他就5个存储类,那么多数据 ...

  5. 002-Python3-基础语法-赋值、显示类型、数据类型[数值、字符串、列表、元祖、集合、字典]

    一.基础语法 参看地址:https://www.runoob.com/python3/python3-tutorial.html 基础数据类型 Python 中的变量不需要声明.每个变量在使用前都必须 ...

  6. Mybatis笔记 – Po映射类型

    一.输入映射类型 parameterType定义输入到sql中的映射类型,可以是  简单类型  .po类对象(可自动生成 或 手动定义). pojo包装对象(用于综合查询,UserCustom用户自定 ...

  7. 攻城狮在路上(壹) Hibernate(九)--- Hibernate的映射类型

    Hibernate采用映射类型作为Java类型和SQL类型的桥梁,对应type属性.分为两种:内置映射类型和客户化映射类型.一.内置映射类型: 1.Java基本类型的Hibernate映射类型: Ja ...

  8. Hibernate映射类型对照表

    Hibernate映射类型对照表 java类型  Hibernate映射类型  SQL类型 java.math.BigDecimal big_decimal numeric byte[] binary ...

  9. 第一百零七节,JavaScript基本包装类型,数据类型的方法

    JavaScript基本包装类型,数据类型的方法 学习要点: 1.基本包装类型概述 2.Boolean类型 3.Number类型 4.String类型 为了便于操作基本类型值,ECMAScript提供 ...

  10. Hibernate学习6—Hibernate 映射类型

    第一节:基本类型映射 com.cy.model.Book.java: package com.cy.model; import java.sql.Blob; import java.util.Date ...

随机推荐

  1. 搭建前端项目时出现了.../dist/index.mjs:128 if (!require.cache) { ^ ReferenceError: require is not defined...

    具体报错如下: 修改node_modules/vite-plugin-mock/dist/index.mjs 加入如下内容 // 解决报错问题 import { createRequire } fro ...

  2. 【UniApp】-uni-app-项目计算功能(苹果计算器)

    前言 本文主要介绍苹果计算器项目中计算功能的实现 在前面的文章中已经实现了输入,动态计算字体大小,以及计算器的布局 本文主要介绍计算功能的实现 正文 实现/清空/改变正负/除以100 inputTex ...

  3. 7.elasticsearch重建索引

    什么时候需要重建索引 索引的mappings发生变更 索引的setting发生变更 集群内,集群间,需要做数据迁移 update by query 在现有索引重建 比如需要给一个text新增一个子字段 ...

  4. CodeForces 1459C 数论 GCD

    CodeForces 1459C 数论 GCD 原题链接 题意 首先给出n个数 之后给出m个数,每次问之前的n个数加上当前的这个数之后,总体的gcd是多少,也就是答案需要求出m个总体的gcd 思路 因 ...

  5. Picker 选择器

    WXML 文件中 <view class="container"> <view> <text>选择器的值: {{pickerValue}}< ...

  6. GaussDB for DWS:内存自适应控制技术总结

    1.技术背景 在SQL语句复杂.处理数据量大的AP场景下,单个查询对内存的需求越来越大,多个语句的并发很容易将系统的内存吃满,造成内存不足的问题.为了应对这种问题,GaussDB for DWS引入了 ...

  7. 云小课|MRS基础原理之Hudi介绍

    阅识风云是华为云信息大咖,擅长将复杂信息多元化呈现,其出品的一张图(云图说).深入浅出的博文(云小课)或短视频(云视厅)总有一款能让您快速上手华为云.更多精彩内容请单击此处. 摘要:Hudi是数据湖的 ...

  8. 后CNN探索,如何用RNN进行图像分类

    摘要:RNN可以用于描述时间上连续状态的输出,有记忆功能,能处理时间序列的能力,让我惊叹. 本文分享自华为云社区<用RNN进行图像分类--CNN之后的探索>,作者: Yin-Manny. ...

  9. 学会这5种JS函数继承方式,前端面试你至少成功50%

    摘要:函数继承是在JS里比较基础也是比较重要的一部分,而且也是面试中常常要问到的.下面带你快速了解JS中有哪几种是经常出现且必须掌握的继承方式.掌握下面的内容面试也差不多没问题啦~ 本文分享自华为云社 ...

  10. 分析内部运行机制,教你解决Redis性能问题

    摘要:聚焦Redis的性能分析,思考Redis 可以通过哪些机制来提高性能,当性能瓶颈发生的时候,我们又能做出哪些优化策略,最终确保业务系统的稳定运行. 本文分享自华为云社区<分析内部运行机制, ...