Modin 개요 — pandas 호환 분산 DataFrame

Modin 개요 — pandas 호환 분산 DataFrame

데이터가 조금만 커져도 pandas는 한 코어만 쓰느라 답답해져요. 그런데 코드를 통째로 다시 쓰기는 부담스럽죠. Modin은 pandas import 한 줄만 바꾸면 데이터프레임 연산을 분산 처리로 돌려 주는 라이브러리예요.

출처: https://modin.readthedocs.io/en/stable/

사용법은 단순해요. pandas를 import 하던 자리를 modin으로 바꾸면 끝이에요.

# import pandas as pd
import modin.pandas as pd

내부적으로는 Ray, Dask, Unidist 중 하나를 엔진으로 써요. 어떤 엔진이 설치됐는지 자동 감지하고, 원하면 환경변수 MODIN_ENGINE=ray 처럼 명시적으로 골라 줄 수도 있어요. modin.pandas 의 DataFrame은 아주 가벼운 병렬 DataFrame이라 4코어 노트북에서도 최대 4배까지 빨라질 수 있어요.

다른 분산 DataFrame 라이브러리와 다른 점은 pandas API와의 호환성이에요. DataFrame 생성자까지 동일해서 기존 pandas 코드를 그대로 계속 쓸 수 있어요. 데이터를 어떻게 분산·배치할지 미리 알 필요도 없어요.

설치는 PyPI에서 해요:

pip install modin
pip install "modin[ray]"  # Ray 엔진을 함께
pip install "modin[all]"  # 모든 엔진

이렇게 하면 1MB짜리 작은 데이터부터 1TB가 넘는 큰 데이터까지 한 도구로 다룰 수 있는 길이 열려요.

더 알아보기