elasticsearch增删改查crudp-----1
Elasticsearch一些增删改查的总结
环境Centos7+Es 5.x
简单介绍下ES的原理:
1,索引 --相当于传统关系型数据库的database或schema
2,类型 --相当于传统关系型数据库的table
3,id --相当于传统关系型数据库的行row
4,_source --这当中的每个字段相当于传统关系型数据库的列column
5,分片 --索引的拷贝,一是为了安全,而是分布式提高性能,相当于传统关系型数据库中master-master or master-slave结构
6,节点 --集群中的每个成员 --相当于传统关系型数据库集群中的每个实例(oracle)
下面我们看看es的普通crud:
1、创建一个索引
PUT car
{
"mappings": {
"benz": {
"properties": {
"date": {
"type": "date"
}
}
}
}
}
比如我们创建了一个名称为car的索引,类型为benz,添加了一个元数据date,执行结果:
这时,我们想在benz类型中添加一个字段属性:
我们往index为car,类型为benz的索引中添加了一个字段english_title,字段类型为字符串,采用英文分析器。
我们尝试往这个索引中添加内容:
这里的id是自动生成的,当然我们也可以指定id,如下:
获取刚添加id为1的数据:
获取索引car类型为benz下的所有数据:
当然也可以直接put或post新增曾端会自己添加,如索引、类型都没有也会自动创建:
POST /car/benz
{
"price":"30",
"color":"black",
"english_title":"CCTV are Say good!"
}
删除一个或多个索引:
从一个类型中删除一条数据:
更新一条数据:
1)添加
2)查看该条数据
3)更新该条数据
4)查看更新后的数据
2、多索引多类型查询
1)查询索引website,sky下所有类型
2)查询索引website,sky下类型eurape,blog类型数据
3、分页查询
1)如果数据较多,想限制显示数量,如显示1-10共10条
4、简单的条件搜索
1)查询所有索引中所有类型为blog,date字段为2014/01/01的字段
注意看左边的结果,能完全匹配的是id为AVm1so4Nsrq782OZqS8R的这条,下面那条只是相似,搜索引擎的优势就出来了,即使不完全一样也会把数据带出来,那那条数据是我们真正想要的(可能更匹配的)那就看_score字段了,分值越高越匹配。
2)查询多个字段
由于篇幅问题,我们见下一篇
elasticsearch增删改查crudp-----1的更多相关文章
- elasticsearch 增删改查底层原理
elasticsearch专栏:https://www.cnblogs.com/hello-shf/category/1550315.html 一.预备知识 在对document的curd进行深度分析 ...
- Elasticsearch增删改查 之 —— mget多文档查询
之前说过了针对单一文档的增删改查,基本也算是达到了一个基本数据库的功能.本篇主要描述的是多文档的查询,通过这个查询语法,可以根据多个文档的查询条件,返回多个文档集合. 更多内容可以参考我整理的ELK文 ...
- ES 17 - (底层原理) Elasticsearch增删改查索引数据的过程
目录 1 增删改document的流程 1.1 协调节点 - Coordinating Node 1.2 增删改document的流程 2 查询document的流程 1 增删改document的流程 ...
- Elasticsearch增删改查 之 —— Get查询
GET API是Elasticsearch中常用的操作,一般用于验证文档是否存在:或者执行CURD中的文档查询.与检索不同的是,GET查询是实时查询,可以实时查询到索引结果.而检索则是需要经过处理,一 ...
- Elasticsearch增删改查 之 —— Delete删除
删除文档也算是常用的操作了...如果把Elasticsearch当做一款普通的数据库,那么删除操作自然就很常用了.如果仅仅是全文检索,可能就不会太常用到删除. Delete API 删除API,可以根 ...
- Java之Elasticsearch 增删改查
<!--ELK --> <dependency> <groupId>org.elasticsearch.client</groupId> <art ...
- elasticsearch增删改查操作
目录 1. 插入数据 2. 更改数据 3. 删除数据 4. 检索文档 1. 插入数据 关于下面的代码如何使用,可以借助于kibana的console,浏览器打开地址: http://xxx.xxx.x ...
- 阿里云 elasticsearch 增删改查
kibana 控制台 # 查询所有数据 GET /yixiurds_dev/_search { "query": { "match_all": { } } } ...
- ElasticSearch 增删改查
HTTP 协议本身语义:GET 获取资源.POST 新建资源(也可以用于更新资源).PUT 更新资源.DELETE 删除资源. ES通过HTTP Restful方式管理数据:1.格式:#操作 /ind ...
随机推荐
- 【图灵学院01】Java程序员开发效率工具IntelliJ IDEA使用
1. 什么是IDEA? IDEA, Java智能IDE. 2. 为什么要使用? IDEA的优点: 1)智能选取 2)导航模式 3)历史记录 4)重构 5)编码辅助 6)智能排版,控制 7)智能代码,查 ...
- C#中抽象类与接口
1抽象类 (1) 抽象方法只作声明,而不包含实现,可以看成是没有实现体的虚方法 (2) 抽象类不能被实例化 (3) 抽象类可以但不是必须有抽象属性和抽象方法,但是一旦有了抽象方法,就一定要把这个类声明 ...
- ConcurrentHashMap get方法保持同步的解释
原文链接:https://blog.csdn.net/artaganan8/article/details/80867158 ConcurrentHashMap是Java5中新增加的一个线程安全的Ma ...
- 2019.2.14 考试T3 交互题
\(\color{#0066ff}{ 题目描述 }\) 由于机房被成功拯救了,花_Q很高兴,花_Q生成了一个 0 到 N - 1 的排列(排列的下标从 0 到 N - 1 ).保证排列中 0 在 N ...
- max Count Group by
select UserName ,Max(LoginTime),count(1) from LoginLog group by UserName 只 group by UserName就行 可以得到L ...
- 河南省第十一届ACM程序设计竞赛 修路
Problem C: 修路 Time Limit: 3 Sec Memory Limit: 128 MBSubmit: 63 Solved: 22[Submit][Status][Web Boar ...
- HTTP协议和WebSocket协议(二)
WebSocket WebSocket协议还很年轻,RFC文档相比HTTP的发布时间也很短,它的诞生是为了创建一种「双向通信」的协议,来作为HTTP协议的一个替代者.那么首先看一下它和HTTP(或者H ...
- matplotlib学习笔记(三)
柱状图 柱状图用其每根柱子的长度表示值的大小,它们通常用来比较两组或多组值.下面的程序从文件中读入中国人口的年龄分布数据,并使用柱状图比较男性和女性的年龄分布. import numpy as np ...
- CMD 有关知识点
java的Runtime.getRuntime().exec(commandStr)可以调用执行cmd指令. cmd /c dir 是执行完dir命令后关闭命令窗口. cmd /k dir 是执行完d ...
- 对bootstrap模态框的小尝试
bootstrap中有一个“模态框”插件,我理解的意思就是一个具有全局遮罩的弹窗提示,官方解释是:模态框(Modal)是覆盖在父窗体上的子窗体.通常,目的是显示来自一个单独的源的内容,可以在不离开父窗 ...