📖 Scenario: You work as a data engineer at a retail company. Your team wants to automate the process of extracting sales data from a Cloud Storage bucket, transforming it by filtering only the sales above a certain amount, and loading the filtered data into BigQuery for analysis.You will use Google Cloud Data Fusion to build this ETL pipeline step-by-step.
🎯 Goal: Build a simple ETL pipeline in Google Cloud Data Fusion that reads sales data from Cloud Storage, filters sales above a threshold, and writes the results to a BigQuery table.
📋 What You'll Learn
Create a Cloud Storage source plugin configuration with the exact bucket name and file path
Add a configuration variable for the sales amount threshold
Use a Wrangler or Transform plugin to filter sales records above the threshold
Configure a BigQuery sink plugin with the exact dataset and table name
💡 Why This Matters
🌍 Real World
ETL pipelines are essential for moving and transforming data in cloud environments to prepare it for analysis and reporting.
💼 Career
Data engineers and cloud architects often build and configure ETL pipelines using tools like Google Cloud Data Fusion to automate data workflows.
Progress0 / 4 steps
1
Create Cloud Storage Source Configuration
Create a Cloud Storage source plugin configuration dictionary called cloud_storage_source with these exact keys and values: "name": "CloudStorageSource", "type": "cloudstorage", "properties" containing "referenceName": "sales_data_source", "path": "gs://retail-data-bucket/sales/2024/sales_data.csv", and "format": "csv".
GCP
Hint
Use a Python dictionary with nested dictionaries for properties.
2
Add Sales Threshold Configuration
Create a variable called sales_threshold and set it to the integer 1000. This will be used to filter sales records above this amount.
GCP
Hint
Just assign the number 1000 to the variable named sales_threshold.
3
Create Filter Transform Configuration
Create a transform plugin configuration dictionary called filter_transform with these exact keys and values: "name": "FilterTransform", "type": "transform", "properties" containing "condition": "${sales_amount} >= {sales_threshold}". Use the exact string with sales_amount and sales_threshold as shown.
GCP
Hint
Use a dictionary with nested properties. The condition string must match exactly.
4
Configure BigQuery Sink Plugin
Create a BigQuery sink plugin configuration dictionary called bigquery_sink with these exact keys and values: "name": "BigQuerySink", "type": "bigquery", "properties" containing "referenceName": "sales_data_sink", "dataset": "retail_analytics", and "table": "filtered_sales".
GCP
Hint
Use a dictionary with nested properties for BigQuery sink configuration.
Practice
(1/5)
1. What is the main purpose of Google Cloud Data Fusion in ETL processes?
easy
A. To store large amounts of raw data permanently
B. To write complex SQL queries for data analysis
C. To visually build and automate data pipelines without coding
D. To create virtual machines for data processing
Solution
Step 1: Understand Data Fusion's role
Data Fusion is designed to help users build data pipelines visually, making ETL easier without needing to write code.
Step 2: Compare options
Options A, B, and D describe other tools or services, not Data Fusion's main purpose.
Final Answer:
To visually build and automate data pipelines without coding -> Option C
Quick Check:
Data Fusion = Visual ETL pipelines [OK]
Hint: Data Fusion is about visual pipelines, not coding or storage [OK]
Common Mistakes:
Confusing Data Fusion with BigQuery for SQL queries
Thinking Data Fusion stores data permanently
Assuming Data Fusion manages virtual machines
2. Which of the following is the correct way to add a source plugin in a Data Fusion pipeline?
easy
A. Drag the source plugin from the palette and drop it onto the canvas
B. Write a SQL query to define the source
C. Create a virtual machine and install the source plugin manually
D. Use the command line to start the source plugin
Solution
Step 1: Recall Data Fusion UI usage
Data Fusion uses a visual interface where you drag and drop plugins to build pipelines.
Step 2: Eliminate incorrect methods
Options A, C, and D involve coding, manual installs, or command line, which are not how Data Fusion works for adding plugins.
Final Answer:
Drag the source plugin from the palette and drop it onto the canvas -> Option A
Quick Check:
Data Fusion = Drag & drop plugins [OK]
Hint: Data Fusion uses drag-and-drop for plugins, not code [OK]
Common Mistakes:
Trying to write SQL to add plugins
Thinking manual VM setup is needed
Using command line instead of UI
3. Given a Data Fusion pipeline with a source plugin reading from Cloud Storage and a sink plugin writing to BigQuery, what happens when the pipeline runs successfully?
medium
A. The pipeline deletes data in BigQuery
B. Data is moved from Cloud Storage to BigQuery after any transformations
C. The pipeline creates a new Cloud Storage bucket
D. Data is copied from BigQuery to Cloud Storage
Solution
Step 1: Understand source and sink roles
The source plugin reads data from Cloud Storage, and the sink plugin writes data to BigQuery.
Step 2: Identify pipeline behavior
When the pipeline runs, data flows from source to sink, optionally transformed in between.
Final Answer:
Data is moved from Cloud Storage to BigQuery after any transformations -> Option B
Quick Check:
Source to sink = Cloud Storage to BigQuery [OK]
Hint: Source reads, sink writes; data flows forward [OK]
Common Mistakes:
Confusing source and sink directions
Thinking pipeline creates buckets automatically
Assuming pipeline deletes data
4. You created a Data Fusion pipeline but it fails to start. Which of the following is the most likely cause?
medium
A. The pipeline has too many source plugins
B. The Cloud Storage bucket is empty
C. You did not write any SQL queries in the pipeline
D. The sink plugin is missing or not configured properly
Solution
Step 1: Check pipeline requirements
Every Data Fusion pipeline needs a properly configured sink plugin to write data.
Step 2: Analyze failure reasons
If the sink is missing or misconfigured, the pipeline cannot complete and will fail to start.
Final Answer:
The sink plugin is missing or not configured properly -> Option D
Quick Check:
Missing sink = pipeline start failure [OK]
Hint: Always configure sink plugin to start pipeline [OK]
Common Mistakes:
Assuming empty bucket causes start failure
Thinking SQL queries are mandatory
Believing multiple sources cause failure
5. You want to build a Data Fusion pipeline that reads sales data from multiple Cloud Storage folders, cleans the data by removing duplicates, and writes the result to BigQuery daily. Which approach best fits this requirement?
hard
A. Use multiple source plugins for each folder, a Wrangler plugin to clean duplicates, and a BigQuery sink; schedule pipeline daily
B. Write a custom script outside Data Fusion to clean data, then use Data Fusion to load into BigQuery
C. Use a single source plugin pointing to one folder and manually merge data later
D. Create a pipeline with only a BigQuery source and sink without cleaning
Solution
Step 1: Identify data sources and cleaning needs
Multiple folders require multiple source plugins or a pattern that reads all folders; cleaning duplicates needs a Wrangler or transform plugin.
Step 2: Design pipeline and scheduling
Connect sources to cleaning plugin, then to BigQuery sink; schedule pipeline to run daily for automation.
Final Answer:
Use multiple source plugins for each folder, a Wrangler plugin to clean duplicates, and a BigQuery sink; schedule pipeline daily -> Option A
Quick Check:
Multiple sources + cleaning + sink + schedule = Use multiple source plugins for each folder, a Wrangler plugin to clean duplicates, and a BigQuery sink; schedule pipeline daily [OK]
Hint: Combine sources, cleaning plugin, sink, and schedule for ETL [OK]
Common Mistakes:
Skipping cleaning step inside Data Fusion
Using external scripts unnecessarily
Ignoring scheduling for daily runs
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.