使用 man ascii 来查看 ASCII 表。

Elasticsearch mapping 配置个人解读

夏李俊 发表了文章 • 0 个评论 • 5977 次浏览 • 2018-02-09 15:47 • 来自相关话题


配置详解
文件中"mapping":{}中的内容,即为创建索引的mappingsource 如:
"mappings": {
"_default_" : { //@1
"_all" : {"enabled" : true}, //@2
"properties" : { //@3
"tableType" : {"type" : "string", "index" : "no", "include_in_all" : false, "store": true}, //@4
"caption" : {"type" : "string", "index" : "no", "include_in_all" : false, "store": true},
"code" : {"type" : "string", "index" : "no", "include_in_all" : false, "store": true},
"description" : {"type" : "string", "index" : "no", "include_in_all" : false, "store": true},
"perm" : {"type" : "string", "index" : "not_analyzed", "include_in_all" : false}
}
},
"ec02_goodsinfo" : { //@5
"_all" : {"enabled" : true}, //@6
"properties" : { //@7
"tableType" : {"type" : "string", "index" : "no", "include_in_all" : false, "store": true},
"caption" : {"type" : "string", "index" : "no", "include_in_all" : false, "store": true},
"code" : {"type" : "string", "index" : "no", "include_in_all" : false, "store": true},
"description" : {"type" : "string", "index" : "no", "include_in_all" : false, "store": true},
"perm" : {"type" : "string", "index" : "not_analyzed", "include_in_all" : false},
"bill":{ //@8
properties" : {
"CreateYear" : {"type" : "string", "index" : "not_analyzed", "include_in_all" : true} //@9
}
}
}
}
}

  • @1 _default_所有单据默认的创建索引的配置
  • @2 _all{} 每个单据下所有的字段配置,"enabled" : true 所有字段创建索引,false 所有字段禁止创建索引,[*注意]除非properties指定的字段,默认字段类型将自动匹配
  • @3 properties {},每个单据下字段或者properties的指定配置
  • @4 properties {}中指定了属性(properties):"tableType"的检索配置,type:string > 类型字符串,include_in_all:false > 改字段或者属性不包含在单据的所有字段中,"store": true > 储存在数据库中
  • @5 ec02_goodsinfo 表示对单据 "ec02_goodsinfo" 的特定检索配置
  • @6 _all{} 只对"ec02_goodsinfo"单据下所有的字段配置
  • @7 properties {},只对"ec02_goodsinfo"单据下字段或者properties的指定配置
  • [*注意]@8,@9 bill在单据中额字段都会包括一层bill,所以如果要对单据中某个字段指定需要套一层bill{}

-----------------------------------------------------------------------------------------------------------------------------------------
属性解说
版本5.X以前
  • index 可选值为analyzed(默认)和not_analyzed,如果是字段是字符串类型的,则可以是not_analyzed
  • store 可选值为yes或no,指定该字段的原始值是否被写入索引中,默认为no,即结果中不能返回该字段。
  • boost默认为1,定义了文档中该字段的重要性,越高越重要
  • null_value 如果一个字段为null值(空数组或者数组都是null值)的话不会被索引及搜索到,null_value参数可以显示替代null values为指定值,这样使得字段可以被搜索到。
  • include_in_all 指定该字段是否应该包括在_all字段里头,默认情况下都会包含。
  • type 可以指定String,long,int,doulbe,floot,boolean,等

版本5.X以后
  • 原本type string,其index 可选值为analyzed(默认)和not_analyzed,现在直接拆违type text( index analyzed),type keyword(index not_analyzed)
  • store 可选值为enable或false,指定该字段的原始值是否被写入索引中,默认为enable,即结果中不能返回该字段。
  • index 表示是否用于检索默认enable,可选false

-------------------------------------------------------------------------------------------------------------------------------
字段的数据类型
  • 简单类型string(指定分词器)
  • date(默认使用UTC保持,也可以使用format指定格式)
  • 数值类型(byte,short,integer,long,float,double)
  • boolean
  • binary(存储在索引中的二进制数据的base64表示,比如图像,只存储不索引)
  • ip(以数字形式简化IPV4地址的使用,可以被索引、排序并使用IP值做范围查询)注意string是5.x以前的,5.x之后被分裂为text,keyword


有层级结构的类型,比如object 或者 nested.
特殊类型
  • geo_point
  • geo_shape
  • completion

 

Elasticsearch安装X-pack,使用Java API创建client怎么设置ES的用户名密码?

zhu315555147 回复了问题 • 4 人关注 • 3 个回复 • 9017 次浏览 • 2018-03-24 12:23 • 来自相关话题

Java High Level REST Client 的聚合写法

回复

cookiedoug 回复了问题 • 1 人关注 • 1 个回复 • 6538 次浏览 • 2018-02-09 10:10 • 来自相关话题

Elasticsearch、Logstash安装x-pack后,logstash发送数据给ES,ES问什么接收不到?

回复

xinian 回复了问题 • 1 人关注 • 2 个回复 • 6072 次浏览 • 2018-02-09 11:15 • 来自相关话题

elasticsearch可以先把搜索到的内容聚合,然后再在集合里写搜索吗,然后再把搜索到的结果再进行一次聚合

luohuanfeng 回复了问题 • 2 人关注 • 1 个回复 • 2364 次浏览 • 2018-02-08 14:50 • 来自相关话题

大家都用es-hadoop做什么场景

fox 回复了问题 • 4 人关注 • 2 个回复 • 2600 次浏览 • 2018-04-25 13:51 • 来自相关话题

聚合搜索 size:0 无效 elasticsearch 6.1.2

laoyang360 回复了问题 • 3 人关注 • 2 个回复 • 2791 次浏览 • 2018-02-08 19:01 • 来自相关话题

多条日志合并

yangjiajun111 回复了问题 • 2 人关注 • 2 个回复 • 2594 次浏览 • 2018-02-08 11:03 • 来自相关话题

Transport限制查询最大数量

anthony2018 回复了问题 • 3 人关注 • 1 个回复 • 3516 次浏览 • 2018-02-08 17:56 • 来自相关话题

node.master 和 node.data 配置导致search问题

xinfanwang 回复了问题 • 4 人关注 • 2 个回复 • 3989 次浏览 • 2018-02-08 15:48 • 来自相关话题

es-hadoop routing异常

medcl 回复了问题 • 3 人关注 • 1 个回复 • 3455 次浏览 • 2018-02-08 21:46 • 来自相关话题

求教,为何我的elastic只能由本机访问?

luohuanfeng 回复了问题 • 2 人关注 • 1 个回复 • 5141 次浏览 • 2018-02-07 15:33 • 来自相关话题

win7安装es安装ik插件之后报错

jhonbo 回复了问题 • 2 人关注 • 1 个回复 • 4828 次浏览 • 2018-02-07 14:13 • 来自相关话题

logstash-input-jdbc的作用只能把mysql数据同步到es吗,可以通过es添加数据进mysql吗?怎么做?

xinian 回复了问题 • 3 人关注 • 2 个回复 • 2807 次浏览 • 2018-02-09 09:41 • 来自相关话题

Elastic-Search Java-Rest-client 实现SQL的groupby后的orderby

回复

fzhsh 回复了问题 • 1 人关注 • 1 个回复 • 4891 次浏览 • 2018-02-07 10:51 • 来自相关话题