Data Engineering Fundamentals 2 — Questions and Answers
Question 1: What is the primary difference between ETL and ELT?
- ETL transforms data before loading into the target; ELT loads raw data first then transforms inside the target (Correct answer)
- ETL is only for streaming data while ELT is only for batch
- ETL requires a data lake while ELT requires a relational database
- There is no difference; the terms are interchangeable
Correct answer: ETL transforms data before loading into the target; ELT loads raw data first then transforms inside the target
In ETL transformation happens before loading, while in ELT raw data is loaded first and transformed within the destination system.
Question 2: Which file format is columnar and optimized for analytical query performance?
- CSV
- Parquet (Correct answer)
- JSON
- XML
Correct answer: Parquet
Parquet stores data by column, enabling efficient compression and fast analytical reads.
Question 3: What does idempotency mean for a data pipeline task?
- The task can only run once per day
- Running the task multiple times produces the same result as running it once (Correct answer)
- The task automatically retries on failure
- The task processes data in parallel
Correct answer: Running the task multiple times produces the same result as running it once
An idempotent task yields the same outcome no matter how many times it is executed, preventing duplicate side effects.
Question 4: In a star schema, the central table that holds measurable business events is called the:
- Dimension table
- Fact table (Correct answer)
- Bridge table
- Lookup table
Correct answer: Fact table
The fact table sits at the center of a star schema and stores quantitative metrics referencing surrounding dimension tables.
Question 5: Which tool is most commonly used to orchestrate and schedule batch data workflows as DAGs?
- Apache Airflow (Correct answer)
- Apache Kafka
- Redis
- Nginx
Correct answer: Apache Airflow
Apache Airflow defines workflows as directed acyclic graphs (DAGs) and schedules their execution.
Question 6: What is the main purpose of data partitioning in a large table?
- To encrypt sensitive columns
- To improve query performance and manageability by dividing data into segments (Correct answer)
- To normalize the schema
- To enforce foreign key constraints
Correct answer: To improve query performance and manageability by dividing data into segments
Partitioning splits a large dataset into smaller segments so queries scan less data, improving performance.
Question 7: A schema-on-read approach is most characteristic of which storage system?
- A traditional relational data warehouse
- A data lake (Correct answer)
- A normalized OLTP database
- A stored procedure
Correct answer: A data lake
Data lakes apply schema-on-read, storing raw data and interpreting structure only when the data is queried.
What is the primary difference between ETL and ELT?