带你读《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值的单位可为dhmsmsmicros、nanos;等待连接到主节点的时间。如果在超时时间阈值之前没有收到响应,则请求失败并返回错误,默认值为30s

 

 timeout

 

可选参数,value值的单位可为dhmsmsmicrosnanos;请求等待响应的时间。如果在超时时间阈值之前没有收到响应,则请求失败并返回错误,默认值为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;
相关文章
|
存储 缓存 负载均衡
一致性 Hash 算法 Hash 环发生偏移怎么解决
一致性 Hash 算法 Hash 环发生偏移怎么解决
473 1
AutoJS4.1.0实战教程 ---快音
AutoJS4.1.0实战教程 ---快音
337 0
|
12月前
|
JSON Shell API
免费导航规划API接口详解:调用指南与实战示例
该接口由接口盒子提供,支持根据起点、终点及途经点生成驾车或步行导航路线,可获取详细或简化导航数据。提供GET/POST请求方式,需传入坐标信息及用户认证参数,适用于物流路径优化、步行导航、旅游路线规划等场景。
455 0
|
5月前
|
Shell 网络安全 开发工具
Windows系统如何查看ssh公钥
若公钥是门锁,则私钥就像那把唯一的钥匙
612 1
|
存储 API C++
LabVIEW将现有数据文件映射至TDMS数据文件格式
LabVIEW将现有数据文件映射至TDMS数据文件格式
325 2
|
存储 关系型数据库 MySQL
MySQL中的Redo Log、Undo Log和Binlog:深入解析
【10月更文挑战第21天】在数据库管理系统中,日志是保障数据一致性和完整性的关键机制。MySQL作为一种广泛使用的关系型数据库管理系统,提供了多种日志类型来满足不同的需求。本文将详细介绍MySQL中的Redo Log、Undo Log和Binlog,从背景、业务场景、功能、底层实现原理、使用措施等方面进行详细分析,并通过Java代码示例展示如何与这些日志进行交互。
1327 0
|
Linux
linux centos7查看linux的登录日志
linux centos7查看linux的登录日志
1347 2
linux centos7查看linux的登录日志
|
存储 程序员 C语言
探索C语言中的浮点型数据类型及其应用
探索C语言中的浮点型数据类型及其应用
1797 0
|
机器学习/深度学习 数据采集 算法
图像处理神经网络数据预处理方法
图像预处理步骤对于图像处理神经网络至关重要。这些步骤不仅保证了数据的一致性和质量,还可以通过数据增强等技术提高模型的泛化能力,从而提升模型的整体性能。每一步骤的选择和应用都基于具体任务和数据集的特性,并在模型训练和测试过程中起到关键作用。
862 0
|
开发框架 前端开发 JavaScript
构建响应式设计超赞!Blazor 与 Bootstrap 完美结合,开启高效 Web 开发新潮流!
【8月更文挑战第31天】在当前的网络环境中,响应式设计是打造优质用户体验的核心。为满足用户在不同设备上的需求,Blazor结合Bootstrap成为构建响应式设计的高效方案。Blazor作为C#和 .NET技术栈下的Web开发框架,实现了服务端与客户端同语言开发,提升了开发效率与代码维护性。而Bootstrap作为一个流行的前端框架,提供了丰富的CSS和JavaScript组件,便于快速搭建美观且响应式的用户界面。结合两者的优点,可以轻松实现复杂Web应用的高效开发。
706 0

热门文章

最新文章