A three-day training on building data pipelines and processing infrastructure with Python. From data formats and validation to scalable processing and cloud integration.

Duration 3 days (21 hours)
Format 50 percent presentation, 50 percent exercises
Prerequisites Solid Python fundamentals required, basic SQL knowledge recommended
Materials Virtual machines provided, electronic course materials

Day 1 — Data Fundamentals

Data Formats

  • JSON: parsing, serialization, streaming with ijson
  • CSV: advanced handling, encoding issues, large file strategies
  • Parquet: columnar storage, reading and writing with pyarrow
  • Avro: schema evolution, binary serialization

Data Validation

  • Pydantic: models, validators, serialization, settings management
  • Schema validation strategies for incoming data
  • Error handling and data quality reporting

Database Access

  • SQLAlchemy Core: engine, connections, raw SQL, transactions
  • SQLAlchemy ORM: models, sessions, relationships, queries
  • Async database drivers: asyncpg, aiosqlite
  • Introduction to ETL and ELT patterns

Day 2 — Pipeline Design

Orchestration

  • Apache Airflow or Prefect: DAGs, tasks, scheduling, retries
  • Pipeline design patterns: idempotency, checkpointing, backfilling
  • Error handling and alerting in pipelines

Data Transformation

  • pandas: DataFrames, Series, groupby, merge, pivot
  • Advanced transformations: window functions, custom aggregations
  • Memory optimization: chunking, dtypes, categorical data

Data Quality and Testing

  • Testing data pipelines: fixtures, mock data, assertions
  • Data quality checks: completeness, consistency, freshness
  • Logging and monitoring pipeline execution

Day 3 — Scaling Up

Distributed Processing

  • Distributed processing concepts: partitioning, shuffling, aggregation
  • Introduction to Dask for parallel DataFrames
  • When to use pandas vs Dask vs Polars

Cloud Integration

  • Cloud storage: reading and writing to S3 and GCS
  • Cloud-native pipeline services overview
  • Infrastructure as Code basics for data pipelines

Real-Time Data

  • Streaming concepts: producers, consumers, topics
  • Working with message brokers from Python
  • Best practices and project architecture for data projects

Practical Exercises

  • Building a complete data pipeline from source to destination
  • Implementing data validation and quality checks
  • Deploying and monitoring a pipeline