SQL

SQL

OpenSearch의 SQL은 전통적인 관계형 데이터베이스 개념과 OpenSearch의 문서 중심(document-oriented) 데이터 저장 방식 사이의 간극을 이어주는 다리 역할을 해요. 이 통합 덕분에 여러분은 기존의 SQL 지식을 그대로 이용해 OpenSearch 데이터를 질의하고, 분석하고, 통찰을 얻을 수 있답니다.

출처: 문서

본문

SQL과 OpenSearch 용어 대응

핵심 SQL 개념이 OpenSearch에서는 어떻게 대응되는지 보여드릴게요.

SQL OpenSearch
Table Index
Row Document
Column Field

REST API

SQL 플러그인의 전체 REST API 참조 자료는 SQL/PPL API에서 확인할 수 있어요.

여러분의 애플리케이션에서 SQL 플러그인을 사용하려면 _plugins/_sql 엔드포인트로 요청을 보내세요.

POST _plugins/_sql
{
  "query": "SELECT * FROM my-index LIMIT 50"
}

쉼표로 구분된 목록을 사용하면 여러 인덱스를 한 번에 질의할 수 있어요.

POST _plugins/_sql
{
  "query": "SELECT * FROM my-index1,myindex2,myindex3 LIMIT 50"
}

와일드카드 표현식으로 인덱스 패턴을 지정할 수 있어요.

POST _plugins/_sql
{
  "query": "SELECT * FROM my-index* LIMIT 50"
}

앞의 질의를 명령줄에서 실행하려면 cURL 명령을 사용하세요.

curl -XPOST https://localhost:9200/_plugins/_sql -u 'admin:<custom-admin-password>' -k -H 'Content-Type: application/json' -d '{"query": "SELECT * FROM my-index* LIMIT 50"}'

응답 형식은 JDBC, 표준 OpenSearch JSON, CSV, 또는 raw로 지정할 수 있어요. 기본적으로 질의는 JDBC 형식으로 데이터를 반환합니다. 다음 질의는 형식을 JSON으로 설정해요.

POST _plugins/_sql?format=json
{
  "query": "SELECT * FROM my-index LIMIT 50"
}

요청 파라미터, 설정, 지원되는 연산, 도구에 대한 자세한 내용은 SQL 아래의 관련 주제 문서를 참고하세요.

더 알아보기 (Learn more)