日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 综合教程 >内容正文

综合教程

Elasticsearch之别名

發(fā)布時(shí)間:2023/12/13 综合教程 31 生活家
生活随笔 收集整理的這篇文章主要介紹了 Elasticsearch之别名 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

別名解決的問(wèn)題

  在運(yùn)行的集群中可以從一個(gè)索引切換到另一個(gè)索引

  可以給多個(gè)索引進(jìn)行分組

  可以與路由搭配使用

別名的相關(guān)操作

準(zhǔn)備數(shù)據(jù)階段

PUT l1/doc/1
{
  "title":"我想要睡你"
}

PUT l2/doc/1
{
  "title":"你卻拿我當(dāng)兄弟"
}

PUT l3/doc/1
{
  "title":"不過(guò),我不介意"
}

創(chuàng)建別名 給l1索引創(chuàng)建別名a1(_aliases actions add)

POST _aliases
{
  "actions": [
    {
      "add": {
        "index": "l1",
        "alias": "a1"
      }
    }
  ]
}

查看別名

GET l1/_alias

查看結(jié)果

{
  "l1" : {
    "aliases" : {
      "a1" : { }
    }
  }
}

刪除別名(actions remove)

POST _aliases
{
  "actions": [
    {
      "remove": {
        "index": "l1",
        "alias": "a1"
      }
    }
  ]
}

重命名別名(淘汰舊的索引上的別名,生成新的索引上的別名)

POST _aliases
{
  "actions": [
    {
      "remove": {
        "index": "l1",
        "alias": "a1"
      }
    },
    {
      "add": {
        "index": "l2",
        "alias": "a1"
      }
    }
  ]
}

為多個(gè)索引指向同樣的別名(證實(shí)為多個(gè)索引分組)

POST _aliases
{
  "actions": [
    {"add": {"index": "l1", "alias": "a1"}},
    {"add": {"index": "l2", "alias": "a1"}},
    {"add": {"index": "l3", "alias": "a1"}}
  ]
}

使用indeices數(shù)組語(yǔ)法在一個(gè)操作中為多個(gè)索引指向別名

多個(gè)索引指向同一別名

POST _aliases
{
  "actions": [
    {"add": {"indices": ["l1", "l2", "l3"], "alias": "a2"}}
  ]
}

一個(gè)索引指向多個(gè)別名

POST _aliases
{
  "actions": [
    {"add": {"index": "l1", "aliases": ["a1", "a2", "a3"]}}
  ]
}

將別名關(guān)聯(lián)到擁有公共名稱的索引(將索引 l1 l2 l3指向f1別名)

POST _aliases
{
  "actions": [
    {"add": {"index": "l*", "alias": "f1"}}
  ]
}

別名交換

POST _aliases
{
  "actions": [
    {"add": {"index": "l1", "alias": "a1"}},
    {"remove_index":{"index":"a1"}}
  ]
}

# 就像刪除a1別名

過(guò)濾器別名

1.自定義索引

2.插入數(shù)據(jù)

3.普通查詢和根據(jù)別名查詢

PUT l4
{
  "mappings": {
    "doc":{
      "properties":{
        "year":{
          "type":"integer"
        },
        "method":{
          "type":"keyword"
        }
      }
    }
  }
}


PUT l4/doc/1
{
  "year":2019,
  "method":"GET"
}
PUT l4/doc/2
{
  "year":2018,
  "method":"POST"
}
PUT l4/doc/3
{
  "year":2019,
  "method":"POST"
}

POST _aliases
{
  "actions": [
    {
      "add": {
        "index": "l4",
        "alias": "a4",
        "filter": {
          "term": {
            "year": 2019
          }
        }
      }
    }
  ]
}

GET l4/doc/_search
GET a4/doc/_search

此時(shí)兩種查詢結(jié)果不同(帶有過(guò)濾的只返回2019,而普通查詢會(huì)全部返回)

與路由連用

簡(jiǎn)單實(shí)例

POST _aliases
{
  "actions": [
    {
      "add": {
        "index": "l4",
        "alias": "a4",
        "routing": "2"
      }
    }
  ]
}

再列舉一個(gè)

POST _aliases
{
  "actions": [
    {
      "add": {
        "index": "l4",
        "alias": "a4",
        "search_routing": "1,2",
        "index_routing": "1"
      }
    }
  ]
}

GET a4/doc/_search?q=year:2019&routing=2
# 取交集2

寫索引(如果多個(gè)索引指向一個(gè)別名,通過(guò)別名寫索引,不指定es不知道)

POST _aliases
{
  "actions": [
    {
      "add": {
        "index": "l1",
        "alias": "a1",
        "is_write_index": true
      }
    },
    {
      "add": {
        "index": "l2",
        "alias": "a1"
      }
    }
  ]
}

添加單個(gè)別名

PUT {index}/_alias/{name}
PUT {index}/_alias/{name}?routing=user1

index,要為哪個(gè)索引添加別名。
name,別名的名稱。
routing,可以與別名關(guān)聯(lián)的路由。

刪除別名

DELETE l1/_alias/a1
DELETE l2/_aliases/a*

檢索現(xiàn)有別名

GET l1/_alias/a*    # 查詢索引l1指向以a開(kāi)頭的所有別名
GET l1/_alias/*     # 查詢索引l1所有的別名

查詢所有別名是a1

GET /_alias/a1

HEAD檢測(cè)別名是否存在

GET _cat/aliases
HEAD _alias/a1

轉(zhuǎn)自:https://www.cnblogs.com/Alexephor/p/11413722.html

總結(jié)

以上是生活随笔為你收集整理的Elasticsearch之别名的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。