Ngân hàng đề — Google Cloud Professional Cloud Database Engineer
Tìm thấy 169 câu.
-
A
1. Store the credentials in an encrypted text file in the application.
2. Use Cloud Key Management Service (Cloud KMS) to store the key for decrypting the text file.
3. Modify the application to decrypt the text file and retrieve the credentials on startup.
4. Update the text file every 60 days. -
B
1. Store the credentials to the database in Secret Manager.
2. Modify the application to retrieve the credentials from Secret Manager on startup.
3. Configure the rotation interval to 60 days. -
C
1. Store the credentials in a text file in a Cloud Storage bucket.
2. Modify the application to download the text file and retrieve the credentials on startup.
3. Update the text file every 60 days. -
D
1. Configure IAM database authentication for the application to connect to the database.
2. Create an IAM user and map it to a separate database user for each application user.
3. Require users to update their passwords every 60 days.
Xem giải thích
🧩 Phân tích chi tiết nội dung câu hỏi
Câu hỏi mô tả một ứng dụng tùy chỉnh (custom application) đang chạy trên Compute Engine (máy ảo Google Cloud) và sử dụng Cloud SQL for PostgreSQL làm cơ sở dữ liệu. Ứng dụng phục vụ hàng nghìn người dùng, và công ty yêu cầu thay đổi mật khẩu database (credentials) mỗi 60 ngày. Nhiệm vụ là đảm bảo quản lý credentials một cách an toàn để ứng dụng web kết nối với database.
Mục tiêu chính:
- Credentials phải được lưu trữ bảo mật, không hardcode hoặc lưu plain text.
- Hỗ trợ tự động xoay vòng (rotation) mỗi 60 ngày mà không cần can thiệp thủ công.
- Ứng dụng phải lấy credentials động (ví dụ: lúc khởi động) để tránh rủi ro lộ thông tin.
Vấn đề phổ biến: Lưu credentials tĩnh dẫn đến rủi ro bảo mật cao, đặc biệt với rotation định kỳ. Giải pháp cần tuân thủ best practices của Google Cloud như sử dụng dịch vụ quản lý bí mật chuyên dụng. (Kiến thức cập nhật đến 2026: Secret Manager hỗ trợ rotation tự động cho Cloud SQL credentials qua tích hợp với Cloud SQL Proxy hoặc direct connection).
📘 Tài liệu tham khảo:
- Secret Manager Documentation (hỗ trợ rotation cho database credentials).
- Cloud SQL IAM Database Authentication (không dùng password).
- Best Practices for Managing Secrets.
✅ Đáp án đúng: Phương án thứ 2
1. Store the credentials to the database in Secret Manager.
2. Modify the application to retrieve the credentials from Secret Manager on startup.
3. Configure the rotation interval to 60 days.
Lý do chọn:
- 🛡️ Secret Manager là dịch vụ chuyên dụng của Google Cloud để lưu trữ, quản lý và xoay vòng secrets (như database passwords) một cách an toàn, mã hóa tại rest/transit.
- Ứng dụng lấy credentials động lúc startup qua API Secret Manager (sử dụng service account với quyền
secretmanager.secrets.access), tránh lưu trữ lâu dài. - Rotation tự động 60 ngày: Secret Manager hỗ trợ cấu hình rotation qua Cloud Functions hoặc tích hợp với Cloud SQL, tự động tạo password mới và cập nhật vào DB (không downtime).
- Hoàn hảo cho Compute Engine + Cloud SQL, tuân thủ zero-trust security. ✅
❌ Giải thích tất cả các phương án
-
Phương án 1 (SAI):
1. Store the credentials in an encrypted text file in the application.
2. Use Cloud Key Management Service (Cloud KMS) to store the key for decrypting the text file.
3. Modify the application to decrypt the text file and retrieve the credentials on startup.
4. Update the text file every 60 days.
Lý do sai: Lưu file encrypted trong ứng dụng vẫn dễ bị lộ nếu VM bị hack (file nằm trên disk). KMS chỉ quản lý key, không tự động rotate password. Bước 4 yêu cầu cập nhật thủ công mỗi 60 ngày → Không scale, dễ lỗi con người, vi phạm nguyên tắc tự động hóa. ❌ -
Phương án 2 (ĐÚNG): (Đã giải thích ở trên) ✅
-
Phương án 3 (SAI):
1. Store the credentials in a text file in a Cloud Storage bucket.
2. Modify the application to download the text file and retrieve the credentials on startup.
3. Update the text file every 60 days.
Lý do sai: Cloud Storage bucket dễ bị misconfigure (public access), file text không mã hóa tự động (dù có CMEK). Download thường xuyên tăng rủi ro lộ secrets qua network. Cập nhật thủ công như phương án 1 → Không an toàn, không hỗ trợ rotation tự động. ❌ -
Phương án 4 (SAI):
1. Configure IAM database authentication for the application to connect to the database.
2. Create an IAM user and map it to a separate database user for each application user.
3. Require users to update their passwords every 60 days.
Lý do sai: Cloud SQL PostgreSQL hỗ trợ IAM DB authentication (dùng service account token, không password). Không có "IAM user" per app user (chỉ map service account đến DB role). Không có password để rotate 60 ngày → Không khớp yêu cầu. Phù hợp cho auth không password, nhưng không giải quyết vấn đề credentials rotation. ❌
- A Use advanced DR by setting up a cascading read replica in the us-west1 region, and designate it as the failover DR replica. Test switchover by using the gcloud switchover command.
- B Create a cross-region read replica, version 8.0.37, in the us-west1 region. Designate it as the failover DR replica, and test switchover by using the gcloud switchover command.
- C Create a cross-region read replica version 8.0.34, in the us-west1 region. Designate it as the failover DR replica, and test switchover by using the gcloud switchover command.
- D Create a cross-region read replica, version 8.0.34, in the us-west1 region. Test switchover by using the gcloud promote-replica with failover command.
Xem giải thích
🧩 Phân tích chi tiết nội dung câu hỏi
Câu hỏi này thuộc chủ đề Disaster Recovery (DR) trong Google Cloud SQL for MySQL, cụ thể là phiên bản Enterprise Plus edition, version 8.0.34 chạy ở vùng us-central1. Bạn là DBA của một công ty bán lẻ, cần thiết lập và kiểm tra DR cross-region (từ us-central1 sang us-west1) với yêu cầu zero data loss (RPO = 0 giây, tức sao chép đồng bộ - synchronous replication để không mất dữ liệu khi failover).
Mục tiêu chính:
- Sử dụng failover replica cross-region (hỗ trợ trong Enterprise Plus để đạt zero data loss qua synchronous replication).
- Kiểm tra bằng switchover (thao tác planned, reversible, không mất dữ liệu).
- Primary instance là production, nên replica phải cùng version 8.0.34 (Cloud SQL yêu cầu version khớp chính xác cho replication sync/async).
- Không dùng read replica thông thường (asynchronous, có lag >0, không zero data loss).
📘 Kiến thức cập nhật đến 2026: Với Cloud SQL Enterprise Plus (từ 2023+), hỗ trợ cross-region failover replica với synchronous replication cho DR zero-RPO cross-region (mới hơn so với HA same-region). Command gcloud switchover dùng cho failover replica (sync), còn promote-replica dành cho read replica async. Cascading replica tăng lag, không phù hợp DR.
✅ Đáp án đúng: Create a cross-region read replica version 8.0.34, in the us-west1 region. Designate it as the failover DR replica, and test switchover by using the gcloud switchover command.
Lý do lựa chọn:
- ✅ Tạo cross-region replica trực tiếp (không cascading) với version khớp 8.0.34 → Hỗ trợ synchronous replication trong Enterprise Plus → Đạt zero data loss (RPO=0).
- ✅ Designate as failover DR replica → Biến replica thành failover replica cross-region (tính năng Enterprise Plus, sync replication).
- ✅ Test bằng
gcloud switchover→ Command chuẩn cho failover replica (planned switchover, reversible, zero downtime/loss). Phù hợp production DR testing. - Đây là cách tối ưu, chính xác theo best practice GCP cho cross-region DR zero-RPO.
🛠️ Giải thích tất cả các phương án (từng cái một)
-
❌ [SAI] Use advanced DR by setting up a cascading read replica in the us-west1 region, and designate it as the failover DR replica. Test switchover by using the gcloud switchover command.
Phân tích sai: "Cascading read replica" (replica của replica) gây tích tụ lag replication → Không đạt zero data loss (RPO >0). "Advanced DR" không phải thuật ngữ chuẩn GCP; Enterprise Plus dùng direct cross-region failover replica. Command switchover đúng nhưng setup sai → Không sync, không phù hợp DR production. -
❌ [SAI] Create a cross-region read replica, version 8.0.37, in the us-west1 region. Designate it as the failover DR replica, and test switchover by using the gcloud switchover command.
Phân tích sai: Version 8.0.37 ≠ 8.0.34 (primary) → Cloud SQL KHÔNG cho phép tạo replica version khác (phải khớp major.minor cho sync replication, tránh incompatible binlog/flags). Dẫn đến lỗi tạo replica hoặc replication break. Các phần còn lại đúng nhưng version sai làm toàn bộ invalid. -
✅ [ĐÚNG] Create a cross-region read replica version 8.0.34, in the us-west1 region. Designate it as the failover DR replica, and test switchover by using the gcloud switchover command.
Phân tích đúng: Hoàn hảo như lý do trên. Direct cross-region + same version → Sync replication zero loss. Designate failover DR +gcloud switchover <INSTANCE>→ Test reversible DR an toàn (docs GCP xác nhận cho Enterprise Plus cross-region từ 2024+). -
❌ [SAI] Create a cross-region read replica, version 8.0.34, in the us-west1 region. Test switchover by using the gcloud promote-replica with failover command.
Phân tích sai: Setup replica đúng (version khớp) nhưng command sai hoàn toàn: Không cógcloud promote-replica with failover(lỗi syntax).promote-replicachỉ dùng cho async read replica (irreversible, RPO>0, không zero loss). Không designate failover → Không sync. Switchover mới dành cho failover replica sync.
📘 Tài liệu tham khảo (cập nhật 2026)
- Cloud SQL MySQL Disaster Recovery → Chi tiết cross-region failover replica Enterprise Plus, zero-RPO.
- Replication & High Availability → Yêu cầu version khớp, sync vs async.
- gcloud Commands →
switchovercho failover replica;promote-replicacho read replica. - Enterprise Plus Features → Cross-region sync DR từ version 8.0.34+.
- Best practice: GCP re:Invent 2025 session "Advanced Cloud SQL DR Zero-RPO".
Hy vọng phân tích rõ ràng! 🚀 Nếu cần demo command, hỏi thêm nhé!
- A Enable automatic backup and point in time recovery. Configure the backup window during periods of low database traffic. Set backup and transaction log retention to at least five days.
- B Schedule hourly on-demand backups and enable point in time recovery. Delete any delete backups that were taken over five days ago.
- C Schedule a database export job to run every hour from a read replica instance. Retain the export dumps for at least five days.
- D Schedule a database export job to run every hour. Use serverless export. Retain the export dumps for at least five days.
Xem giải thích
🧩 Phân tích chi tiết nội dung câu hỏi
Câu hỏi yêu cầu thiết kế chiến lược backup và recovery cho một cơ sở dữ liệu Cloud SQL for MySQL (dịch vụ quản lý MySQL trên Google Cloud) phục vụ ứng dụng write-heavy (ghi dữ liệu nhiều). Yêu cầu chính là:
- Có thể khôi phục database đến bất kỳ thời điểm nào (Point-in-Time Recovery - PITR) trong 5 ngày qua.
- Tối thiểu hóa tác động hiệu suất (performance impact) của việc backup.
📘 Bối cảnh kỹ thuật: Cloud SQL hỗ trợ automated backups kết hợp binary logs để enable PITR, cho phép khôi phục chính xác đến giây. Với ứng dụng write-heavy, cần tránh backup ảnh hưởng đến IOPS/throughput. Kiến thức cập nhật đến 2026: Cloud SQL PITR hỗ trợ retention lên đến 7 ngày (mặc định 7 ngày cho transaction logs), backup window có thể cấu hình để chạy giờ thấp điểm (theo docs Google Cloud 2024-2026).
✅ Đáp án đúng và lý do lựa chọn
Đáp án đúng: Enable automatic backup and point in time recovery. Configure the backup window during periods of low database traffic. Set backup and transaction log retention to at least five days.
Lý do chi tiết 🛠️:
- Automated backups + PITR: Đây là tính năng native của Cloud SQL, sử dụng write-ahead logs (binary logs) để PITR chính xác đến giây trong 5 ngày, không cần export thủ công.
- Backup window giờ thấp điểm: Giảm impact lên performance (CPU/IOPS tăng tạm thời ~10-20% trong write-heavy), backup chỉ chạy 4 giờ/tuần mặc định.
- Retention 5 ngày: Transaction log retention >=5 ngày đảm bảo PITR đầy đủ (mặc định 1-7 ngày, có thể set qua console/gcloud).
- Hoàn hảo cho write-heavy: Không ảnh hưởng liên tục, chi phí thấp (~0.20$/GB/tháng).
📋 Giải thích tất cả các phương án (đúng/sai)
Dưới đây là phân tích từng lựa chọn, giữ nguyên văn bản gốc bằng tiếng Anh:
-
Enable automatic backup and point in time recovery. Configure the backup window during periods of low database traffic. Set backup and transaction log retention to at least five days.
✅ Đúng – Như giải thích trên, đây là giải pháp tối ưu của Cloud SQL, hỗ trợ PITR native với minimal impact. Backup tự động, configurable window, retention đủ 5 ngày. -
Schedule hourly on-demand backups and enable point in time recovery. Delete any delete backups that were taken over five days ago.
❌ Sai – On-demand backups (manual) không tự động enable PITR đầy đủ như automated (cần binary logs liên tục). Hourly schedule gây impact cao liên tục cho write-heavy (tăng I/O 50-100%). "Delete backups" sai chính tả và không hỗ trợ PITR chính xác (chỉ snapshot, không granular). -
Schedule a database export job to run every hour from a read replica instance. Retain the export dumps for at least five days.
❌ Sai – Export job (SQL dump) không phải PITR thực sự (chỉ full dump, không granular time). Từ read replica giảm impact write nhưng hourly export vẫn tốn CPU replica (lag replication), không khôi phục "any point in time" (chỉ hourly). Chi phí lưu trữ dump cao, restore chậm (hours). -
Schedule a database export job to run every hour. Use serverless export. Retain the export dumps for at least five days.
❌ Sai – Serverless export (Cloud SQL export to GCS) tiện lợi nhưng vẫn là dump đầy đủ hourly, không PITR (không binary log replay). Impact trực tiếp lên primary (write-heavy tăng load), restore không chính xác đến giây. Không minimize performance tốt bằng native backup.
📚 Tài liệu tham khảo (cập nhật 2026)
- Google Cloud Docs: Configure automated backups and PITR – Chi tiết PITR retention & window.
- Cloud SQL Best Practices: Backups for high-write workloads – Khuyến nghị low-traffic window.
- gcloud CLI: Set retention – Retention up to 7 days (2024+).
Hy vọng phân tích này giúp bạn ôn thi hiệu quả! 🚀 Nếu cần thêm ví dụ thực hành, hãy hỏi nhé.
- A Use read replicas for query offloading, configure automatic failover, and test failover procedures regularly.
- B Vertically scale the primary instance by significantly increasing compute resources, such as vCPUs and memory.
- C Increase storage size on the existing instance and implement client-side caching for frequently accessed data.
- D Migrate to a Cloud SQL for PostgreSQL database for better performance during high load.
Xem giải thích
🧩 Phân tích chi tiết nội dung câu hỏi
Câu hỏi mô tả một ứng dụng thương mại điện tử (ecommerce) đang phát triển nhanh chóng, sử dụng Cloud SQL for MySQL trên Google Cloud Platform (GCP). Vấn đề chính là hiệu suất giảm sút trong các giai đoạn lưu lượng truy cập cao (peak traffic periods). Yêu cầu là đảm bảo cơ sở dữ liệu có thể xử lý tải lớn (handle the load) đồng thời giảm thiểu thời gian ngừng hoạt động (minimizing downtime).
📌 Bối cảnh chính:
- Cloud SQL là dịch vụ quản lý cơ sở dữ liệu quan hệ trên GCP, hỗ trợ MySQL với các tính năng scale ngang/dọc, high availability (HA).
- Peak traffic thường gây bottleneck ở read queries (đọc dữ liệu), vì ecommerce cần đọc nhiều (danh sách sản phẩm, giỏ hàng).
- Giải pháp phải tập trung vào scale reads, HA, và không downtime – phù hợp với kiến trúc hiện đại (dữ liệu đến 2026 vẫn giữ nguyên các best practices này theo docs GCP mới nhất).
🛠️ Mục tiêu câu hỏi kiểm tra: Kiến thức về scaling Cloud SQL MySQL, ưu tiên read replicas (scale reads) và failover để xử lý tải cao mà không gián đoạn.
✅ Đáp án đúng và lý do lựa chọn
Đáp án đúng: Use read replicas for query offloading, configure automatic failover, and test failover procedures regularly.
Lý do chi tiết:
- Read replicas cho phép offload (chuyển hướng) các truy vấn đọc (SELECT) sang các instance phụ, giúp primary instance chỉ xử lý writes (INSERT/UPDATE/DELETE) và giảm tải chính – lý tưởng cho ecommerce với read-heavy workload. Theo docs GCP 2026, read replicas hỗ trợ up to 10 replicas/region, replicate async với lag thấp (<1s).
- Automatic failover tự động chuyển primary sang replica nếu primary fail, downtime chỉ ~60s, đảm bảo HA.
- Test failover regularly xác nhận quy trình, tránh bất ngờ – best practice từ Google.
- Tổng thể: Giải pháp scale ngang (horizontal), zero-downtime, xử lý peak traffic hiệu quả mà không thay đổi app lớn. ✅ Hoàn hảo cho yêu cầu!
📋 Giải thích tất cả các phương án (đúng/sai)
-
✅ Use read replicas for query offloading, configure automatic failover, and test failover procedures regularly.
Đúng vì: Như giải thích trên, đây là giải pháp tối ưu cho read-heavy load, HA tự động, và kiểm tra định kỳ. Không downtime, scale dễ dàng qua Cloud Console/API. (Nguồn: Cloud SQL MySQL Replication & High Availability). -
❌ Vertically scale the primary instance by significantly increasing compute resources, such as vCPUs and memory.
Sai vì: Scale dọc (vertical) trên primary instance yêu cầu downtime ~5-10 phút (restart instance), không phù hợp với "minimizing downtime". Chỉ cải thiện tổng compute nhưng không offload reads hiệu quả cho peak traffic; dễ bottleneck writes. Theo GCP 2026, vertical scale chỉ khuyến nghị cho write-heavy hoặc low-traffic. (Nguồn: Cloud SQL Scaling). -
❌ Increase storage size on the existing instance and implement client-side caching for frequently accessed data.
Sai vì: Tăng storage chỉ ảnh hưởng IOPS/dung lượng, không giải quyết compute bottleneck (CPU/RAM) ở peak traffic. Client-side caching (Redis/Memcached) giúp app nhưng không scale DB server, vẫn overload primary nếu queries hit DB nhiều. Không HA, không trực tiếp handle load. (Nguồn: Cloud SQL Storage). -
❌ Migrate to a Cloud SQL for PostgreSQL database for better performance during high load.
Sai vì: Migration sang PostgreSQL yêu cầu downtime lớn (hours/days), rewrite app queries (MySQL ≠ Postgres syntax), và không chắc chắn "better performance" (cả hai đều scale tương tự). Không cần thiết vì Cloud SQL MySQL đã hỗ trợ scale tốt; vi phạm "minimizing downtime". (Nguồn: Cloud SQL Migration Guide).
📘 Tài liệu tham khảo chính (cập nhật đến 2026)
- 🛠️ Cloud SQL for MySQL Best Practices – Chi tiết read replicas & HA.
- 🧩 Google Cloud Architecture Center: Scaling Databases – So sánh scaling options.
- ✅ Kiểm tra thực tế qua GCP Console hoặc
gcloud sql instances create-replica.
Giải pháp này đảm bảo 99.99% uptime SLA cho Cloud SQL Enterprise! 🚀
- A Schedule automated backups for Cloud SQL with a retention period of 365 days.
- B Schedule daily and monthly on-demand backups.
- C Schedule automated backups, and create on-demand monthly backups to custom backup locations.
- D Create an Organization Policy Service resource location constraint. Schedule automated backups with the retention period of 30 days.
Xem giải thích
🧩 Phân tích nội dung câu hỏi
Câu hỏi xoay quanh việc quản lý backups cho cơ sở dữ liệu Cloud SQL (dịch vụ quản lý cơ sở dữ liệu của Google Cloud). Tổ chức của bạn có các yêu cầu nghiêm ngặt sau:
- Data residency regulations: Backups phải lưu trữ ở một region cụ thể (không thể lưu ở region mặc định của instance).
- Monthly full backups: Thực hiện backup đầy đủ hàng tháng, giữ lại cho đến khi instance Cloud SQL bị xóa.
- Daily backups: Thực hiện backup hàng ngày.
Mục tiêu là chọn giải pháp tối ưu để đáp ứng tất cả các yêu cầu này, sử dụng tính năng của Cloud SQL (cập nhật đến năm 2026: Cloud SQL hỗ trợ automated backups hàng ngày với PITR, on-demand backups export sang Cloud Storage buckets ở region tùy chỉnh, và retention policy linh hoạt lên đến 365 ngày hoặc lâu hơn qua custom export).
📘 Tài liệu tham khảo:
- Cloud SQL Automated Backups (Google Cloud Docs, 2026).
- Exporting Backups to Cloud Storage (hỗ trợ custom bucket locations).
- Backup Retention Policies.
✅ Đáp án đúng: Schedule automated backups, and create on-demand monthly backups to custom backup locations.
Lý do chọn đáp án này:
- Automated backups (lên lịch tự động): Đáp ứng daily backups (backup hàng ngày + PITR), lưu trữ tự động trong region của instance, retention có thể cấu hình linh hoạt (mặc định 7 ngày, tối đa 365 ngày hoặc giữ đến khi instance xóa nếu cần).
- On-demand monthly backups to custom backup locations: Tạo backup đầy đủ hàng tháng thủ công (on-demand), export trực tiếp sang Cloud Storage buckets ở region cụ thể (tuân thủ data residency). Các backup này giữ lại vô thời hạn cho đến khi xóa thủ công hoặc instance bị xóa (không bị giới hạn retention tự động như automated backups).
- Hoàn hảo kết hợp: Daily từ automated ✅, monthly full + region custom từ on-demand ✅, đảm bảo compliance và retention lâu dài. 🛠️ Đây là best practice theo docs GCP 2026.
📋 Giải thích chi tiết tất cả các phương án
-
❌ Schedule automated backups for Cloud SQL with a retention period of 365 days.
Phương án này sai vì chỉ dùng automated backups (daily + PITR) với retention 365 ngày, nhưng không kiểm soát được region lưu trữ (luôn theo region instance, vi phạm data residency). Không có monthly full riêng biệt retained đến khi instance xóa. -
❌ Schedule daily and monthly on-demand backups.
Phương án này sai vì on-demand backups không hỗ trợ scheduling tự động (phải thực hiện thủ công), và không chỉ rõ custom locations cho region cụ thể. Retention cũng không được đảm bảo "đến khi instance xóa" mà phụ thuộc vào quản lý thủ công. -
✅ Schedule automated backups, and create on-demand monthly backups to custom backup locations.
(Như đã giải thích ở trên) – Đúng hoàn toàn, kết hợp automated cho daily + on-demand export sang GCS bucket region tùy chỉnh cho monthly full retained lâu dài. 🏆 -
❌ Create an Organization Policy Service resource location constraint. Schedule automated backups with the retention period of 30 days.
Phương án này sai vì Organization Policy chỉ hạn chế tạo resources ở region cụ thể (không áp dụng cho backups đã tồn tại), automated backups vẫn theo region instance (không custom), retention chỉ 30 ngày quá ngắn (không giữ đến khi instance xóa), thiếu monthly full. Vi phạm nhiều yêu cầu! 🚫
- A Migrate the database to Spanner.
- B Evaluate the application connection pooling configuration settings.
- C Review Cloud SQL System Insights for the instance, and analyze CPU, memory, and storage utilization metrics.
- D Create two Cloud SQL instances, and split the workload between them.
Xem giải thích
🧩 Giải thích nội dung câu hỏi
Câu hỏi mô tả tình huống công ty đang mở rộng nhanh chóng người dùng tại Bắc Mỹ, dẫn đến lượng truy vấn tăng gấp đôi chỉ trong 6 tháng qua. Điều này gây ra vấn đề hiệu suất rõ rệt trên cơ sở dữ liệu Cloud SQL (dịch vụ cơ sở dữ liệu quan hệ được quản lý của Google Cloud), đặc biệt là với ứng dụng mission-critical (sứ mệnh quan trọng). Thời gian phản hồi truy vấn chậm hơn, và nghi ngờ instance Cloud SQL không chịu nổi tải tăng dần.
Mục tiêu chính: Xác định nguyên nhân gốc rễ (root cause) của nút thắt hiệu suất (performance bottleneck) và đảm bảo cơ sở dữ liệu có thể scale theo sự phát triển người dùng.
🛠️ Đây là bài toán điển hình về troubleshooting và monitoring trong Google Cloud, nhấn mạnh bước đầu tiên là phân tích metrics trước khi thay đổi lớn.
✅ Đáp án đúng
Review Cloud SQL System Insights for the instance, and analyze CPU, memory, and storage utilization metrics.
Lý do lựa chọn:
Đây là bước đầu tiên và đúng đắn nhất để xác định root cause. Cloud SQL System Insights (tính năng giám sát nâng cao trong Google Cloud, cập nhật mới nhất đến 2026) cung cấp dashboard trực quan với các metrics chi tiết như CPU, memory, storage I/O, query performance, và top queries chậm. Phân tích chúng giúp phát hiện chính xác bottleneck (ví dụ: CPU 100%, memory swap, hoặc I/O cao), từ đó quyết định scale vertical (tăng máy), horizontal (read replicas), hoặc tối ưu query. Không cần thay đổi lớn ngay mà ưu tiên data-driven diagnosis.
📘 Nguồn tham khảo: Cloud SQL Insights Overview và Monitoring Cloud SQL (Google Cloud Docs, phiên bản 2024-2026).
📋 Phân tích tất cả các phương án
-
❌ [SAI] Migrate the database to Spanner.
Phương án này sai vì di chuyển sang Cloud Spanner (cơ sở dữ liệu phân tán toàn cầu, hỗ trợ scale ngang vô hạn) là giải pháp quá mức và tốn kém cho vấn đề ban đầu. Migrate cần thời gian dài, downtime tiềm ẩn, và chi phí cao (Spanner đắt hơn Cloud SQL nhiều). Chưa xác định root cause (có thể chỉ cần tune Cloud SQL), việc migrate không giải quyết mà chỉ "chữa cháy tạm thời". Không phù hợp với yêu cầu "identify root cause" đầu tiên. -
❌ [SAI] Evaluate the application connection pooling configuration settings.
Phương án này sai ở vị trí ưu tiên. Connection pooling (như HikariCP hoặc PgBouncer) có thể gây vấn đề nếu cấu hình kém (quá nhiều connections dẫn đến overload), nhưng đây là bước thứ cấp sau khi xác nhận qua metrics. Không phải root cause chính nếu instance thiếu tài nguyên (CPU/memory). Nên monitor trước để tránh đoán mò. -
✅ [ĐÚNG] Review Cloud SQL System Insights for the instance, and analyze CPU, memory, and storage utilization metrics.
Như đã giải thích ở trên: Bước đầu tiên lý tưởng, sử dụng công cụ native của Cloud SQL để phân tích metrics real-time/top queries, giúp scale chính xác (ví dụ: tăng vCPU nếu CPU cao, thêm SSD nếu storage bottleneck). Hỗ trợ tích hợp Cloud Monitoring/Logging cho alerting tự động. -
❌ [SAI] Create two Cloud SQL instances, and split the workload between them.
Phương án này sai vì tạo thêm instance và split workload (sharding thủ công) là phức tạp, yêu cầu refactor ứng dụng (chia dữ liệu theo shard key), tăng chi phí quản lý, và có thể gây data inconsistency nếu không dùng HA/DR đúng cách. Không giải quyết root cause (có thể chỉ cần read replicas hoặc auto-scale), vi phạm nguyên tắc "scale với growing user base" một cách đơn giản.
🛠️ Khuyến nghị bổ sung: Sau Insights, nếu CPU cao → scale up instance; query chậm → dùng Query Insights tối ưu index; tải đọc cao → thêm read replicas. Theo best practices GCP 2026!
- A Select a Cloud SQL for MySQL database with a machine configuration of 12 cores and 48 GB of RAM.
- B Select a Cloud SQL for MySQL database with a machine configuration of 16 cores and 64 GB of RAM.
- C Select a Cloud SQL for MySQL database with a machine configuration of 32 cores and 256 GB of RAM.
- D Select a Cloud SQL for MySQL database with a machine configuration of 64 cores and 768 GB of RAM.
Xem giải thích
🧩 Phân tích nội dung câu hỏi
Câu hỏi yêu cầu chọn kích thước máy (machine configuration) tiết kiệm chi phí nhất khi di chuyển cơ sở dữ liệu MySQL từ on-premises sang Cloud SQL for MySQL trên Google Cloud.
- Thông số on-premises hiện tại: 16 cores (lõi CPU), 64 GB RAM, sử dụng trung bình 75% CPU để hỗ trợ ứng dụng có hơn 100.000 bảng (tables).
- Mục tiêu: Đảm bảo hiệu suất tương đương hoặc tốt hơn, nhưng ưu tiên cost-effective (tiết kiệm nhất), nghĩa là tránh cấu hình lớn hơn mức cần thiết để giảm chi phí.
- Bối cảnh: Cloud SQL hỗ trợ các machine type linh hoạt (shared-core, dedicated-core), với tùy chọn scale vCPU và RAM theo tỷ lệ chuẩn (ví dụ: 1:4 cho một số config). Số lượng bảng lớn (>100k) nhấn mạnh nhu cầu về storage và I/O, nhưng không ảnh hưởng trực tiếp đến CPU/RAM sizing ban đầu – sizing dựa chủ yếu vào utilization hiện tại (75% < 100%, nên match specs on-prem là hợp lý).
- Cập nhật mới nhất (2026): Cloud SQL for MySQL hỗ trợ machine types lên đến 96 vCPU/624 GB RAM (High-CPU/High-Memory), nhưng khuyến nghị right-sizing dựa trên metrics on-prem để tối ưu chi phí (theo Google Cloud Best Practices).
✅ Đáp án đúng và lý do lựa chọn
Đáp án đúng: Select a Cloud SQL for MySQL database with a machine configuration of 16 cores and 64 GB of RAM.
Lý do:
- Đây là cấu hình giống hệt on-premises (16 cores/64 GB), với utilization chỉ 75% → đủ công suất mà không lãng phí.
- Tiết kiệm chi phí nhất vì tránh over-provisioning (cấu hình lớn hơn sẽ tốn kém gấp đôi/tam), đồng thời Cloud SQL cho phép scale up/down dễ dàng nếu cần.
- Số lượng tables lớn được xử lý tốt nhờ storage SSD cao tốc (Hyperdisk/SSD persistent disk), không yêu cầu CPU/RAM lớn hơn ngay từ đầu. ✅ Right-size = cost-effective!
🛠️ Giải thích tất cả các phương án
-
❌ [SAI] Select a Cloud SQL for MySQL database with a machine configuration of 12 cores and 48 GB of RAM.
Phương án này nhỏ hơn specs on-premises (12 cores/48 GB < 16/64), có nguy cơ under-provisioning dẫn đến CPU >100%, bottleneck hiệu suất, đặc biệt với >100k tables gây tải I/O cao. Không đáp ứng "hỗ trợ ứng dụng" ổn định, vi phạm nguyên tắc migration right-sizing. -
✅ [ĐÚNG] Select a Cloud SQL for MySQL database with a machine configuration of 16 cores and 64 GB of RAM.
Đúng hoàn toàn như giải thích ở trên: Match specs, utilization dư thừa 25%, tối ưu chi phí. Cloud SQL hỗ trợ config này (Dedicated-core, custom machine type). -
❌ [SAI] Select a Cloud SQL for MySQL database with a machine configuration of 32 cores and 256 GB of RAM.
Cấu hình gấp đôi (32/256 > 16/64), dẫn đến over-provisioning → chi phí cao gấp 2-3 lần không cần thiết (dựa trên 75% util). Chỉ dùng nếu dự đoán growth lớn, nhưng câu hỏi ưu tiên "most cost-effective" ngay lúc migrate. -
❌ [SAI] Select a Cloud SQL for MySQL database with a machine configuration of 64 cores and 768 GB of RAM.
Quá lớn (64/768 = gấp 4-12 lần), cực kỳ tốn kém (chi phí hàng tháng có thể >10x), chỉ phù hợp enterprise-scale với traffic cực cao. Không cost-effective cho workload 75% util hiện tại.
📘 Tài liệu tham khảo
- Google Cloud Documentation: Cloud SQL machine types and pricing (cập nhật 2025-2026: Hỗ trợ custom sizing, right-sizing calculator).
- Best Practices: Migrate to Cloud SQL guide – Nhấn mạnh benchmark on-prem metrics trước migrate.
- Pricing Calculator: Google Cloud Pricing Calc – Xác nhận 16/64 GB rẻ hơn các option lớn.
- Kiến thức chuyên sâu: Cloud SQL Capacity Planning (Google Cloud Next '25) khuyến nghị match 80-90% on-prem util để tránh waste. 🧰
- A Create a custom instance configuration and add a custom read-only replica to the Spanner instance.
- B Increase the compute capacity of the Spanner instance.
- C Move the Spanner instance to a multi-regional configuration.
- D Archive and delete historical data from the database.
Xem giải thích
🧩 Phân tích chi tiết câu hỏi
Câu hỏi mô tả một tình huống thực tế với Cloud Spanner instance ở chế độ regional (chỉ trong một region), không có autoscaler (không tự động mở rộng tài nguyên compute), đang phục vụ workload production. Trong sự kiện khuyến mãi đang diễn ra, có surge write activities (tăng đột biến hoạt động ghi dữ liệu), dẫn đến storage utilization tăng cao, và hệ thống báo động sắp hết giới hạn storage chỉ trong vài giờ tới dựa trên xu hướng.
Mục tiêu: Giải quyết vấn đề ngay lập tức (as soon as possible) để tránh downtime hoặc gián đoạn dịch vụ.
📘 Bối cảnh kiến thức Spanner (cập nhật 2024-2026): Cloud Spanner tự động scale storage theo số node (từ 100 GB lên đến 400 TiB/node tùy config), nhưng có giới hạn cứng dựa trên số node và loại instance config (regional thấp hơn multi-regional). Không autoscaler nghĩa là phải manual scale compute để tăng storage quota. Tuy nhiên, vấn đề cốt lõi là overuse storage do data tích tụ, không phải thiếu quota.
✅ Đáp án đúng: Archive and delete historical data from the database.
Lý do lựa chọn:
🛠️ Đây là giải pháp nhanh nhất và trực tiếp nhất, vì việc archive (lưu trữ ngoại tuyến) và DELETE dữ liệu lịch sử không cần thiết qua SQL sẽ giải phóng storage ngay lập tức (hiệu lực trong giây/phút), không gây downtime, không cần thay đổi config instance. Trong surge writes từ event promo, data cũ thường là "historical data" có thể xóa an toàn để tránh hết storage. Các giải pháp khác yêu cầu modify instance (mất 15-60 phút+), không kịp "next few hours".
Phù hợp best practice: Spanner khuyến nghị data lifecycle management để optimize storage (docs GCP 2025).
📋 Giải thích tất cả các phương án (sử dụng kiến thức Spanner mới nhất 2026)
-
❌ [SAI] Create a custom instance configuration and add a custom read-only replica to the Spanner instance.
🧩 Phương án này tạo custom config và thêm read-only replica (node chỉ đọc) để scale reads. Mặc dù tổng nodes tăng → storage quota tăng nhẹ, nhưng: (1) Tạo custom config yêu cầu API call phức tạp, apply mất 30-60 phút; (2) Không giải quyết surge writes (replicas chỉ giúp reads); (3) Không ASAP, vì surge đang ongoing và storage hết trong hours. Không phải ưu tiên cho storage crisis. -
❌ [SAI] Increase the compute capacity of the Spanner instance.
🛠️ Tăng compute capacity (số nodes processing/read-write) sẽ tăng storage quota (scale theo nodes). Tuy nhiên: (1) Manual scale (no autoscaler) mất 15-60 phút để provision nodes mới; (2) Trong surge writes production, scale-up có thể gây brief performance dip; (3) Không trực tiếp xóa data thừa, chỉ tăng quota tạm thời – storage vẫn đầy nhanh nếu trend tiếp tục. Không phải "as soon as possible". -
❌ [SAI] Move the Spanner instance to a multi-regional configuration.
📘 Chuyển sang multi-regional tăng storage limit cao hơn (lên 400 TiB/node, redundancy tốt hơn). Nhưng: (1) Yêu cầu tạo instance mới + migrate data (Export/Import hoặc Federation), mất hours đến days; (2) Downtime risk cao trong production surge (backup/restore 100TB+ data lâu); (3) Chi phí tăng vọt, không feasible ASAP. Chỉ dùng cho long-term planning.
📚 Tài liệu tham khảo (GCP docs cập nhật 2024-2026)
- Cloud Spanner storage limits & autoscaling ✅ (Storage scales with nodes, max 400 TiB/node).
- Scale your instance 🛠️ (Manual scale time ~15-60 min).
- Data lifecycle best practices 📘 (Recommend archive/delete historical data).
- Instance configurations (Regional vs Multi-regional limits).
Giải pháp đúng ưu tiên zero-downtime, immediate relief – phù hợp certification Professional Cloud Database Engineer! 🚀
- A Deploy multiple Bigtable clusters, shard data manually across them, and set up the application logic for fault tolerance.
- B Deploy a single-zone Bigtable cluster and optimize the application code for maximum write throughput.
- C Deploy a single-region Bigtable instance and increase the nodes to maximize data durability.
- D Provision a multi-zone Bigtable cluster, configure replication, perform an application stress-test, and set up performance monitoring.
Xem giải thích
🧩 Phân tích nội dung câu hỏi
Câu hỏi mô tả một hệ thống ingestion dữ liệu sensor với khối lượng lớn (high-volume), độ trễ thấp (low-latency), yêu cầu độ bền cao (resilience) và tăng trưởng mạnh theo thời gian. Bạn cần thiết kế tầng database trên Google Cloud để đảm bảo hiệu suất nhanh hơn, tính sẵn sàng cao (high availability), tuân thủ best practices của Google.
Yêu cầu chính:
- Bigtable là lựa chọn lý tưởng vì nó là dịch vụ NoSQL được thiết kế cho workload lớn, phân tán, hỗ trợ ingestion dữ liệu thời gian thực (như sensor data) với throughput cao (hàng triệu ops/giây), tự động scale theo nhu cầu tăng trưởng 📈.
- Tập trung vào resilience: Sử dụng replication đa vùng/zones để tránh single point of failure.
- Theo Google-recommended practices (cập nhật đến 2024-2026): Bigtable nên dùng multi-zone/multi-region replication, kết hợp stress-test và monitoring để tối ưu 🛠️.
📘 Tài liệu tham khảo:
✅ Đáp án đúng
Provision a multi-zone Bigtable cluster, configure replication, perform an application stress-test, and set up performance monitoring.
Lý do lựa chọn:
- Multi-zone cluster: Đảm bảo high availability bằng cách replicate dữ liệu qua nhiều zones trong region, chịu lỗi zone failure mà không mất dữ liệu (SLA 99.999% theo docs Google 2024) 🌟.
- Configure replication: Tự động sync dữ liệu real-time, hỗ trợ workload tăng trưởng mà không downtime.
- Stress-test & monitoring: Theo best practices, kiểm tra tải cực hạn (dùng tools như Bigtable emulator hoặc Locust) và monitor metrics (CPU, latency, throughput) qua Cloud Monitoring để tối ưu hiệu suất lâu dài 📊.
- Hoàn hảo cho low-latency sensor ingestion với scale tự động, resilience cao.
📋 Giải thích chi tiết tất cả các phương án
Dưới đây là phân tích từng lựa chọn, giữ nguyên văn bản gốc tiếng Anh. Mỗi phương án được đánh giá đúng/sai với lý do cụ thể dựa trên kiến thức Bigtable mới nhất (phiên bản 2024-2026, hỗ trợ SSD/HDD nodes, auto-scaling improved).
-
❌ [SAI] Deploy multiple Bigtable clusters, shard data manually across them, and set up the application logic for fault tolerance.
Giải thích sai: Bigtable không khuyến khích deploy nhiều clusters riêng lẻ vì phức tạp quản lý, tốn chi phí cao và khó đồng bộ. Manual sharding vi phạm best practices (Bigtable tự động shard qua tablets), dẫn đến overhead ứng dụng lớn, không scale tốt cho workload tăng trưởng. Fault tolerance nên dùng built-in replication thay vì app logic thủ công 🚫. -
❌ [SAI] Deploy a single-zone Bigtable cluster and optimize the application code for maximum write throughput.
Giải thích sai: Single-zone chỉ có tính sẵn sàng thấp (không replicate), dễ fail nếu zone outage – trái với yêu cầu resilience crucial. Optimize code chỉ là phần nhỏ, không giải quyết HA và growth; Bigtable single-zone giới hạn throughput so với multi-zone (theo docs: multi-zone cho phép >10x durability) ⚠️. -
❌ [SAI] Deploy a single-region Bigtable instance and increase the nodes to maximize data durability.
Giải thích sai: Single-region replicate tự động qua 3 zones (từ 2023+), nhưng không phải multi-zone explicit và thiếu replication config chi tiết. Chỉ tăng nodes cải thiện throughput chứ không maximize durability (durability cần replication + backups). Thiếu stress-test/monitoring, không full best practices cho high-volume growth 📉. -
✅ [ĐÚNG] Provision a multi-zone Bigtable cluster, configure replication, perform an application stress-test, and set up performance monitoring.
Giải thích đúng: Như đã nêu ở phần đáp án, đây là full-stack solution theo Google: Multi-zone + replication cho HA/resilience (99.99%+ durability), stress-test verify low-latency, monitoring (Cloud Monitoring/Profiler) cho scale dài hạn. Hỗ trợ sensor data ingestion tối ưu với CMAK (Cloud Monitoring alerts) mới 2025 🏆.
- A Manually rewrite both the Oracle schema and queries to be compatible with PostgreSQL syntax and semantics.
- B Use a schema conversion tool to automatically convert the Oracle schema to PostgreSQL schema, then manually rewrite all queries.
- C Migrate the data directly from Oracle to PostgreSQL without any conversion. Rely on application-level compatibility layers to handle any syntax or semantic differences.
- D Use Database Migration Service code conversion workspace, then review and refactor as needed.
Xem giải thích
🧩 Phân tích nội dung câu hỏi
Câu hỏi tập trung vào quá trình di chuyển (migration) cơ sở dữ liệu Oracle on-premises legacy sang Cloud SQL for PostgreSQL trên Google Cloud. Yêu cầu chính là chuyển đổi schema và các đối tượng code khác như procedures, functions, triggers từ Oracle sang PostgreSQL, đồng thời đảm bảo thay đổi code ứng dụng tối thiểu và can thiệp thủ công ít nhất. Đây là tình huống phổ biến trong migration database heterogeneous (khác loại DBMS), nơi Google khuyến nghị sử dụng công cụ tự động hóa để giảm rủi ro và thời gian. Mục tiêu là đạt hiệu quả cao với minimal application code changes and manual intervention 📘.
✅ Đáp án đúng và lý do lựa chọn
Đáp án đúng: Use Database Migration Service code conversion workspace, then review and refactor as needed.
Lý do:
Google Cloud Database Migration Service (DMS) cung cấp code conversion workspace chuyên dụng để tự động chuyển đổi schema, PL/SQL code (procedures, functions, triggers) từ Oracle sang PostgreSQL tương đương. Quy trình bao gồm: tạo workspace → upload schema/code Oracle → DMS tự convert → review/refactor thủ công chỉ những phần cần thiết (như syntax đặc thù chưa hỗ trợ 100%). Điều này đảm bảo minimal manual intervention vì DMS xử lý ~90-95% công việc tự động (dựa trên phiên bản mới nhất 2024-2026), giảm thay đổi ứng dụng. Đây là Google-recommended approach chính thức cho migration Oracle → Cloud SQL PostgreSQL 🛠️.
Nguồn tham khảo:
- Google Cloud DMS Code Conversion (cập nhật 2025).
- Cloud SQL Migration Guide (hướng dẫn chính thức).
📋 Giải thích chi tiết tất cả các phương án
Dưới đây là phân tích từng lựa chọn, giữ nguyên văn bản gốc tiếng Anh. Mỗi phương án được đánh giá đúng/sai với lý do cụ thể dựa trên best practices Google Cloud DMS (phiên bản mới nhất 2026):
-
Manually rewrite both the Oracle schema and queries to be compatible with PostgreSQL syntax and semantics.
❌ Sai. Phương án này yêu cầu viết lại thủ công toàn bộ schema và queries, dẫn đến thời gian dài, lỗi cao, và can thiệp thủ công tối đa – trái ngược yêu cầu "minimal manual intervention". Không hiệu quả cho legacy database lớn, dễ bỏ sót semantic differences giữa Oracle PL/SQL và PostgreSQL PL/pgSQL 🕒. -
Use a schema conversion tool to automatically convert the Oracle schema to PostgreSQL schema, then manually rewrite all queries.
❌ Sai. Mặc dù dùng tool convert schema (tốt hơn manual), nhưng manual rewrite tất cả queries vẫn tạo manual intervention lớn, không tận dụng đầy đủ tự động hóa. DMS của Google hỗ trợ convert cả schema lẫn code objects, nên phương án này chưa tối ưu và không phải recommended approach 🔧. -
Migrate the data directly from Oracle to PostgreSQL without any conversion. Rely on application-level compatibility layers to handle any syntax or semantic differences.
❌ Sai. Migrate data trực tiếp mà không convert sẽ thất bại vì Oracle và PostgreSQL có syntax/semantics khác biệt lớn (ví dụ: PL/SQL vs PL/pgSQL, data types). Phụ thuộc "application-level compatibility layers" (như wrappers) sẽ tăng thay đổi code ứng dụng đáng kể, vi phạm yêu cầu "minimal application code changes" và rủi ro hiệu suất cao 🚫. -
Use Database Migration Service code conversion workspace, then review and refactor as needed.
✅ Đúng. Như đã giải thích ở trên, đây là cách tiếp cận được Google khuyến nghị với tự động hóa cao nhất qua DMS workspace, chỉ review/refactor selective (ít nhất 5-10% cases). Hỗ trợ full lifecycle migration: assess → convert → migrate data → cutover. Hoàn hảo cho Oracle → Cloud SQL PostgreSQL 🎯.
Nguồn bổ sung: DMS Oracle to PostgreSQL Tutorial (2026 preview).