es使用--新建、删除、增删改数据
# 进入bin目录
cd /czz/elsearch/bin
# 后台启动(不加-d参数则是前台启动,日志在控制台)
# 后台启动日志如果不配置,在es目录的logs下面
./elasticsearch -d
装完本机访问http://127.0.0.1:9200/
{
"name" : "node-1",
"cluster_name" : "my-application",
"cluster_uuid" : "wIk4z-UA***9cusPopZFBw",
"version" : {
"number" : "****",
"build_flavor" : "default",
"build_type" : "***",
"build_hash" : "ef48eb35cf30adf****4db14086*1*e8aabd07ef6fb113f",
"build_date" : "2020-03-26T06:34:37.794943Z",
"build_snapshot" : false,
"lucene_version" : "8.4.0",
"minimum_wire_compatibility_version" : "****",
"minimum_index_compatibility_version" : "***-beta1"
},
"tagline" : "You Know, for Search"
}
看到类似的返回即表示安装成功
ElasticSearch中的基本概念
索引
① 索引(index)是es对逻辑数据的逻辑存储,所以它可以分为更小的部分。类似于关系型数据库的table
② 索引的结构是为快速有效的全文索引准备的,特别是它不存储原始值。
③ Elasticsearch可以把索引存放在一台机器或者分散在多台服务器上,每个索引有一或多个分片,每个分片可以有多个副本。
文档
① 存储在Elasticsearch中的主要实体叫文档(document)。相当于关系型数据库的一行数据
② es的文档中,相同字段必须有相同类型。
③ 文档由多个字段组成,每个字段可能多次出现在一个文档里,这样的字段叫多值字段(multivalued)。 每个字段的类型,可以是文本、数值、日期等。字段类型也可以是复杂类型,一个字段包含其他子文档或者数 组。
映射
① 所有文档写进索引之前都会先进行分析,如何将输入的文本分割为词条、哪些词条又会被过滤,这种行为叫做 映射(mapping)。一般由用户自己定义规则。
文档类型
① 在Elasticsearch中,一个索引对象可以存储很多不同用途的对象。
② 每个文档可以有不同的结构。
③ 不同的文档类型不能为相同的属性设置不同的类型。例如,在同一索引中的所有文档类型中,一个叫title的字段必须具有相同的类型。
RESTful API
①创建索引
PUT /czz_test
{
"settings": {
"index": {
"number_of_shards": "1", #分片数,一般单机一片即可
"number_of_replicas": "0" #副本数
}
}
}
②删除索引
DELETE /czz_test
{
"acknowledged": true
}
③插入数据
URL规则: POST /{索引}/{类型}/{id}
POST /czz_test/user/1001 #不指定ID插入时会自动生成
{
"id":1001,
"name":"张三",
"age":20,
"sex":"男"
}
返回:
{
"_index": "czz_test",
"_type": "user",
"_id": "0001",
"_version": 1,
"result": "created",
"_shards": {
"total": 2,
"successful": 1,
"failed": 0
},
"_seq_no": 0,
"_primary_term": 1
}
④更新数据
在es中数据是不可修改的,但是可以通过覆盖的方式进行更新,此时_version属性值会加一
PUT /czz_test/user/1001
{
"id":1001,
"name":"张三",
"age":21,
"sex":"女"
}
如果要仅仅更新某个字段,需要在url路径增加_update标记,同时需要将要更新的字段放在doc里面,同时_version也会加一
#注意:这里多了_update标识
POST /czz_test/user/1001/_update
{
"doc":{
"age":23
}
}
⑤删除数据
DELETE /czz_test/user/1001 #删除id为1001的数据
DELETE /czz_test/ #删除该索引的所有数据
欢迎大家留言,以便于后面的人更快解决问题!另外亦欢迎大家可以关注我的微信公众号,方便利用零碎时间互相交流。共勉!

路漫漫其修远兮,吾将上下而求索。。。

