📊

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.

100 Questions 40 Beginner 40 Intermediate 20 Advanced

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?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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"?

A

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?

A

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?

A

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?

A

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"?

A

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?

A

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?

A

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?

A

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?

A

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"?

A

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?

A

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?

A

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?

A

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"?

A

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?

A

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?

A

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?

A

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"?

A

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?

A

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?

A

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?

A

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?

A

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"?

A

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?

A

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)?

A

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?

A

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"?

A

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?

A

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?

A

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"?

A

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?

A

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?

A

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?

A

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"?

A

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?

A

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?

A

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?

A

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"?

A

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"?

A

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"?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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"?

A

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?

A

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?

A

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?

A

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)?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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"?

A

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?

A

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)?

A

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()"?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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"?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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"?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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?

A

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.