ES学习笔记3

环境

单节点部署 vs 多节点部署

多节点分发
xsync es-cluster/
用户管理-配置文件

进阶-概念

  • 索引 万物皆索引
  • 类型(现在少用,pass)
  • 文档--》数据
    json的--〉index/type任意多
  • field
  • mapping
  • 分片shards
    水平分割、扩展容量
    分片之上分布式、并行操作
  • 副本
    防止分片宕掉、扩展吞吐量
  • 分配

进阶-架构

image.png

p 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

image.png

缓冲区提高性能--》减少disk中segment文件,合并, 进一步提高性能。

  • 文档冲突,并发查询导致
    类似于变量共享
    悲观锁-阻塞其他用户访问,性能差。
    乐观锁-状态判断,进行访问。--》version进行控制
  • ELK之kibana
    展示、验证数据

仅供学习

你可能感兴趣的:(ES学习笔记3)