课程名称:Java架构师-技术专家
课程章节: 第10周 手把手带你快速搞定分布式搜索引擎ES
课程讲师: 慕课讲师团队
课程内容
搜索引擎对比
- 倒排序索引,所有搜索引擎共有的一个特点
- Lucene是类库,只能使用Java整合,不能水平扩展
- Solr基于Lucene
- ES基于Lucene,分布式搜索引擎,提供近实时的搜索服务,支持PB级别的搜索,可以支持大数据的分析
ES 核心术语
ES术语 | 对应关系型数据库术语 |
---|---|
ES | 数据库 |
索引 index | 表 |
类型 type | 表逻辑类型 |
文档 document | 行(记录) |
字段 fields | 列 |
映射 mapping | 表结构定义,记录了索引的信息 |
近实时 NRT | Near real time,近实时的搜索 |
节点 node | 每一个服务器 |
shard replica | 数据分片和备份 |
- 索引在ES中可以建立多个的,其实就是一组集合,根据不同类型的业务去分不同的索引库
- 文档都以json的形式存在,一个文档就是一条记录。是一个可以被索引的最基础的数据单位,每一个索引库都是由很多文档共同构成的。
- fields 是文档中的属性,不同的属性有不同的数据类型和值, id、name、age都是文档中的fields
stu_index
{
"id": 1001,
"name": 'jason',
"age": 19
}
{
"id": 1002,
"name": 'tom',
"age": 18
}
{
"id": 1003,
"name": 'rose',
"age": 22
}
集群相关
- 分片(shard):把索引库拆分成多份,分别放在不同的节点上,比如有3个节点,3个节点的所有数据内容加在一起是一个完整的索引库。分别保存到三个节点上,目的是为了水平扩容,提高吞吐量、性能
- 备份(replica):每个shard的备份,防止shard数据丢失,从而达到高可用
- 同一个分片的主分片和副本分片不会放在同一个节点里面,因为一旦挂了就没有了
索引的一些操作
集群健康
GET /_cluster/health
创建索引
PUT /index_test
{
"settings":{
"index":{
"number_of_shards":"2",
"number_of_replicas":"0"
}
}
}
查看索引
GET _cat/indices?v
GET /index_test
删除索引
DELETE /index_test
课程收获
今天学习的收获是
ES 入门,以及 常见的操作。
点击查看更多内容
1人点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