首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >9.ES别名你用对了么?

9.ES别名你用对了么?

作者头像
AI码师
发布于 2023-10-30 08:23:56
发布于 2023-10-30 08:23:56
49600
代码可运行
举报
运行总次数:0
代码可运行

在 Elasticsearch 中,索引别名(Index Alias)是一个非常有用的功能,它允许你为一个或多个索引分配一个更友好、更易于理解的名称。别名不是实际的索引,而是一个指向一个或多个索引的标识符。通过使用别名,你可以隐藏实际索引的名称,使得在应用程序中使用更具有可读性的名称,同时还能提供灵活性和便利性。

别名的创建

先创建两个普通索引

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
PUT lglbc_log001/_doc/1
{
  "name":"登录",
  "api":"/login",
  "method":"post"
}
PUT lglbc_log002/_doc/2
{
  "name":"注销",
  "api":"/logout",
  "method":"post"
}

执行创建别名请求

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
POST /_aliases
{
  "actions": [
    {
      "add": {
        "index": "lglbc_log001",
        "alias": "lglbc_log"
      }
    },
    
    {
      "add": {
        "index": "lglbc_log002",
        "alias": "lglbc_log"
      }
    }
  ]
}

按照别名搜索

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
GET lglbc_log/_search

在别名中实现数据过滤

如果你想在查询别名时,提前加上过滤条件,那么你可以这么做: 先塞一条GET 请求的数据:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
PUT lglbc_log002/_doc/3
{
  "name":"用户列表",
  "api":"/user/list",
  "method":"get"
}

修改过滤器,使其支持method:post过滤

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
POST _aliases
{
  "actions": [
    {
      "add": {
        "index": "lglbc_log001",
        "alias": "lglbc_log",
        "filter": {
          "term": {
            "method": "post"
          }
        }
      }
    },
    {
      "add": {
        "index": "lglbc_log002",
        "alias": "lglbc_log",
        "filter": {
          "term": {
            "method": "post"
          }
        }
      }
    }
  ]
}

再次查询,发现刚才添加的数据被过滤掉了,说明过滤器有作用了

查看别名

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
GET _alias/lglbc_log

