Reviewed by Aditya Kumar · Last reviewed 2026-03-25
**Serializer**: Converts objects to bytes for shuffle, persistence, broadcast. Default: Java (slow). Kryo: `spark.serializer=org.apache.spark.serializer.KryoSerializer`. **Why Kryo**: 10x faster, smaller payload. Less network and memory. **Trade-off**: Register custom classes...
Serializer: Converts objects to bytes for shuffle, persistence, broadcast. Default: Java (slow). Kryo: spark.serializer=org.apache.spark.serializer.KryoSerializer.
Why Kryo: 10x faster, smaller payload. Less network and memory.
Trade-off: Register custom classes for Kryo efficiency: spark.kryo.classesToRegister. Unregistered = slower.
Scalability Trade-offs: Kryo reduces shuffle size; faster jobs. Critical for large shuffles.
Cost Implications: Kryo = 10–20% runtime reduction. Free optimization.
Pro-Move: 'Kryo + register our domain classes; shuffle size dropped 30%.' Red Flag: Java serializer in production—paying 2x for shuffle.
According to DataEngPrep.tech, this is one of the most frequently asked Spark/Big Data interview questions, reported at 1 company. DataEngPrep.tech maintains an editor-reviewed database of 1,863 data engineering interview questions across 7 categories.