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

时间:2022-12-17 20:33:48

索引的创建及删除

1. 通过索引一篇文档创建了一个新的索引 。这个索引采用的是默认的配置,新的字段通过动态映射的方式被添加到类型映射。

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

利用Kibana提供的DevTools来执行命令,要创建一个索引

put /sdb  (其中sdb为一个索引)

创建成功后会返回如下结果

{
"acknowledged" : true,
"shards_acknowledged" : true,
"index" : "sdb"
}

如果你想禁止自动创建索引,你 可以通过在 config/elasticsearch.yml 的每个节点下添加下面的配置:

action.auto_create_index: false

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

{
"sdb" : {
"aliases" : { },
"mappings" : { },
"settings" : {
"index" : {
"creation_date" : "1552621484634",
"number_of_shards" : "5", //每个索引的主分片数,默认值是 5 。这个配置在索引创建后不能修改。
"number_of_replicas" : "1", //每个主分片的副本数,默认值是 1 。对于活动的索引库,这个配置可以随时修改。
"uuid" : "PQ1TSt5hQOua_cUAegrYmw",
"version" : {
"created" : "6060299"
},
"provided_name" : "sdb"
}
}
} }

如果想修改副本数,可以用 update-index-settings API 动态修改副本数:

PUT /sdb/_settings
{
"number_of_replicas": 1
}

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

再次使用GET /sdb进行查看

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

上面我们说了如何创建一个索引,那么接下来我们来说说如何删除一个索引

DELETE /sdb 

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

删除成功后会有以下提示:

{
"acknowledged" : true
}

mapping映射

映射是创建索引的时候,可以预先定义字段的类型以及相关属性

Elasticsearch会根据JSON源数据的基础类型去猜测你想要的字段映射。将输入的数据变成可搜索的索引项。Mapping就是我们自己定义字段的数据类型,同时告诉Elasticsearch如何索引数据以及是否可以被搜索。

作用:会让索引建立的更加细致和完善

类型:静态映射和动态映射

静态映射

动态映射

什么是动态映射

文档中碰到一个以前没见过的字段时,动态映射可以自动决定该字段的类型,并对该字段添加映射

如何配置动态映射

  1. 通过dynamic属性进行控制
  2. true:默认值,动态添加字段; false:忽略新字段; strict:碰到陌生字段,抛出异常

适用范围

适用在根对象上或者object类型的任意字段上

内置类型

string类型: text,keyword(string类型在es5已经被弃用)

数字类型:long, integer, short, byte, double, float

日期类型: date

bool类型: boolean

binary类型: binary  

复杂类型: object ,nested

geo类型: point , geo-shape

专业类型: ip, competion

mapping 限制的type

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

 

创建mapping

PUT lagou
{
"mappings": {
"job":{
"properties": {
"title":{ //title 字段
"type":"text" //类型设置,text类型可分词
},
"salary_min":{
"type":"integer"
},
"city":{
"type": "keyword" //keyword关键词,不可分词
},
"company":{ //该字段下有多个键值对
"properties": {
"name":{
"type":"text"
},
"company_addr":{
"type":"text"
},
"employee_count":{
"type":"integer"
}
}
},
"publish_date":{
"type":"date",
"format": "yyyy-MM-dd"
},
"comments":{
"type": "integer"
}
}
}
}
}

PUT lagou/job/1
#当类型不符合的时候他会尝试去转换类型,比如字符串的数字和数字类型,但是如果无法转换就会报错。

{
"title":"python分布式web开发",
"salary_min":15000,
"city":"北京",
"company":{
"name":"百度",
"company_addr":"软件园",
"employee_count":50
},
"publish_date":"2017-4-16",
"comments":15
}

#获取映射

GET lagou/_mapping

GET lagou/_mapping/job  

GET _all/_mapping/job

