> 文章列表 > ElasticSearch第十七讲 ES索引别名的使用

ElasticSearch第十七讲 ES索引别名的使用

ElasticSearch第十七讲 ES索引别名的使用

索引别名

ES中可以为索引添加别名,一个别名可以指向到多个索引中,同时在添加别名时可以设置筛选条件,指向一个索引的部分数据,实现在关系数据库汇总的视图功能,这就是ES中别名的强大之处。别名是一个非常实用的功能,为我们使用索引提供了极大的灵活性,许多ES的API都支持用别名来代替真实索引名。通过索引我们可以方便的进行以下操作:

  • 实现正在云心的集群上的一个索引到另一个索引之间的无缝切换。试想一下这种藏进,由于业务变换,我们需要将业务数据有索引1变换到新的索引2上,如果没有别名,我们必须修改和总段业务系统,但是有了别名,只需要修改别名,另起指向新的索引2即可,这样的操作可以在用户无任何感知的情况下完成。
  • 使数据检索等炒作更加方便。加入有两个月的日志数据,分别存放在index_202008和index_202009两个索引中,没有使用别名进行检索时,我们需要同时写上两个索引名称进行检索,使用索引后,我们可以令别名同时指向这两个索引,检索时只需要使用这个别名就可以同时在两个索引中尽心检索。
  • 为一个索引中的部分数据创建别名,例如,一个索引中存放了一整年的数据,现在新增一个业务场景,更多的是对其中某一个月的数据进行检索,这时,我们可以在创建别名时,通过设置过滤条件filter,可以单独令别名指向一个月的数据,使得检索更加高效。

通过上面的场景我们可以看出,ES中别名可以指向一个索引,也可以同时指向多个索引,甚至可以通过配合过滤器filter指向索引中部分数据。别名可以再创建索引时添加,也可以在索引创建后进行添加,ES中提供丰富的API对别名进行管