ES mapping设置

ES设置mapping的方法

Mapping就是对索引库中索引的字段名及其数据类型进行定义,类似于关系数据库中表建立时要定义字段名及其数据类型,ES有默认的mapping,如果要自定义其分词器、是否分词、是否存储等可以对其进行mapping设置。

1:配置文件设置方法

在ES安装文件的config/mappings的目录下新建index_name.json(index_name是要建立的索引名称)

配置文件示例如下


"mappings":{ 
"properties":{ 
"name":{ 
"type":"string", 
"store":"yes" 
}, 
"ename":{ 
"type":"string", 
"index":"not_analyzed" 
}, 
"age":{ 
"type":"integer" 
}, 
"marital":{ 
"type":"boolean" 
}, 
"address":{ 
"properties"
: {
"country" : {"type" : "string"},
"city" : {"type" :
"string"}

}, 
"hobby":{ 
"type":"string",
"index_name"
:
"tag" 
}, 
"createDate":{ 
"type":"date" 



}

该配置文件在建立索引的时候会生成mapping映射关系,可以访问curl -XGET
‘http://localhost:9200/_mapping?pretty‘查看或者在head中使用GET方式访问http://localhost:9200/_mapping进行验证

2:使用java api调用设置方法

public static void putMapping(Client client) throws
IOException{
client.admin().indices().prepareCreate("test").execute().actionGet();
XContentBuilder
mapping =
jsonBuilder() 
.startObject() 
.startObject("test") 
.startObject("properties") 
.startObject("name").field("type",
"string").field("store",
"yes").endObject() 
.startObject("ename").field("type",
"string").field("index",
"not_analyzed").endObject() 
.startObject("age").field("type",
"integer").endObject() 
.startObject("marital").field("type",
"boolean").endObject() 
.startObject("address")
.startObject("properties")
.startObject("country").field("type","string").endObject()
.startObject("city").field("type","string").endObject()
.endObject()
.endObject() 
.startObject("hobby").field("type",
"string").field("index_name","tag").endObject() 
.startObject("createDate").field("type",
"date").endObject() 
.endObject() 
.endObject() 
.endObject();
PutMappingRequest
mappingRequest =
Requests.putMappingRequest("test").type("t_test").source(mapping); 
client.admin().indices().putMapping(mappingRequest).actionGet();
}

在访问curl -XGET
‘http://localhost:9200/_mapping?pretty‘查看或者在head中使用GET方式访问http://localhost:9200/_mapping进行验证的时候如果没有进行数据的初始化,properties节点下是空数据,直到有数据初始化后才显示出各个字段的属性

ES mapping设置,布布扣,bubuko.com

时间: 2024-10-05 05:32:17

ES mapping设置的相关文章

ES里设置索引中倒排列表仅仅存文档ID

index_options The index_options parameter controls what information is added to the inverted index, for search and highlighting purposes. It accepts the following settings: docs Only the doc number is indexed. Can answer the question Does this term e

elasticsearch 的post put 方式的对比 setting mapping设置

1.POST和PUT都可以用于创建 2.PUT是幂等方法,POST不是.所以PUT用户更新,POST用于新增比较合适. 参考:https://www.cnblogs.com/jing1617/p/8060421.html https://www.bbsmax.com/A/xl56bqb15r/    curl -XGET http://192.168.79.131:9200/shb01/_settings?pretty  curl -XPUT http://192.168.79.131:9200

Spark2.2+ES6.4.2(三十二):ES API之ndex的create(创建index时设置setting,并创建index后根据avro模板动态设置index的mapping)/update/delete/open/close

要想通过ES API对es的操作,必须获取到TransportClient对象,让后根据TransportClient获取到IndicesAdminClient对象后,方可以根据IndicesAdminClient对象提供的方法对ES的index进行操作:create index,update index(update index settings,update index mapping),delete index,open index,close index. 准备工作(创建Transpor

ES通过API调整设置

1.查询es的设置信息 2.查询单个索引的设置 3.设置复制集为0

ES(5): ES Cluster modules settings

ES cluster 提供了针对不同模块的参数设置,可通过修改集群上各个节点的elasticsearch.yml文件,也可在集群运行时通过api接口来更新(https://www.elastic.co/guide/en/elasticsearch/reference/current/cluster-update-settings.html) 目录: 基本概念回顾 详细参数说明 基本概念回顾 集群(cluster):代表一个集群,集群中有多个节点(node),其中有一个为主节点,这个主节点是可以通

#研发解决方案介绍#基于ES的搜索+筛选+排序解决方案

郑昀 基于胡耀华和王超的设计文档 最后更新于2014/12/3 关键词:ElasticSearch.Lucene.solr.搜索.facet.高可用.可伸缩.mongodb.SearchHub.商品中心 本文档适用人员:研发和运维 提纲: 曾经的基于MongoDB的筛选+排序解决方案 MongoDB方案的缺陷 看中了搜索引擎的facet特性 看中了ES的简洁 看中了ES的天生分布式设计 窝窝的ES方案 ES的几次事故和教训 ES自身存在的问题 首先要感谢王超和胡耀华两位研发经理以严谨治学的研究精

elasticsearch mapping

es的mapping设置很关键,mapping设置不到位可能导致索引重建.如何更好的设置mapping? 请看下面各个类型介绍^_^ core types 每一个JSON字段可以被映射到一个特定的核心类型.JSON本身已经为我们提供了一些输入,支持string, integer/long, float/double, boolean, and null. 下面的示例tweet的JSON文档将被用来解释核心类型: {    "tweet" {        "user"

从Hive导入数据到ES

大数据方兴未艾,Hive在业界,是大数据的标配了.因此hive数据添加到ES的应用场景还是比较常见的.学习ES官方的es-hadoop, 有从hive导数据到ES. 实验可行.hive的版本: hive-1.1.0-cdh5.9.0 具体的步骤如下:step1 将elasticsearch-hadoop-hive-version.jar添加到hive wget https://artifacts.elastic.co/downloads/elasticsearch-hadoop/elastics

elasticsearch篇之mapping

2018年05月17日 18:01:37 lyzkks 阅读数:444更多 个人分类: Elastic stack 版权声明:文章内容来自于网络和博主自身学习体会,转载请注明出处,欢迎留言大家一起讨论学习~~ https://blog.csdn.net/sinat_35930259/article/details/80354732 什么是mapping mapping是类似于数据库中的表结构定义,主要作用如下: 定义index下的字段名 定义字段类型,比如数值型.浮点型.布尔型等 定义倒排索引相