Cloud Digital Leader Practice Question: Google Cloud products, services, and solutions
A company wants to migrate a legacy monolithic application to Google Cloud with minimal code changes. The application runs on a specific OS version and uses a relational database. Which migration approach is most suitable?
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
✓
Lift and shift to Compute Engine and Cloud SQL
The correct option is B: Lift and shift to Compute Engine and Cloud SQL. This approach is most suitable because it preserves the existing application with minimal code changes, allowing the same OS version to run on Compute Engine VMs while migrating the relational database to Cloud SQL, a managed relational database service. Options A and C require significant code changes (rebuilding as serverless functions or refactoring into microservices), which contradicts the minimal-change requirement. Option D, replatforming to Cloud Run, also typically requires containerization and code adjustments and may not support the specific OS version or relational database dependencies as directly.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Rebuild the application using serverless functions
Why it's wrong here
Rebuilding as serverless functions rewrites the monolith's code and discards its specific OS version and relational database dependencies, contradicting the minimal-change requirement. It is tempting because serverless removes infrastructure management and suits greenfield event-driven workloads, not legacy lift-and-shift migrations.
- ✓
Lift and shift to Compute Engine and Cloud SQL
Why this is correct
Rehosting the monolith onto Compute Engine preserves the existing OS version and application code, while Cloud SQL supplies the managed relational database. This satisfies the minimal-code-change constraint, unlike refactoring to containers or serverless, which would demand rewriting.
- ✗
Refactor the application into microservices
Why it's wrong here
Refactoring into microservices requires substantial code changes, redeployment and redesign of the monolith's database access, directly violating the minimal-change constraint. It is tempting because microservices improve scalability and independent deployment, which suits organisations willing to invest in modernising their architecture.
- ✗
Replatform to use Cloud Run
Why it's wrong here
Cloud Run runs stateless containers and does not provide the specific OS version or persistent relational database the monolith depends on, so code changes are unavoidable. It is tempting because it offers managed scaling for containerised applications, which suits cloud-native services rather than legacy monoliths.
Quick reference
Cloud Service Model Comparison
| Model | You Manage | Provider Manages | Examples |
|---|---|---|---|
| IaaS | OS, runtime, apps, data | Hardware, hypervisor, networking | EC2, Azure VMs, GCP Compute Engine |
| PaaS | Apps and data | OS, runtime, middleware, hardware | Elastic Beanstalk, Azure App Service |
| SaaS | Data and settings only | Everything else | Microsoft 365, Salesforce, Workday |
| FaaS / Serverless | Function code only | Infra, scaling, runtime | Lambda, Azure Functions, Cloud Run |
| CaaS | Containers and apps | Kubernetes, OS, hardware | EKS, AKS, GKE |
Go deeper
Related to this question
Learn chapter
Migration Strategies: Lift-and-Shift, Modernize, Rebuild
Key term
Serverless
Serverless is a cloud computing model where the cloud provider manages the servers, and you only pay for the actual compute time your code uses, without having to worry about provisioning or maintaining infrastructure.
Key term
SQL
SQL is a standardized programming language used to manage and manipulate relational databases, enabling querying, updating, and data retrieval.
About these practice questions
Courseiva writes every GCDL question from scratch — 848 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This GCDL 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 GCDL exam.