35 Labs
🔬 Hands-On Labs
Practical exercises covering all 7 exam domains. Each lab includes local validation steps, GCP deployment instructions, and exam decision tables — no GCP project required for the first half of each lab.
3 labs are readable right now without a subscription — look for the Free preview flag below.
⚙ Before You Start
Each lab is a Jupyter Notebook, run inside this project's published Docker lab image so every student runs the exact same isolated environment — no local Python/CLI setup, and no need to clone the source repository.
0
Pull the lab image (~500MB, one time only — grab a coffee):
docker pull arshaknorsoyan/gcp-data-engineer-lab:v1.0.11
Create a local
user-labs folder, then start the container from it — run this in PowerShell or Git Bash, not Command Prompt (cmd.exe doesn't understand ${PWD} and will fail with a "invalid characters for a local volume name" error):docker run -d --name gcp-lab -p 127.0.0.1:8888:8888 -p 127.0.0.1:8080:8080 -v ${PWD}/user-labs:/workspace -v gcloud-config:/root/.config/gcloud arshaknorsoyan/gcp-data-engineer-lab:v1.0.12
Get the Jupyter URL+token:
docker logs gcp-lab (copy the http://127.0.0.1:8888/lab?token=... line)3
Open that URL once in the same browser you're using for this site — this authorizes your browser for
localhost:8888 for the rest of the session4
Auth inside the container:
docker exec -it gcp-lab gcloud auth login --no-launch-browser5
Click a lab card below, then "Download Notebook" — save it into your local
user-labs folder. Notebook downloads require an active subscription; the 3 free-preview labs are fully readable in the browser without one6
Click "Open in Jupyter Notebook" — it opens directly from
user-labsData Ingestion
Domain 1 5 labsing-001
ing-001
Datastream CDC — Cloud SQL PostgreSQL to BigQuery
ing-002
ing-002
Pub/Sub → Dataflow → GCS → Free BQ Load Jobs
ing-003
ing-003
Transfer Appliance + STS — Hybrid On-Prem Migration
ing-004
ing-004
Dataflow Streaming Engine + Autoscaling + Backpressure
ing-005
ing-005
Dataplex — Governed Data Lake + Auto-Discovery + Data Quality
Data Processing
Domain 2 5 labsproc-001
proc-001
Dataflow Windowing & Triggers — Hourly Revenue Aggregations
proc-002
proc-002
Ephemeral Dataproc + Preemptible VMs — Cost-Effective Hadoop Migration
proc-003
proc-003
Dataflow Slowly-Changing Side Input — Fix Blocking Latency
proc-004
proc-004
Cloud Composer Cross-DAG Dependencies — ExternalTaskSensor
proc-005
proc-005
BigQuery JSON Load — Free Ingestion + SQL Flattening
Data Storage
Domain 3 5 labsstor-001
stor-001
Bigtable Schema Design for IoT — Hashing Row Keys
stor-002
stor-002
Cloud Spanner — Global Strong Consistency
stor-003
stor-003
GCS Object Lifecycle Management
stor-004
stor-004
Firestore Distributed Counters
stor-005
stor-005
Bigtable for Real-Time Recommendations (Key-Value Lookups)
Analytics
Domain 4 5 labsanal-001
anal-001
BigQuery Materialized Views — Dashboard Query Cost Reduction
anal-002
anal-002
BigQuery Clustering Optimization
anal-003
anal-003
BigQuery Editions — Slot Reservations and Workload Isolation
anal-004
anal-004
BigQuery STRUCT & ARRAY — Nested and Repeated Fields
anal-005
anal-005
BigQuery Time Travel — Point-in-Time Recovery
Operations
Domain 5 5 labsSecurity & Compliance
Domain 6 5 labsMachine Learning
Domain 7 5 labsml-001
ml-001
Vertex AI Feature Store — Online Serving & Freshness
ml-002
ml-002
BigQuery ML ARIMA_PLUS Demand Forecasting
ml-003
ml-003
Vertex AI Model Monitoring — Feature Drift Detection
ml-004
ml-004
Document AI — Form Parser & Entity Extraction
ml-005
ml-005
Vertex AI Distributed Training — MirroredStrategy