删除别名

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
POST _aliases
{
  "actions": [
    {
      "remove": {
        "index": "lglbc_log001",
        "alias": "lglbc_log"
      }
    }
  ]
}
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-10-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 乐哥聊编程 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
ElasticSearch最全详细使用教程:入门、索引管理、映射详解、索引别名、分词器、文档管理、路由、搜索详解
墨墨导读:之前我们分享了ElasticSearch最全详细使用教程:入门、索引管理、映射详解,本文详细介绍ElasticSearch的索引别名、分词器、文档管理、路由、搜索详解。
数据和云
2019/08/16
4.2K0
Elasticsearch Index Aliases详解
index aliases,索引别名,有点类似名称映射,一个索引别名可以映射多个真实索引,索引别名在定义时还支持filter,构成同一个索引,不同的视图。
丁威
2019/06/11
1.8K0
11.ES索引模版使用
Elasticsearch 索引模板(Index Template)是一种用于自动创建和管理索引的模板,它允许你在创建新索引时自动应用一组预定义的设置和映射规则。索引模板通常用于定义一组共享的索引设置,确保新创建的索引具有一致的结构和配置。
AI码师
2023/12/14
4650
11.ES索引模版使用
10.ES滚动索引如何使用
索引滚动是一种管理索引的策略,用于优化性能和资源利用,特别是在处理大量数据时。当索引数据量逐渐增大时,可能会出现性能下降或资源压力过大的情况。为了避免这些问题,可以使用索引滚动策略来定期创建新的索引,并将数据从旧索引滚动(移动)到新索引。
AI码师
2023/11/08
7260
10.ES滚动索引如何使用
Elasticsearch基础但非常有用的功能之一:别名
本文是系列文章第一篇。介绍Elasticsearch的一些非常基础但实战开发确非常有用的技术点。了解这些技术点会帮助你设计更易于维护的数据索引,预先知道PB级大数据索引实战中的坑,提升工作效率。
铭毅天下
2019/06/05
8.4K0
Elasticsearch基础但非常有用的功能之一:别名
es创建索引及别名更新mapping方法 elasticsearch [nested] nested object under path [XXX] is not of nested type
[nested] nested object under path [XXX] is not of nested type这是因为在创建索引时没有指定类型为数组,这就是一个大坑,ES官方说可以不用指定数字组类型,结果不指定的聚合结果还不一样!!!
oktokeep
2024/10/09
2680
Elasticsearch 实战案例(索引切分、模板、别名、数据迁移)
基于ELK搭建的日志平台,前期匆忙建设过程中一些参数和设计未做过多的考虑,上线后就需要不断根据实际情况做调整,而一些调整限于ELK的一些特性,一旦操作不当就会出现丢数据、数据写入异常、数据查不到等情况。
高广超
2019/02/25
2.8K0
Elasticsearch 实战案例(索引切分、模板、别名、数据迁移)
白话Elasticsearch73_ES生产集群中的索引管理02
Index APIs: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices.html
小小工匠
2021/08/17
3620
Elasticsearch 高级操作-别名
在 Elasticsearch 中,别名是一个指向一个或多个索引的逻辑名称。使用别名可以帮助我们简化索引的管理和查询。当我们需要在多个索引上执行相同的查询时,使用别名可以让我们只需要在一个地方定义查询,而不需要在多个索引上重复定义。
堕落飞鸟
2023/05/09
6520
一步一步理解ES中的索引管理逻辑,从手动_rollover到ILM
在早期的版本中,索引中的数据增长到一定量之后,如何实现无感切换,答案是通过定时任务和_rollover api,注意_rollover api只能应用于别名,并且应用切换条件。
周银辉
2024/07/19
5140
Elasticsearch alias别名管理小结
"alias": "test1_index_alias"
授客
2019/09/11
7500
Elasticsearch alias别名管理小结
DSL语言高级查询
对一个字段进行匹配查询,match 类型查询,match 类型查询,会把查询条件进行分词,or 关系,多个词条之间是 or 的关系:
程序员NEO
2023/09/27
4570
DSL语言高级查询
Elasticsearch 7.x:2、索引管理
创建索引时,可以制定相关设置,比如设置索引的分片数number_of_shards和副本数number_of_replicas
程裕强
2019/05/27
2.9K0
021.Elasticsearch索引管理高级篇
在开发中,随着业务需求的迭代,较老的业务逻辑就要面临更新甚至是重构,而对于ES来说,为了适应新的业务逻辑,可能就要对原有的索引做一些修改,比如对某些字段做调整,甚至是重建索引,而做这些操作的时候,可能会对业务造成影响,甚至需要停机调整,由此,ES引入了索引别名来解决这些问题,索引别名就像一个快捷方式或是软链接,可以指向一个或多个索引,也可以给任意一个需要索引别名的API来使用,别名的应用为程序提供了极大的灵活性。
CoderJed
2020/07/16
8900
Elasticsearch从入门到放弃:索引基本使用方法
前文我们提到,Elasticsearch的数据都存储在索引中,也就是说,索引相当于是MySQL中的数据库。是最基础的概念。今天分享的也是关于索引的一些常用的操作。
Jackeyzhe
2020/03/11
1K0
ElasticSearch的Reindex
ES在BI应用中常常仅仅只作为全文检索库,数据的加工在数据库中进行,数据如何同步到ES中?一般的思路有增量和全量,对于超大数量的场景,如千万、亿+,全量的同步会非常慢,如何进行增量呢?ES支持在内部reindex,其包含哪些场景?给索引增、删、改一列或某些列是否可以单独只同步修改的列?
零分影魔
2020/08/20
2.8K0
腾讯云Elasticsearch集群运维常用命令详解三(索引篇)
在前两篇文章里,我们分别从集群和节点层面向大家介绍了日常集群运维工作中常用到的一些命令。接下来我们继续从索引层面来介绍几个常用到的集群运维API。
吴容
2021/12/23
3K2
腾讯云Elasticsearch集群运维常用命令详解三(索引篇)
Elasticsearch 别名:灵活索引管理的利器
在 Elasticsearch 中,别名是一个或多个索引的替代名称。它允许我们在不更改查询代码的情况下,轻松地更改索引的映射或重新索引数据。别名的工作原理非常简单:它只是在 Elasticsearch 内部维护了一个从别名到索引名称的映射关系。当客户端向一个别名发起请求时,Elasticsearch 会自动将请求路由到该别名对应的索引上。
公众号:码到三十五
2024/03/19
4930
Elasticsearch:Index alias
现在让我们来谈谈 Elasticsearch 最简单和最有用的功能之一:别名 (alias)。为了区分这里 alias 和文章“Elasticsearch : alias数据类型”,这里的别名(alias)指的是 index 的别名。 别名正是他们听起来的样子; 它们是您可以使用的指针或名称,对应于一个或多个具体索引。 事实证明这非常有用,因为它在扩展集群和管理数据在索引中的布局方式时提供了灵活性。 即使使用Elasticsearch 只有一个索引的集群,使用别名。 您将在以后感谢我们给予您的灵活性。
腾讯云大数据
2020/09/23
1.7K0
Elasticsearch:Index alias
Elasticsearch 命令操作小全
dynamic 可以分为动态映射(dynamic mapping)和静态(显式)映射(explicit mapping)和精确(严格)映射(strict mappings),具体由dynamic属性控制。
用户2825413
2020/04/15
6170
Elasticsearch 命令操作小全
推荐阅读
相关推荐
ElasticSearch最全详细使用教程:入门、索引管理、映射详解、索引别名、分词器、文档管理、路由、搜索详解
更多 >
LV.1
这个人很懒,什么都没有留下~
交个朋友
加入架构与运维学习入门群
系统架构设计入门 运维体系构建指南
加入架构与运维工作实战群
高并发系统设计 运维自动化实践
加入架构与运维趋势交流群
技术趋势前瞻 架构演进方向
换一批
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档