es使用--新建、删除、增删改数据的更多相关文章
- Mysq基础l数据库管理、表管理、增删改数据整理
一. 数据库管理: 创建数据库: create database(自定义) 查询所有数据库: show databases;(查询所有数据库) show create database ( ...
- python入门23 pymssql模块(python连接sql server增删改数据 )
增删改数据必须connect.commit()才会生效 回滚函数 connect.rollback() 连接数据库 ''' dinghanhua sql server增删改 ''' import py ...
- 利用Django提供的ModelForm增删改数据
上一篇我们写了Django基于类如何增删改数据的方法,方法虽然简单,但新手可能对其原理不是很清楚,那么我们这次就用Django提供的ModelForm方法来实现增删改数据,这是一种基于现有模型的增删改 ...
- Oracle【增删改&数据的备份】
增删改的SQL语句执行完毕后,不会立马进行数据的写入数据库(这时数据在内存中),需要手动对数据进行提交(commit),如果数据出问题,可以使用回滚.主键:非空唯一的 --在一张表中,某字段值是非空唯 ...
- MySQL增删改数据
1.增加数据 ,); /*插入所有字段.一定依次按顺序插入--字符串与日期需要加单引号,数字不需要,各个字段之间用逗号分隔*//*注意不能少或者多字段值*/ ,) /*按字段名插入数据,中间用逗号隔开 ...
- MYSQL的常用命令和增删改查语句和数据类型
连接命令:<a href="http://lib.csdn.net/base/mysql" class='replace_word' title="MySQL知识库 ...
- MYSQL的常用命令和增删改查语句和数据类型【转】
连接命令:<a href="http://lib.csdn.net/base/mysql" class='replace_word' title="MySQL知识库 ...
- SQL学习之MYSQL的常用命令和增删改查语句和数据类型
连接命令:mysql -h[主机地址] -u[用户名] -p[用户密码] 创建数据库:create database [库名] 显示所有数据库: show databases; 打开数据库:use [ ...
- NHibernate系列文章三:简单的增删改查询
摘要 上一篇文章只完成了简单的NHibernate安装.配置和连接数据库.这篇文章介绍怎样实现最简单的数据库读写操作. 1. 重构ISessionFactory生成过程 将生成ISessionFact ...
随机推荐
- Matlab摄像头视频基本处理
一.读取摄像头 1.首先保证摄像头及其驱动正确在电脑上安装 2.简单的代码显示驱动摄像头,并显示: vid = videoinput('winvideo',1); preview(vid); 3.默认 ...
- 一键部署k8s
本人学习安装kubernetes时,顺便整理了安装脚本,可以通过执行一个脚本,自动二进制安装好1台master+2台node的k8环境.方便需要学习k8s的同学. 百度网盘:https://pan.b ...
- golang 内置print/println、fmt、log的区别
fmt.Println与fmt.Print区别 换行区别不用多说,另外一个区别在于fmt.Print只有在参数间都不是字符串时才会产生间隔 fmt与log的重要区别 fmt没有做同步处理 fmt标准输 ...
- SqlAnalyzer1.00源码
SQL解析的夙愿今天终于完成,但限于SQL远超算术表达式,Json,XML等的复杂度,只是解析了一部分.形成普适性的SQL解析,仍需倾注精力. 代码下载:https://files.cnblogs.c ...
- 难道主键除了自增就是GUID?支持k8s等分布式场景下的id生成器了解下
背景 主键(Primary Key),用于唯一标识表中的每一条数据.所以,一个合格的主键的最基本要求应该是唯一性. 那怎么保证唯一呢?相信绝大部分开发者在刚入行的时候选择的都是数据库的自增id,因为这 ...
- oracle数据库备份、还原命令及常见问题(待补充)
1.oracle数据库的备份:先查空表——将结果全选复制为insert语句——将语句执行后导出 先select 'alter table '||table_name||' allocate exten ...
- 用后台开发的逻辑理念学习VUE
前言 近些年前端开发快速发展,现在学习前端已经不像以前那样仅仅学习一个语法就可以了,它已经是一门编程技术了,它们有自己独立的类似Main函数的入口,有像MVC一样规范好的层次结构,有自己的开发工具可以 ...
- Ajax每隔2秒自动请求服务端刷新页面
1. window.onload = function () {automatic(); } 2. function automatic(){ //每隔两秒刷新一次页面setTimeout(autom ...
- Redis安装即python使用
一:简介 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sorted ...
- 刷题[MRCTF2020]套娃
解题思路 查看源码,发现注释中存在代码 //1st $query = $_SERVER['QUERY_STRING']; if( substr_count($query, '_') !== 0 || ...