spark-data-engineering

Build Apache Spark batch and streaming ETL pipelines with explicit schemas and partitioned Parquet writes.

6|1|Updated Mar 30, 2026
One-click install
npx skills add https://github.com/wesleyosantos91/multi-agents --skill spark-data-engineering
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: spark-data-engineering
Source: https://github.com/wesleyosantos91/multi-agents/tree/main/devin/.devin/skills/spark-data-engineering
Command: npx skills add https://github.com/wesleyosantos91/multi-agents --skill spark-data-engineering

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill helps you implement robust Apache Spark data engineering patterns for batch and streaming workloads without common production pitfalls like schema drift, inefficient shuffles, or unsafe file sizing.

Core Features & Use Cases

  • Provides end-to-end Spark patterns: SparkSession configuration, schema-first ingestion, and DataFrame transform composition.
  • Covers batch, streaming, and AWS Glue: Structured Streaming with checkpoints and Glue DynamicFrame-to-DataFrame integration.
  • Enables production hygiene: partitioning strategy, output file sizing controls, performance tuning guidance, and testing/data quality check patterns.
  • Practical use case: Build an orders pipeline that ingests from Kafka or S3, enriches records, validates data quality, partitions outputs by date, and writes results to Parquet/Delta for downstream consumption.

Quick Start

Use this skill to generate a Spark batch and streaming implementation plan for an orders ETL pipeline using explicit schemas, pure DataFrame transformations, partitioned Parquet output, data quality checks, and basic unit tests.

Frequently Asked Questions about spark-data-engineering

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build a production-ready Apache Spark data pipeline?

Build a production-ready Apache Spark data pipeline by enforcing explicit StructType schemas, composing pure DataFrame transformations, and applying adaptive query execution with shuffle and file-size tuning to prevent inefficient shuffles and schema drift.

What is the best way to handle schema drift in PySpark Structured Streaming?

Handle schema drift in PySpark Structured Streaming by enforcing schema-first ingestion with explicit StructType schemas and implementing checkpointing to ensure state recovery and prevent unexpected data quality issues during streaming processing.

How do I optimize broadcast joins for small tables in Spark ETL jobs?

Optimize broadcast joins for small tables in Spark ETL jobs by configuring adaptive query execution and applying shuffle partition tuning, which reduces unnecessary data exchange and improves overall DataFrame transformation performance.

Can I use AWS Glue DynamicFrames with Apache Spark DataFrame transformations?

Yes, you can use AWS Glue DynamicFrames with Apache Spark by leveraging Glue DynamicFrame-to-DataFrame integration, allowing you to apply pure DataFrame transformations and partitioned Parquet writes within your Glue jobs.

How do I partition Parquet outputs effectively in Spark batch processing?

Partition Parquet outputs effectively in Spark batch processing by applying a strict partitioning strategy based on date or business keys, and configuring output file sizing controls to prevent the generation of unsafe or undersized files.

Why do my Spark data pipelines fail data quality checks?

Spark data pipelines fail data quality checks when lacking testable quality gates, which you can fix by implementing schema validation, pure DataFrame transformation composition, and structured unit tests before writing to Delta or Parquet.