PySpark vs pandas на собеседовании Data Engineer

Закрепи Python для аналитика
200+ задач по pandas, numpy и работе с данными — с разборами
Тренировать Python в Telegram

Карьерник — Duolingo для аналитиков: 10 минут в день тренируй SQL, Python, A/B, статистику, метрики и ещё 3 темы собеса. 1500+ вопросов в Telegram-боте. Бесплатно.

Сравнение

pandas PySpark
Single machine Yes No (cluster)
Memory Limited (RAM) Distributed
Speed (small data) Fast Overhead
Speed (big data) OOM / slow Designed для
API Mature DataFrame API
Lazy No (eager) Yes
Custom Python ops Native UDF (slower)

API differences

pandas:

df.groupby('country').agg({'amount': 'sum'})

PySpark:

from pyspark.sql import functions as F
df.groupBy('country').agg(F.sum('amount').alias('total'))

Similar but not identical. Function naming, lazy evaluation differences.

Pandas API on Spark

pyspark.pandas (был Koalas). Pandas-like API на Spark.

import pyspark.pandas as ps
psdf = ps.read_parquet('s3://...')
psdf.groupby('country').sum()  # pandas-style!

Mix migrate pandas code в Spark без learning new API.

Caveats. Не 100% pandas — some methods missing / different.

Закрепи Python для аналитика
200+ задач по pandas, numpy и работе с данными — с разборами
Тренировать Python в Telegram

Polars

Modern alternative pandas. Rust-based, fast, lazy.

import polars as pl
df = pl.read_parquet('file.parquet')
df.lazy().group_by('country').agg(pl.col('amount').sum()).collect()

Pros: 5-50× faster pandas. Native Rust.

Cons: less mature ecosystem.

DuckDB — similar, SQL-first.

Когда что

pandas.

  • Data fits in RAM (< 10GB).
  • Quick exploratory.
  • Prototyping ML.
  • Existing codebase.

PySpark.

  • TB-scale data.
  • Cluster available.
  • Need distributed compute.

Polars.

  • Single-machine, но fast performance critical.
  • New projects.

DuckDB.

  • Single-machine SQL над files.
  • Embedded в apps.

Связанные темы

FAQ

Это официальная информация?

Нет. Статья основана на документации Spark / pandas / Polars.


Тренируйте Data Engineering — откройте тренажёр с 1500+ вопросами для собесов.