mapping映射

主要类型:

  • 同一index下,不同type中如果有相同filed;es进行mapping映射的时候,按照先写进去的指定类型;比如同一index,包含的type中都有key1字段,如果第一次写进去的是long类型,后面所有type中key1字段都按照long类型格式化。

  • nested和array的区别
  • es中会把json数组平铺存储:"key":[{"a":1,"b":"abc"},{"a":2,"b":"xyz"}],es会把上面的数组存储为:"key":{"a":[1,2],"b":["abc","xyz"]};所以如果我想的到当a>1的时候获取b的值,是拿不到我们想要的结果的!

  • 如果想要获取到我们想要的结果,需要指定映射为“nested”类型 "key":{ "type":"nested", "property":{ "a":{"type":"long"} "b":{"type":"string"} } }
  • es默认不是这种格式,如果指定为nested类型,写入和查询的性能会受到影响!
  • 如果单个term最大长度超过32kb(32766)不可修改,写不进es

    • 可以针对比较大的内容做正则提取,作为单独字段存储
  • ignore_above:20(允许写入20个字节)

    • 超过这个值可以写进去es,但是无法搜索到(超过之后,写进es不会做索引)

什么是DocValues?为什么要用DocValues ?

Elasticsearch cluster中的内存多半都被消耗在了field data(也就是我们常说的正排索引)上,field data主要用于:

对索引操作的一些优化

http://itindex.net/detail/54945-elasticsearch2.0--索引-优化

ES中的分词器

https://my.oschina.net/xiaohui249/blog/260993

ES mapping映射及优化的更多相关文章

  1. Elasticsearch索引的操作,利用kibana 创建/删除一个es的索引及mapping映射

    索引的创建及删除 1. 通过索引一篇文档创建了一个新的索引 .这个索引采用的是默认的配置,新的字段通过动态映射的方式被添加到类型映射. 利用Kibana提供的DevTools来执行命令,要创建一个索引 ...

  2. elasticsearch中的mapping映射配置与查询典型案例

    elasticsearch中的mapping映射配置与查询典型案例 elasticsearch中的mapping映射配置示例比如要搭建个中文新闻信息的搜索引擎,新闻有"标题".&q ...

  3. mapping 映射

    es的映射就相当于编程语言中给变量定义类型,定义后的变量使用起来更高效,未定义的变量相较于定义的性能肯定是不如的.所以需要掌握es映射. 未定义映射es会对提供的数据进行类型猜测,如果对自动判断的类型 ...

  4. elasticsearch的mapping映射

    Mapping简述 Elasticsearch是一个schema-less的系统,但并不代表no shema,而是会尽量根据JSON源数据的基础类型猜测你想要的字段类型映射.Elasticsearch ...

  5. HibernateTools实现pojo类 数据库schma mapping映射的相互转换

    核心 利用HibernateTools,从POJO类,Mapping映射文件,数据库表有其中的一项,就能生成其他两项. 概述 在使用Hibernate开发系统持久层时,按照一般开发流程 1.分析业务 ...

  6. 第三百六十四节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)的mapping映射管理

    第三百六十四节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)的mapping映射管理 1.映射(mapping)介绍 映射:创建索引的时候,可以预先定义字 ...

  7. Mybatis自动生成实体类、dao接口和mapping映射文件

    由于Mybatis是一种半自动的ORM框架,它的工作主要是配置mapping映射文件,为了减少手动书写映射文件,可以利用mybatis生成器,自动生成实体类.dao接口以及它的映射文件,然后直接拷贝到 ...

  8. HibernateTools实现pojo类 数据库schma mapping映射的相互转换 二

    接着上一篇博客:HibernateTools实现pojo类 数据库schma mapping映射的相互转换 思路二:由数据库表,生成Mapping映射文件和POJO类. 尽管能够实现,但个人觉着先设计 ...

  9. Elasticsearch学习系列之mapping映射

    什么是映射 为了能够把日期字段处理成日期,把数字字段处理成数字,把字符串字段处理成全文本(Full-text)或精确(Exact-value)的字符串值,Elasticsearch需要知道每个字段里面 ...

随机推荐

  1. ASP.NET MVC生成静态页面

    1.先付上封装好生成静态页的原代码: public class Common { #region 获取模板页的Html代码 /// <summary> /// 获取页面的Html代码 // ...

  2. 转载:html+js实现只允许输入两位小数的输入框

    JS代码: <script language="JavaScript" type="text/javascript"> function clear ...

  3. 交换机的工作模式:IVL和SVL

    IVL(independent vlan learning)每个vlan建一个表,看起来好像有很多表,其实这里所说的表是指逻辑上的表,实际上在交换机中还是只有一个表.如果将VID相同的记 录都提取出来 ...

  4. 判断图连通的三种方法——dfs,bfs,并查集

    Description 如果无向图G每对顶点v和w都有从v到w的路径,那么称无向图G是连通的.现在给定一张无向图,判断它是否是连通的. Input 第一行有2个整数n和m(0 < n,m < ...

  5. SpringBoot第十一篇:SpringBoot+MyBatis+Thymelaf实现CRUD

    作者:追梦1819 原文:https://www.cnblogs.com/yanfei1819/p/10936304.html 版权声明:本文为博主原创文章,转载请附上博文链接! 引言   总结前面几 ...

  6. luogu P1027 Car的旅行路线

    题目描述 又到暑假了,住在城市A的Car想和朋友一起去城市B旅游.她知道每个城市都有四个飞机场,分别位于一个矩形的四个顶点上,同一个城市中两个机场之间有一条笔直的高速铁路,第I个城市中高速铁路了的单位 ...

  7. cocos3.7.1 mac 创建项目

    cocos2d-x-3.7/tools/cocos2d-console/bin目录下,输入命令: ./cocos.py new HelloWorldDemo -p com.coco2dx.org -l ...

  8. ubuntu归档管理器消失了?

    Ubuntu - gnome 下的归档管理器软件名称:    file-roller如果没有看看是不是这个包让你删除掉了?用这个命令查: dpkg -l | grep file-roller 如果有这 ...

  9. 在网页里插入flash的代码

    <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://down ...

  10. Django 创建APP - 简单路由系统案例

    架构图: setting.py: INSTALLED_APPS = [ ... 'bootstrap', ] myapp -> myapp -> urls.py from django.c ...