es中是不允許對索引修改,所以只有先建立乙個新索引,將舊索引資料移動到新索引中,然後再刪除舊索引,再將新索引的資料遷移到舊索引名下,操作方式如下:
# 刪除原有的template
# 建立新template
"index_patterns": [
"settings": {
"number_of_shards": 5,
"refresh_interval": "60s"
"_source": {
"enabled": true
"properties": {
"time": {
"type": "long"
"element": {
"properties": {
"element_id": {
"type": "keyword"
"uuid": {
"type": "keyword"
"type": "keyword"
"event_type": {
"type": "keyword"
"event_name": {
"type": "keyword"
"path": {
"type": "keyword"
"sdk_version": {
"type": "integer"
"type": "keyword"
# 建立新索引
# 將舊索引遷移到新索引下
post /_reindex
"source": {
"dest": {
# 刪除舊索引
# 將新索引資料遷移到舊索引名下
post /_reindex
"source": {
"dest": {
# 刪除新索引
# 檢視索引結構
修改ES分片規則
es查詢的時候預設是隨機從一些分片中查詢資料,可以通過配置讓es從某些分片中查詢資料 1 local 指查詢操作會優先在本地節點有的分片中查詢,沒有的話再在其它節點查詢。2 primary 指查詢只在主分片中查詢 3 primary first 指查詢會先在主分片中查詢,如果主分片找不到 掛了 就會...
Es修改分詞相關操作
最近修改了elasticsearch分詞。並reindex索引。使用的分詞外掛程式是hanlp 修改完分詞之後將對應的bin檔案上傳到服務,並替換對應的bin檔案 伺服器es對應的路徑elasticsearch plugins analysis hanlp data dictionary 替換完成之...
ES系列 修改字段對映型別
之前在沒有建立索引模板的時候,直接通過logstash往es裡塞資料,其中一些欄位的型別並不符合我們需要,這個時候就需要去修改欄位的對映型別了。es不支援直接修改字段型別,解決思路 新建臨時索引,執行字段型別,複製資料 刪除舊索引,重建同名索引,從臨時索引複製資料 獲取舊索引的字段對映 建立臨時索引...