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/ #删除该索引的所有数据
欢迎大家留言,以便于后面的人更快解决问题!另外亦欢迎大家可以关注我的微信公众号,方便利用零碎时间互相交流。共勉!
路漫漫其修远兮,吾将上下而求索。。。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· DeepSeek 解答了困扰我五年的技术问题。时代确实变了!
· 本地部署DeepSeek后,没有好看的交互界面怎么行!
· 趁着过年的时候手搓了一个低代码框架
· 推荐一个DeepSeek 大模型的免费 API 项目!兼容OpenAI接口!