Big Data & Data Engineering MCQ
Test your Big Data & Data Engineering knowledge with 100 multiple choice questions covering fundamentals to advanced concepts, with instant feedback and explanations.
How This Practice Test Works
Every question below expands right on this page — click a question to reveal its four options, pick the one you think is correct, and you'll get instant feedback along with the correct answer and a short explanation of the reasoning. Questions are grouped by difficulty, so start with the 40 beginner questions to confirm your fundamentals, work through the 40 intermediate ones, and finish with the 20 advanced questions that mirror what exams and technical screenings actually ask. There's no sign-up, no timer, and no limit — retake the test as often as you like.
Curated by Tech Baithak Editorial Team · Last updated: June 2026
1
What is "Big Data" most commonly defined by?
Correct Answer
Data so large or complex that traditional tools cannot process it efficiently
Explanation
Big Data refers to datasets whose volume, velocity, or variety exceed the capabilities of traditional data processing tools, requiring distributed systems.
2
Which of the following are commonly called the "3 Vs" of Big Data?
Correct Answer
Volume, Velocity, Variety
Explanation
The classic 3 Vs are Volume (amount of data), Velocity (speed of generation/processing), and Variety (different data types and formats).
3
What is HDFS?
Correct Answer
A distributed file system designed to store large files across many machines
Explanation
HDFS (Hadoop Distributed File System) splits large files into blocks and distributes them across a cluster of machines for fault tolerance and parallel access.
4
What is the primary purpose of MapReduce?
Correct Answer
To process large datasets in parallel across a cluster using "map" and "reduce" steps
Explanation
MapReduce is a programming model that splits a task into a "map" phase (transform/filter) and a "reduce" phase (aggregate), enabling parallel distributed processing.
5
What is the main difference between batch processing and stream processing?
Correct Answer
Batch processes data in large groups at intervals; stream processes data continuously as it arrives
Explanation
Batch processing handles accumulated data in scheduled chunks, while stream processing handles events in near real-time as they are generated.
6
What is the key difference between a data warehouse and a data lake?
Correct Answer
A data warehouse stores structured, processed data for analysis; a data lake stores raw data in its native format
Explanation
Data warehouses hold structured, schema-on-write data optimized for reporting, while data lakes store raw structured, semi-structured, and unstructured data cheaply.
7
What does ETL stand for in data engineering?
Correct Answer
Extract, Transform, Load
Explanation
ETL describes the process of extracting data from sources, transforming it into a usable format, and loading it into a target system like a data warehouse.
8
How does ELT differ from ETL?
Correct Answer
In ELT, raw data is loaded into the target system first, and transformation happens afterward inside that system
Explanation
ELT leverages the processing power of modern warehouses, loading raw data first and transforming it with SQL or compute inside the warehouse afterward.
9
Which best describes "structured data"?
Correct Answer
Data organized in a fixed schema, such as rows and columns in a relational table
Explanation
Structured data follows a predefined schema (e.g., tables with rows/columns), making it easy to query with SQL, unlike semi-structured or unstructured data.
10
Which of these is an example of semi-structured data?
Correct Answer
A JSON document with nested key-value pairs
Explanation
JSON and XML are semi-structured: they have some organizational structure (tags, keys) but do not enforce a rigid schema like relational tables.
11
What is a key characteristic of NoSQL databases?
Correct Answer
They often relax strict schema requirements and are designed to scale horizontally
Explanation
NoSQL databases (document, key-value, column-family, graph) typically offer flexible schemas and horizontal scalability, suited for large or varied datasets.
12
What does "schema-on-read" mean?
Correct Answer
The structure of the data is applied/interpreted at the time the data is read, not when it is stored
Explanation
Schema-on-read (common in data lakes) stores raw data and applies structure only when queries read it, offering flexibility compared to schema-on-write.
13
What is a "data pipeline"?
Correct Answer
A series of steps that move and transform data from a source to a destination
Explanation
A data pipeline automates the flow of data through stages such as ingestion, transformation, and loading, often run on a schedule or triggered by events.
14
What is the main difference between OLTP and OLAP systems?
Correct Answer
OLTP handles many small transactional operations; OLAP handles complex analytical queries over large datasets
Explanation
OLTP (Online Transaction Processing) systems support fast, frequent writes for operational apps, while OLAP (Online Analytical Processing) systems support complex read-heavy analytics.
15
Which file format is columnar and commonly used for analytical workloads?
Correct Answer
Parquet
Explanation
Parquet stores data column-by-column, enabling efficient compression and allowing queries to read only the columns they need, ideal for analytics.
16
What is "data partitioning" in the context of data storage?
Correct Answer
Dividing a dataset into separate parts, often by a column like date, to improve query performance
Explanation
Partitioning organizes data into subsets (e.g., by date or region) so queries can scan only relevant partitions instead of the entire dataset.
17
Why is SQL important for data engineers?
Correct Answer
It is the standard language for querying, transforming, and managing data in relational and many big data systems
Explanation
SQL remains central to data engineering for querying databases, writing transformations in ELT pipelines, and interacting with most warehouses and engines.
18
What is "data ingestion"?
Correct Answer
The process of collecting and importing data from various sources into a storage or processing system
Explanation
Data ingestion is the entry point of a pipeline, bringing data from sources like databases, APIs, or files into a system for further processing.
19
In a data lake, why is raw data often retained even after processing?
Correct Answer
To allow reprocessing with different logic later and to preserve a complete historical record
Explanation
Keeping raw data provides a source of truth, enabling reprocessing if transformation logic changes or bugs are found, without re-fetching from the original source.
20
What is distributed computing?
Correct Answer
A model where a computational task is split across multiple machines working together
Explanation
Distributed computing splits work across many connected machines (nodes) so large datasets and computations can be processed in parallel, faster than on one machine.
21
What is Apache Spark primarily used for?
Correct Answer
Fast, large-scale data processing, including batch and streaming workloads
Explanation
Apache Spark is a distributed computing engine for large-scale batch and stream data processing, known for in-memory computation and speed over disk-based MapReduce.
22
In a computing cluster, what is a "node"?
Correct Answer
An individual machine (physical or virtual) that is part of the cluster
Explanation
A node is one machine in a cluster, contributing CPU, memory, and storage resources to the overall distributed system.
23
What does "data quality" generally refer to?
Correct Answer
How accurate, complete, consistent, and reliable data is for its intended use
Explanation
Data quality covers dimensions like accuracy, completeness, consistency, timeliness, and validity — all crucial for trustworthy analytics and decisions.
24
In a relational database, what is the purpose of a primary key?
Correct Answer
To uniquely identify each record in a table
Explanation
A primary key is a column (or set of columns) whose values uniquely identify each row, ensuring no duplicate identifiers exist.
25
What is the purpose of a database index?
Correct Answer
To speed up data retrieval by providing a faster lookup path, at the cost of extra storage and write overhead
Explanation
Indexes act like a lookup structure (often a B-tree) that allows the database to find rows quickly without scanning the entire table.
26
In data modeling, what is a "fact table"?
Correct Answer
A table that stores measurable, quantitative data, such as sales amounts, typically linked to dimension tables
Explanation
Fact tables hold numeric measures (e.g., revenue, quantity) and foreign keys referencing dimension tables, forming the core of star/snowflake schemas.
27
What is a "dimension table" used for in a star schema?
Correct Answer
To store descriptive attributes (like customer name, product category, date) that provide context for facts
Explanation
Dimension tables contain descriptive context (who, what, where, when) referenced by foreign keys in fact tables, enabling slicing and filtering of measures.
28
What is the main goal of database normalization?
Correct Answer
To reduce data redundancy and improve data integrity by organizing data into related tables
Explanation
Normalization organizes data to minimize duplication and dependency issues, typically by splitting data into multiple related tables following normal forms.
29
Why might a data engineer intentionally "denormalize" data in an analytics warehouse?
Correct Answer
To reduce the number of joins needed and improve read/query performance for analytics
Explanation
Denormalization trades some redundancy for faster reads by combining related data, which is often desirable in analytical (OLAP) workloads with heavy reads.
30
What does "data governance" primarily address?
Correct Answer
Policies, roles, and processes for managing data availability, usability, integrity, and security
Explanation
Data governance establishes who can access, modify, and use data, ensuring compliance, quality, and security across an organization.
31
What is "metadata"?
Correct Answer
Data that describes other data, such as a table's schema, creation date, or owner
Explanation
Metadata provides context about data — such as column names, types, source, and last-updated time — helping users and systems understand and manage datasets.
32
What is a "data catalog" used for?
Correct Answer
To inventory and document available datasets, including their schema, owner, and description, for discovery
Explanation
A data catalog helps users discover and understand available datasets across an organization, often including search, lineage, and ownership information.
33
What is "Change Data Capture" (CDC)?
Correct Answer
A technique to identify and capture changes (inserts, updates, deletes) made to a database so they can be replicated elsewhere
Explanation
CDC tracks row-level changes in a source database (often via transaction logs) and streams them to downstream systems, enabling near real-time replication.
34
In data pipelines, what does "idempotent" mean?
Correct Answer
Running the same operation multiple times produces the same result as running it once
Explanation
Idempotent pipelines can safely be re-run (e.g., after a failure) without creating duplicate records or corrupting data, which is critical for reliability.
35
What is "data serialization"?
Correct Answer
Converting data structures or objects into a format that can be stored or transmitted and later reconstructed
Explanation
Serialization formats like JSON, Avro, and Protobuf convert in-memory data into bytes for storage or network transfer, then deserialize it back later.
36
Why are compression formats like Snappy or Gzip used in big data systems?
Correct Answer
To reduce storage size and network transfer time, often at some CPU cost for compress/decompress
Explanation
Compression reduces storage costs and I/O time, which is especially valuable for big data where datasets can be enormous; the trade-off is CPU usage.
37
What is the purpose of a scheduling tool like cron in data pipelines?
Correct Answer
To automatically trigger jobs to run at specified times or intervals
Explanation
Schedulers like cron (or more advanced orchestrators) trigger pipeline jobs on a defined schedule, such as running an ETL job every night.
38
What is "data lineage"?
Correct Answer
A record of the data's origin, movements, and transformations from source to destination
Explanation
Data lineage tracks how data flows and transforms through systems, helping with debugging, impact analysis, and regulatory compliance.
39
Which of these is a popular cloud data warehouse service?
Correct Answer
Snowflake
Explanation
Snowflake is a popular cloud-based data warehouse, alongside others like Amazon Redshift and Google BigQuery, used for large-scale analytics.
40
What is the role of a "data engineer" most accurately described as?
Correct Answer
Building and maintaining the infrastructure and pipelines that collect, store, and prepare data for analysis
Explanation
Data engineers design, build, and maintain the systems and pipelines that make reliable data available for analysts, scientists, and applications.
1
What is the main difference between a Spark RDD and a DataFrame?
Correct Answer
RDDs are low-level distributed collections without a schema; DataFrames add structure with named columns and types, enabling query optimization
Explanation
DataFrames are built on top of RDDs and add a schema, allowing Spark's Catalyst optimizer to generate more efficient execution plans than raw RDD operations.
2
In Spark, what is the difference between a "transformation" and an "action"?
Correct Answer
Transformations build a lazy execution plan without computing results; actions trigger actual computation and return a result
Explanation
Operations like map() or filter() are transformations that build a DAG lazily; operations like count() or collect() are actions that trigger execution.
3
What is "lazy evaluation" in Spark, and why is it beneficial?
Correct Answer
Spark delays executing transformations until an action is called, allowing it to optimize the overall execution plan
Explanation
By deferring execution, Spark can analyze the full chain of transformations and apply optimizations like predicate pushdown before running any actual computation.
4
What is a "shuffle" in distributed data processing, and why is it costly?
Correct Answer
A shuffle redistributes data across partitions/nodes (e.g., for joins or groupBy), involving expensive network and disk I/O
Explanation
Operations like groupBy, join, or repartition require data with the same key to be on the same node, causing data to be moved across the network — a shuffle.
5
What is a "broadcast join" and when is it useful?
Correct Answer
A join where a small table is sent to all nodes in full, avoiding a shuffle of the large table when joining with it
Explanation
When one table is small enough to fit in memory on each executor, broadcasting it avoids shuffling the large table, significantly speeding up the join.
6
In Apache Kafka, what is a "topic"?
Correct Answer
A named stream/category to which records (messages) are published and from which they are consumed
Explanation
Topics are logical channels in Kafka; producers write records to topics and consumers read from them, with topics divided into partitions for scalability.
7
What is the relationship between Kafka "partitions" and "offsets"?
Correct Answer
Each partition is an ordered, append-only log, and an offset is the position of a record within that partition
Explanation
Partitions allow Kafka to parallelize and scale a topic, and each message within a partition has a sequential offset that consumers use to track position.
8
In a workflow orchestration tool like Apache Airflow, what is a "DAG"?
Correct Answer
A Directed Acyclic Graph defining a set of tasks and their dependencies/execution order
Explanation
A DAG represents tasks as nodes and dependencies as directed edges with no cycles, allowing the scheduler to determine a valid execution order.
9
Why is it important for pipeline tasks in Airflow to be idempotent?
Correct Answer
So that retries or backfills after a failure do not produce duplicate or inconsistent data
Explanation
Pipelines often need to be retried or backfilled; idempotent tasks (e.g., using overwrite instead of append) ensure re-running produces the same correct result.
10
What does a SQL "window function" allow you to do that a normal aggregate (GROUP BY) does not?
Correct Answer
Compute aggregates across a set of rows related to the current row while still returning one row per input row
Explanation
Window functions (e.g., ROW_NUMBER, RANK, running totals with OVER) compute values across a "window" of rows without collapsing the result like GROUP BY does.
11
In dimensional modeling, what is a "Slowly Changing Dimension" (SCD) Type 2?
Correct Answer
A technique that preserves historical values by adding new rows with effective date ranges when a dimension attribute changes
Explanation
SCD Type 2 tracks history by inserting new rows (with start/end dates or a current flag) instead of overwriting, unlike Type 1 which simply overwrites.
12
Why might a table be both "partitioned" by date and "bucketed" by a column like user_id?
Correct Answer
Partitioning prunes data by date ranges, while bucketing further organizes data within partitions to speed up joins and aggregations on a key
Explanation
Combining partitioning (coarse-grained pruning, e.g., by date) with bucketing (hashing rows into fixed buckets by a key) optimizes both scan and join performance.
13
What is a key benefit of columnar formats like Parquet for analytical queries?
Correct Answer
Queries can read only the needed columns and benefit from better compression due to similar data types stored together
Explanation
Storing values column-by-column means analytical queries that touch few columns read less data, and similar values compress better than row-oriented storage.
14
What is "schema evolution" in formats like Avro, and why does it matter?
Correct Answer
The ability to change a data schema over time (e.g., add fields) while maintaining compatibility with older data
Explanation
Schema evolution allows producers and consumers using different schema versions to remain compatible (e.g., adding optional fields with defaults).
15
What is the purpose of data validation frameworks (e.g., Great Expectations) in a pipeline?
Correct Answer
To automatically check data against defined rules (nulls, ranges, uniqueness) and catch quality issues early
Explanation
Data validation frameworks define expectations (e.g., "column X must not be null") and run automated checks within pipelines to catch issues before they propagate.
16
What is the "medallion architecture" (bronze, silver, gold layers) in a data lakehouse?
Correct Answer
A layered approach where bronze holds raw data, silver holds cleaned/conformed data, and gold holds business-level aggregated data
Explanation
The medallion architecture progressively refines data: bronze (raw ingest), silver (cleaned and joined), and gold (aggregated, business-ready) layers.
17
What does the CAP theorem state about distributed systems?
Correct Answer
A distributed system can guarantee at most two of: Consistency, Availability, and Partition tolerance, at the same time during a partition
Explanation
CAP theorem describes the trade-off that during a network partition, a system must choose between consistency and availability, while still being partition tolerant.
18
What does "eventual consistency" mean in distributed databases?
Correct Answer
If no new updates occur, all replicas will eventually converge to the same value, though they may briefly differ
Explanation
Eventually consistent systems prioritize availability and allow temporary divergence between replicas, converging over time without immediate synchronization.
19
What role does Apache ZooKeeper traditionally play in distributed systems like older Kafka or Hadoop clusters?
Correct Answer
It provides distributed coordination, such as configuration management, leader election, and metadata storage
Explanation
ZooKeeper coordinates distributed processes — managing cluster metadata, leader election, and configuration — though newer Kafka versions reduce this dependency.
20
In Spark architecture, what is the relationship between the "driver" and "executors"?
Correct Answer
The driver coordinates the job and schedules tasks, while executors run those tasks and store data on worker nodes
Explanation
The driver process runs the main program, builds the execution plan, and sends tasks to executors, which perform the actual computation in parallel.
21
When should you use Spark's "cache()" or "persist()" on a DataFrame?
Correct Answer
When the same DataFrame will be reused multiple times, to avoid recomputing it from scratch each time
Explanation
Caching stores intermediate results in memory (or disk) so repeated actions on the same DataFrame avoid recomputation, at the cost of memory usage.
22
What is "data skew" in a distributed join or aggregation, and why is it a problem?
Correct Answer
When data is unevenly distributed across partitions (e.g., one key has far more rows), causing some tasks to take much longer than others
Explanation
Skew occurs when certain keys dominate the data, overloading the tasks/nodes handling them, which can be mitigated with techniques like salting or repartitioning.
23
What does "exactly-once" processing semantics mean in a streaming system?
Correct Answer
Each input record affects the final result exactly once, even if failures and retries occur
Explanation
Exactly-once semantics ensure that despite retries due to failures, each event's effect is applied only once in the output, avoiding duplicates or loss.
24
What is a "watermark" used for in stream processing (e.g., Spark Structured Streaming, Flink)?
Correct Answer
To track event time progress and decide when to consider late-arriving data as too late for a window
Explanation
Watermarks define a threshold for how late data can arrive and still be included in a windowed computation, balancing latency and completeness.
25
What is "micro-batching" in stream processing frameworks like Spark Structured Streaming?
Correct Answer
Processing streaming data in small, frequent batches rather than one record at a time
Explanation
Micro-batching divides a continuous stream into small time-based batches, balancing the low latency of true streaming with the efficiency of batch processing.
26
How does Apache Flink's streaming model generally differ from Spark's traditional micro-batch model?
Correct Answer
Flink processes events one at a time in a true streaming (continuous) model, often achieving lower latency than micro-batching
Explanation
Flink is built around native, continuous event-at-a-time streaming, while Spark traditionally used micro-batches (though Spark has improved with continuous processing options).
27
What is a "materialized view" in a data warehouse, and why use one?
Correct Answer
A precomputed query result stored physically, refreshed periodically, to speed up repeated complex queries
Explanation
Materialized views cache the results of expensive queries on disk, trading storage and refresh overhead for much faster read performance on repeated queries.
28
How might a Slowly Changing Dimension Type 2 implementation typically be structured in a table?
Correct Answer
With columns like effective_start_date, effective_end_date, and an is_current flag alongside the changed attribute
Explanation
SCD Type 2 commonly adds versioning columns (start/end dates, current flag, or version number) so historical attribute values can be queried as of a point in time.
29
What is the core idea behind a "data mesh" architecture?
Correct Answer
Decentralizing data ownership to domain teams who treat data as a product, rather than relying on one central data team
Explanation
Data mesh shifts from a centralized data platform team to domain-oriented teams owning and serving their data as discoverable, well-governed "data products".
30
What problem does a "schema registry" (e.g., used with Kafka and Avro) solve?
Correct Answer
It centrally stores and validates schemas so producers and consumers agree on data structure and can handle schema evolution safely
Explanation
A schema registry ensures producers and consumers serialize/deserialize messages using compatible schema versions, preventing data corruption from mismatches.
31
What is "backpressure" in a streaming pipeline?
Correct Answer
A situation where a downstream component cannot keep up with the rate of incoming data, requiring the pipeline to slow producers or buffer data
Explanation
Backpressure mechanisms signal upstream stages to slow down or buffer when downstream stages are overwhelmed, preventing resource exhaustion or data loss.
32
Why is it generally recommended to avoid SELECT * in large-scale analytical queries?
Correct Answer
It forces reading all columns even from columnar storage, increasing I/O and query cost unnecessarily
Explanation
In columnar formats, selecting only needed columns lets the engine skip reading irrelevant column data, reducing I/O, cost, and query time significantly.
33
What is the purpose of "checkpointing" in streaming applications?
Correct Answer
Periodically saving the processing state so the application can recover from failures without reprocessing everything from the start
Explanation
Checkpoints persist offsets and state to durable storage so that on failure, a streaming job can resume from the last checkpoint instead of starting over.
34
What is a key advantage of using a cloud object store (e.g., S3, GCS, ADLS) as the foundation for a data lake?
Correct Answer
Decoupled, scalable, cost-effective storage that separates storage from compute, allowing many engines to access the same data
Explanation
Cloud object stores provide cheap, durable, scalable storage decoupled from compute, letting multiple engines (Spark, Presto, etc.) query the same data.
35
What is the difference between "vertical scaling" and "horizontal scaling" for data systems?
Correct Answer
Vertical scaling adds more resources (CPU/RAM) to a single machine; horizontal scaling adds more machines to a cluster
Explanation
Vertical scaling ("scale up") increases capacity of one node, with hard limits; horizontal scaling ("scale out") distributes load across many nodes, common in big data systems.
36
In a streaming join between two Kafka topics, why is "event time" often preferred over "processing time"?
Correct Answer
Event time reflects when the event actually occurred, giving more accurate results even if data arrives late or out of order
Explanation
Event time is based on when data was generated, allowing correct results despite network delays or out-of-order arrival, unlike processing time which depends on system clock.
37
What is the purpose of "data deduplication" in a pipeline?
Correct Answer
Identifying and removing duplicate records, often caused by retries or at-least-once delivery, to maintain accurate results
Explanation
Deduplication removes redundant copies of the same event, which commonly arise from retry logic in at-least-once delivery systems, ensuring accurate aggregates.
38
In Hadoop, what is the role of YARN (Yet Another Resource Negotiator)?
Correct Answer
It manages and allocates cluster resources (CPU, memory) to applications and schedules their execution
Explanation
YARN separates resource management from processing logic, allowing multiple processing frameworks (MapReduce, Spark) to share cluster resources efficiently.
39
In Spark, what is the difference between "repartition()" and "coalesce()"?
Correct Answer
repartition() can increase or decrease partitions and triggers a full shuffle; coalesce() can only decrease partitions and avoids a full shuffle when possible
Explanation
coalesce() is more efficient for reducing partitions since it minimizes data movement, while repartition() performs a full shuffle and can both increase and decrease partition count.
40
What is the benefit of "partition pruning" when querying a partitioned table?
Correct Answer
The query engine skips scanning partitions that cannot contain relevant data based on filter conditions, reducing I/O
Explanation
When a query filters on the partitioning column (e.g., WHERE date = '2024-01-01'), the engine can skip irrelevant partitions entirely, greatly improving performance.
1
What is the role of Spark's Catalyst optimizer?
Correct Answer
It analyzes and rewrites logical query plans (e.g., predicate pushdown, constant folding) before generating an optimized physical execution plan
Explanation
Catalyst applies rule-based and cost-based optimizations to transform a logical plan into an efficient physical plan, such as reordering filters or choosing join strategies.
2
What does Spark's Tungsten execution engine primarily improve?
Correct Answer
CPU and memory efficiency via techniques like off-heap memory management, whole-stage code generation, and cache-friendly data layouts
Explanation
Tungsten focuses on low-level CPU/memory efficiency, including binary in-memory data formats and generating JVM bytecode for whole stages to avoid interpretation overhead.
3
What is Spark's Adaptive Query Execution (AQE) designed to do?
Correct Answer
Re-optimize the query plan at runtime based on actual statistics, such as dynamically switching join strategies or coalescing shuffle partitions
Explanation
AQE uses runtime statistics (actual partition sizes after a shuffle) to adapt the plan, e.g., switching a sort-merge join to a broadcast join or reducing skewed partitions.
4
How does Kafka achieve "exactly-once" semantics across producer and consumer with transactions?
Correct Answer
By using idempotent producers combined with transactional writes that atomically commit both output records and consumer offsets
Explanation
Kafka transactions let a producer atomically write to multiple partitions and commit consumer offsets together, so a failure and retry does not produce duplicates downstream.
5
What happens during Kafka consumer group "rebalancing"?
Correct Answer
Partition ownership is reassigned among consumers in the group (e.g., when a consumer joins, leaves, or fails), which can briefly pause processing
Explanation
Rebalancing redistributes partitions across active consumers in a group to maintain parallel processing, but can cause brief processing pauses ("stop-the-world" in older protocols).
6
What is the key architectural difference between "Lambda" and "Kappa" architectures for big data processing?
Correct Answer
Lambda maintains separate batch and streaming pipelines that may produce different code paths; Kappa uses a single streaming pipeline for both real-time and historical reprocessing
Explanation
Lambda runs parallel batch and stream layers (risking logic divergence), while Kappa simplifies by treating all data as a stream, reprocessing from the log when needed.
7
What core problem do "lakehouse" table formats like Delta Lake, Apache Iceberg, and Apache Hudi solve for data lakes?
Correct Answer
They bring ACID transactions, schema enforcement, and time travel to data stored in object storage, which previously lacked these guarantees
Explanation
Lakehouse formats add a transactional metadata layer over files in object storage, enabling ACID guarantees, concurrent writes, schema evolution, and historical versioning ("time travel").
8
How do table formats like Delta Lake or Iceberg typically implement "time travel" queries?
Correct Answer
By maintaining a versioned log of metadata snapshots that map table versions to specific sets of underlying data files
Explanation
A transaction log records each commit as a new snapshot referencing specific data files, so querying "as of" a prior version reconstructs the table state from that snapshot.
9
What is "Z-ordering" (multi-dimensional clustering) used for in lakehouse tables?
Correct Answer
It co-locates related data across multiple columns within files, improving data skipping for queries that filter on those columns
Explanation
Z-ordering interleaves values from multiple columns so that files contain a narrower range of values for each, allowing more files to be skipped when filtering on those columns.
10
Why is "compaction" important for streaming-ingested data lake tables?
Correct Answer
Frequent small writes from streaming create many small files, which hurts read performance; compaction merges them into fewer, larger files
Explanation
The "small file problem" from streaming writes increases metadata overhead and slows scans; periodic compaction jobs merge small files into optimally sized larger files.
11
When does a distributed query engine typically choose a "shuffle hash join" vs. a "sort-merge join"?
Correct Answer
Shuffle hash join can be used when one side is small enough to build an in-memory hash table after shuffling; sort-merge join handles larger datasets by sorting both sides on the join key
Explanation
Sort-merge join scales well for large datasets via sorting, while shuffle hash join can be faster when one side fits in memory after shuffling, avoiding the sort step.
12
What is "predicate pushdown" and why is it especially effective with columnar file formats?
Correct Answer
Filter conditions are pushed down to the storage layer so it can skip reading row groups or files that cannot match, using stored min/max statistics
Explanation
Columnar formats like Parquet store per-column statistics (min/max) per row group, so the reader can skip entire row groups that cannot satisfy a filter, drastically reducing I/O.
13
What is "dictionary encoding" in columnar storage, and when is it most effective?
Correct Answer
Replacing repeated values with integer references to a dictionary of unique values, most effective on columns with low cardinality
Explanation
Dictionary encoding stores unique values once and references them by small integer codes, yielding large compression gains for low-cardinality columns like country or status.
14
In an end-to-end exactly-once pipeline spanning a source, processing engine, and sink, what is typically the hardest part to guarantee?
Correct Answer
The sink write must be made idempotent or transactional, since the source and engine alone cannot guarantee the final write is not duplicated
Explanation
True end-to-end exactly-once requires coordination across all three stages; the sink often needs idempotent writes (e.g., upserts keyed by a unique ID) or two-phase commit support.
15
How does Debezium typically implement Change Data Capture for relational databases?
Correct Answer
It reads the database's transaction log (e.g., MySQL binlog, PostgreSQL WAL) to capture row-level changes and publish them as events, typically to Kafka
Explanation
Log-based CDC (used by Debezium) reads the database's internal replication/transaction log, capturing changes with minimal performance impact compared to polling-based approaches.
16
What is "salting" as a technique to address data skew in a distributed join?
Correct Answer
Appending a random or computed suffix to skewed join keys on both sides to spread a hot key's rows across multiple partitions
Explanation
Salting splits a single overloaded key into several "salted" sub-keys distributed across partitions, then the results are combined, balancing the workload across tasks.
17
In streaming checkpointing, why is it important that checkpoint storage be durable and consistent with the state being saved?
Correct Answer
If checkpoints and processed offsets become inconsistent, recovery after a failure can lead to data loss or duplicate processing
Explanation
A checkpoint must atomically capture both the processing state and the corresponding input offsets so that recovery resumes from a consistent point, avoiding gaps or duplicates.
18
When evolving a schema by adding a new non-nullable column to an existing large table in a lakehouse format, what is a key consideration?
Correct Answer
Existing data files do not have the new column, so the format typically requires a default value or treats it as nullable to maintain backward read compatibility
Explanation
To avoid rewriting all historical files immediately, formats handle schema evolution by reading missing columns as null or default values for older files, deferring physical rewrites.
19
What is "cost-based optimization" (CBO) in a query engine, and what does it rely on?
Correct Answer
The optimizer uses collected statistics (row counts, data distributions) to estimate the cost of different execution plans and choose the cheapest one
Explanation
CBO relies on table/column statistics (cardinality, distinct counts, histograms) to estimate costs of alternative plans, e.g., choosing join order or join strategy.
20
Why might increasing the number of Spark shuffle partitions help with out-of-memory errors during a large aggregation, but also potentially hurt performance if set too high?
Correct Answer
More partitions mean smaller per-task data, reducing memory pressure, but too many small partitions add scheduling and task-overhead costs that can slow the job down
Explanation
Tuning shuffle partitions balances memory per task against per-task overhead; too few causes large tasks that may OOM, while too many causes excessive scheduling overhead.