SQL을 사용하여 Amazon OpenSearch Service 데이터 쿼리 - Amazon OpenSearch 서비스

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

SQL을 사용하여 Amazon OpenSearch Service 데이터 쿼리

JSON 기반 OpenSearch 쿼리 DSL을 사용하는 대신 SQL을 사용하여 Amazon OpenSearch Service를 쿼리할 수 있습니다. SQL을 사용한 쿼리는 SQL에 이미 익숙하거나 도메인을 SQL을 사용하는 애플리케이션과 통합하려는 경우에 유용합니다. SQL 지원은 OpenSearch 또는 Elasticsearch 6.5 이상을 실행하는 도메인에서 사용할 수 있습니다.

참고

이 설명서에서는 OpenSearch Service와 다양한 SQL 플러그인 버전 간 버전 호환성과 JDBC 및 ODBC 드라이버에 대해 설명합니다. 기본 및 복잡한 쿼리, 함수, 메타데이터 쿼리 및 집계 함수의 구문에 대한 자세한 내용은 오픈 소스 OpenSearch 설명서를 참조하세요.

다음 표를 사용하여 각 OpenSearch 및 Elasticsearch 버전에서 지원되는 SQL 플러그인 버전을 찾습니다.

OpenSearch
OpenSearch 버전 SQL 플러그인 버전 주목할 만한 기능
2.13.0 2.13.0.0

2.11.0 2.11.0.0

PPL 언어 및 쿼리에 대한 지원 추가

2.9.0 2.9.0.0

Spark 커넥터 추가, 표 및 PromQL 함수 지원

2.7.0 2.7.0.0

datasource API 추가

2.5.0 2.5.0.0

2.3.0 2.3.0.0

maketimemakedate 날짜/시간 함수 추가

1.3.0 1.3.0.0

기본 쿼리 제한 크기 및 값 목록 내에서 선택할 수 있는 IN 절 지원

1.2.0 1.2.0.0

시각화 응답 형식에 대한 새 프로토콜 추가

1.1.0

1.1.0.0

SQL 및 PPL에서 필터로 일치 함수 지원

1.0.0 1.0.0.0 데이터 스트림 쿼리 지원
Open Distro for Elasticsearch
Elasticsearch 버전 SQL 플러그인 버전 주목할 만한 기능
7.10 1.13.0 윈도 함수용 NULL FIRST 및 LAST, CAST() 함수, SHOW 및 DESCRIBE 명령
7.9 1.11.0 추가 날짜/시간 함수 추가, ORDER BY 키워드
7.8 1.9.0
7.7 1.8.0

7.3

1.3.0 여러 문자열 및 숫자 연산자
7.1 1.1.0

샘플 호출

SQL을 사용하여 데이터를 쿼리하려면 다음 형식을 사용하여 _sql에 HTTP 요청을 전송합니다.

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

도메인이 OpenSearch 대신 Elasticsearch를 실행하는 경우 형식은 _opendistro/_sql입니다.

참고 사항 및 차이점

_plugins/_sql에 대한 호출은 인덱스 이름을 요청 본문에 포함하므로 대량, mget 및 msearch 작업과 동일한 액세스 정책 고려 사항을 갖습니다. 항상 그렇듯이, API 작업에 권한을 부여할 때는 최소 권한의 원칙을 따릅니다.

세분화된 액세스 제어와 함께 SQL을 사용하는 것과 관련된 보안 고려 사항은 Amazon OpenSearch Service에서 세분화된 액세스 제어를 참조하세요.

OpenSearch SQL 플러그 인은 많은 조정 가능한 설정을 포함합니다. OpenSearch Service에서는 플러그 인 설정 경로(_plugins/_query/settings)가 아닌 _cluster/settings 경로를 사용합니다.

PUT _cluster/settings { "transient" : { "plugins.sql.enabled" : true } }

레거시 Elasticsearch 도메인의 경우 plugins을(를) opendistro(으)로 대체합니다.

PUT _cluster/settings { "transient" : { "opendistro.sql.enabled" : true } }

SQL Workbench

SQL Workbench는 온디맨드 SQL 쿼리를 실행하고, SQL을 해당 REST로 변환하며, 결과를 텍스트, JSON, JDBC 또는 CSV로 보고 저장할 수 있는 OpenSearch 대시보드 사용자 인터페이스입니다. 자세한 내용은 쿼리 워크벤치를 참조하세요.

SQL CLI

SQL CLI는 opensearchsql 명령을 사용하여 시작할 수 있는 독립형 Python 애플리케이션입니다. 설치, 구성 및 사용 단계는 SQL CLI를 참조하세요.

JDBC 드라이버

JDBC(Java Database Connectivity) 드라이버를 사용하여 OpenSearch Service 도메인을 선호하는 비즈니스 인텔리전스(BI) 애플리케이션과 통합할 수 있습니다. 드라이버를 다운로드하려면 여기를 클릭하세요. 자세한 내용은 GitHub 리포지토리를 참조하세요.

다음 표에는 드라이버의 버전 호환성이 요약되어 있습니다.

OpenSearch
OpenSearch 버전 JDBC 드라이버 버전
2.13 1.1.0.1
2.11 1.1.0.1
2.9 1.1.0.1
2.7 1.1.0.1
2.5 1.1.0.1
2.3 1.1.0.1
1.3 1.1.0.1
1.2 1.1.0.1
1.1 1.1.0.1
1.0 1.1.0.1
Open Distro for Elasticsearch
Elasticsearch 버전 JDBC 드라이버 버전
7.10 1.13.0
7.9 1.11.0
7.8 1.9.0
7.7 1.8.0
7.4 1.4.0
7.1 1.0.0
6.8 0.9.0
6.7 0.9.0
6.5 0.9.0

ODBC 드라이버

오픈 데이터베이스 연결(ODBC) 드라이버는 Microsoft Excel과 같은 비즈니스 인텔리전스 및 데이터 시각화 애플리케이션을 SQL 플러그인에 연결할 수 있는 Windows 및 macOS용 읽기 전용 ODBC 드라이버입니다.

OpenSearch 아티팩트 페이지에서 예제 작동 드라이버 파일을 다운로드할 수 있습니다. 드라이버 설치에 대한 정보는 GitHub의 SQL 리포지토리를 확인하세요.