bodo-ai/Bodo

High Performance Scalable Data Processing in Python and SQL

해결하는 문제

Bodo DataFrames는 대규모 AI/ML 워크로드를 위한 Python 데이터 처리의 성능 및 확장성 한계를 해결합니다. 기존 분산 프레임워크(Spark 또는 Dask 등)에서 발생하는 런타임 오버헤드를 제거하고, 코드베이스를 완전히 재작성하지 않고도 메모리보다 큰 데이터셋에 Pandas 코드를 확장할 수 있게 합니다.

작동 방식

Pandas의 import 문을 대체함으로써 Pandas의 드롭인 대체품으로 작동합니다. 내부적으로 C++ 런타임과 메시지 전달 인터페이스(MPI) 기술을 사용하여 진정한 병렬 실행을 달성합니다. 또한 Just-in-Time(JIT) 컴파일러를 활용해 사용자 정의 변환을 가속화하고, NumPy 및 Scikit-learn에 대한 네이티브 지원, 통합 SQL 엔진, 스트리밍 실행을 통해 대규모 데이터셋을 처리할 수 있습니다.

대상 사용자

데이터 준비 및 특징 공학에 Pandas를 사용하지만, HPC 수준의 성능과 대규모 클라우드 클러스터 또는 고코어 랩톱에서 워크로드를 확장할 수 있는 필요성이 있는 데이터 과학자 및 AI 엔지니어.

주요 특징

  • 드롭인 호환성: import pandas as pdimport bodo.pandas as pd로 변경하기만 하면 워크로드가 가속화됩니다.
  • HPC 성능: MPI를 활용해 Spark나 Dask보다 훨씬 빠릅니다.
  • JIT 컴파일: Pandas, NumPy, Scikit-learn에 대한 네이티브 지원을 통해 사용자 정의 함수 및 변환을 가속화합니다.
  • 엔터프라이즈 데이터 통합: Apache Iceberg, Snowflake, Parquet, CSV, JSON에 대한 확장 가능한 I/O 기능을 내장하고 있습니다.
  • 메모리 효율성: 스트리밍 실행을 지원하여 사용 가능한 RAM을 초과하는 데이터셋을 처리할 수 있습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • Dispatch