Designing data processing systems · Topic 4 of 5

Flexible, Portable Designs and Data Discovery

Map business needs to architecture, design for multi-cloud and residency with BigLake and Omni, and stage, catalog, profile and discover data in Dataplex.

  • 5 min
In a nutshell
  • Choose the design that also meets the future requirement without a rebuild.
  • Keep raw data immutable so history can be reprocessed.
  • BigLake governs open-format files; BigQuery Omni queries data in AWS or Azure in place.

What it is

A flexible design keeps working when requirements change: more data, new consumers, fresher results, another cloud. A portable design avoids locking data or code to one engine or one location. Governance through staging, cataloging, profiling and discovery makes sure people can find and trust the data as it grows.

Business needstoday and next yearOpen storageopen formatsDecoupled computemany enginesCatalogfind and trustNew use cases

How it works

Mapping current and future requirements

Translate each business phrase into an architecture property. The exam often hides the decisive requirement in one clause about the future.

Business statementArchitecture response
"Volumes will grow tenfold"Serverless, autoscaling services (BigQuery, Dataflow, Pub/Sub)
"Today daily reports, soon live dashboards"A pipeline that can run in streaming mode, such as Apache Beam on Dataflow
"Other teams will reuse the data"Keep raw data in Cloud Storage or BigQuery, separate storage from compute, catalog it
"We may need to reprocess history"Keep an immutable raw landing zone, not only aggregated results
"Minimal operations staff"Managed and serverless services over self-managed clusters
Exam tip

When two answers both meet today's need, choose the one that also meets the stated future need without a redesign.

Designing for portability

NeedOption
Data readable by many enginesOpen file formats (Parquet, Avro, ORC) and Apache Iceberg tables
One governance layer over open filesBigLake tables: BigQuery security, including column and row controls, over Cloud Storage files
Query data that must stay in AWS or AzureBigQuery Omni, which runs BigQuery compute in that cloud region
Run the same pipeline code on another runnerApache Beam, which runs on Dataflow, Flink, Spark or locally
Move existing Spark and Hadoop jobs unchangedDataproc, which runs open source engines

BigQuery Omni also helps with data residency. The data stays in its AWS or Azure region and only the query results move, and you can keep those results in the same region too.

Beam code is runner-portable

The same pipeline file runs anywhere; only the options change.

# local test
python orders_pipeline.py --runner=DirectRunner --input=sample.csv

# production on Dataflow
python orders_pipeline.py --runner=DataflowRunner \
  --project=prod-data --region=europe-west1 \
  --temp_location=gs://prod-data-temp/dataflow --input=gs://landing/orders/*.csv

Staging, cataloging, profiling and discovery

ActivityGoogle Cloud tool
StagingLanding bucket or dataset for raw data, then curated zones after cleaning
CatalogingDataplex Catalog (renamed Dataplex Universal Catalog, and Knowledge Catalog since April 2026): search, business metadata, glossary terms
ProfilingDataplex data profile scans: null rates, distinct counts, ranges, top values
QualityDataplex data quality scans with rules and thresholds
DiscoveryDataplex discovery of files in Cloud Storage, publishing tables you can query in BigQuery
Sensitive data discoveryCloud DLP discovery profiles for BigQuery and Cloud Storage
LineageData lineage for BigQuery jobs and supported pipelines

The catalog automatically holds technical metadata for services such as BigQuery and Pub/Sub. Teams add business context: owners, descriptions, glossary terms and data quality results. That is what lets a new consumer find "the trusted customer table" instead of building another one.

A worked example

A media company runs BigQuery on Google Cloud, but a subsidiary's clickstream must stay in Amazon S3 for contractual reasons. Analysts want one place to search and query everything.

The engineer creates BigLake tables over the S3 data through BigQuery Omni, so queries run in the AWS region. Google Cloud data is registered in the same catalog, profiled with Dataplex scans and tagged with glossary terms.

S3 clickstreamBigQuery Omniquery in AWS regionResultsaggregates onlyCatalogsearch, profile, glossaryAnalysts

How the exam asks about this

  • "Data must remain in Azure, but analysts use BigQuery SQL." BigQuery Omni with BigLake tables on the Azure data.
  • "Spark on Dataproc and BigQuery must both read the same tables with one set of fine-grained permissions." Open formats on Cloud Storage as BigLake or Iceberg tables.
  • "Analysts cannot find which table is authoritative and trust is low." Catalog with business metadata, plus profile and data quality scans published in Dataplex.

What to remember for the exam

  • Choose the design that also meets the future requirement without a rebuild.
  • Keep raw data immutable so history can be reprocessed.
  • BigLake governs open-format files; BigQuery Omni queries data in AWS or Azure in place.
  • Beam pipelines move between runners; Dataproc runs existing open source jobs.
  • Dataplex catalogs, profiles, checks quality and discovers files; Cloud DLP discovers sensitive data.
Watch out

Copying multi-cloud data into Google Cloud to query it can break a residency or contract rule. Read whether the data may leave its cloud before choosing an ingestion answer.

Common mistakes

Storing only aggregates. New questions later need the detail, and it is gone.

Building a new catalog spreadsheet. Dataplex already harvests technical metadata; add business metadata there.

Rewriting Spark jobs for portability. Spark is already portable; Dataproc runs it without a rewrite.

Check yourself

  • Which product lets BigQuery query data that must stay in Amazon S3?

    BigQuery Omni, which runs the query in the AWS region where the data lives.

  • What does a Dataplex data profile scan produce?

    Column statistics such as null percentage, distinct values, ranges and top values, which help users judge a table before using it.

  • Why does Apache Beam help portability?

    The same pipeline code runs on several runners, such as Dataflow, Flink or Spark, by changing only the pipeline options.

Topic 4 of 5 in Designing data processing systems

Test yourself on Designing data processing systems

The full Google Cloud Professional Data Engineer question bank has 733 questions, with timed practice exams and an explanation for every answer.

This study guide is independent and is not affiliated with, endorsed by, or sponsored by Google Cloud. Vendor names, certification names and exam codes are trademarks of their respective owners and are used for identification only.