es笔记

1es的认识(理解)

1.1 什么是es

es 全称elasticsearch

es : 做全文检索的 ,底层基于lucene的开发

​ lucene 相等于jdbc

​ es 相当于 mybatis/jpa

1.2 es和lucene的比较

为什么需要使用es.为什么不用lucene?

(1)api操作很麻烦 不方便

​ 搜索 : 创建索引 搜索索引 一堆api

​ es: get /product/1 – {}

(2)lucene不支持集群

​ es集群 处理很大的数据量

​ KB – > MB -->GB – >TB – >PB

​ 1024KB – 1MB

​ 1024MB – 1GB

​ 1024GB – 1TB

​ 1024TB – 1PB

1.3 ES和solr的区别

es 和 solr 都可以做全文检索,solr的重量级的框架,它除了全文检索以外,还可以做其他的事情(比如

命中标示、分面搜索、动态聚类、数据库集成,以及富文本(如Word、PDF)),solr可以nosql结合起来使用

solr 在传统的搜索效率要比es好,但是实时搜索领域比es低

2 使用ES(掌握)

(1)安装ES服务端

​ 解压–>bin/elasticsearch.bat–>浏览器访问 http://localhost:9200/

​ 9200web里面展示的效果 9300java程序可以访问的端口

(2)es的客户端的交互方式

​ a) 基于restful风格API的去操作

​ get post put delete patch

​ (1)curl的命令方式 --不用

​ (2)kibana也可以操作

​ (3)head工具

​ 安装的时候,如果出现错误:

在这里插入图片描述

​ (4)postman(测试后台的java代码)

 b) 通过java代码去操作

​ java通过9300操作es服务器

(3)restful风格 +JSON方式 操作数据

​ http特点 就是无状态的

​ get /shopping/1

​ put /shopping/2 {“name”:“xx产品”}

​ post /shopping/2 {“name”:“xx产品”}

​ delete /shopping/1

3 使用客户端

(1)kibanna客户端

​ index : 索引库

​ type: 看成一个表

​ json:看成一行数据

在这里插入图片描述

4 ES(服务) 集群的状态

​ red: 红色 不健康的状态 服务的有问题

​ green:绿色 所有的正常 主从都分配好,集群可以使用

​ yellow:黄色 主从分配 至少有一个从缺失

​ 2主 1从

5 文档的crud

5.1 基本的crud(掌握)

# 完成crud
# 新增
PUT  crm/employee/1
{
   
  "name":"xiaorong",
  "age":18
}

# 修改 --整个文档
POST crm/employee/1
{
   
  "name":"xiaohuahua"
}
# 修改局部文档
POST crm/employee/1/_update
{
   
  "doc":{
   "name":"xiaohuahua"}
}


# 查询
GET crm/employee/1

# 删除

DELETE crm/employee/1

5.2 特殊的用法(掌握)

# 展示没有什么效果(了解)
GET crm/employee/AW-tOSHILqo6XVH8f6cg?pretty

# 展示部分的字段

GET crm/employee/AW-tOSHILqo6XVH8f6cg?_source=age,name

# 返回元数据
GET crm/employee/AW-tOSHILqo6XVH8f6cg/_source

# 修改数据 (脚本修改 --了解)
POST crm/employee/AW-tOSHILqo6XVH8f6cg/_update
{
   
"script" : "ctx._source.age += 5"
}

# 批量新增 --了解
POST _bulk
{
    "delete": {
    "_index": "itsource", "_type": "employee", "_id": "123" }}
{
    "create": {
    "_index": "itsource", "_type": "blog", "_id": "123" }}
{
    "title": "我发布的博客111" }
{
    "index": {
    "_index": "itsource", "_type": "blog" }}
{
    "title": "我的第二博客2222" }


GET itsource/blog/_search

5.3 文档的查询

1 通过id查询

GET crm/employee/AW-tOSHILqo6XVH8f6cg/_source

2 批量查询

#  不同库 不同表数据 (了解)
GET _mget
{
"docs" : [
{
"_index" : "itsource",
"_type" : "blog",
"_id" : "123"
},
{
"_index" : "crm",
"_type" : "employee",
"_id" : "AW-tOSHILqo6XVH8f6cg",
"_source": ["name","age"]
}
]
}

#  同一个库 同一个表数据
GET itsource/blog/_mget
{
  "ids":["123","AW-tQP_4Lqo6XVH8f6ci"]
}

3 其他的查询(掌握)


# 分页查询
GET crm/employee/_search?size=3&from=6

# 带条件查询
GET crm/employee/_search?q=age:
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值