ELK学习总结(2-6)elk的mapping
1、什么是映射
映射:创建索引的时候,预先定义字段的类型及相关属性
作用:这样会让索引建立的更加细致和完善,如:是否存储、使用何种分析器、重要级别
分类:静态映射和动态映射
2、字段类型:string、integer、long、float、double、boolean、date、binary
3、除了可以定义字段的类型意外,还可以定义字段的属性
store:yes存储,no不存储,默认是no
index:是否索引这个字段,anlyzed、not_anlyzed、或no,只有string类型可以设置索引
null_value:如果字段是空,可以设置一个默认值
boost:设置字段的权值,默认是1.0,如:书名(2.0),作者(1.0),检索时书名结果就靠前
index_analyzer:设置索引时用的分析器
search_analyzer:设置搜索时用的分析器
analyzer:分析器用于分词,默认standard(支持大多数欧洲语言),还可以设置whitespace(基于空格分词)、simple(基于非字母,并转换成小写)、english(英文分析器),
include_in_all:保证每个字段被搜索到,include_in_all=false,不然被搜索到
index_name:定义字段的名称,默认是字段本身的名字
norms:analyzed字段例,值有意义(true、not_analyzed=false)
4、动态映射:
文档中碰到以前没有见过的的字段时,动态映射决定该字段的类型,并自动添加映射
通过dynamic属性控制(true:默认值,动态添加字段;false:忽略新字段;strict:碰到新字段,抛出异常)
适用范围:跟对象或object类型的任意字段上。
5、示例
# 静态映射
POST /library
{
"settings":{
"number_of_shards":5,
"number_of_relicas":1
},
"mappings" :{
“books”:{
“properties”:{
“title”:{"type":"string"},
“name”:{"type":"string","index":"not_analyzed"},
“publish_date”:{"type":"date","index":"not_analyzed"},
“price”:{"type":"double"},
“number”:{"type":"integer"}
}
}
}
}
# 动态映射
PUT /library
{
"mappings" :{
“books”:{
"dynamic“:”strict“,
“properties”:{
“title”:{"type":"string"},
“name”:{"type":"string","index":"not_analyzed"},
“publish_date”:{"type":"date","index":"not_analyzed"},
“price”:{"type":"double"},
“number”:{
"type":"integer",
"dynamic":"true"
}
}
}
}
}
6、获取映射信息
GET /library/_mapping
GET /library/_mapping/books
GET /all/_mapping
GET /all/_mapping/books,bank_account
7、更新映射信息:
重新建立索引,重新定义映射,导入原有映射数据
具体步骤如下:
a、现有索引,建立别名
PUT /现有索引/_alias/别名A
b、建立新索引,定义好映射,别名指向新索引
c、删除老的索引,取消之前索引的指向
POST /_alias
{
"actions":{
{ "remove":{"index":"现有索引名",“alias”:“别名A”},
{ "add":{"index":"新建索引名",“alias”:“别名A”}
}
}
8、删除映射
DELETE /library/books
DELETE /library/books/_mapping
DELETE /library/_mapping/books,banks
ELK学习总结(2-6)elk的mapping的更多相关文章
- ELK学习实验013:ELK的一个完整的配置操作
前面做了关于ELK组件的各个实验,但是并没有真正的把各个组件结合起来做一个实验,现在使用一个脚本简单的生成日志,模拟生产不断产生日志的效果 一 流程说明 使用脚本产生日志,模拟用户的操作 日志的格式 ...
- ELK学习实验020:ELK使用kafka缓存
首先安装一个kafka集群,但是zookeeper使用单节点,可以让kafka快速跑起来,后续再研究kafka和zokkeeper的集群 1 安装Kafka集群 下面是三个节点都要做 [root@no ...
- ELK学习实验019:ELK使用redis缓存
1 安装一个redis服务 [root@node4 ~]# yum -y install redis 直接启动 [root@node4 ~]# systemctl restart redis [roo ...
- ELK学习链接
1. ELK原理与介绍 2. ELK部署记录
- ELK学习总结(4-1)elasticsearch更改mapping(不停服务重建索引)
elasticsearch更改mapping(不停服务重建索引)原文 http://donlianli.iteye.com/blog/1924721Elasticsearch的mapping一旦创建, ...
- ELK学习笔记(一)安装Elasticsearch、Kibana、Logstash和X-Pack
最近在学习ELK的时候踩了不少的坑,特此写个笔记记录下学习过程. 日志主要包括系统日志.应用程序日志和安全日志.系统运维和开发人员可以通过日志了解服务器软硬件信息.检查配置过程中的错误及错误发生的原因 ...
- ELK学习总结(1-1)ELK是什么
1.elk 是什么 ? Elastic Stack(旧称ELK Stack),是一种能够从任意数据源抽取数据,并实时对数据进行搜索.分析和可视化展现的数据分析框架.(hadoop同一个开发人员) ja ...
- ELK学习笔记之基于kakfa (confluent)搭建ELK
0x00 概述 测试搭建一个使用kafka作为消息队列的ELK环境,数据采集转换实现结构如下: F5 HSL–>logstash(流处理)–> kafka –>elasticsear ...
- ELK学习笔记之F5利用EELK进行应用数据挖掘系列(2)-DNS
0x00 概述 很多客户使用GTM/DNS为企业业务提供动态智能解析,解决应用就近性访问.优选问题.对于已经实施多数据中心双活的客户,则会使用GSLB提供双活流量调度.DNS作为企业业务访问的指路者, ...
随机推荐
- pods 报错There may only be up to 1 unique SWIFT_VERSION per target
zhangpengdeMacBook-Pro:Jump zhangpeng$ pod install Analyzing dependencies [!] There may only be up t ...
- SignalR Self Host+MVC等多端消息推送服务(1)
一.概述 由于项目需要,最近公司项目里有个模块功能,需要使用到即时获得审批通知:原本的设计方案是使用ajax对服务器进行定时轮询查询,刚刚开始数据量和使用量不大的时候还好,后来使用量的增加和系统中各种 ...
- Python 3.6.4 / win10 使用pip安装keras时遇到依赖的PyYAML安装出错
PS C:\Users\myjac\Desktop\simple-chinese-ocr> pip install keras Collecting keras Downloading http ...
- PPT分享 | 怎么在区块链上保护隐私?
艾伯特AI人工智能(公众号:aibbtcom)按: (编者按:在12月3日的亚太区以太坊社区培训和交流Meetup深圳站上,Vitalik作了<怎么在区块链上保护隐私>的演讲,谈到了区块链 ...
- nodejs mysql 数据查询例子
1.安装nodejs 2.安装mysql npm包 地址:https://github.com/felixge/node-mysql npm install mysql 3.相应API查看及调用: ...
- spring boot jsp页面
相关内容访问: http://www.cnblogs.com/zj0208/p/5985698.html
- 大数据 --> 淘宝异构数据源数据交换工具 DataX
淘宝异构数据源数据交换工具 DataX DataX是什么? DataX是一个在异构的数据库/文件系统之间高速交换数据的工具,实现了在任意的数据处理系统(RDBMS/Hdfs/Local filesys ...
- 设计模式 --> (8)组合模式
组合模式 组合模式,是为了解决整体和部分的一致对待的问题而产生的,要求这个整体与部分有一致的操作或行为.部分和整体都继承与一个公共的抽象类,这样,外部使用它们时是一致的,不用管是整体还是部分,使用一个 ...
- java排序算法(五):快速排序
java排序算法(五):快速排序 快速排序是一个速度非常快的交换排序算法,它的基本思路很简单,从待排的数据序列中任取一个数据(如第一个数据)作为分界值,所有比它小的元素放到左边.所有比它大的元素放到右 ...
- 玩转接口测试工具fiddler 教程系列1
我们在做web测试的时候,很多时候需要查看接口发送的数据返回的数据是否正常,这样可以排除是客户端的问题还是服务器的问题,举个例子来说,如果我们发现页面上面数据少了, 通过fiddler查看数据返回就少 ...