![](https://box.kancloud.cn/aa4fb7dda4861f75f43fc05e236e12d5_866x650.jpg)
![](https://box.kancloud.cn/257c154f2d12e9bb9594163cfde02075_1189x611.png)
---
**gateway支持的索引**
当elasticsearch关闭再启动的时候,它就会从这个gateway里面读取索引数据
---
**DistributedLucene Directory**
Lucene的框架
---
**倒数第三层**
数据处理模块,加工处理方式
* index module 创建index的模块
* search module 搜索模块
* mapping 定义索引下面type的处理规则,索引数据如何建立,索引数据类型
* river 插件,从外部获取异构数据,然后在elasticsearch里面创建索引,常见的插件有RabbitMQ还有Twitter River
---
**第三层**
**Discovery**
zen 是节点自动发现,自动注册,如果master节点发生故障,其他节点会自动选举出一个新的master节点
他是一个p2p的系统,首先通过广播的机制寻找存在的节点,然后通过多播协议进行节点的通信,同时也支持点对点的交互
**scripting**
脚本支持的功能
**3 Plugins**
支持的第三方插件,中文分词,状态监控
---
**第二层**
**Transport**
交互方式,有3种协议,默认用http协议来进行交互的
---
**第一层**
用resultapi进行交互
还可以通过java来开发工具
---
**es的更新**
![](https://box.kancloud.cn/9c94c3e93d25a5a6755df9ff3ef4cfa4_551x236.png)
---
**近实时检索**
他里面有个refash的api
如果你把refash这个api设置成1秒,每秒生成个segment,这时候这个segment会比较小通常只有几k,这样不好,会有很多segment
生成segment的开销很大,生成倒排索引是很复杂的,能写个大的文件尽量写个大文件
后面合并会耗费大量资源
refash设置比较大点,他导入会很快,一下子写个大的索引,性能会提升上来
refash是把之前的segment进行close掉,close掉变为只读的,这时候才能给你查,他会生成新的segment但是这时候还是不能查询的
refresh api
![](https://box.kancloud.cn/3f06cf811c0990a0bd05a3d979e330c0_596x421.png)
如果想尽快的导入,不关心查询,就把refash关闭掉,把他值设置为-1
针对某个索引refresh,如果你对所有的这样,会把机器拖垮,其他也类似
---
**gateway参数**
![](https://box.kancloud.cn/d6291bbefb3294809759e33d6da186f1_475x143.png)
第一个表示存在本地磁盘上面
expected-nodes我们集群应该有10个节点
recover_after_nodes当我们集群有8个节点我们应该开始最新数据的恢复操作了
recover_after_time当他找到8个节点的时候,等5分钟再恢复,为了是稍后可能有2个节点稍后加进来,防止不断的数据恢复和平衡,一般在95%左右
---
**元数据**
![](https://box.kancloud.cn/1b07e5e8cad92cee1ab01e5881e087d9_1284x370.png)
![](https://box.kancloud.cn/0bbd383a226d1caa0ca43fcd8c53350b_1284x184.png)
- SQL
- 名词
- mysql
- 初识mysql
- 备份和恢复
- 存储引擎
- 数据表损坏和修复
- mysql工具
- 数据库操作
- 增
- 删
- 改
- 查
- 数据类型
- 整数类型
- 小数类型
- 日期时间类型
- 字符和文本型
- enum类型
- set类型
- 时间类型
- null与not null和null与空值''的区别
- 数据表操作
- 创建
- 索引
- 约束
- 表选项列表
- 表的其他语句
- 视图
- sql增删改查
- sql增
- sql删
- sql改
- sql查
- sql语句练习
- 连接查询和更新
- 常用sql语句集锦
- 函数
- 字符函数
- 数值运算符
- 比较运算符与函数
- 日期时间函数
- 信息函数
- 聚合函数
- 加密函数
- null函数
- 用户权限管理
- 用户管理
- 权限管理
- pdo
- 与pdo相关的几个类
- 连接数据库
- 使用
- pdo的错误处理
- pdo结果集对象
- pdo结果集对象常用方法
- pdo预处理
- 常用属性
- mysql编程
- 事务
- 语句块
- mysql中的变量
- 存储函数
- 存储过程
- 触发器
- mysql优化
- 存储引擎
- 字段类型
- 三范式和逆范式
- 索引
- 查询缓存
- limit分页优化
- 分区
- 介绍
- 分区算法
- list分区
- range范围
- Hash哈希
- key键值
- 分区管理
- 特别注意
- 分表
- 数据碎片与维护
- innodb表压缩
- 慢查询
- explain执行计划
- count和max,groupby优化
- 子查询优化
- mysql锁机制
- 介绍
- 演示
- 总结
- 乐观锁和悲观锁
- 扛得住的mysql
- 实例和故事
- 系统参数优化
- mysql体系结构
- mysql基准测试
- 索引
- mysql的复制
- win配置MySQL主从
- mysql5.7新特性
- 常见问题
- general log
- 忘记密码
- uodo log与redo log
- 事务隔离级别
- mysql8密码登录
- explain
- 高效的Tree表
- on delete cascade 总结
- mongod
- 简介
- 集合文档操作语句
- 增删改查
- 索引
- 数据导入和导出
- 主从复制
- php7操作mongod
- 权限管理
- redis
- redis简介
- 3.2版本配置文件
- 3.0版本配置文件
- 2.8版本配置文件
- 配置文件总结
- 外网连接
- 持久化
- RDB备份方式保存数据
- AOF备份方式保存数据
- 总结
- win安装redis和sentinel部署
- 事务
- Sentinel模式配置
- 分布式锁
- 管道
- php中redis代码
- 发布订阅
- slowlog
- Redis4.0
- scan和keys
- elasticsearch
- 配置说明
- 启动
- kibana
- kibana下载
- kibana配置文件
- kibana常用功能
- 常用术语
- Beats
- Beats简介
- Filebeat
- Packetbeat
- Logstash
- 配置
- elasticsearch架构
- es1.7
- head和bigdesk插件
- 插件大全
- 倒排索引
- 单模式下API增删改查
- mget获取多个文档
- 批量操作bulk
- 版本控制
- Mapping映射
- 基本查询
- Filter过滤
- 组合查询
- es配置文件
- es集群优化和管理
- logstash
- kibana
- es5.2
- 安装
- 冲突处理
- 数据备份
- 缺陷不足
- 集群管理api
- 分布式事务
- CAP理论
- BASE模型
- 两阶段提交(2PC)
- TCC (Try-Confirm-Cancle)
- 异步确保型
- 最大努力通知型
- 总结