ElasticSearch 학습노트: Reindex

2723 단어 ElasticSearch
본문 목록
1 새 인덱스 만들기(Index)
2 데이터 가져오기(Reindex)
3 대량 업데이트(Update by Query)
4 별칭 새로 만들기/삭제(Alias)
5 관련 기사
 

1 새 인덱스 만들기(Index)


주의: 존재하는 인덱스로 데이터를 이전해야 한다면 새로운 인덱스를 만들 필요가 없습니다.
PUT /
{
  "settings": {
    "index": {
      "number_of_shards": 5,
      "number_of_replicas": 1
    }
  }
}

2 데이터 가져오기(Reindex)

POST /_reindex
{
  "source": {
    "index": "",
    "type": "",
    "query": {
      ...
    },
    "sort": {
      "": "asc/desc"
    },
    "size": ,
    "_source": [
      "",
      "",
      ...
    ]
  },
  "dest": {
    "index": "",
    "version_type": "internal(default)/external",
    "op_type": "create"
  }
}

설명:
(1)version_type:
internal은 모든 데이터를 이전하고 충돌 문서를 완전히 덮어씁니다. 대상 인덱스 문서 버전이 원본 인덱스 문서에 새로 추가되었더라도.
external은 모든 데이터를 이전하고 이전 버전의 충돌 문서를 업데이트합니다.
(2)op_type:
create 는 대상 인덱스가 존재하지 않는 문서만 만듭니다.

3 대량 업데이트(Update by Query)

POST ///_update_by_query
{
  "query": {
    "match_all": {}
  },
  "script": {
    "inline/source": "ctx._source. = ctx._source. + ''"
  }
}

설명:
inline: ES 5.6 버전 이전;
소스: ES 5.6 버전 및 이후
 

4 별칭 새로 만들기 / 삭제(Alias)

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

{
  "actions": [
    {
      "remove": {
        "index": "",
        "alias": ""
      }
    }
  ]
}

 

5 관련 기사


ElasticSearch 학습 노트: 일반
ElasticSearch 학습노트: Mapping
ElasticSearch 학습 노트: Multi Search

좋은 웹페이지 즐겨찾기