ES基本语法
7.2.0版本
1 创建库
http://{ip}:{port}/{库名称} put
2 查询库
http://{ip}:{port}/_cat/indices?v get
health status index uuid pri rep docs.count docs.deleted store.size pri.store.size
yellow open test1 uB38fV7yR3ivRcvVrKbfbw 1 1 0 0 230b 230b
yellow open test 9tk0aHTYSMWkfGXnNdqjkA 1 1 0 0 283b 283b
yellow open secisland pSDO1Fp8Q62LHQvKEXVWlw 1 1 1 0 3.2kb 3.2kb
health:健康度
status:状态
index:索引库
uuid:唯一id
pri:主分片
docs.count:文档数量 docs.deleted:删除文档
3 插入数据
http://{ip}:{port}/test/testlog/1/ put
{
"computer":"secisland",
"message":"success"
}
4 修改文档
http://{ip}:{port}/test/testlog/1/_update/ post
{
"doc": {
"computer": "secisland",
"message": "this is success"
}
}
5 查询文档
http://{ip}:{port}/test/testlog/1/ get
6 删除文档
http://{ip}:{port}/test/testlog/1/ DELETE
7 删除库
http://{ip}:{port}/test/ DELETE
8 创建分片和副分片
http://{ip}:{port}/test_190720/ put
{"settings": {"index": {"number_of_shards": 4,"number_of_replicas": 3}}
或者
{"settings": {"number_of_shards": 4,"number_of_replicas": 3}
9 修改副本数量
http://{ip}:{port}/test_190720/ _settings/ put
{
"number_of_replicas": 1
}
10 删除索引
http://{ip}:{port}//test_190720/ delete
11 创建字段
http://{ip}:{port}/test_190720/ put
{
"mappings": {
"properties": {
"logs": {
"properties": {
"message": {
"type": "text"
},
"date": {
"type": "date"
}
}
}
}
}
}
注意:Elasticsearch从5.X就引入了text和keyword,其中keyword适用于不分词字段,搜索时只能完全匹配,这时string还保留着。
到了6.X就彻底移除string了。
另外,"index"的值只能是boolean变量了。
12 获取索引
http://{ip}:{port}/test_190720/ get
查询某个集合
http://192.168.1.10:9200/test_190720/_settings/ get
13 打开或关闭某个索引
打开 http://192.168.1.10:9200/test_190720/_open/ post
关闭 http://192.168.1.10:9200/test_190720/_close/ post
14 映射字段数据类型
字符类型:text
数字类型:long,integer,short,byte,double,float
日期类型:date
布尔型:boolean
二进制:binary
复杂数据类型包括:
数组类型:不需要专门的类型来定义数组
对象数据类型:object,单独的json对象
嵌套数据类型:nested,关于json对象的数组
地理数据类型:
地理点数据类型:geo_point,经纬点
地理形状数据类型:geo_shape,多边形的复杂地理形状
专门数据类型:
ipv4数据类型:ip协议为ipv4的地址
完成数据类型:completion,提供自动补全的建议
单词计树数据类型:token_count,统计字符串中的单词数量
不被分词:keyword
15 字符串数据类型
http://localhost:9200/test_190720/ put
{
"mappings": {
"properties": {
"logs": {
"properties": {
"message": {
"type": "text"
},
"status": {
"type": "keyword"
}
}
}
}
}
}
| 参数 | 说明 |
| analyzer | 分词器可以用于可讽刺的字符串类型字段,默认为默认的索引分词器或者标准分词器 |
| boost | 字段级索引加权。接受浮点型数字,默认值是1.0 |
| doc_values | 定义字段是否应该以列跨度的方式存储在磁盘上,以便用于排序、聚合或者脚本。接受true或false参数,默认值是true。可分词字段不支持这个参数 |
| fielddate | 决定字段是否可以使用内存字段值进行排序,聚合或者在脚本中使用。接受disable或者paged_bytes(默认)参数。没有分析过的字段会优先使用文档值 |
| ignore_above | 不要索引或执行任何长于这个值的字符串。默认为0(禁用) |
| include_in_all | 决定字段是否应该包含在_all字段中。接受true或者false参数。如果索引被设置为No或者父对象设置Include_in_all为false,参数默认值为False,其他情况下为True |
| index | 决定字段是否被用户搜索。接受参数analyzed(默认,视为全文字段),not_analyzed(作为关键字段)以及no |
| index_options | 定义存储在索引中,用于搜索和突出用途信息 |
| norms | 计算查询得分的时候是否应该考虑字段长度。默认依赖于索引设置:analyzed字段默认为{"enable":true,"loading":"lazy"}。not_analyzed字段默认为{"enable":false} |
| null_value | 接受一个字符串值替换所有null值。默认为Null,意味着字段作为缺失字段。如果字段是可分词(analyzed)的,null_value也会被分词 |
| posiition_increment_gap | 定义字符串数组中应该插入的虚拟索引词的数量。默认值为100,以一个较合理的值来阻止短语查询在跨字段匹配索引分词的时候溢出 |
| store | 决定字段值是否应该被存储以及以_source字段分别获取。接受参数true或false(默认) |
| search_analyzer | 指定搜索时用在可分词字段上的分词器 |
| search_quote_analyzer | 指定搜索短语时使用的分词器 |
| similarity | 指定使用的相似度评分算法,默认为TF/IDF |
| term_vector | 定义一个可分词字段是否应该存储索引词向量。默认为no |
16 数字类型
http://localhost:9200/test_190720/ get
{
"mappings": {
"properties": {
"logs": {
"properties": {
"message": {
"type": "text"
},
"status": {
"type": "keyword"
},
"id": {
"type": "integer"
}
}
}
}
}
}
| 参数 | 说明 |
| coerce | 试着将字符串型数据转换为整数型数字数据 |
| boost | 字段级索引加权,接受浮点型数字参数,默认为1.0 |
| doc_values | 定义字段是否应该以列跨度的方式存储在磁盘上,以便用于排序、聚合或者脚本。接受true(默认)或false参数 |
| ignore_malformed | 如果是true,畸形的数字会被忽略。如果是false(默认),畸形数字会抛出异常并丢弃整个文档 |
| include_in_all | 决定字段是否应该包含在_all字段中。接受true或false参数。如果索引被设置为No或者父对象字段设置include_in_all为false,参数默认值为false;其他情况下,默认值为true |
| index | 决定字段是否可以被用户搜索。接受参数Not_analyzed(默认)以及no |
| null_value | 接受与字段同类型的数字型值来代替null值。默认是null。意味着字段作为缺失字段 |
| precision_step | 控制索引的额外索引词的数量来使范围查询更快速。默认值取决于数字类型 |
| store | 决定字段值是否应该存储以及从_source字段分别获取。接受参数true或false(默认) |
ES基本语法的更多相关文章
- 009 webpack将ES高级语法进行装换
一:ES高级转换 1.main.js中的js不能解析 // js的主要入口 import $ from 'jquery' import './css/index.css' import './css/ ...
- Node.js 全栈开发(二)——ES 201x 新语法的使用之基础篇
在讲 ES 2015 新语法之前,先来说一下为什么叫 ES.JavaScript 是这门语言的名称,它有一个为它制定标准化的组织 European Computer Manufacturers Ass ...
- ES 07 - Elasticsearch查询文档的六种方法
目录 1 Query String Search(查询串检索) 2 Query DSL(ES特定语法检索) 3 Query Filter(过滤检索) 4 Full Text Search(全文检索) ...
- ES5 常用 语法(object Arrary 函数绑定this指向)
ES object 扩展 ES object 扩展1. <!DOCTYPE html> <html> <head> <link rel="short ...
- Kibana 搜索语法
Kibana 搜索语法 Kibana 支持三种搜索语法, 分别是 Lucene query 语法, 基于 json 的 ES query语法, 以及 Kuery 语法. 前两种语法可以直接使用, Ku ...
- es分页搜索
1.es分页语法GET /_search?from=起始数&size=页面显示条数例如:GET /test_index/test_type/_search?from=0&size=3 ...
- ES 可视化工具
1.ElasticSearch Head 用途:展示ES(集群)数据信息 视图:https://mobz.github.io/elasticsearch-head/ 下载:https://github ...
- ES使用中的总结整理
最近项目中使用了ES搜索,开始时自己搭建了ES环境做测试,后面申请了公司的云平台应用, 对接ES的过程中颇具波折,遇到了很多问题,在这里统一整理记录下: 1,ES的9200 及 9300端口说明 92 ...
- Babel:下一代Javascript语法编译器
定义 Babel是一个Javascript的编译器,通过它你可以将一些新版本的ECMAScript语法转换成低版本的语法.以便能够在低版本的浏览器或者其它环境平稳运行. 截至目前笔者写这篇文章的时候, ...
随机推荐
- 云上的Growth hacking之路,打造产品的增长引擎
增长关乎产品的存亡 增长!增长!增长!业务增长是每一个创业者每天面临的最大问题.无论你的产品是APP,还是web,或者是小程序,只能不断的维持用户的增长,才能向资本市场讲出一个好故事,融资活下去.活到 ...
- jQuery 手风琴效果
//点击标题弹出对应的div 再次点击则隐藏 //jQuery只能获取行内的样式 没法获取头部的样式 $(".parentWrap .menuGroup span.groupTitle&qu ...
- python if elif else 区别
if data_ori=='医疗': # 医疗 df = pd.read_excel(path_apply + 'apply/YS_ZY_HZSQ_样例.xls', encoding='gbk', e ...
- ansible基础☞安装方法
一 需要安装些什么 Ansible默认通过 SSH 协议管理机器. 安装Ansible之后,不需要启动或运行一个后台进程,或是添加一个数据库.只要在一台电脑(可以是一台笔记本)上安装好,就可以通过这台 ...
- ntelliJ IDEA2017 + tomcat 即改即生效 实现热部署
1.点击idea中tomcat设置 2.点击deployment查看Deploy at the server startup 中tomcat每次所运行的包是 xxxx:war 还是其他,如果是xxxx ...
- Laravel中利用队列发送邮件的方法示例
https://www.jb51.net/article/121647.htm 本文主要给大家介绍了关于Laravel中队列发送邮件的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的 ...
- SDUT-2122_数据结构实验之链表七:单链表中重复元素的删除
数据结构实验之链表七:单链表中重复元素的删除 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 按照数据输入的相反顺序(逆 ...
- 系统学习前端之FormData详解
FormData 1. 概述 FormData类型其实是在XMLHttpRequest 2级定义的,它是为序列化表以及创建与表单格式相同的数据(当然是用于XHR传输)提供便利. 2. 构造函数 创建一 ...
- ubuntu14.04 dnsmasq搭建本地名字服务器
1 修改dnsmasq配置文件/etc/dnsmasq.conf 在/etc/dnsmasq.conf文件底部增加 #++++++++++++++++++++++++++++++++++++++++ ...
- H3C 数据封装与解封装