Question 447 of 1,000

Design BigQuery Table for Daily Sales Analysis

This PCDE practice question tests your understanding of define data structures and implement sql for business intelligence. Read the scenario carefully and evaluate each option against the stated constraints before committing to an answer. After answering, compare your reasoning against the explanation and wrong-answer breakdown below. Once you have made your selection, read the full explanation to reinforce the concept and understand why each distractor is designed to mislead on exam day.

A company is building a business intelligence dashboard on BigQuery to analyze daily sales data. The table contains a TIMESTAMP column 'order_ts' and a string column 'region'. The BI team frequently filters by month and region. Which table design best optimizes query performance and cost?

Quick Answer

The answer is to partition the table by date (month) and cluster by region. This design directly optimizes query performance and cost because BigQuery’s partitioning prunes entire month-based storage blocks when the BI team filters by month, while clustering sorts the data within each partition by region, allowing for efficient block-level pruning on region filters. On the Google Professional Cloud Database Engineer exam, this scenario tests your understanding of how to combine partitioning and clustering to minimize bytes billed for common analytical patterns, with a common trap being to partition by a high-cardinality column like order_ts at the day level, which creates too many partitions and increases metadata overhead. A reliable memory tip is “partition for high-frequency filters, cluster for secondary filters”—here, month is the high-frequency filter and region is the secondary, so partition on month and cluster on region to slash scanned data and costs.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

Partition the table by date (month) and cluster by region

Option C is correct because partitioning the table by month (using the DATE_TRUNC function on order_ts) allows BigQuery to prune entire partitions when filtering by month, reducing the amount of data scanned and thus lowering cost. Clustering by region further organizes data within each partition, enabling efficient block-level pruning for region filters. This combination optimizes both query performance and cost for the BI team's common filter pattern.

Key principle: Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • Use a separate table for each region

    Why it's wrong here

    Too many tables increase management overhead and union queries.

  • Clustering by order_ts and region without partitioning

    Why it's wrong here

    Without partitioning, each query scans the entire table, increasing cost.

  • Partition the table by date (month) and cluster by region

    Why this is correct

    Partitioning on the date granularity used in filters and clustering on region minimizes scanned data.

    Related concept

    Read the scenario before looking for a memorised answer.

  • Partition the table by region and cluster by order_ts

    Why it's wrong here

    Partitioning by region does not align with the common month filter.

Common exam traps

Common exam trap: answer the scenario, not the keyword

A common misconception is to partition on the most frequently filtered column, such as region. However, partitioning on a low-cardinality column like region creates many small partitions, leading to poor performance and cost. In Google BigQuery, partitioning on a date/time column and clustering on low-cardinality filters like region is optimal for queries filtering by month and region.

Detailed technical explanation

How to think about this question

Under the hood, BigQuery uses columnar storage and a distributed file system; partitioning creates separate storage blocks for each partition, enabling full partition elimination when the filter matches the partition key. Clustering sorts data within each partition based on the cluster columns, allowing BigQuery to use block-level metadata (min/max values) to skip irrelevant blocks during scans. A real-world scenario: if the table has 3 years of data (36 months) and 10 regions, partitioning by month reduces scan to ~1/36th of data for a monthly filter, while clustering by region further reduces scan to only blocks containing the target region.

KKey Concepts to Remember

  • Read the scenario before looking for a memorised answer.
  • Find the constraint that changes the correct option.
  • Eliminate answers that are true in general but not in this case.

TExam Day Tips

  • Watch for words such as best, first, most likely and least administrative effort.
  • Review why wrong options are wrong, not only why the correct option is correct.

Key takeaway

Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.

Real-world example

How this comes up in practice

A startup's cloud architect reviews their monthly bill and notices costs are higher than expected for a long-running batch job. Switching from on-demand instances to Reserved Instances — or using Spot/Preemptible VMs — can reduce compute costs by up to 72 %. Questions like this test whether you understand the tradeoffs between commitment, flexibility, and cost across cloud pricing models.

What to study next

Got this wrong? Here's your next step.

Identify which exam domain this question belongs to, review the core concept, then practise similar questions from the same domain.

Related practice questions

Related PCDE practice-question pages

Use these pages to review the topic behind this question. This is how one missed question becomes focused revision.

Building and Implementing CI/CD Pipelines for a Service practice questions

Practise PCDE questions linked to Building and Implementing CI/CD Pipelines for a Service.

Bootstrapping a Google Cloud Organisation for DevOps practice questions

Practise PCDE questions linked to Bootstrapping a Google Cloud Organisation for DevOps.

Applying Site Reliability Engineering Practices to a Service practice questions

Practise PCDE questions linked to Applying Site Reliability Engineering Practices to a Service.

Implementing Service Monitoring Strategies practice questions

Practise PCDE questions linked to Implementing Service Monitoring Strategies.

Optimising Service Performance practice questions

Practise PCDE questions linked to Optimising Service Performance.

Plan and manage database infrastructure practice questions

Practise PCDE questions linked to Plan and manage database infrastructure.

Define data structures and implement SQL for Business Intelligence practice questions

Practise PCDE questions linked to Define data structures and implement SQL for Business Intelligence.

Design and implement database schemas practice questions

Practise PCDE questions linked to Design and implement database schemas.

Monitor and optimize database performance practice questions

Practise PCDE questions linked to Monitor and optimize database performance.

PCDE fundamentals practice questions

Practise PCDE questions linked to PCDE fundamentals.

PCDE scenario practice questions

Practise PCDE questions linked to PCDE scenario.

PCDE troubleshooting practice questions

Practise PCDE questions linked to PCDE troubleshooting.

Practice this exam

Start a free PCDE practice session

Short sessions build daily habit. Longer sessions build exam-day stamina. Try a timed session to simulate real conditions.

FAQ

Questions learners often ask

What does this PCDE question test?

Define data structures and implement SQL for Business Intelligence — This question tests Define data structures and implement SQL for Business Intelligence — Read the scenario before looking for a memorised answer..

What is the correct answer to this question?

The correct answer is: Partition the table by date (month) and cluster by region — Option C is correct because partitioning the table by month (using the DATE_TRUNC function on order_ts) allows BigQuery to prune entire partitions when filtering by month, reducing the amount of data scanned and thus lowering cost. Clustering by region further organizes data within each partition, enabling efficient block-level pruning for region filters. This combination optimizes both query performance and cost for the BI team's common filter pattern.

What should I do if I get this PCDE question wrong?

Identify which exam domain this question belongs to, review the core concept, then practise similar questions from the same domain.

What is the key concept behind this question?

Read the scenario before looking for a memorised answer.

About these practice questions

Courseiva creates original exam-style practice questions with explanations and wrong-answer analysis. It does not publish real exam questions, exam dumps, or protected exam content. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

Keep practising

More PCDE practice questions

Last reviewed: Jul 4, 2026

Question Discussion

Share a tip, memory trick, or ask about the reasoning behind this question. Do not post real exam questions, leaked content, braindumps, or copyrighted exam material. Comments are moderated and may be removed without notice.

Loading comments…

Sign in to join the discussion.

This PCDE practice question is part of Courseiva's free Google Cloud certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the PCDE exam.