위키득계정 ↗
기술

DuckDB

DuckDB기술
공개 연구
SIGMOD 2019
실행 형태
프로세스 내부 라이브러리
주요 용도
분석용 SQL 질의
소프트웨어 라이선스
MIT
DuckDB는 응용 프로그램의 프로세스 안에서 분석용 SQL을 실행하는 데이터베이스다. 별도의 데이터베이스 서버와 통신하는 대신 라이브러리로 결합하며, 여러 값을 묶어 처리하는 벡터화 실행을 사용한다.

응용 프로그램 안의 분석

분석 도구와 데이터베이스가 같은 프로세스에서 실행되면 서버를 별도로 운영하지 않고 자료를 다룰 수 있다. 초기 연구는 대화형 자료 분석과 장치 내부 분석을 주요 활용 환경으로 설명했다.

여러 값을 묶는 실행

벡터화 실행은 한 행마다 연산자를 호출하는 비용을 여러 값에 나누어 부담한다. 2019년 설계는 이식성을 고려해 질의의 실시간 기계 코드 생성 대신 벡터화된 해석 실행을 채택했다.

분석과 자료 변경

분석에 초점을 두면서도 트랜잭션과 동시 자료 변경을 다루도록 설계됐다. 초기 구현은 다중 버전 동시성 제어를 사용해 분석 질의와 변경 작업을 지원했다.

관련 문서

SQL / 데이터베이스 / 관계형 데이터베이스 / MonetDB X100 / HyPer의 질의 컴파일 / 데이터베이스 트랜잭션