springboot 使用 Spring Data Elasticsearch 添加别名、删除别名

说明

给索引添加别名、删除别名

controller

/**
 * 添加别名
 */
@RequestMapping("/alias")
public void alias(){
    IndexOperations io=elasticsearchRestTemplate.indexOps(IndexCoordinates.of("toutiao_v6"));
    AliasActionParameters aap = AliasActionParameters
            .builder()
            .withIndices("toutiao_v6") // 必须设置索引
            .withAliases("toutiao_x") // 要添加别名的名字
            .build();
    // 这里用的 Add 类
    AliasAction.Add add = new AliasAction.Add(aap);
    AliasActions aa = new AliasActions(add);

    io.alias(aa);

}

/**
 * 删除别名
 */
@RequestMapping("/removeAlias")
public void removeAlias(){
    IndexOperations io=elasticsearchRestTemplate.indexOps(IndexCoordinates.of("toutiao_v6"));
    AliasActionParameters aap = AliasActionParameters
            .builder()
            .withIndices("toutiao_v6") // 必须设置索引
            .withAliases("toutiao_x") // 要删除别名的名字
            .build();
    // 这里用的 Remove 类
    AliasAction.Remove remove = new AliasAction.Remove(aap);
    AliasActions aa = new AliasActions(remove);

    io.alias(aa);

}

测试

访问相应controller

查询

在 kibana 执行下面查询:

get /toutiao_x/_search

参考:
https://blog.csdn.net/he37176427/article/details/112686608


原文出处:https://malaoshi.top/show_1IX4rBkOqPy9.html