BigQuery Overview for the PDE Exam: Resource Hierarchy and Access Patterns

GCP Study Hub
619c7c8da6d7b95cf26f6f70
December 4, 2025

BigQuery shows up on almost every page of the Professional Data Engineer exam blueprint, and for good reason. It is Google Cloud's flagship analytics warehouse, and a lot of the data engineering decisions you will be asked to make on the exam either start with BigQuery or end with it. Before you can reason about partitioning, slot reservations, materialized views, or streaming inserts, you need a clear mental model of what BigQuery actually is, how you talk to it, and how its resources are organized. That is what this article is about.

What BigQuery actually is

BigQuery is a fully managed and serverless relational database that doubles as a data warehouse. The word serverless is doing real work in that sentence. There is no cluster to provision, no VM to size, no patching window to schedule. You write SQL, BigQuery runs it, and Google handles the infrastructure underneath.

A few properties that matter for the Professional Data Engineer exam:

  • Auto-scaling storage and compute. Storage and compute scale independently. You do not have to buy more nodes to store more data, and you do not have to buy more disk to run a heavier query.
  • Batch and streaming ingestion. You can load data in bulk from Cloud Storage, or you can stream rows in row by row through the streaming insert API and the Storage Write API.
  • SQL as the primary interface. You query with standard SQL. Legacy SQL still exists for backward compatibility, but it is not where new features go.
  • Petabyte scale. BigQuery is designed for the kind of query that would crush a traditional relational database, and it returns results in seconds.

That last point is why a lot of teams adopt Google Cloud in the first place. I have seen organizations build most of their stack on another cloud and still pipe data into BigQuery because nothing else in the market handles analytical scans the same way.

Ways to access BigQuery

The exam will sometimes describe a workflow and ask which BigQuery access pattern fits. There are three you should know cold:

  • Cloud Console. The interactive web UI in the Google Cloud Console gives you a query editor, dataset browser, job history, and visualizations. This is where most analysts live, and it is the fastest way to explore an unfamiliar dataset.
  • The bq command line tool. Part of the Cloud SDK. It is what you reach for when you need to script BigQuery into a build pipeline, a cron job, or a Cloud Composer DAG. Anything you can do in the console you can do with bq.
  • Client libraries. Google publishes BigQuery client libraries for Go, Python, Java, Node.js, PHP, Ruby, and C#. These are how you embed BigQuery in an application. A Cloud Run service that runs analytical queries on behalf of users will almost always talk to BigQuery through one of these libraries.

For exam scenarios, the rough mapping is: ad hoc exploration goes to the console, automation goes to bq, and application code goes to a client library. If a question describes an engineer writing a Python service that issues queries, the answer involves the client library, not the console.

Standard SQL versus Legacy SQL

BigQuery supports two SQL dialects, and you should be able to tell them apart on sight.

Standard SQL is the preferred dialect. It follows the SQL 2011 standard, it supports nested and repeated fields (which is one of BigQuery's signature capabilities), and it is where Google ships new functionality. Joins are explicit, written with JOIN ... ON.

Legacy SQL was originally called BigQuery SQL. It is still supported for backward compatibility, but it is not recommended for new work. Joins are implicit, expressed by listing tables with commas and filtering in the WHERE clause.

The two big tells: Legacy SQL uses square brackets around table references and a colon between project and dataset, while Standard SQL uses backticks and a period. If you see [project:dataset.table], you are looking at Legacy SQL. If you see backtick-project.dataset.table-backtick, you are looking at Standard SQL.

For the Professional Data Engineer exam, pick Standard SQL unless a question explicitly tells you the team is locked into Legacy syntax. The implicit-join pattern in Legacy SQL is a common source of accidental cross joins, which is exactly the kind of failure mode the exam likes to test.

The BigQuery resource hierarchy

This is the part of BigQuery that trips people up most often, because it intersects with the broader Google Cloud resource hierarchy and with IAM. The structure is:

  • Project. Each Google Cloud project contains exactly one BigQuery instance. Billing, quotas, and top-level access all attach here.
  • Dataset. A dataset is a container inside a project. It groups related tables together and is the unit at which you set a default location (US, EU, a specific region) and many access controls.
  • Table. The table is where rows and columns actually live. A dataset can hold many tables, and tables can be standard, partitioned, clustered, external, or materialized views.

So the flow is Project to Dataset to Table. When you write a fully qualified table reference in Standard SQL, that hierarchy is right there in the syntax.

A few practical consequences worth keeping in mind:

  • Location is set at the dataset level. You cannot query a table in a US dataset and join it to a table in an EU dataset in the same query without first copying or replicating data. The exam loves this constraint.
  • IAM can be granted at project, dataset, or table level. Granting at the dataset level is the most common pattern for analyst teams. Table-level and column-level controls exist for finer scoping.
  • Cross-project queries are normal. A query can read from datasets in multiple projects as long as the caller has access. Billing attaches to the project where the job runs, not the project that owns the data.

Once you have this hierarchy in your head, the rest of BigQuery (partitioning strategy, slot reservations, authorized views, row-level security) sits on top of it cleanly.

My Professional Data Engineer course covers BigQuery end to end, from this resource model through partitioning, clustering, slot management, and the streaming and batch ingestion patterns the exam tests.

Get tips and updates from GCP Study Hub

arrow