当前位置:   article > 正文

elasticsearch(一)-索引创建_elasticsearch 索引在项目中 什么时候创建

elasticsearch 索引在项目中 什么时候创建

索引的创建

索引动态创建

PUT /gpedu-001/_doc/1
{
  "eduName":"gpedu001",
  "createDate":"2016-08-08"
}
  • 1
  • 2
  • 3
  • 4
  • 5

索引静态创建

避免集中创建索引时,系统响应慢

PUT gpedu-002
{
}
  • 1
  • 2
  • 3

滚动创建概要

rollover特性:

  1. 利用别名alias
  2. 利用rollover特性
  3. 自动化滚动创建,达到一定阀值创建

应用场景:

  • 日志领域,需要自动化依据触发条件滚动创建
  • 大数据领域,单索引能力局限需要创建很多
别名的创建

别名和索引是多对多的对应关系

// 创建带有别名的索引
PUT gpedu-003
{
  "aliases": {
    "gpedu-alias": {}
  }
}
// 访问索引
GET gpedu-003
// 通过别名访问索引
GET gpedu-alias

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
给已经创建的索引添加别名
PUT /gpedu-002/_alias/gpedu-alias-02
  • 1
滚动创建
// 滚动索引命名规范建议  字母+6位数字
PUT /gpedu-rollover-index-000001
{
  "aliases": {
    "gpedu-rollover-index": {}
  }
}

GET gpedu-rollover-index

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

获得结果:
在这里插入图片描述
执行如下命令,会触发滚动索引创建

POST /gpedu-rollover-index/_rollover/
  • 1

在这里插入图片描述
此时,再次查询别名时,索引发生了变化

GET gpedu-rollover-index
  • 1

在这里插入图片描述

滚动索引触发条件(手动)
  1. 索引最大文档数 max_docs
  2. 索引创建时间 max_age
  3. 索引最大大小 max_size 实战中比较关注此参数
// 当索引中文档数>2时,触发滚动索引
POST /gpedu-rollover-index/_rollover
{
  "conditions": {
    "max_docs": 2
  }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

需要注意的是,滚动索引虽然精准,但是具有延时性,需要通过refresh来刷新
eg:

// 向索引中添加文档后,刷新;否则滚动索引条件不会触发,统计有延迟性
POST gpedu-rollover-index/_doc?refresh
{
  "eduName":"gp.edu"
}
  • 1
  • 2
  • 3
  • 4
  • 5

滚动索引可以指定下一次索引的名称

// 触发滚动索引时,别名gpedu-rollover-index指向的索引就是gpedu-rollover-index-000001
POST /gpedu-rollover-index/_rollover/gpedu-rollover-index-000001
{
  "conditions": {
    "max_docs": 2
  }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/518914
推荐阅读
相关标签
  

闽ICP备14008679号