Professional Data Engineer Exam QuestionsBrowse all questions from this exam

Professional Data Engineer Exam - Question 13


You want to process payment transactions in a point-of-sale application that will run on Google Cloud Platform. Your user base could grow exponentially, but you do not want to manage infrastructure scaling.

Which Google database service should you use?

Show Answer
Correct Answer: AD

For a point-of-sale application with potential exponential growth and a requirement to avoid infrastructure scaling management, the best option among the provided choices is Cloud Datastore. Cloud Datastore is a fully managed, serverless NoSQL database that supports ACID transactions, which are essential for payment processing. It automatically scales to handle increases in user base and transactions without the need for manual infrastructure adjustments, making it well-suited for this use case.

Discussion

17 comments
Sign in to comment
DeepakKhattarOption: A
Jun 3, 2020

Initially, thinking D is the best answer but when question is re-re-read, A seems to be correct answer for following reasons 1. Is payment TRANSACTION -- DB should able to perform full blown transaction (updating inventory, sales info etc, though not specified) , not just ATOMIC which DataStore provides 2. Its point-of-sale application, not ONLINE STORE where HIGH number of concurrent users ordering stuff. 3. User Base could grow exponentially - again more users does mot mean concurrent users and more processing power. Its only about storage. 4. Do not want to Manage infrastructure scaling. - Cloud SQL can scale in terms of storage. 5. CloudStore is poor selection for OLTP application - Each property is index - so higher latency Not sure, during exam 2 min is enough to think on various point.. I may be wrong or wrong path ... lets brainstrom..

Blobby
Aug 25, 2021

Can't online be considered PoS? CloudSQL does have constraints for scaling and Google seem to specifically be selling Datastore for transactional use cases so going with D: https://cloud.google.com/datastore/docs/concepts/transactions

Blobby
Sep 15, 2021

Based on a re-read of the above comments and other later questions agree with A. pls ignore my first answer.

canon123
Nov 6, 2021

CloudSql does not auto scale.

BigQuery
Dec 6, 2021

https://cloud.google.com/architecture/elastically-scaling-your-mysql-environment#objectives Please read. It can be configured for autoscaling.

hendrixlives
Dec 17, 2021

That link explains how to set MySQL autoscaling with Google Compute Engine instances (you install and manage MySQL on the VM). This can not be applied to Cloud SQL (managed service). In Cloud SQL, only the storage can be automatically increased, and changing the Cloud SQL instance size requires a manual edit of the instance type.

MisuLava
Oct 28, 2022

yes. and that is ok since this is a point of sale. an exponential increase in number of clients still means reduced parallel processing (how many customers can buy in the very same time) so an increase in memory and CPU is very unlikely to be necessary. yes, an exponential increase in the number of customers means more memory, and more storage, which in cloud SQL increases automatically.

nkunwar
Sep 28, 2022

C SQL doesn't AUTO SCALE, you need to manually edit , Please show where does it says AUTO SCALING

jvg637Option: D
Mar 11, 2020

D seems to be the right one. Cloud SQL doesn't automatically scale

BigQuery
Dec 6, 2021

Cloud SQL does scale automatically. THERE IS A SETTING WHERE YOU DEFINE INCREASE MEMORY SPACE WHEN IT REACHED 70%. https://cloud.google.com/sql/docs/features#features_3 Here it say's -> Fully managed SQL Server databases in the cloud. -> Custom machine types with up to 624 GB of RAM and 96 CPUs. -> Up to 64 TB of storage available, with the ability to automatically increase storage size as needed.

hendrixlives
Dec 17, 2021

Storage scale is automatic (e.g. you begin with a 50GB disk and it grows automatically as needed), but the instance size (CPU/memory) will be the same. The questions states that the user base may increase exponentially. Even if you have enough disk space to store all your user data, the increase in users will cause problems if your instance (CPU/memory) is too small, since the instance will not be able to process all the queries at the required speed.

imsaikat50
Dec 8, 2022

I believe the key point is it's a POS, not an e-commerce. Keeping that in mind, exponential user increase in POS might not mean concurrent user increase, which could be a huge consideration in case of it is being e-commerce. I would rather go with 'Cloud SQL' as the best answer.

