pandas API on Spark — Koalas가 PySpark 안으로 흡수된 이유
Delta Lake OPTIMIZE/VACUUM 및 pandas API on Spark 공식 문서 종합 (웹 리서치, 2026) — Delta Lake 공식 문서(optimizations-oss.html, delta-utility.html) + Apache Spark 공식 문서(migration_guide/koalas_to_pyspark.html) Apache Spark 공식 문서 Migrating from Koalas to pandas API on Spark
이 모듈을 다 읽으면
- pandas API on Spark가 어떤 문제(pandas 문법 재사용 vs 분산 실행)를 해결하는지 설명할 수 있다
- Koalas에서 pandas API on Spark로의 마이그레이션에서 무엇이 바뀌었는지 설명할 수 있다
spark-learn-23에서 다룬 RDD/DataFrame/Dataset과 별개로, 데이터 과학자가 이미 익숙한 pandas 문법을 그대로 쓰면서도 실제 연산은 Spark 클러스터에 분산 실행되게 해주는 pandas API on Spark(pyspark.pandas)를 정리한다.
왜 필요한가 — pandas 문법 그대로, 실행은 분산으로
pandas는 단일 머신 메모리 안에서만 동작하는 라이브러리라 대용량 데이터에는 근본적인 한계가 있다. pandas API on Spark는 데이터 과학자가 이미 익숙한 pandas 문법을 그대로 쓰면서도, 실제 연산은 Spark의 분산 처리 엔진 위에서 실행되게 해준다 — 즉 완전히 새로운 API를 처음부터 배우지 않고도 Spark의 분산 처리 능력을 활용할 수 있게 해주는 게 핵심 가치다.
핵심 포인트
- pandas는 단일 머신 메모리 안에서만 동작 — 대용량 데이터에 근본적 한계
- pandas API on Spark는 익숙한 pandas 문법을 그대로 쓰면서 실제 연산은 Spark 분산 엔진에서 실행 — 새 API를 처음부터 안 배워도 됨
Koalas에서 흡수된 배경과 마이그레이션 변경점
pandas API on Spark는 원래 Databricks가 별도 오픈소스 프로젝트(Koalas)로 개발하던 것이었는데, 별개의 두 라이브러리를 따로 유지보수하는 대신 PySpark 안으로 직접 병합돼 공식 pandas 호환 인터페이스가 됐다. 마이그레이션 시 바뀐 점은 import 경로가 import databricks.koalas as ks에서 import pyspark.pandas as ps로 바뀌고, DataFrame을 변환하던 메서드도 to_koalas()/to_pandas_on_spark()가 pandas_api()로 통합됐다는 것이다 — 옛 메서드들(to_koalas 등)은 Spark 4.0부터 완전히 제거됐다.
핵심 포인트
- 원래 Databricks의 별도 프로젝트 Koalas였으나, 별개 유지보수 대신 PySpark 안으로 병합돼 공식 인터페이스가 됨
- import databricks.koalas as ks → import pyspark.pandas as ps, to_koalas()/to_pandas_on_spark() → pandas_api()로 통합(옛 메서드는 Spark 4.0부터 완전 제거)