nerdexam
Google

PROFESSIONAL-DATA-ENGINEER · Question #316

You migrated a data backend for an application that serves 10 PB of historical product data for analytics. Only the last known state for a product, which is about 10 GB of data, needs to be served…

The correct answer is A. 1. Store the historical data in BigQuery for analytics. Option A correctly pairs BigQuery for the 10 PB analytics workload because BigQuery is purpose-built for petabyte-scale analytics at low cost using serverless columnar storage - it's the go-to GCP service when "large-scale analytics" appears in a question. The second part of…

Submitted by mike_84· Mar 30, 2026Designing data processing systems

Question

You migrated a data backend for an application that serves 10 PB of historical product data for analytics. Only the last known state for a product, which is about 10 GB of data, needs to be served through an API to the other applications. You need to choose a cost-effective persistent storage solution that can accommodate the analytics requirements and the API performance of up to 1000 queries per second (QPS) with less than 1 second latency. What should you do?

Options

  • A
    1. Store the historical data in BigQuery for analytics.
  • B
    1. Store the products as a collection in Firestore with each product having a set of historical changes.
  • C
    1. Store the historical data in Cloud SQL for analytics.
  • D
    1. Store the historical data in BigQuery for analytics.

How the community answered

(14 responses)
  • A
    79% (11)
  • C
    14% (2)
  • D
    7% (1)

Explanation

Option A correctly pairs BigQuery for the 10 PB analytics workload because BigQuery is purpose-built for petabyte-scale analytics at low cost using serverless columnar storage - it's the go-to GCP service when "large-scale analytics" appears in a question. The second part of Option A likely pairs BigQuery with Bigtable (or Cloud Spanner) for the 10 GB API layer, which handles 1,000+ QPS at sub-second latency efficiently.

Option B (Firestore) is wrong because Firestore is a document database optimized for transactional, real-time app data - not petabyte-scale analytical queries. Storing 10 PB of historical changes as Firestore documents would be prohibitively expensive and analytically impractical.

Option C (Cloud SQL) is wrong because Cloud SQL is a managed relational database suited for gigabyte-to-terabyte OLTP workloads - scaling it to 10 PB would be extremely costly and technically unsupported.

Option D is likely a distractor that pairs BigQuery with a wrong second component (e.g., Cloud SQL or Firestore for the API layer) rather than a low-latency, high-throughput NoSQL store like Bigtable.

Memory tip: Use the "two-bucket" pattern - BigQuery for big analytical cold data, Bigtable/Spanner for hot serving data requiring high QPS and low latency. When you see "PB-scale analytics + high-QPS API," think BigQuery + Bigtable.

Topics

#BigQuery#Data warehousing#Large-scale data storage#Database selection

Community Discussion

No community discussion yet for this question.

Full PROFESSIONAL-DATA-ENGINEER Practice