带你读《Elastic Stack 实战手册》之26:——3.4.2.11.Index alias(1)

简介: 带你读《Elastic Stack 实战手册》之26:——3.4.2.11.Index alias(1)

3.4.2.11.Index alias


创作人:杨松柏

 

别名的优势

 

索引别名是一个非常好的“工具”,它可以帮助解决以下问题:

 

l 如果对写入 Elasticsearch 的数据进行极少的修改,索引别名+ Rollover 可以很好控制每个索引的大小,零停机切换索引;合适的索引大小可以提升数据的查询性能,数据恢复性能。

l 解耦 client 与索引的强耦合,Elasticsearch 维护人员可以对索引有更灵活的操作空间,且让用户侧无感知。

l 结合 Reindex 可以很方便的完成索引重建。

l 过滤别名和路由别名可以在一定程度上帮助提升查询性能。

l 如果要一次查询多个索引,别名可以使 URI 变得简洁。

 

什么是别名

 

别名,是为一个或多个索引而命名的第二名称,第二名称不得与集群中任何索引同名;只要把第二名称和真实索引建立绑定关系,便可以使用别名对索引进行相关的操作。

 

别名管理

 

别名创建

 

索引别名的 REST 语法如下:

 

#索引别名
PUT /<index>/_alias/<alias>?master_timeout=<time>&timeout=<time>
#过滤别名,路由别名
PUT /<index>/_alias/<alias>?master_timeout=<time>&timeout=<time>
{
  "routing" : "routing_value",
  "filter" : {
    "term" : {
      "filed" : value
    }
  }
}
#以下三种方式同上
POST /<index>/_alias/<alias>
PUT /<index>/_aliases/<alias>
POST /<index>/_aliases/<alias>

URI参数释意

 


 

必填参数,参数类型string;该参数可以由逗号分隔的索引,或者用通配符表达式。值也可为_all,表示作用于集群中的所有索引。

 


 

必填参数,参数类型string,索引别名,建议名字使用有意义的单词和数字组成。

 

master_timeout

 

可选参数,value值的单位可为d、h、m、s、ms、micros、nanos;等待连接到主节点的时间。如果在超时时间阈值之前没有收到响应,则请求失败并返回错误,默认值为30s。

 

 timeout

 

可选参数,value值的单位可为d、h、m、s、ms、micros、nanos;请求等待响应的时间。如果在超时时间阈值之前没有收到响应,则请求失败并返回错误,默认值为30s。

 

请求体

 

创建一个索引别名的时候,通常路由别名和过滤别名需要指定请求体。

 

filter

 

必填参数,将过滤参数绑定到别名,使别名具有特定的查询功能;包含此参数的别名,通常将其称作为过滤别名。

 

routing

 

可选string类型参数,自定义路由值用于将操作路由到特定分片的;包含此参数的我们通常将其称作为路由别名。

 

批量创建别名

 

批量创建别名 REST 语法如下:


POST /_aliases?master_timeout=<time>&timeout=<time>
{
  "actions" : [
    { "<action>" : { "alias" : "index-alias", "<must_param>" : "value", "<option_param>" : "value",... } }
  ]
}

请求体参数释意

 

actions

 

必填参数,数组内包含一系列的动作,支持的动作如下

 

add

 

为一个索引或多个索引添加一个别名

 

remove

 

将别名移除与索引的关联关系

 

remove_index

 

删除索引,等效于 delete index API。该动作只对索引别名生效,如果尝试删除索引别名,将会失败。

 

《Elastic Stack 实战手册》——三、产品能力——3.4.入门篇——3.4.2.Elasticsearch基础应用——3.4.2.11.Index alias(2) https://developer.aliyun.com/article/1230379

 


 

相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。 &nbsp;
相关文章
AutoJS4.1.0实战教程 ---快音
AutoJS4.1.0实战教程 ---快音
371 0
|
机器学习/深度学习 存储 数据挖掘
Google Colab:云端的Python编程神器
Google Colab,全名Google Colaboratory,是Google Research团队开发的一款云端编程工具,它允许任何人通过浏览器编写和执行Python代码。Colab尤其适合机器学习、数据分析和教育目的。它是一种托管式Jupyter笔记本服务,用户无需设置,就可以直接使用,同时还能获得GPU等计算资源的免费使用权限。
2529 0
Google Colab:云端的Python编程神器
124Echarts - 关系图(Graph Dynamic)
124Echarts - 关系图(Graph Dynamic)
292 0
|
JSON Shell API
免费导航规划API接口详解:调用指南与实战示例
该接口由接口盒子提供,支持根据起点、终点及途经点生成驾车或步行导航路线,可获取详细或简化导航数据。提供GET/POST请求方式,需传入坐标信息及用户认证参数,适用于物流路径优化、步行导航、旅游路线规划等场景。
502 0
|
3月前
|
人工智能 算法 固态存储
人脸多类型皮肤瑕疵智能检测数据集(Facial Skin Defect)| 3000张YOLO皮肤分析数据集
本数据集含3000张高分辨率人脸图像,覆盖8类皮肤瑕疵(如色斑、痘痘、皱纹等),采用YOLO标准格式标注,适配YOLOv5-v11等主流检测模型,专为智能美妆、医美辅助诊断与皮肤AI研究打造,支持多肤色、多光照、多尺度场景。
|
4月前
|
存储 监控 NoSQL
【Redis】Redis 高可用:主从复制、哨兵Sentinel、Redis Cluster分片原理、哈希槽、故障转移、数据倾斜优化
本文系统梳理Redis高可用演进路径(单机→主从→哨兵→Cluster),深入解析三大方案原理:主从复制的PSYNC增量同步机制、哨兵的双层下线判定与Raft选举、Cluster的哈希槽分片与Gossip通信。涵盖故障自愈、数据一致、水平扩展等核心目标,及脑裂防控、数据倾斜治理等生产级最佳实践。
|
5月前
|
人工智能 自然语言处理 搜索推荐
知识蒸馏(KD)深度落地:解锁GEO生成式优化轻量化高性能方案
知识蒸馏作为大模型轻量化的核心底层技术,有效解决了大模型落地贵、运行慢、部署难的痛点,让轻量化模型也能具备接近大模型的搜索语义理解与高质量内容生成能力。
|
9月前
|
自然语言处理 关系型数据库 MySQL
MySQL 全文索引
MySQL全文索引支持对CHAR、VARCHAR、TEXT字段进行高效文本搜索,适用于文章、评论等长文本。通过MATCH()与AGAINST()实现自然语言或布尔模式查询,支持分词、停用词过滤和最小词长设置。可创建于建表时或后期添加,适用于搜索引擎、CMS、电商等场景,提升关键词检索效率,但需权衡增删改开销与索引维护成本。(238字)
|
设计模式 Java 开发者
吐血整理!最全Spring设计模式总结
吐血整理!最全Spring设计模式总结
1702 0
吐血整理!最全Spring设计模式总结
|
存储 关系型数据库 MySQL
MySQL中的Redo Log、Undo Log和Binlog:深入解析
【10月更文挑战第21天】在数据库管理系统中,日志是保障数据一致性和完整性的关键机制。MySQL作为一种广泛使用的关系型数据库管理系统,提供了多种日志类型来满足不同的需求。本文将详细介绍MySQL中的Redo Log、Undo Log和Binlog,从背景、业务场景、功能、底层实现原理、使用措施等方面进行详细分析,并通过Java代码示例展示如何与这些日志进行交互。
1369 0

热门文章

最新文章