# Sirius - GPU-Native SQL 엔진

> Clean Markdown view of GeekNews topic #21787. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=21787](https://news.hada.io/topic?id=21787)
- GeekNews Markdown: [https://news.hada.io/topic/21787.md](https://news.hada.io/topic/21787.md)
- Type: news
- Author: [xguru](https://news.hada.io/@xguru)
- Published: 2025-07-03T09:31:01+09:00
- Updated: 2025-07-03T09:31:01+09:00
- Original source: [github.com/sirius-db](https://github.com/sirius-db/sirius)
- Points: 10
- Comments: 1

## Summary

**Substrait 쿼리 포맷**을 활용하여 CPU 기반 DuckDB에서 생성한 쿼리를 **GPU 환경**으로 효율적으로 전달하여 쿼리를 가속합니다. 이를 통해 쿼리 수정이나 시스템 변경 없이 TPC-H 100 규모에서 **동일 비용 기준 10배 이상 속도**를 기록했습니다.

## Topic Body

- **최신 GPU 하드웨어를 활용해 SQL 쿼리 가속화**에 특화된 차세대 엔진  
- **[Substrait](https://news.hada.io/topic?id=21750) 쿼리 포맷**을 통해 CPU 엔진(DuckDB)에서 생성된 쿼리를 GPU 환경(Sirius)으로 전달  
- GPU 메모리 내에 **Raw Data Cache Region**과 **Processing Region**을 분리, 데이터 적재 및 처리 성능 극대화  
- 쿼리 수정이나 시스템 변경 없이 TPC-H 100 규모에서 **동일 비용 기준 10배 이상 속도**를 기록  
- 실시간 분석, 금융, ETL 등 **대규모 데이터 워크로드**에 최적  
- 지원 환경 : Ubuntu 20.04+, NVIDIA Volta(7.0+) 이상 GPU, CUDA 11.2+, CMake 3.30.4 이상 (16 vCPU 이상 권장)  
- 설치 방식 : AWS AMI(미리 구성된 이미지), Docker 이미지, 수동 의존성 설치 3가지 옵션 제공  
  - Docker: `sudo docker run --gpus all -it yifeiyang7/sirius_dependencies:latest bash`  
  - 수동: DuckDB 의존성, CUDA, libcudf(conda로 설치) 등 개별 설치 필요  
- 주요 제한사항  
  - **GPU 메모리 크기 내에서만 동작** (추후 파티셔닝/배치·디스크 스필·멀티 GPU 지원 예정)  
  - **최대 row count는 libcudf의 int32_t 한계(~20억 rows)** 에 제한  
  - 데이터 타입: INTEGER, BIGINT, FLOAT, DOUBLE, VARCHAR, DATE, DECIMAL 지원, 추가 타입 개발 중  
  - 연산자: FILTER, PROJECTION, JOIN, GROUP-BY, ORDER-BY, AGGREGATION, TOP-N, LIMIT, CTE 지원, WINDOW 함수 등은 개발 중  
  - **Partially NULL Column 미지원**(향후 패치 예정)  
  - 이슈 발생 시 DuckDB CPU 엔진으로 자동 폴백

## Comments



### Comment 40904

- Author: xguru
- Created: 2025-07-03T09:32:02+09:00
- Points: 1

[Substrait - 데이터 처리 연산에 대한 크로스 플랫폼 교환 표준](https://news.hada.io/topic?id=21750)
