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语法转换成低版本的语法.以便能够在低版本的浏览器或者其它环境平稳运行. 截至目前笔者写这篇文章的时候, ...
随机推荐
- Linus 本尊也来了!为什么 KubeCon 越来越火了?
2015年11月,第一届 KubeCon 在美国旧金山开始的时候,还只是个200人的小会议,2019年的7月,KubeCon 第二次在中国举办,就有 3500 多位云原生和开源领域工程师齐聚一堂. 连 ...
- MUI - 解决弹出输入法时页面高度变小导致底部上浮的问题
解决弹出输入法时页面高度变小导致底部上浮的问题 在有输入框的页面,当输入法弹出的时候,底部元素上浮遮盖了输入框,影响页面美观及功能.查找了一下,页面变窄是不可避免的.即使是设置绝对固定也是不可以的.因 ...
- Java练习 SDUT-1211_英文金曲大赛
英文金曲大赛 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 我们在"渊子数"的题目中已经了解了渊子 ...
- @atcoder - AGC038E@ Gachapon
目录 @description@ @solution - 1@ @accepted code - 1@ @solution - 2@ @accepted code - 2@ @details@ @de ...
- ArcGIS中的连接和关联表
大多数数据库的设计指导方针都倾向于将数据库组织成多个表 - 每个表关注一个特定的主题 - 而非一个包含所有必要字段的大型表.设置多个表可以避免数据库中的信息发生重复,因为只会将信息在一个表中存储一次. ...
- deepin 15.11 升级docker-ce 18.01到19.03.1,升级docker compose 1.23到1.24.1
1.升级docker compose ,docker官方安装方法 $ sudo curl -L "https://github.com/docker/compose/releases/dow ...
- Save and Load from XML
using UnityEngine; using System.Collections; using System.Xml; using System.Xml.Serialization; using ...
- [***]HZOJ 跳房子
一道非常神仙的题. 算法一:对于20%的数据: 模拟,直接走K步,时间复杂度O(K) 算法二:对于40%的数据:走M*N步内必有一个循环节.直接走,找循环节,时间复杂度O(M*N) 正解大概有两种做法 ...
- 2016 年度开源中国新增开源软件排行榜 TOP 100
2016 年度开源中国新增开源软件排行榜 TOP 100 2016 年度开源中国新增开源软件排行榜 TOP 100 新鲜出炉!本榜单根据 2016 年开源中国新收录的 3030 款软件的关注度和活跃度 ...
- spring boot与activiti集成实战 转
为什么80%的码农都做不了架构师?>>> 这是原作者的博客地址 http://wiselyman.iteye.com/blog/2285223 代码格式混乱,我修正了一下.项目源码在 ...