索引的创建及删除

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

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

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

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

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

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

action.auto_create_index: false

{
"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
}

再次使用GET /sdb进行查看

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

DELETE /sdb 

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

{
"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

 

创建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. Es图形化软件使用之ElasticSearch-head、Kibana,Elasticsearch之-倒排索引操作、映射管理、文档增删改查

    今日内容概要 ElasticSearch之-ElasticSearch-head ElasticSearch之-安装Kibana Elasticsearch之-倒排索引 Elasticsearch之- ...

  7. 利用kibana插件对Elasticsearch查询

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

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

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

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

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

随机推荐

  1. JavaScript五中迭代方法小解

    ECMAScript 为数组定义了五个迭代方法.每个方法都接收两个参数:要在每一项上运行的函数和(可选的)运行该函数的作用域对象——影响this的值.传入这些方法中的函数会接收三个参数:数组项的值.该 ...

  2. AES字节数组加密解密流程

    AES类时微软MSDN中最常用的加密类,微软官网也有例子,参考链接:https://docs.microsoft.com/zh-cn/dotnet/api/system.security.crypto ...

  3. python 3 while嵌套

  4. Vue中vue.config的配置

    vue-cli 3.x 脚手架搭建完成后,项目目录中没有 vue.config.js 文件,需要手动在根目录中创建 vue.config.js. vue.config.js 是一个可选的配置文件,如果 ...

  5. java键对值SHA256加密接口请求

    import org.apache.http.HttpResponse; import org.apache.http.client.HttpClient; import org.apache.htt ...

  6. 对比ERP解读企业资产管理EAM在电力行业应用

    对比ERP解读企业资产管理EAM在电力行业应用 .关于EAMEAM (Enterprise Asset Management)企业资产管理,是面向固定资产占企业资产主要部分的资产密集型(Capital ...

  7. c语言之结构

    定义结构: struct point { int x; int y; }; 定义结构并声明变量: struct point { int x; int y; }pt1,pt2,pt3; 声明结构变量 s ...

  8. SpringValid优雅校验入参

    一.简介 后台业务入口类Controller,对于入参的合法性校验,可以简单粗暴的写出一堆的 if 判断,如下: @RestController @RequestMapping("user& ...

  9. CVE-2018-8045

    Joomla!Core SQL注入漏洞 CVE-2018-8045 受影响版本:joomla!3.5.0-3.8.5 漏洞描述: joomla!3.5.0-3.8.5版本对sql语句内的变量缺少类型转 ...

  10. Processing 高效控制管理图形方法(一)

    之前在CSDN上发表过: https://blog.csdn.net/fddxsyf123/article/details/62456299