Elasticsearch索引的操作,利用kibana 创建/删除一个es的索引及mapping映射的更多相关文章

  1. Elasticsearch索引的操作,利用kibana(如何创建/删除一个es的索引?)

    我们已经通过索引一篇文档创建了一个新的索引 .这个索引采用的是默认的配置,新的字段通过动态映射的方式被添加到类型映射.现在我们需要对这个建立索引的过程做更多的控制:我们想要确保这个索引有数量适中的主分 ...

  2. windows系统中 利用kibana创建elasticsearch索引等操作

    elasticsearch之借用kibana平台创建索引 1.安装好kibana平台 确保kibana以及elasticsearch正常运行 2.打开kibana平台在Dev Tools 3.创建一个 ...

  3. DROP INDEX - 删除一个索引

    SYNOPSIS DROP INDEX name [, ...] [ CASCADE | RESTRICT ] DESCRIPTION 描述 DROP INDEX 从数据库中删除一个现存的索引. 要执 ...

  4. Elasticsearch创建文档,利用Kibana进行创建文档

    首先先来了解一下什么是文档,es里边的文档相当于mysql数据库里边的一张表,如果你用过mongodb的话,那么肯定对es这种数据格式一定很了解了.接下来我们来看一下如何创建一个文档. PUT /sd ...

  5. 利用kibana学习 elasticsearch restful api (DSL)

    利用kibana学习 elasticsearch restful api (DSL) 1.了解elasticsearch基本概念Index: databaseType: tableDocument: ...

  6. 利用kibana插件对Elasticsearch查询

    利用kibana插件对Elasticsearch查询 Elasticsearch是功能非常强大的搜索引擎,使用它的目的就是为了快速的查询到需要的数据. 查询分类: 基本查询:使用Elasticsear ...

  7. Kibana创建索引成功,但一直不显示出来(Fielddata is disabled on text fields by default. Set fielddata=true........)

    现象 把EFK整个集群搭建完成后,通过Kibana操作界面创建索引(如图1),我创建了lile-zabbix*的索引,显示是创建成功了,但是只要我在重新刷新一次,已经创建的索引就“消失了”.后通过查看 ...

  8. 008-elasticsearch5.4.3【二】ES使用、ES客户端、索引操作【增加、删除】、文档操作【crud】

    一.ES使用,以及客户端 1.pom引用 <dependency> <groupId>org.elasticsearch.client</groupId> < ...

  9. 二叉排序树&lpar;BST&rpar;创建&comma;删除&comma;查找操作

    binary search tree,中文翻译为二叉搜索树.二叉查找树或者二叉排序树.简称为BST 一:二叉搜索树的定义 他的定义与树的定义是类似的,也是一个递归的定义: 1.要么是一棵空树 2.如果 ...

随机推荐

  1. 如何在高并发环境下设计出无锁的数据库操作(Java版本)

    一个在线2k的游戏,每秒钟并发都吓死人.传统的hibernate直接插库基本上是不可行的.我就一步步推导出一个无锁的数据库操作. 1. 并发中如何无锁. 一个很简单的思路,把并发转化成为单线程.Jav ...

  2. css预处理器sass使用教程&lpar;多图预警&rpar;

    css预处理器赋予了css动态语言的特性,如变量.函数.运算.继承.嵌套等,有助于更好地组织管理样式文件,以及更高效地开发项目.css预处理器可以更方便的维护和管理css代码,让整个网页变得更加灵活可 ...

  3. Android VideoView播放视频

    今天介绍一下Android的视频播放控件VideoView,下面介绍一下VideoView的使用步骤: 1.在界面布局中定义VideoView组件,或者在程序中创建VideoView组件. 2.调用V ...

  4. 头文件中的&num;ifndef&sol;&num;define&sol;&num;endif 的作用

    在一个大的软件工程里面,可能会有多个文件同时包含一个头文件,当这些文件编译链接成一个可执行文件时,就会出现大量重定义的错误.在头文件中实用#ifndef #define #endif能避免头文件的重定 ...

  5. 《你不常用的c&num;之三》&colon;Action 之怪状

    转载自csdn:http://blog.csdn.net/robingaoxb/article/details/6199891 例1:   public static void Main() { Li ...

  6. SRM 601 DIV1

    A 枚举x , 然后对于确定的x , 最后总的apple数对应了唯一的orange数,因此问题转化为求apple的取值范围; apple的取值范围: max为每个bag取最多的apple , min为 ...

  7. at org&period;apache&period;jsp&period;index&lowbar;jsp&period;&lowbar;jspInit&lpar;index&lowbar;jsp&period;java&colon;23&rpar;异常解决

    部署项目,启动tomcat一切正常.输入项目地址后 tomcat报例如以下错误: java.lang.NullPointerException at org.apache.jsp.index_jsp. ...

  8. Why Python&quest;

    Python is object-oriented Structure supports such concepts as polymorphism , operation overloading , ...

  9. Layui 获取 radio的值

    var OutInvoiceType = $('#OutInvoiceType input[checked]').val();   就可以获取到了.

  10. &lbrack;Web 前端&rsqb; 如何在React中做Ajax 请求?

    cp from : https://segmentfault.com/a/1190000007564792 如何在React中做Ajax 请求? 首先:React本身没有独有的获取数据的方式.实际上, ...