Prepstellar

Data Engineering Fundamentals · Final test · 25 questions

Data Engineering Fundamentals final test: 25 free questions

Untimed here · timed and scored in the app

A free Data Engineering Fundamentals practice test with 25 questions drawn from the whole course. Answer at your pace and read why each option is right or wrong.

Swipe, scroll or use ← →
  1. Q1 / 25

    How does `reschedule` mode reduce a Sensor's capacity use?

    1. AIt converts the Sensor into an asset-producing task
    2. BIt runs every check inside the Dag processor process
    3. CIt creates a global Connection
    4. DIt releases the worker slot between checks
    Show the answer

    Rescheduling preserves periodic checks without holding a worker slot during the sleep between them.

    Next → 1 / 25
  2. Q2 / 25

    Which statement is true of both Parquet and ORC in Spark?

    1. AThey can be read only after conversion to CSV
    2. BNeither format supports typed analytical data
    3. CEach file alone supplies atomic commits across all files in a changing table
    4. DSpark can read and write them as efficient compact file formats
    Show the answer

    Both are supported analytical file formats; table-level transactions are a separate layer.

    Next → 2 / 25
  3. Q3 / 25

    Which pair correctly classifies an RDD transformation and an action?

    1. A`collect` is a transformation; `filter` is an action
    2. B`map` is a transformation; `reduce` is an action
    3. C`reduce` is a transformation; `map` is an action
    4. D`count` is a transformation; `first` is another transformation
    Show the answer

    `map` defines a new RDD lazily, whereas `reduce` evaluates the necessary lineage and returns an aggregate to the driver.

    Next → 3 / 25
  4. Q4 / 25

    Why can Spark SQL apply additional optimizations compared with the basic RDD API?

    1. AIt stores every structured record in a Hive table
    2. BIt receives structural information about data and computation
    3. CIt runs each language through a separate execution engine
    4. DIt receives column names but no computation structure
    Show the answer

    The optimization advantage comes from knowing structure, while SQL and Dataset expressions still use the same underlying execution engine.

    Next → 4 / 25
  5. Q5 / 25

    Which two subjects does the Spark tuning guide treat as its main concerns?

    1. APrecedence rules and unit suffixes
    2. BAuthentication filters and channel encryption
    3. CData serialization and memory tuning
    4. DScheduler pools and executor idle timeouts
    Show the answer

    Serialization drives network cost and memory footprint, so the guide opens there and then works through memory; the other pairs belong to the scheduling and security material instead.

    Next → 5 / 25
  6. Q6 / 25

    A wait condition must be checked roughly once per minute, may take hours to occur, and worker capacity is scarce. Which mode best balances the stated latency and capacity constraints?

    1. AUse `reschedule` so the slot is held only during each check
    2. BUse a local executor and keep the check running in the scheduler process
    3. CUse `poke` for the whole wait
    4. DStore the condition in XCom and remove the Sensor from the workflow
    Show the answer

    Minute-scale polling fits the documented reschedule tradeoff, releasing capacity throughout the long idle periods.

    Next → 6 / 25
  7. Q7 / 25

    Which constraint most directly favors ETL?

    1. AAnalysts need to repeatedly transform retained raw inputs
    2. BThe target can scale transformations in parallel
    3. CMany input formats should land before their use is known
    4. DSensitive raw fields must be masked before entering the target
    Show the answer

    Pre-load transformation can enforce a boundary that raw sensitive values may not cross.

    Next → 7 / 25
  8. Q8 / 25

    An architecture must let Java and Python teams describe work through supported interfaces while retaining one optimized execution layer for nontrivial graphs. Which design matches Spark's model?

    1. AUse the Java and Python high-level APIs over Spark's optimized engine
    2. BGive each language a separate Spark engine that supports only linear execution
    3. CUse the cluster manager as the API and bypass Spark's execution engine
    4. DConvert both teams to R because the deprecated API unifies execution
    Show the answer

    Spark separates supported high-level language APIs from the common optimized engine that supports general execution graphs, satisfying both language and execution constraints.

    Next → 8 / 25
  9. Q9 / 25

    A table holds several rows per customer identifier that differ in their event timestamp and in other columns. The output must keep exactly one row per customer, choose the most recent event, and preserve the remaining columns of that row. Which documented construction fits?

    1. AAggregate the customers with collect_set so that every identifier appears once in the output of the query
    2. BSelect the rows with the DISTINCT qualifier so that the repeated customer identifiers are removed from the result
    3. CNumber the rows with rank in a partition by customer ordered by descending timestamp, and keep the rows numbered one
    4. DNumber the rows with row_number in a partition by customer ordered by descending timestamp, and keep number one
    Show the answer

    The key is that the duplicate rows are not identical rows: they agree on the business key and disagree elsewhere. Only a numbering that is unique inside the partition selects a single row and carries its other columns along.

    Next → 9 / 25
  10. Q10 / 25

    Which Airflow surface lists state, try number, duration, operator type, and Dag version for every task in one run?

    1. AThe Dag Run Task Instances tab
    2. BThe Dag Details Runs tab
    3. CThe Home Page recent-asset panel
    4. DThe Task Instance XCom tab
    Show the answer

    The Task Instances table is scoped to one Dag Run and places execution metadata for all of that run's task instances in rows.

    Next → 10 / 25
  11. Halfway, at your pace

    In the app the mock exam is timed and scored like the real thing.

  12. Q11 / 25

    How should one task make a large generated file available to a downstream task?

    1. APlace the file contents inside the Dag's Connection password field
    2. BPut the complete file in XCom
    3. CStore the file remotely and pass its location through XCom
    4. DWrite the file only to a worker's local disk and assume worker reuse
    Show the answer

    Remote storage handles the bulk payload, while XCom carries the small locator across potentially different workers.

    Next → 11 / 25
  13. Q12 / 25

    A query is moved from the default execution mode to Continuous Processing. What happens to its guarantees and its latency floor?

    1. AGuarantees stay exactly-once and latency stays near one hundred milliseconds
    2. BGuarantees stay exactly-once and latency can fall to one millisecond
    3. CGuarantees drop to at-least-once and latency stays near one hundred milliseconds
    4. DGuarantees drop to at-least-once and latency can fall to one millisecond
    Show the answer

    The low-latency mode is offered as a trade: it buys a far lower latency floor and pays for it with a weaker delivery guarantee, and the Dataset and DataFrame operations do not change when you switch.

    Next → 12 / 25
  14. Q13 / 25

    Queries usually filter by event date, rarely by event ID, and daily volume is high enough for parallel scans. Which partition strategy is strongest?

    1. AUse date boundaries and size files within each date for useful parallel work
    2. BUse event ID boundaries because high cardinality guarantees less listing overhead
    3. CCreate one partition per event ID and keep every resulting file as small as possible
    4. DKeep one file for all dates because common date filters cannot benefit from layout
    Show the answer

    Date aligns with the durable filter pattern, while file sizing inside each date balances parallelism against small-file overhead.

    Next → 13 / 25
  15. Q14 / 25

    What is an RDD?

    1. AA fault-tolerant collection partitioned across nodes for parallel operations
    2. BA driver-only collection that cannot be divided across cluster nodes
    3. CA cluster manager that allocates executors to multiple Spark applications
    4. DA mutable variable whose executor updates automatically reach the driver
    Show the answer

    An RDD is Spark's resilient distributed collection abstraction: partitions support parallel work and lost partitions can be recovered.

    Next → 14 / 25
  16. Q15 / 25

    How do execution memory and storage memory relate in the documented memory model?

    1. AThey are separate fixed regions, and neither one may ever borrow space from the other
    2. BThey share a unified region, and caching always receives the whole of it before any execution memory is used
    3. CThey share one region; execution may evict storage down to a reserved threshold, but not the reverse
    4. DThey share a unified region, and storage may evict execution whenever a cached block needs room
    Show the answer

    The region is shared, so the interesting part is who can take space from whom. The documentation grants eviction in one direction and protects a reserved part of the storage side.

    Next → 15 / 25
  17. Q16 / 25

    A historical reprocessing must never put more than three runs in flight at once. Which backfill setting bounds that?

    1. AThe ordering in which the runs are created
    2. BThe start and end dates of the range
    3. CThe reprocess behavior chosen for the range
    4. DThe maximum number of active runs allowed
    Show the answer

    Of the settings a backfill accepts, only one caps how much runs at the same time; the others decide which intervals qualify, in what sequence they are created, and how far back they reach.

    Next → 16 / 25
  18. Q17 / 25

    Beyond running workflows, what does the Airflow web interface contribute?

    1. AA metrics store that replaces the processing engine's own monitoring
    2. BA surface for visualizing, managing, and debugging the workflows
    3. CA catalog that documents the ownership and freshness of served tables
    4. DAn authoring surface that removes the need to write Python
    Show the answer

    The interface is an operational window onto workflows that were authored in code; it neither replaces that authoring nor takes over the responsibilities of other platform components.

    Next → 17 / 25
  19. Q18 / 25

    How do append and update modes differ for a watermarked aggregation?

    1. AAppend waits for finalization; update can revise rows before state expires
    2. BAppend revises rows immediately; update waits until the threshold passes
    3. CAppend retains all state; update rewrites the whole target each trigger
    4. DAppend supports outer joins; update writes unmatched rows before expiration
    Show the answer

    Append delays a window row until the watermark finalizes it, whereas update emits calculated changes and can revise them until old state is removed.

    Next → 18 / 25
  20. Q19 / 25

    A source contains 500 million rows, about 0.2 percent change daily, updates to old keys matter, and the pipeline can store a reliable last-modified watermark. Which load design minimizes repeated work without losing revisions?

    1. AReplace the entire target from a complete source extract daily
    2. BAppend every extracted row as a new target record
    3. CSelect and apply rows beyond the saved change watermark
    4. DLoad only newly created keys and ignore older modified keys
    Show the answer

    Change-based incrementality uses the reliable boundary and includes both new and modified records.

    Next → 19 / 25
  21. Q20 / 25

    What does a Spark Connect client send to the server?

    1. AExecutor JVM objects serialized through Py4J into the client process
    2. BRDD partitions encoded as cluster-manager resource requests over YARN
    3. CDriver memory pages streamed as Apache Arrow batches to Kubernetes
    4. DUnresolved logical plans encoded with protocol buffers over gRPC
    Show the answer

    Spark Connect uses unresolved DataFrame logical plans as its language-neutral request protocol; Arrow-encoded row batches travel in the result direction.

    Next → 20 / 25
  22. Q21 / 25

    Why does the Python documentation encourage indexing a DataFrame column rather than reading it as an attribute?

    1. AOnly the indexing form works inside a projection, and the attribute form is limited to filters
    2. BThe attribute form returns a plain Python value while indexing returns a Column instance
    3. CIt is future proof and does not break with column names that are also class attributes
    4. DThe attribute form is evaluated eagerly while the indexing form keeps the plan lazy
    Show the answer

    Both forms reach the same column, so the recommendation is about names rather than about behaviour. A column called like a member of the DataFrame class is the case that breaks attribute access.

    Next → 21 / 25
  23. Q22 / 25

    Where should an operator look first after an Airflow task fails?

    1. AThe Task Instance Logs tab
    2. BThe Dag Details Code tab
    3. CThe Asset Graph View
    4. DThe Home Page health indicators
    Show the answer

    Task-instance logs contain the execution's system output, error messages, and traceback, so they are the first diagnostic surface for that failure.

    Next → 22 / 25
  24. Q23 / 25

    What is the basic unit of execution in Airflow?

    1. AA Dag schedule
    2. BA task arranged inside a Dag
    3. CA data interval assigned to a worker
    4. DA callback stored outside the workflow
    Show the answer

    A task is the executable work unit; schedules, callbacks, and data intervals describe orchestration or run context rather than the work unit itself.

    Next → 23 / 25
  25. Q24 / 25

    Which configuration parameter gates Structured Streaming metrics, and what is its default value?

    1. Aspark.metrics.executorMetricsSource.enabled, whose default value is false
    2. Bspark.sql.streaming.metricsEnabled, whose default value is false
    3. Cspark.metrics.executorMetricsSource.enabled, whose default value is true
    4. Dspark.sql.streaming.metricsEnabled, whose default value is true
    Show the answer

    The streaming metric namespace is conditional: it publishes nothing until its parameter is enabled, and it ships disabled, which is why a fresh deployment shows no streaming metrics until someone turns them on. The executor metrics source is a separate parameter for a separate namespace.

    Next → 24 / 25
  26. Q25 / 25

    Which evidence shows ORC is handled as a columnar format by Spark?

    1. ASpark requires ORC to be converted into JSON rows before any job can scan it
    2. BSpark disables compression whenever ORC is written
    3. CSpark treats ORC only as an orchestration asset
    4. DSpark exposes vectorized ORC reader and writer batch settings
    Show the answer

    Vectorized columnar batches and an ORC compression codec are part of Spark's ORC support.

    Next → 25 / 25
  27. That’s the whole mock exam

    Every question you miss comes back exactly when you’re about to forget it.

How to use this mock exam

Sit all 25 questions in one go: the mix covers every domain in the same proportion as the exam, so a low score points at the domain you skipped rather than at bad luck.

Read the explanation under every question, including the ones you got right — the reason an option is wrong is usually the thing being tested.

Then retake it in the app, where the mock exam is timed and scored and the questions you miss come back on a schedule.

The whole course, on your phone

Lessons you can read, audio you can listen to on the way to work, and practice that remembers what you got wrong.