91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Elasticsearch索引別名怎么創建

發布時間:2021-12-16 10:30:09 來源:億速云 閱讀:983 作者:iii 欄目:云計算

這篇文章主要介紹“Elasticsearch索引別名怎么創建”,在日常操作中,相信很多人在Elasticsearch索引別名怎么創建問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Elasticsearch索引別名怎么創建”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

一、

Elasticsearch的別名,就類似數據庫的視圖。

創建別名:

我們為索引my_index創建一個別名my_index_alias,這樣我們對my_index_alias的操作就像對my_index的操作一樣

POST /_aliases
{
  "actions": [
    {
      "add": {
        "index": "my_index",
        "alias": "my_index_alias"
      }
    }
  ]
}

別名不僅僅可以關聯一個索引,它能聚合多個索引

我們為索引my_index_1 和 my_index_2 創建一個別名my_index_alias,這樣對my_index_alias的操作(僅限讀操作),會操作my_index_1和my_index_2,類似于聚合了my_index_1和my_index_2.我們是不能對my_index_alias進行寫操作,當有多個索引時alias,不能區分到底操作哪一個

POST /_aliases
{
  "actions": [
    {
      "add": {
        "index": "my_index_1",
        "alias": "my_index_alias"
      }
    },
    {
      "add": {
        "index": "my_index_2",
        "alias": "my_index_alias"
      }
    }
  ]
}

GET /my_index_alias/_search
{
}

創建filtered的別名:

例如對于同一個index,我們給不同人看到不同的數據,

如my_index有個字段是team,team字段記錄了該數據是那個team的。team之間的數據是不可見的。

POST /_aliases
{
  "actions": [
    {
      "add": {
        "index": "my_index",
        "alias": "my_index__teamA_alias",
        "filter":{
            "term":{
                "team":"teamA"
            }
        }
      }
    },
    {
      "add": {
        "index": "my_index",
        "alias": "my_index__teamB_alias",
        "filter":{
            "term":{
                "team":"teamB"
            }
        }
      }
    },
    {
      "add": {
        "index": "my_index",
        "alias": "my_index__team_alias"
      }
    }
  ]
}

GET /my_index__teamA_alias/_search 只能看到teamA的數據
GET /my_index__teamB_alias/_search 只能看到teamB的數據
GET /my_index__team_alias/_search 既能看到teamA的,也能看到teamB的數據

二、情景

情景1:用Logstash采集當前所有nginx的日志,放入ES,索引名叫nginx-YYYY.MM.DD

后來又增加了apache的日志,希望能放到同一個索引中,統一叫做web-YYYY.MM.DD

我們只要把logstash的配置更改下,然后重啟,這樣數據就會寫入到新的索引下,但是同一天的索引就會被寫入2個索引中,Kibana中就不好配置了。

解決方案:

1.今天是2015-11-13.我們為nginx-2015.11.13創建一個alias叫做web-2015.07.28,之前所有的nginx日志也這樣

2.kibana中把dashboard的配置索引名改為web-YYYY.MM.DD

3.將logstash里面的elasticsearch的配置改為web-YYYY.MM.DD,重啟

情景2:用Logstash采集當前所有nginx的日志,放入ES,索引名叫nginx-YYYY.MM.DD

某天2015-11-13希望按照月來建立索引,索引名改為nginx-YYYY.MM

注意:像情景1中,我們建立一個nginx-2015.11的alias執行本月的其他索引,是不行的。因為一個alias指向多個索引后,寫這個alias時,ES不可能知道寫入到那個真正的索引中。

解決方案1:

1.新建索引nginx-2015.11 以及它的nginx-2015.11.01,nginx-2015.11.02,...,nginx-2015.11.30等

2.等到了第二天,將logstash的配置改為nginx-YYYY.MM,重啟

3.如果索引只保留10天,在10天候的某天,將kibana的配置改為nginx-YYYY.MM

缺點:第二步和第三步需要手工,可以寫crontab定時任務

我們不希望用戶(Kibaba的使用者)感覺到任何變化,更不能讓使用者感覺到數據的丟失。

到此,關于“Elasticsearch索引別名怎么創建”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

武汉市| 乌拉特中旗| 类乌齐县| 赤峰市| 福清市| 北宁市| 陕西省| 上杭县| 吴桥县| 焦作市| 米泉市| 福建省| 岳阳市| 永平县| 海伦市| 万年县| 阳朔县| 凤冈县| 女性| 运城市| 石景山区| 界首市| 南昌县| 儋州市| 彭泽县| 马鞍山市| 安福县| 滦南县| 深水埗区| 洛隆县| 长乐市| 泰安市| 鄂托克旗| 微博| 威远县| 绥化市| 西畴县| 新民市| 安岳县| 中西区| 明溪县|