사용 가능한 엔진
엔진 설정
전역 구성
현재 엔진 확인
자동 모드
auto 모드(기본값)에서는 DataStore가 각 연산에 가장 적합한 엔진을 선택합니다:
chDB에서 실행되는 연산
- SQL 호환 필터링 (
filter(),where()) - 컬럼 선택 (
select()) - 정렬 (
sort(),orderby()) - 그룹화 및 집계 (
groupby().agg()) - 조인 (
join(),merge()) - 중복 제거 (
distinct(),drop_duplicates()) - 개수 제한 (
limit(),head(),tail())
pandas에서 실행하는 작업
- 사용자 정의 apply 함수 (
apply(custom_func)) - 사용자 정의 집계를 사용하는 복잡한 피벗 테이블
- SQL로 표현할 수 없는 작업
- 입력이 이미 pandas DataFrame인 경우
예시
chDB 모드
사용해야 하는 경우
- 대규모 데이터셋(수백만 개의 행) 처리
- 집계 중심 워크로드
- SQL 최적화를 최대한 활용하려는 경우
- 모든 작업에서 일관된 동작이 필요한 경우
성능 특성
제한 사항
- 사용자 정의 Python 함수는 지원되지 않을 수 있습니다.
- 일부 pandas 전용 기능은 변환이 필요할 수 있습니다.
pandas 모드
사용해야 하는 경우
- pandas와의 호환성 테스트
- pandas 전용 기능 사용
- pandas 관련 문제 디버깅
- 데이터가 이미 pandas 포맷인 경우
성능 특성
Cross-DataStore 엔진
예시
엔진 선택 로직
자동 모드 의사결정 트리
함수 수준 재정의
성능 비교
핵심 사항:
- chdb는 집계와 복잡한 파이프라인에서 강점을 보입니다
- pandas는 단순한 단일 연산에서는 약간 더 빠릅니다
- 두 방식의 장점을 모두 활용하려면
auto모드를 사용하세요