Arcade Base Camp October 2026 | GSP192

Solution for Arcade Base Camp October 2026 | GSP192. 1 lab: GSP192. Fast copy-paste commands for Google Cloud.

GSP192 — Dataflow: Qwik Start - Templates

Estimated time: 15 minutes

# 🚀 Dataflow: Qwik Start - Templates | GSP192 > ⚠️ **Disclaimer:** This is an independent, community-made walkthrough created for educational purposes, hands-on practice, and Google Cloud certification preparation. This guide is designed to help learners understand Google Cloud Dataflow, Pub/Sub, and BigQuery through practical exercises. Always attempt the lab yourself first and follow Google Cloud Skills Boost / Qwiklabs Terms of Service. This walkthrough is not affiliated with or endorsed by

clear
CYAN='\033[1;36m'
GREEN='\033[1;32m'
YELLOW='\033[1;33m'
BLUE='\033[1;34m'
RESET='\033[0m'
BOLD='\033[1m'

echo "${CYAN}${BOLD}"
echo "   ____       _    _ _             __   ___             "
echo "  / __ \     | |  (_) |           / _| / _ \            "
echo " | |  | |_ __| |__  _| |_  ___   | |_ | | | |_ __ ___  "
echo " | |  | | '__| '_ \| | __| / _ \ |  _|| | | | '_ \ / __| "
echo " | |__| | |  | |_) | | |_ | (_) || |  | |_| | |_) \__ \ "
echo "  \____/|_|  |_.__/|_|\__| \___/ |_|   \___/| .__/|___/ "
echo "                                            | |         "
echo "                                            |_|         "
echo "${RESET}"

echo -e "${YELLOW}▶ Detecting environment variables...${RESET}"
export PROJECT_ID=$(gcloud config get-value project)
export REGION=$(gcloud compute project-info describe --format="value(commonInstanceMetadata.items[google-compute-default-region])")

echo -e "${BLUE}▶ Re-enabling Dataflow API...${RESET}"
gcloud services disable dataflow.googleapis.com --project $PROJECT_ID --force
gcloud services enable dataflow.googleapis.com --project $PROJECT_ID

echo -e "${YELLOW}▶ Creating BigQuery Dataset 'taxirides'...${RESET}"
bq mk taxirides

echo -e "${YELLOW}▶ Creating BigQuery Table 'taxirides.realtime'...${RESET}"
bq mk \
  --time_partitioning_field timestamp \
  --schema ride_id:string,point_idx:integer,latitude:float,longitude:float,timestamp:timestamp,meter_reading:float,meter_increment:float,ride_status:string,passenger_count:integer \
  -t taxirides.realtime

echo -e "${YELLOW}▶ Creating Cloud Storage staging bucket...${RESET}"
gcloud storage buckets create gs://$PROJECT_ID/

echo -e "${BLUE}▶ Waiting 60 seconds for Dataflow service account IAM propagation...${RESET}"
sleep 60

echo -e "${CYAN}▶ Deploying Dataflow streaming job 'iotflow'...${RESET}"
gcloud dataflow jobs run iotflow \
  --gcs-location gs://dataflow-templates-$REGION/latest/PubSub_to_BigQuery \
  --region $REGION \
  --worker-machine-type e2-medium \
  --staging-location gs://$PROJECT_ID/temp \
  --parameters inputTopic=projects/pubsub-public-data/topics/taxirides-realtime,outputTableSpec=$PROJECT_ID:taxirides.realtime

echo -e "${GREEN}✓ Deployment initiated successfully. Allow 60–90 seconds for worker startup, then verify all checkpoints on the lab page.${RESET}"