sirius-db/sirius
GPU-native composable analytics engine
해결하는 문제
Sirius는 CPU에서 GPU로 쿼리 실행을 오프로드함으로써 데이터 분석을 가속화하기 위해 설계된 GPU 네이티브 SQL 엔진입니다. 기존 SQL 쿼리나 데이터베이스 시스템을 재작성할 필요 없이, 대규모 데이터 처리에서 뛰어난 성능 향상을 제공합니다.
작동 방식
Sirius는 표준 Substrait 쿼리 형식을 사용하여 DuckDB와 같은 기존 데이터베이스에 연결됩니다. 옵티마이저 훅을 통해 쿼리를 가로채고, NVIDIA CUDA-X 라이브러리(예: cuDF 및 RAPIDS 메모리 매니저(RMM))를 사용하여 GPU에서 실행합니다.
주요 기술적 특징:
- 투명한 실행: 쿼리는 자동으로 GPU로 라우팅됩니다. 지원되지 않는 연산자가 있을 경우 시스템은 조용히 CPU로 백업합니다.
- 아웃오브코어 처리: GPU, 호스트 메모리, 디스크를 계층화된 시스템으로 메모리를 관리하며, 데이터를 자동으로 파티셔닝하고 스파핑하여 GPU 메모리보다 큰 데이터셋을 처리할 수 있습니다.
- 메모리 핀닝: 자주 사용하는 테이블을 GPU 또는 호스트 메모리에 "핀"하여 이후 실행 시 파일 I/O 및 디코딩을 건너뛸 수 있습니다.
- 스토리지 지원: Parquet 파일과 DuckDB 내장 스토리지 모두 지원합니다.
대상 사용자
DuckDB나 기타 SQL 엔진을 사용하며, 워크플로우를 변경하지 않고 대규모 데이터셋(예: TPC-H 벤치마크)을 고성능 GPU 가속으로 처리해야 하는 데이터 엔지니어 및 분석가.
주요 특징
- 무결함 통합: 쿼리 재작성 없이 DuckDB 확장으로 간편하게 통합 가능.
- 고성능: 특정 하드웨어(DGX Station)에서 DuckDB 대비 최대 5배 가속을 입증.
- 계층 메모리: GPU/호스트/디스크 메모리 관리로 대규모 데이터 처리 효율성 극대화.
- GPU 네이티브: NVIDIA CUDA-X 및 RAPIDS 기반으로 하드웨어 최적 활용을 실현.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트