GCP_PDE_AGOption: A
Aug 8, 2023

A seems to be correct. Usecase here is "process payment transactions in a point-of-sale application". So this is OLTP. Datastore is not a relational database, and it is not an effective solution for analytic data. If you need a relational database with full SQL support for an online transaction processing (OLTP) system, consider Cloud SQL. https://cloud.google.com/datastore/docs/concepts/overview

yash12Option: D
Jul 30, 2023

Correct Answer is D, Cloud Datastore is used for PoS https://cloud.google.com/blog/topics/developers-practitioners/your-google-cloud-database-options-explained

pulse008Option: D
Aug 7, 2023

D is correct because you do not want to manage scaling in this case. Cloud SQL can also scale but it needs involvement unlike Datastore which is completely automatic.

bhavaneesh
Aug 7, 2023

Do you by any chance have the contributor access - I need questions 205-209 :( Please

imran79Option: D
Oct 7, 2023

For a point-of-sale application where you anticipate exponential growth and want to ensure seamless scalability without managing the infrastructure scaling, the best choice among the provided options is: D. Cloud Datastore Cloud Datastore is a NoSQL database service that's built for web, mobile, and IoT applications. It provides automatic scaling, high performance, and ease of application development, making it a suitable choice for applications where the user base could grow exponentially and where you don't want to manually handle infrastructure scaling.

rocky48Option: D
Nov 4, 2023

B - not an option C - lack of ACID transactions A - lack of resource automatic scalability D - (correct, IMHO) support ACID, suitable for OLPT and scalable enough

39405bbOption: D
May 19, 2024

The best choice for this scenario is D. Cloud Datastore. Here's why: Scalability: Cloud Datastore is a NoSQL database designed for automatic scaling. It can handle exponential growth without requiring manual intervention for infrastructure management. NoSQL: This type of database is well-suited for transactional data like payment processing, where the schema can be flexible. Fully Managed: Cloud Datastore is a fully managed service, meaning Google takes care of the underlying infrastructure, maintenance, and updates. Here's why the other options aren't the best fit: Cloud SQL: While suitable for relational data, it might not be the most scalable or cost-effective option for handling massive growth in a point-of-sale application. BigQuery: Primarily designed for data warehousing and analytics, not transactional processing. Cloud Bigtable: A high-performance NoSQL database, but it's more suited for large-scale, low-latency applications and might be overkill for a point-of-sale system.

alihabibOption: D
Aug 5, 2023

Its D, though Datastore is NoSQL, but it supports ACID transaction concepts.

gudguy1aOption: C
Sep 5, 2023

Bigtable is the better answer. Neither Cloud SQL & Datastore (Firestore) can scale to exponential level....

axantroffOption: D
Oct 29, 2023

B - not an option C - lack of ACID transactions A - lack of resource automatic scalability D - (correct, IMHO) support ACID, suitable for OLPT and scalable enough

RT_GOption: D
Nov 7, 2023

D - Because DataStore supports massive scaling and ACID transactions which are two primary considerations in this scenario.

TVH_Data_EngineerOption: D
Dec 14, 2023

Cloud Datastore (now part of Google Cloud Firestore in Datastore mode) is designed for high scalability and ease of management for applications. It is a NoSQL document database built for automatic scaling, high performance, and ease of application development. It's serverless, meaning it handles the scaling, performance, and management automatically, fitting your requirement of not wanting to manage infrastructure scaling. Cloud SQL, while a fully-managed relational database service that makes it easy to set up, manage, and administer your SQL databases, is not as automatically scalable as Datastore. It's better suited for applications that require a traditional relational database.

ilbergOption: D
Apr 28, 2024

auto-scale is the key word to unfold the correct answer. D is the the correct answer

brokeasspandaOption: A
May 28, 2024

Transactional DB

8ad5266Option: A
May 31, 2024

Transactional = SQL. Anything with payment processors should NOT be NoSQL

jamalkhanOption: A
Jun 27, 2024

A. Requires Transactions.