Lakebase SQL 편집기에서는 Lakebase 앱에서 직접 Lakebase 데이터베이스에 대한 쿼리를 실행합니다. Postgres 네이티브 기능(예: EXPLAIN/ANALYZEpsql-style 메타 명령)을 제공하고 결과를 CSV/JSON/XLSX로 내보냅니다.
비고
시각화, 대시보드, 공동 작업 기능 및 Lakebase 데이터를 다른 Unity 카탈로그 테이블과 결합하는 기능을 제공하는 Lakehouse의 SQL 편집기에서 Lakebase 데이터베이스를 쿼리할 수도 있습니다. SQL 편집기에서 쿼리를 참조하세요(Lakehouse).
Lakebase SQL 편집기 사용
SQL 편집기를 사용하려면 다음을 수행합니다.
- Lakebase 앱을 열고 프로젝트를 선택합니다.
- 사이드바에서 SQL 편집기를 선택한 다음 분기 및 데이터베이스를 선택합니다.
- 편집기에 쿼리를 입력하고 실행을 클릭하여 결과를 봅니다.
다음 쿼리를 사용하여 SQL 편집기를 시도합니다. 쿼리는 테이블을 만들고, 데이터를 추가하고, 테이블에서 데이터를 검색합니다.
CREATE TABLE IF NOT EXISTS playing_with_lakebase(id SERIAL PRIMARY KEY, name TEXT NOT NULL, value REAL);
INSERT INTO playing_with_lakebase(name, value)
SELECT LEFT(md5(i::TEXT), 10), random() FROM generate_series(1, 10) s(i);
SELECT * FROM playing_with_lakebase;
여러 쿼리 문을 한 번에 실행하면 각 문에 대해 별도의 결과 집합이 반환됩니다. 결과 집합은 실행 순서대로 번호가 매겨진 별도의 탭에 표시됩니다.
편집기를 지우려면 텍스트 상자의 내용을 선택하고 삭제합니다.
설명 및 분석
Lakebase SQL 편집기에는 설명 및 분석 기능이 있습니다.
- 설명 기능은 Postgres 명령을 사용하여 지정된 쿼리를 EXPLAIN 실행합니다. 이 명령은 쿼리에 대한 실행 계획을 반환합니다. 설명 기능은 예상 계획만 반환합니다. 쿼리를 실행하지 않습니다.
-
분석 기능은 ANALYZE를 사용하여 지정된 쿼리를 EXPLAIN 실행합니다. 매개 변수는
ANALYZE쿼리를 실행하고 예상과 함께EXPLAIN계획 노드에 대한 실제 행 수 및 실행 시간을 반환합니다.
설명 및 분석 기능에서 제공하는 정보를 이해하려면 Postgres EXPLAIN 명령 및 해당 ANALYZE 매개 변수를 숙지해야 합니다.
EXPLAIN 설명서 및 PostgreSQL 설명서의 EXPLAIN 사용을(를) 참조하세요.
CSV, JSON 및 XLSX로 데이터 내보내기
Lakebase SQL 편집기에서는 데이터 JSONCSVXLSX내보내기를 지원합니다.
SQL 편집기 페이지의 오른쪽 아래 모서리에서 다운로드 단추에 액세스합니다. 다운로드 단추는 다운로드할 결과 집합이 있는 경우에만 표시됩니다.
SQL 편집기 창의 결과 섹션 확장
SQL 편집기 페이지의 오른쪽 아래 모서리에서 확장 창 단추를 선택하여 SQL 편집기 창의 결과 섹션을 확장합니다.
메타 명령
Lakebase SQL 편집기에서는 데이터베이스와 상호 작용하기 위한 바로 가기처럼 작동하는 Postgres 메타 명령을 사용할 수 있습니다. 명령줄 인터페이스에서 메타 명령을 사용하는 데 이미 익숙한 경우 Lakebase SQL 편집기에서 psql 동일한 많은 명령을 사용할 수 있습니다.
메타 명령은 전체 SQL 쿼리를 작성할 필요 없이 데이터베이스 스키마 및 기타 중요한 정보에 빠르게 액세스하여 워크플로 속도를 높일 수 있습니다.
다음은 Lakebase SQL 편집기 내에서 일반적으로 사용되는 메타 명령입니다.
-
\dt— 현재 데이터베이스의 모든 테이블 나열 -
\d [table_name]- 테이블의 구조 설명 -
\l— 모든 데이터베이스 나열 -
\?— 사용 가능한 메타 명령의 치트 시트 -
\h [NAME]— Postgres 명령에 대한 도움말 보기(예:\h SELECT)
비고
SQL 편집기에서 모든 psql 메타 명령이 지원되는 것은 아닙니다. 지원되는 명령 목록을 얻으려면 .를 사용합니다 \?.
메타 명령 및 해당 사용의 전체 목록은 psql의 메타 명령을 참조하세요.
메타 명령을 사용하는 방법
SQL 편집기에서 메타 명령을 사용하려면 편집기(SQL 쿼리와 마찬가지로)에 메타 명령을 입력하고 실행을 클릭합니다. 결과는 출력 창에 표시됩니다.
공용 액세스를 사용할 수 없는 경우 SQL 편집기 제한 사항
작업 영역이 공용 액세스를 사용하지 않도록 Private Link 구성된 경우 SQL 편집기 프록시는 직접 데이터베이스 연결을 사용하는 대신 Lakebase 백 엔드를 통해 쿼리합니다. 대부분의 쿼리는 직접 연결과 동일하게 작동하지만 프록시는 상태 비스테이션이며 각 문을 독립적인 HTTP 요청으로 실행하므로 다음과 같은 제한 사항이 발생합니다.
작동 방식:
- 단일 문장 쿼리(SELECT, INSERT, UPDATE, DELETE, UPSERT)
- DDL 문(CREATE, ALTER, DROP TABLE, CREATE INDEX 및 기타)
-
EXPLAIN 및 DESCRIBE 명령(
\d,\dt,\di) - Postgres 데이터 타입 완전 지원 (배열, JSON/JSONB, 숫자형, 타임스탬프, 불리언)
- 쿼리 결과 및 오류 메시지
작동하지 않는 기능:
| 특징 | Limitation |
|---|---|
| 트랜잭션 |
BEGIN, COMMIT, ROLLBACK및 SAVEPOINT 예상대로 작동하지 않습니다. 각 구문은 서로 독립적으로 자동 커밋되며, 원자성은 보장되지 않습니다. |
| 세션 상태 |
SET 및 SET LOCAL은 현재 요청에만 적용됩니다. 임시 테이블, 준비된 문, 커서 및 권고 잠금은 후속 문에서 사용할 수 없습니다. |
| 리스닝/알림 | 프록시가 지원하지 않는 비동기 알림에 대한 영구 연결이 필요합니다. |
| STDIN에서 복사 | 프록시를 통해 클라이언트 쪽 데이터를 스트리밍할 수 없습니다. |
\watch |
무상태 프록시를 통해서는 쿼리의 주기적 재실행을 사용할 수 없습니다. |
| 쿼리 취소 | 취소는 최선의 작업입니다. 취소 요청 후 백 엔드에서 쿼리를 계속 실행할 수 있습니다. |
| 여러 문으로 구성된 스크립트 | 명령문은 공유 트랜잭션 없이 실행됩니다. 부분 스크립트 오류로 인해 부분 커밋이 발생합니다. |
| 결과 크기 제한 | 쿼리 결과는 32MB로 제한됩니다. |
트랜잭션 또는 세션 상태가 필요한 워크로드의 경우 Postgres 클라이언트를 사용하여 데이터베이스에 직접 연결합니다. psql을 사용하여 연결을 참조하세요.
Troubleshoot
SQL 편집기에서 "페치 실패" 또는 "알 수 없는 오류" 메시지가 표시되고 작업 영역에서 Private Link 사용하는 경우 인바운드 Private Link(작업 영역 수준, 포트 443)가 올바르게 구성되었는지 확인합니다. Private Link 연결 문제 해결을 참조하세요.