Google Professional Cloud Developer Question 407
Single answerGoogle Cloud PlatformYou are building a serverless data processing application on Google Cloud. The application needs to read real-time transaction data from a Pub/Sub topic, process it, and write the processed results to a datastore that supports ACID transactions and SQL-like queries. Which datastore should you use to store the processed results?
- A
Google Cloud Bigtable
- B
Google Cloud Firestore in Native mode
- C
Google Cloud Spanner
- D
Google Cloud Storage
Show answer and explanation
Correct answer: C
Explanation
Since the application requires a datastore that supports ACID transactions and SQL-like queries, Google Cloud Spanner is the ideal choice. It is designed for relational workloads and provides strong consistency, horizontal scalability, and a powerful SQL query engine. Other options, such as Bigtable or Firestore, lack either the ACID transaction support or the SQL-like querying capabilities required for this use case.
- A. Incorrect.
Google Cloud Bigtable is a NoSQL database optimized for low-latency, large-scale analytics workloads, but it does not support ACID transactions or SQL-like queries.
- B. Incorrect.
Google Cloud Firestore in Native mode is a NoSQL document database that supports ACID transactions, but it is not designed for strong SQL-like query capabilities.
- C. Correct.
Google Cloud Spanner is a globally-distributed, horizontally-scalable relational database that supports ACID transactions and SQL-like queries, making it the best choice for this scenario.
- D. Incorrect.
Google Cloud Storage is an object storage service suitable for large-scale unstructured data, but it does not support ACID transactions or SQL-like queries.