English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Elasticsearch 인덱스 API

이 API는 인덱스의 모든 측면을 관리합니다. 예를 들어 설정, 별명, 매핑, 인덱스 템플릿 등.

인덱스 생성

이 API는 인덱스를 생성하는 데 도움을 줍니다. 사용자가 JSON 객체를 어떤 인덱스에 전달할 때, 인덱스를 자동으로 생성할 수도 있고, 이전에 생성할 수도 있습니다. 인덱스를 생성하려면 설정, 매핑, 별명을 포함한 PUT 요청을 보내거나, 간단한 요청만 보내도 됩니다.

PUT colleges

위의 코드를 실행하면 다음과 같은 출력을 얻습니다-

{
   "acknowledged": true,
   "shards_acknowledged": true,
   "index": "colleges"
}

위 명령어에 설정을 추가할 수 있습니다.-

PUT colleges
{
  "settings": {
      "index": {
         "number_of_shards": 3,
         "number_of_replicas": 2
      }
   }
}

위의 코드를 실행하면 다음과 같은 출력을 얻습니다-

{
   "acknowledged": true,
   "shards_acknowledged": true,
   "index": "colleges"
}

인덱스 지우기

이 API는 어떤 인덱스를 지우는 데 도움을 줍니다. 특정 인덱스 이름을 포함한 삭제 요청을 전달하면 됩니다.

DELETE /colleges

모든 인덱스를 지우기 위해 _all 또는*모든 인덱스를 지우기

인덱스 가져오기

이 API는 단순히 하나나 여러 개의 인덱스에 get 요청을 보내면 해당 인덱스에 대한 정보를 반환합니다.

GET colleges

위의 코드를 실행하면 다음과 같은 출력을 얻습니다-

{
   "colleges": {
      "aliases": {
         "alias_1": { },
         "alias_2": {
            "filter": {
               "term": {
                  "user": "pkay"
               }
            },
            "index_routing": "pkay",
            "search_routing": "pkay"
         }
      },
      "mappings": { },
      "settings": {
         "index": {
            "creation_date": "1556245406616",
            "number_of_shards": "1",
            "number_of_replicas": "1",
            "uuid": "3ExJbdl2R1qDLssIkwDAug",
            "version": {
               "created": "7000099"
            },
            "provided_name": "colleges"
         }
      }
   }
}

모든 인덱스를 가져올 수 있습니다. _all 또는*모든 인덱스 정보를 가져옵니다.

인덱스 존재

인덱스의 존재는 단순히 인덱스에 get 요청을 보내면 확인할 수 있습니다. 만약 HTTP 응답이200 이면 존재합니다. 만약404이면 존재하지 않습니다.

HEAD colleges

위의 코드를 실행하면 다음과 같은 출력을 얻습니다-

200-OK

인덱스 설정

인덱스 설정을 얻으려면 URL의 마지막에 _settings 키워드를 추가하세요.

GET /colleges/_settings

위의 코드를 실행하면 다음과 같은 출력을 얻습니다-

{
   "colleges": {
      "settings": {
         "index": {
            "creation_date": "1556245406616",
            "number_of_shards": "1",
            "number_of_replicas": "1",
            "uuid": "3ExJbdl2R1qDLssIkwDAug",
            "version": {
               "created": "7000099"
            },
            "provided_name": "colleges"
         }
      }
   }
}

인덱스 통계

이 API는 특정 인덱스에 대한 통계 정보를 추출하는 데 도움을 줍니다. 인덱스 URL과 _stats 키워드를 포함한 get 요청을 마지막에 보내면 됩니다.

GET /_stats

위의 코드를 실행하면 다음과 같은 출력을 얻습니다-

………………………………………………
},
   "request_cache": {
      "memory_size_in_bytes": : 849,
      "evictions": 0,
      "hit_count": : 1171,
      "miss_count": : 4
   },
   "recovery": {
      "current_as_source": 0,
      "current_as_target": 0,
      "throttle_time_in_millis": 0
   }
}………………………………………………

flush(새로 고침)

인덱스의 새로 고침 과정은 현재 트랜잭션 로그에만 유지되는 모든 데이터가 Lucene에 영구적으로 저장되도록 보장합니다. 이는 복구 시간을 줄입니다. Lucene 인덱스를 엽니다. 이후 트랜잭션 로그에서 다시 인덱싱할 필요가 없기 때문입니다.

POST colleges/_flush

위의 코드를 실행하면 다음과 같은 출력을 얻습니다-

{
   "_shards": {
      "total": 2,
      "successful": 1,
      "failed": 0
   } 
}