配置项作用 #
index.recovery.type 配置项控制索引分片恢复的方式。恢复类型决定了分片数据如何从其他节点或本地存储恢复到当前节点。
配置项类型 #
该配置项为静态配置,需要在创建索引时设置。
默认值 #
空字符串(使用默认恢复方式)
是否必需 #
可选配置项(有默认值)
可选值 #
| 值 | 说明 |
|---|---|
| 空(默认) | 根据分片副本数量自动选择 |
LOCAL_Snapshot | 从本地快照恢复(仅副本) |
PEER | 从对等节点恢复(默认方式) |
配置格式 #
// 默认配置
PUT /my_index
{
"settings": {
"index.recovery.type": ""
}
}
// 本地快照恢复
PUT /my_index
{
"settings": {
"index.recovery.type": "LOCAL_Snapshot"
}
}
工作原理 #
恢复类型机制:
┌─────────────────────────────────────────────────────────────────┐
│ 恢复类型选择 │
└─────────────────────────────────────────────────────────────────┘
分片分配到节点
│
├── 检查恢复类型
│
├── 未设置(默认)
│ │
│ ├── 主分片 → 从本地恢复
│ └── 副本分片 → 从对等节点恢复
│
├── LOCAL_Snapshot
│ │
│ └── 从本地快照恢复(仅副本)
│
└── PEER
│
└── 从对等节点恢复
使用场景 #
1. 默认配置(推荐) #
{
"settings": {
"index.recovery.type": ""
}
}
适用场景:
- 大多数索引
- 标准副本恢复
2. 本地快照恢复 #
{
"settings": {
"index.recovery.type": "LOCAL_Snapshot"
}
}
适用场景:
- 副本分片
- 从本地快照恢复
- 减少网络传输
3. 对等节点恢复 #
{
"settings": {
"index.recovery.type": "PEER"
}
}
适用场景:
- 标准副本恢复
- 从其他节点复制数据
推荐设置建议 #
| 分片类型 | 推荐类型 | 说明 |
|---|---|---|
| 默认 | 空 | 自动选择 |
| 副本(有本地数据) | LOCAL_Snapshot | 快速恢复 |
| 副本(无本地数据) | 空/PEER | 对等恢复 |
| 主分片 | 空 | 从本地恢复 |
恢复方式对比 #
| 恢复类型 | 数据源 | 网络传输 | 恢复速度 | 适用场景 |
|---|---|---|---|---|
| 空(默认) | 自动选择 | 可能需要 | 中等 | 通用 |
| LOCAL_Snapshot | 本地快照 | 不需要 | 快 | 有本地数据 |
| PEER | 对等节点 | 需要 | 慢 | 标准恢复 |
监控建议 #
# 查看索引配置
GET /my_index/_settings?filter_path=*.recovery.type
# 查看恢复进度
GET /_cat/recovery?v
# 查看分片状态
GET /_cat/shards?v&h=index,shard,prirep,state,node,store
注意事项 #
- 静态配置:创建索引后不可修改
- 自动选择:默认值会根据情况自动选择
- LOCAL_Snapshot 限制:仅适用于有本地数据的副本
- PEER 是默认:大多数情况下使用对等恢复
- 与快照相关:LOCAL_Snapshot 需要有可用的快照





