Elasticsearch(2) 索引詳談

2022-06-10 16:27:09 字數 1241 閱讀 4830

建立乙個索引的方法很簡單,在kibana中執行下行請求即可建立乙個名為「index1」的索引:

put /index1

執行結果如下所示,左側為我們輸入的請求語句,遞減三角形按鈕執行後,出現右側返回結果。

注意,如果「index1」索引名已經存在,則會報錯。acknowledgedshards_acknowledged的值僅表示在超時前索引是否建立成功及是否為每個分片建立好指定數量的副本,就算它們的值為false也不代表索引建立失敗,應該索引在超時後也可能建立完成。

另外,索引名必須符合以下規則:

es中可以為索引新增別名,乙個別名可以指向到多個索引中,同時在新增別名時可以設定篩選條件,指向乙個索引的部分資料,實現在關聯式資料庫彙總的檢視功能,這就是es中別名的強大之處。別名可以再建立索引時新增,也可以在索引建立後進行新增,es中提供豐富的api對別名進行管理。在本篇部落格,我們以索引為主,只是簡單說說在建立索引時如何新增別名。更多別名內容請參考官方文件

如下所示,在建立index3索引時,我們同時為其建立alias_1和alias_2別名,其中alias_2指定篩選條件,最後通過routing引數指定分片路由。

put /index3 , "alias_2": }, "routing": "shard-1" } } }

在建立索引時,我們可以在通過對映,對索引中欄位、字段型別等等內容進行配置。例如:

put /index2

}}

還可以寫得更加簡單一點:

put /my-index-000001

}

更進一步的,可以同時指定多個索引名,檢視多個索引資訊。

get /index1,index2

或者通過_all引數指定檢視所有索引資訊。

get /_all

索引存在時:

索引不存在時:

es中索引支援關閉和開啟操作,乙個關閉的索引除了維護元資料的基本消耗外,幾乎沒有任何其他開銷,在關閉狀態下的索引禁止進行io操作,再次開啟後可恢復正常狀態。

關閉索引:

post /index1/_close

開啟索引:

post /index1/_open

delete /index3?pretty

ElasticSearch權威指南學習(索引管理)

當我們需要確保索引被建立在適當數量的分片上,在索引資料之前設定好分析器和型別對映。手動建立索引,在請求中加入所有設定和型別對映,如下所示 put my index 你可以通過在 config elasticsearch.yml 中新增下面的配置來防止自動建立索引。action.auto create...

elasticsearch 建立靜態對映索引

所謂靜態對映就是像mysql一樣在建表的時候對各個欄位的屬性進行設定 put books process settings 建立索引為 books 型別為 it以上索引的it型別 進行資料插入時,只要是字段不是title,process都會報錯 properties number user id c...

Elasticsearch 使用集群 建立索引

elasticsearch 修改資料 elasticsearch 搜尋資料 現在讓我們建立乙個名為 customer 的索引,然後再次列出所有索引 api格式 put customer?pretty get cat indices?v第乙個命令使用put建立名為 customer 的索引。末尾追加p...