IT评测·应用市场-qidao123.com技术社区

标题: Elasticsearch数据冷热分离 [打印本页]

作者: 盛世宏图    时间: 2024-11-28 15:58
标题: Elasticsearch数据冷热分离
1. 节点属性设置

在 Elasticsearch 的每个节点的设置文件(elasticsearch.yml)中,为节点分配自界说属性:
  1. # 热节点(性能较高的节点)
  2. node.attr.data_tier: hot
  3. # 温节点(性能适中的节点)
  4. node.attr.data_tier: warm
  5. # 冷节点(性能较低的节点,用于索引归档)
  6. node.attr.data_tier: cold
复制代码
2. 设置 ILM

ILM 可以主动管理数据的生命周期,包罗将索引从热节点迁移到温节点、冷节点,或最终删除。
创建一个生命周期策略:
  1. PUT _ilm/policy/log_data_policy
  2. {
  3.   "policy": {
  4.     "description": "Hot-Warm-Cold ILM",
  5.     "phases": {
  6.       "hot": {
  7.         "min_age": "0ms",
  8.         "actions": {
  9.           "rollover": {
  10.             "max_age": "1d",
  11.             "max_size": "50gb"
  12.           }
  13.         }
  14.       },
  15.       "warm": {
  16.         "min_age": "1d",
  17.         "actions": {
  18.           "allocate": {
  19.             "require": {
  20.               "data_tier": "warm"
  21.             }
  22.           },
  23.           "forcemerge": {
  24.             "max_num_segments": 1
  25.           }
  26.         }
  27.       },
  28.       "cold": {
  29.         "min_age": "7d",
  30.         "actions": {
  31.           "allocate": {
  32.             "require": {
  33.               "data_tier": "cold"
  34.             }
  35.           },
  36.           "forcemerge": {
  37.             "max_num_segments": 1
  38.           },
  39.           "freeze": {}
  40.         }
  41.       },
  42.       "delete": {
  43.         "min_age": "30d",
  44.         "actions": {
  45.           "delete": {}
  46.         }
  47.       }
  48.     }
  49.   }
  50. }
复制代码
这个策略分为四个阶段:
3.创建索引模板并绑定 ILM 策略

  1. PUT _template/log_template
  2. {
  3.   "index_patterns": [
  4.     "*-log-data-*"
  5.   ],
  6.   "order": 0,
  7.   "settings": {
  8.     "number_of_shards": 1,
  9.     "number_of_replicas": 1,
  10.     "index.routing.allocation.require.data_tier": "hot",
  11.     "index.lifecycle.name": "log_data_policy",
  12.     "index.lifecycle.rollover_alias": "log_alias"
  13.   },
  14.   "aliases": {
  15.     "app_log": {}
  16.   },
  17.   "mappings": {
  18.     "dynamic": false,  
  19.     "properties": {
  20.       "@timestamp": {
  21.         "type": "date"
  22.       },
  23.       "application": {
  24.         "type": "keyword",
  25.         "ignore_above": 30
  26.       },
  27.       "class": {
  28.         "type": "keyword",
  29.         "index": false,
  30.         "ignore_above": 256
  31.       },
  32.       "client_ip": {
  33.         "type": "ip"
  34.       },
  35.       "original_ip": {
  36.         "type": "ip"
  37.       },
  38.       "level": {
  39.         "type": "keyword",
  40.         "ignore_above": 10
  41.       },
  42.       "message": {
  43.         "type": "text",
  44.         "analyzer": "standard"
  45.       },
  46.       "response_time": {
  47.         "type": "integer",
  48.         "index": false
  49.       },
  50.       "servlet_path": {
  51.         "type": "keyword",
  52.         "ignore_above": 50
  53.       },
  54.       "status": {
  55.         "type": "integer"
  56.       },
  57.       "thread": {
  58.         "type": "keyword",
  59.         "index": false,
  60.         "ignore_above": 30
  61.       },
  62.       "logtime": {
  63.         "type": "date",
  64.         "format": "yyyy-MM-dd HH:mm:ss.SSS"
  65.       }
  66.     }
  67.   }
  68. }
复制代码
设置解释:

热阶段(hot phase)

温阶段(warm phase)

冷阶段(cold phase)

删除阶段(delete phase)

freeze 操纵

forcemerge 操纵

delete 操纵


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 IT评测·应用市场-qidao123.com技术社区 (https://dis.qidao123.com/) Powered by Discuz! X3.4