IT/정보

엘라스틱서치 기본 예제 - 인덱스 등록, 삭제, 조회

bamcong 2025. 3. 29. 17:08
728x90
반응형

안녕하세요! 오늘은 많이 사용되는 Elasticsearch의 인덱스 등록, 삭제, 조회에 대해 알아보겠습니다. Elasticsearch는 분산형 검색 엔진으로, 대용량 데이터를 실시간으로 검색하고 분석하는 데 매우 유용합니다. 여러 가지 기능이 있지만, 기본적인 CRUD(Create, Read, Update, Delete) 작업이 매우 중요합니다. 이 포스팅을 통해 실습 예제와 함께 각 과정을 차근차근 알아보도록 하겠습니다.

엘라스틱서치 기본 예제

1. Elasticsearch 기본 구조

Elasticsearch는 JSON 형태로 데이터를 저장합니다. 이 때문에 웹 애플리케이션과 자연스럽게 연동할 수 있는 장점이 있습니다. 데이터는 인덱스에 저장되며, 인덱스는 문서(document)들로 구성됩니다. 마치 도서관에서 책을 저장하는 방식과 유사하다고 할 수 있습니다.

2. Elasticsearch 접속하기

Elasticsearch에 접근하기 위해서는 Postman이나 cURL을 사용할 수 있습니다. 여기서는 cURL을 사용하는 방법을 소개하겠습니다. 먼저 Elasticsearch 서버가 실행 중인지 확인한 후, 아래의 명령어로 접속해보세요.

curl -X GET "localhost:9200/"

결과 예시

{
  "name" : "my-node",
  "cluster_name" : "my-cluster",
  "cluster_uuid" : "ERHVENKJQWUT",
  "version" : {
    "number" : "7.10.1",
    ...
  },
  "tagline" : "You Know, for Search"
}

3. 인덱스 등록

이제 인덱스를 생성하고 데이터를 추가해보겠습니다. 아래 예제는 "test_index"라는 인덱스를 생성하고, 샘플 데이터를 등록하는 방법입니다.

curl -X PUT "localhost:9200/test_index" -H 'Content-Type: application/json' -d'
{
  "settings": {
    "number_of_shards": 1,
    "number_of_replicas": 1
  },
  "mappings": {
    "properties": {
      "name": { "type": "text" },
      "age": { "type": "integer" }
    }
  }
}'

 

이제 샘플 데이터를 "test_index"에 추가해보겠습니다. 다음 명령어를 통해 데이터를 추가할 수 있습니다.

curl -X POST "localhost:9200/test_index/_doc/1" -H 'Content-Type: application/json' -d'
{
  "name": "John Doe",
  "age": 30
}'

4. 인덱스 조회

등록한 데이터를 조회하는 방법도 간단합니다. 아래의 명령어로 "test_index"의 모든 데이터를 조회해보세요.

curl -X GET "localhost:9200/test_index/_search?pretty"

 

5. 인덱스 삭제

마지막으로 생성한 인덱스를 삭제해보겠습니다. 아래 명령어로 "test_index"를 삭제할 수 있습니다.

curl -X DELETE "localhost:9200/test_index"

 

마무리하며

이상으로 Elasticsearch에서 인덱스 등록, 삭제, 조회하는 기본적인 예제를 마쳤습니다. Elasticsearch는 대량의 데이터를 처리할 수 있는 강력한 도구로, 다양한 활용법이 존재합니다. 데이터의 구조나 인덱스 설정에 따라 더욱 힘있는 검색과 분석이 가능하니, 여러분의 프로젝트에 맞춰 다양한 방법으로 활용해보세요!

더 궁금한 점이 있다면, 엘라스틱서치 공식 문서를 참조하시길 권장합니다.

 

Elasticsearch Official Documentation

 

2025.03.28 - [IT/정보] - 엘라스틱서치(Elasticsearch)에 벡터 임베딩(Vector Embedding) 하기

 

엘라스틱서치(Elasticsearch)에 벡터 임베딩(Vector Embedding) 하기

안녕하세요! 오늘은 엘라스틱서치(Elasticsearch)에서 벡터 임베딩을 사용하는 방법에 대해 포스팅해보겠습니다. 벡터 임베딩은 자연어 처리(NLP)에서 주로 사용되는 기술로, 단어, 문장, 이미지 등

web-inf.tistory.com

2025.02.27 - [IT/정보] - 엘라스틱 서치 무료버전과 유료버전: 무엇이 다를까?

 

엘라스틱 서치 무료버전과 유료버전: 무엇이 다를까?

안녕하세요! 오늘은 엘라스틱 서치(ElasticSearch) 무료버전과 유료버전의 차이점에 대해 자세히 알아보겠습니다.웹사이트에서 느끼는 이 속도와 성능, 그 뒤에는 엘라스틱 서치가 있죠.그럼 유료

web-inf.tistory.com

 

728x90
반응형