SQL 및 PPL CLI
SQL 및 PPL CLI
SQL 및 PPL 명령줄 인터페이스(CLI)는 opensearchsql 명령으로 실행할 수 있는 독립 실행형 Python 애플리케이션이에요. SQL 및 PPL CLI를 사용하려면 OpenSearch 인스턴스에 SQL 플러그인을 설치하고, macOS나 Linux에서 CLI를 실행한 다음, 유효한 OpenSearch 엔드포인트에 연결하면 돼요.
출처: 문서
본문
기능
SQL 및 PPL CLI는 다음과 같은 기능을 제공해요.
- 다중 줄 입력(Multi-line input)
- PPL 지원
- SQL 구문과 인덱스 이름 자동 완성(Autocomplete)
- 구문 강조(Syntax highlighting)
- 형식화된 출력: 표 형식, 필드 이름 색상 표시, 터미널 폭이 좁을 때 보기 좋은 수평 표시(기본)와 수직 표시, 큰 출력을 위한 페이지네이션(Pagination)
- 보안이 켜져 있든 꺼져 있든 동작
- 구성 파일 로딩 지원
- 모든 SQL 플러그인 쿼리 지원
설치
로컬 OpenSearch 인스턴스를 실행하고 SQL 플러그인이 설치되어 있는지 확인해요.
- CLI 설치:
pip3 install opensearchsql - SQL CLI는 Python 3에서만 동작해요.
- CLI 실행:
opensearchsql https://localhost:9200 --username admin --password admin - 기본적으로
opensearchsql명령은 http://localhost:9200에 연결해요.
구성(Configure)
SQL CLI를 처음 실행하면 구성 파일이 ~/.config/opensearchsql-cli/config(macOS 및 Linux)에 자동으로 생성되고, 이후에는 구성이 자동으로 로드돼요.
다음과 같은 연결 속성을 구성할 수 있어요.
endpoint: 옵션을 지정할 필요가 없어요. 시작 명령인opensearchsql뒤에 오는 모든 것이 엔드포인트로 간주돼요. 엔드포인트를 제공하지 않으면 기본적으로 SQL CLI가 http://localhost:9200에 연결해요.-u/-w: Security 플러그인이나 Amazon OpenSearch Service의 세분화된 접근 제어와 같은 HTTP 기본 인증을 위한 사용자 이름과 비밀번호를 지원해요.--aws-auth: Amazon OpenSearch 엔드포인트에 연결할 때 AWS Signature Version 4 인증을 켜요. AWS CLI(aws configure)와 함께 사용하여 로컬 AWS 구성을 가져와 인증하고 연결해요.
사용 가능한 모든 구성 목록은 clirc에서 확인할 수 있어요.
CLI 사용하기
- CLI 도구를 실행해요. 클러스터가 기본 보안 설정으로 동작한다면 다음 명령을 사용해요:
opensearchsql --username admin --password admin https://localhost:9200 - 클러스터가 보안 없이 동작한다면 다음처럼 실행해요:
opensearchsql
- 샘플 SQL 명령 실행:
SELECT * FROM accounts ; - 기본적으로 최대 200행의 출력을 볼 수 있어요. 더 많은 결과를 보려면 원하는 값으로
LIMIT절을 추가해요. - CLI 도구를 종료하려면 Ctrl+D를 선택해요.
PPL과 함께 CLI 사용하기
- 쿼리 언어를 지정하여 CLI 실행:
opensearchsql -l ppl <params> - PPL 쿼리 실행:
source = accounts | fields firstname , lastname
쿼리 옵션(Query options)
다음 명령줄 옵션으로 단일 쿼리를 실행할 수 있어요.
-q: 단일 쿼리를 뒤에 붙여요.-f: JDBC 또는 raw 형식 출력을 지정해요.-v: 데이터를 세로로 표시해요.-e: SQL을 DSL로 번역해요.
CLI 옵션(CLI options)
--help: 옵션 도움말 페이지-l: 쿼리 언어 옵션. 사용 가능한 옵션은sql과ppl이에요. 기본값은sql이에요.-p: 출력 표시에 항상 페이저(pager)를 사용해요.--clirc: 구성 파일 경로를 제공해요.