Bird
Raised Fist0
Apache Sparkdata~5 mins

Medallion architecture (bronze, silver, gold) in Apache Spark - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is the Bronze layer in Medallion architecture?
The Bronze layer is the raw data layer where data is ingested as-is from source systems. It contains original, unprocessed data for traceability and auditing.
Click to reveal answer
beginner
What happens in the Silver layer of Medallion architecture?
The Silver layer contains cleaned and enriched data. It removes errors, duplicates, and applies transformations to make data more reliable and usable.
Click to reveal answer
beginner
Describe the Gold layer in Medallion architecture.
The Gold layer holds highly curated, aggregated, and business-level data. It is optimized for analytics, reporting, and machine learning use cases.
Click to reveal answer
intermediate
Why use Medallion architecture in data engineering?
It organizes data into layers for better quality control, easier debugging, and clear separation of raw, cleaned, and business-ready data.
Click to reveal answer
intermediate
How does Medallion architecture improve data reliability?
By progressively cleaning and enriching data through Bronze, Silver, and Gold layers, it ensures data is accurate and trustworthy at each stage.
Click to reveal answer
Which Medallion layer contains raw, unprocessed data?
ABronze
BSilver
CGold
DPlatinum
What is the main purpose of the Silver layer?
AStore raw data
BClean and enrich data
CAggregate data for reports
DArchive old data
Which layer is best suited for business analytics and machine learning?
AGold
BBronze
CSilver
DRaw
What is a key benefit of using Medallion architecture?
AFaster data ingestion only
BNo need for data cleaning
CSingle data storage layer
DClear data quality stages
In which layer would you expect to find duplicate data removed?
ABronze
BNone
CSilver
DGold
Explain the purpose and characteristics of each Medallion architecture layer: Bronze, Silver, and Gold.
Think about how data quality improves from raw to business-ready.
You got /3 concepts.
    Describe how Medallion architecture helps improve data quality and usability in a data pipeline.
    Consider the flow of data from source to analytics.
    You got /4 concepts.

      Practice

      (1/5)
      1. What is the primary purpose of the bronze layer in the Medallion architecture?
      easy
      A. Store metadata about data quality
      B. Store cleaned and enriched data
      C. Store raw, unprocessed data as it arrives
      D. Store aggregated business-level data

      Solution

      1. Step 1: Understand the role of the bronze layer

        The bronze layer is the first stage where raw data is ingested without transformation.
      2. Step 2: Differentiate from silver and gold layers

        Silver contains cleaned data, and gold contains aggregated data, so they are not raw.
      3. Final Answer:

        Store raw, unprocessed data as it arrives -> Option C
      4. Quick Check:

        Bronze = Raw data [OK]
      Hint: Bronze = raw data layer, first step [OK]
      Common Mistakes:
      • Confusing bronze with silver or gold layers
      • Thinking bronze stores aggregated data
      • Assuming bronze is cleaned data
      2. Which of the following is the correct order of layers in the Medallion architecture from raw to business-ready data?
      easy
      A. Bronze -> Silver -> Gold
      B. Silver -> Bronze -> Gold
      C. Gold -> Silver -> Bronze
      D. Silver -> Gold -> Bronze

      Solution

      1. Step 1: Recall the Medallion architecture flow

        Data flows from raw to cleaned to aggregated: bronze, then silver, then gold.
      2. Step 2: Match the order to options

        Bronze -> Silver -> Gold correctly lists bronze first, then silver, then gold.
      3. Final Answer:

        Bronze -> Silver -> Gold -> Option A
      4. Quick Check:

        Order = Bronze, Silver, Gold [OK]
      Hint: Remember: Bronze first, then Silver, then Gold [OK]
      Common Mistakes:
      • Reversing the order of layers
      • Mixing silver and bronze positions
      • Assuming gold comes before silver
      3. Given the following PySpark code snippet, which layer does the resulting DataFrame most likely represent?
      bronzeDF = spark.read.format('json').load('/data/raw/events')
      silverDF = bronzeDF.filter('event_type IS NOT NULL').dropDuplicates()
      goldDF = silverDF.groupBy('event_type').count()
      medium
      A. goldDF is gold layer
      B. silverDF is bronze layer
      C. bronzeDF is gold layer
      D. bronzeDF is silver layer

      Solution

      1. Step 1: Analyze each DataFrame's transformation

        bronzeDF loads raw JSON data (raw data = bronze). silverDF filters and removes duplicates (cleaned data = silver). goldDF groups and counts (aggregated data = gold).
      2. Step 2: Identify the layer of goldDF

        goldDF performs aggregation, which matches the gold layer's purpose.
      3. Final Answer:

        goldDF is gold layer -> Option A
      4. Quick Check:

        Aggregation = Gold layer [OK]
      Hint: Aggregation means gold layer [OK]
      Common Mistakes:
      • Confusing raw load as silver
      • Thinking filtering is aggregation
      • Mixing up silver and gold transformations
      4. You have a silver layer DataFrame but notice it still contains duplicate records. Which change will best fix this issue in your Spark code?
      medium
      A. Add .dropDuplicates() after loading raw data in bronze layer
      B. Add .dropDuplicates() after cleaning transformations in silver layer
      C. Add .groupBy() in bronze layer to aggregate data
      D. Add .filter() in gold layer to remove duplicates

      Solution

      1. Step 1: Understand where duplicates should be removed

        Duplicates should be removed during cleaning, which happens in the silver layer.
      2. Step 2: Evaluate options for removing duplicates

        Adding .dropDuplicates() in silver layer after cleaning transformations is the correct fix.
      3. Final Answer:

        Add .dropDuplicates() after cleaning transformations in silver layer -> Option B
      4. Quick Check:

        Remove duplicates in silver layer [OK]
      Hint: Clean data (silver) removes duplicates [OK]
      Common Mistakes:
      • Removing duplicates too early in bronze layer
      • Using groupBy instead of dropDuplicates
      • Filtering duplicates only in gold layer
      5. You want to build a dashboard showing total sales by region updated daily. Which Medallion architecture layer should you query for the most accurate and business-ready data?
      hard
      A. Query the bronze layer for raw sales data
      B. Query the bronze layer after filtering duplicates
      C. Query the silver layer for cleaned sales data
      D. Query the gold layer for aggregated sales data

      Solution

      1. Step 1: Identify the dashboard data needs

        The dashboard requires aggregated, business-ready data (total sales by region).
      2. Step 2: Match data needs to Medallion layers

        Gold layer contains aggregated and business-level data, ideal for dashboards.
      3. Final Answer:

        Query the gold layer for aggregated sales data -> Option D
      4. Quick Check:

        Dashboard needs gold layer data [OK]
      Hint: Dashboards use gold layer data [OK]
      Common Mistakes:
      • Using raw or cleaned data instead of aggregated
      • Querying bronze layer directly for reports
      • Filtering bronze layer instead of using gold
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard