ElasticSearch入门

Elasticsearch (elastic灵活的 search搜索)


ES基本信息介绍
  1. 快速地储存、搜索和分析海量数据,常被用来做全文搜索引擎
  2. Elastic 是 Lucene 的封装,提供了 REST API 的操作接口,开箱即用
  3. 因为Lucene比较吃内存,所以Elasticsearch也比较吃内存,ES开机最少锁定1G内存。
  4. ES没有事务,吞吐量大,适合处理海量的、更新频率很低的数据

ES的应用场景

1)存储/读取业务数据,在搜索推荐系统中使用ES作为存储和检索服务器;

2)存储/读取日志数据,在日志分析系统中使用ES为企业提供实时日志分析;


ES与MySQL的区别
MySQLElasticSearch
数据库database索引Index
表Table类型Type
数据行Row文档Document
数据列Column字段Field
模式Schema映射Mapping
SELECT语句HTTP GET 请求
UPDATE语句HTTP PUT 请求
ADD语句HTTP POST请求或PUT请求

测试ES提供的Restful 接口
  1. 向ES插入一条JSON—post方式插入,不指定id主键,执行POST请求localhost:9200/db913/student/,请求数据为
{
   "age":23,
   "name":"tttlisi",
   "grade":"web03test"
}

在这里插入图片描述
查询刚刚插入的数据,执行GET请求
在这里插入图片描述
修改已经插入ES的数据,执行PUT请求
在这里插入图片描述
再次查询是否修改成功,执行GET请求
在这里插入图片描述
删除ES里存的数据,注意不是DELETE请求,而是POST请求,另外要设置查询参数_delete_by_query,并且可以在请求体中设置按什么条件匹配ES文档数据
在这里插入图片描述
再次按主键查询ES,发现数据已经不存在了
在这里插入图片描述


ES节点Node 、集群Cluster、索引Index、类型Type等概念解析
  1. Elastic 本质上是一个分布式数据库,允许多台服务器协同工作,每台服务器可以运行多个 Elastic 实例,

单个 Elastic 实例称为一个节点(node)。一组节点构成一个集群(cluster);

  1. Elastic 会索引所有字段,经过处理后写入一个反向索引(Inverted Index)。查找数据的时候,直接查找该索引,

所以,Elastic 数据管理的顶层单位就叫做 Index(索引)。它是单个数据库的同义词。每个 Index (即数据库)的名字必须是小写;

  1. Index 里面单条的记录称为 Document(文档)。许多条 Document 构成了一个 Index,Document 使用 JSON 格式;
  2. Document 可以按Type分组,如天气数据 可以按城市分组,也可以按气候分组。

SpringBoot集成ES的方法

SpringBoot是目前最流行的WEB快速开发平台,在SpringBoot项目中集成Elasticsearch目前有2种方法;

  1. 让SpringBoot项目集成ElasticSearch的Client客户端,使项目可以对ES服务器数据进行CRUD;

常见的ES客户端有Jest、Spring Data Elasticsearch;

其中Jest是一个用于Elasticsearch的HTTP Java客户端,连接的是ES服务器的9200端口;

而Spring Data Elasticsearch连接的是ES的9300端口(TCP连接,把自己伪装成ES的一个节点);

  1. 在SpringBoot项目通过手动调用ES Rest API来操作ES服务器;

    通过ES服务器的9200端口手动发送Restful风格的API请求

    具体请求格式可参考大神阮一峰的博客http://www.ruanyifeng.com/blog/2017/08/elasticsearch.html


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ThinkPet

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值