DuckDB v2.0 미리보기, 파일 안의 분석 DB가 서버로 넓어져요

DuckDB v2.0 "Cyanoptera"가 올해 가을 출시를 앞두고 주요 기능을 공개했어요. 한 프로세스 안에서 빠르게 분석하던 기존 장점은 유지하면서, 다른 데이터베이스에 쿼리를 보내고 장기 실행 서비스로 운영하는 기능을 더해요. v1.5 이후 10,000개가 넘는 커밋이 반영됐고 새 SQL 파서와 기본 저장 형식처럼 호환성을 확인해야 할 변화도 함께 들어가요. 1
핵심 요약
| 구분 | 확인된 내용 | 개발자가 볼 지점 |
| 서버 운영 | Quack 프로토콜이 안정 단계로 올라가고 `CONNECT` 문이 추가돼요. | DuckDB를 네트워크 서비스나 장기 실행 인스턴스로 운영할 수 있어요. |
| 원격 쿼리 | DuckDB뿐 아니라 PostgreSQL과 MySQL에도 쿼리를 보내 결과만 받을 수 있어요. | 큰 테이블을 통째로 옮기지 않고 계산을 데이터가 있는 곳에서 처리할 수 있어요. |
| 데이터 형식 | `VARIANT`가 Parquet 읽기와 쓰기, 조건 푸시다운을 지원해요. | 구조가 자주 바뀌는 로그와 반정형 데이터를 다루기 쉬워져요. |
| 엔진 변화 | 비동기 I/O, 파티션 인식 계획, 새 SQL 파서와 저장 형식이 들어가요. | 원격 저장소 성능은 좋아질 수 있지만 업그레이드 전 호환성 점검이 필요해요. |
1. DuckDB가 분석 라이브러리와 서버 사이를 잇기 시작해요
DuckDB는 애플리케이션 프로세스 안에서 실행되는 분석 데이터베이스로 널리 쓰여 왔어요. v2.0에서는 `quack` 확장이 안정 단계로 올라가고, 다른 DuckDB가 네트워크로 접속할 수 있어요. `CONNECT` 문을 실행하면 세션의 쿼리를 원격 데이터베이스로 보내고 결과를 스트리밍으로 받아요. 공식 소개는 PostgreSQL과 MySQL도 원격 실행 대상으로 제시해요. 2
데이터 이동보다 쿼리 이동을 택할 수 있어요
기존에는 외부 테이블을 DuckDB 쪽으로 읽어 온 뒤 계산하는 흐름이 흔했어요. 원격 푸시다운을 쓰면 집계나 필터를 PostgreSQL과 MySQL에서 먼저 실행하고 필요한 결과만 가져올 수 있어요. 네트워크 전송량이 줄어들 수 있고, 분석 작업을 위해 원본 데이터를 복제하는 단계도 줄일 수 있어요.
서버 모드는 운영 책임도 늘려요. 장기 실행 인스턴스에는 인증, 연결 관리, 로그, 메트릭이 필요해요. DuckDB 팀은 v2.0에서 관측 기능도 함께 손보고 있어요. 다중 사용자 서비스에 적용하려면 기존의 단일 사용자 분석 스크립트와 다른 운영 기준을 세워야 해요.
반정형 데이터와 SQL 기능도 넓어져요
`VARIANT`는 행마다 구조가 다른 데이터를 담되, 공통 구조를 찾아 나눠 저장하는 형식이에요. v2.0은 저장소에서 바로 처리하고 조건을 스캔 단계로 밀어 넣어요. Parquet의 `VARIANT` 읽기와 쓰기도 지원해요. 로그나 이벤트처럼 필드가 조금씩 바뀌는 데이터에 스키마 유연성과 열 기반 실행을 함께 적용할 수 있어요. 2
트리거도 `BEFORE`, `AFTER`, 행 단위, 문장 단위와 전이 테이블까지 지원해요. CTE 안에서 `INSERT`, `UPDATE`, `DELETE`, `COPY`를 실행할 수 있고, `NEAREST` 조인으로 벡터와 임베딩의 상위 유사 항목을 SQL 조인처럼 찾을 수 있어요. 분석용 SQL 엔진에 데이터 변경과 감사 기록, 유사도 검색 흐름이 한꺼번에 들어오는 셈이에요.
원격 저장소와 기존 쿼리도 빨라져요
엔진 전반의 비동기 I/O는 S3 같은 네트워크 저장소에서 여러 읽기 작업을 겹쳐 처리하도록 설계됐어요. 파티션 인식 쿼리 계획은 DuckLake, Iceberg, Hive 방식으로 나뉜 Parquet 데이터의 기존 파티션 정보를 활용해요. 공식 글에 나온 재귀 CTE 마이크로벤치마크는 같은 예제에서 v1.5.4의 4.90초가 v2.0 미리보기에서 0.12초로 줄었어요. 이 수치는 특정 예제 결과이므로 실제 업무 쿼리는 별도로 측정해야 해요. 2
왜 중요한가요
DuckDB를 데이터 분석 도구로만 쓰던 팀은 이제 배포 구조를 다시 고를 수 있어요. 노트북이나 백엔드 프로세스에 그대로 넣을 수도 있고, 공유 인스턴스를 띄워 여러 클라이언트가 접속하게 만들 수도 있어요. PostgreSQL이나 MySQL에 계산을 보내는 기능까지 더해져 기존 운영 데이터와 분석 환경 사이의 복사 작업을 줄일 여지가 생겨요. 2
업그레이드는 기능 수보다 호환성을 먼저 확인하는 편이 안전해요. v2.0은 PEG 기반 SQL 파서와 새 기본 저장 형식을 도입해요. 일부 lambda 문법도 바뀔 예정이에요. 기존 데이터 파일을 어느 버전에서 다시 읽을 수 있는지, 확장 바이너리가 새 C API와 맞는지, SQL 파싱 결과가 달라지는 구문이 있는지 테스트해야 해요.
아직 정식 버전이 아니라 미리보기예요. DuckDB 팀은 올해 가을 출시를 예고했지만 세부 기능과 성능은 정식 릴리스까지 달라질 수 있어요. 운영 환경에서는 미리보기 빌드로 쿼리 호환성과 저장 파일 복구 절차를 먼저 확인한 뒤 전환 범위를 정하는 편이 좋아요.
참고 자료
- DuckDB v2.0 “Cyanoptera” 미리보기 — GeekNews
- A Preview of DuckDB v2.0 — DuckDB
'IT & AI' 카테고리의 다른 글
| Qwen3.8 27B 지능 지수 52점, 점수보다 토큰 사용량을 함께 봐야 해요 (1) | 2026.08.18 |
|---|---|
| GPT-5.6 Sol 비전 성능, 탐지는 뛰었지만 OCR은 제자리였어요 (0) | 2026.08.18 |
| Stripe의 OpenRouter 인수 합의 보도, AI 모델 선택과 결제가 만나요 (0) | 2026.08.18 |
| Qwen 3.8 27B, 성능보다 먼저 바꿔야 할 추론 설정 (0) | 2026.08.18 |
| Claude 텍스트 워터마크, 단어 선택을 바꿔도 품질은 같을까요 (1) | 2026.08.18 |