环境
单节点部署 vs 多节点部署
多节点分发
xsync es-cluster/
用户管理-配置文件
进阶-概念
- 索引 万物皆索引
- 类型(现在少用,pass)
- 文档--》数据
json的--〉index/type任意多 - field
- mapping
- 分片shards
水平分割、扩展容量
分片之上分布式、并行操作 - 副本
防止分片宕掉、扩展吞吐量 - 分配
进阶-架构
image.pngp r 分片与副本不同机器
查询复杂而新增简单-p--》lucene index
-
单节点集群
image.png
ps:elasticsearch-head 查询状态插件
- 故障转移
-
水平扩容
image.png
扩容限制:2X3=6个节点---》调整副本分片数量来实现
-
应对故障
image.png
副本不全 功能没问题 性能有问题
重启节点-master将被改变--》1002 -
路由计算 & 分片控制
data插入--〉先主分片后副本,路由计算:计算data放哪p
保存:
image.png
查询:
1.随便访问-ok
2.分片控制访问-轮询操作(1001负载大去找别的节点) -
数据写入
image.png
ps:优化--主分片插入成功即可查询(一致性参数设置为one/all/default + 超时时间限制)
- 数据读取(不想记,懒得写)
- 更新流程
读+写结合 - 多文档操作
- 倒排索引(常识 不想记,懒得写)
- 文档搜索
image.png
如何解决修改索引必须重建索引?
补充索引 - 逻辑删除
标注del,索引过滤掉-搜不出来,但会造成索引冗余,一旦合并索引,去掉.del文件--》物理删除 -
近实时搜索
image.png
数据库:先log后内存
es:先内存后log
缓冲区提高性能--》减少disk中segment文件,合并, 进一步提高性能。
- 文档冲突,并发查询导致
类似于变量共享
悲观锁-阻塞其他用户访问,性能差。
乐观锁-状态判断,进行访问。--》version进行控制 - ELK之kibana
展示、验证数据
网友评论