Elasticsearch에서 특정 인덱스에 있는 데이터를 조회하거나 검색하는 방법에는 여러 가지가 있습니다. test 인덱스의 데이터를 조회하고, **user**와 message 필드를 검색하는 방법을 알아보겠습니다.

1. 인덱스의 데이터 가져오기

인덱스에 저장된 모든 문서를 조회하려면 _search 엔드포인트와 함께 GET 또는 POST 요청을 사용할 수 있습니다. 아래는 test 인덱스의 모든 데이터를 가져오는 간단한 예시입니다:

curl -X GET "43.201.88.182:9200/**test**/_search" -H "Content-Type: application/json" -d'
{
  "query": {
    "match_all": {}
  }
}'

이 요청은 test 인덱스에 저장된 모든 문서를 검색합니다.

2. 특정 필드 검색하기

**user**와 message 필드를 기반으로 검색하려면, 다음과 같이 검색 쿼리를 구성할 수 있습니다:

user 필드에서 "john"을 검색하는 예시:

curl -X GET "43.201.88.182:9200/**test**/_search" -H "Content-Type: application/json" -d'
{
  "query": {
    "match": {
      "user": "john"
    }
  }
}'

message 필드에서 "Elasticsearch"를 검색하는 예시:

curl -X GET "43.201.88.182:9200/test/_search" -H "Content-Type: application/json" -d'
{
  "query": {
    "match": {
      "message": "Elasticsearch"
    }
  }
}'

위의 예시들은 match 쿼리를 사용하여 특정 필드에서 일치하는 텍스트를 검색합니다. match 쿼리는 해당 필드의 텍스트를 분석하고, 검색어와 일치하는 문서를 찾아낸 후 결과를 반환합니다.

참고 사항