Ngân hàng đề — Google Cloud Professional Cloud Database Engineer

Tìm thấy 169 câu.

Câu 71
Your organization has a busy transactional Cloud SQL for MySQL instance. Your analytics team needs access to the data so they can build monthly sales reports. You need to provide data access to the analytics team without adversely affecting performance. What should you do?
  1. A Create a read replica of the database, provide the database IP address, username, and password to the analytics team, and grant read access to required tables to the team.
  2. B Create a read replica of the database, enable the cloudsql.iam_authentication flag on the replica, and grant read access to required tables to the analytics team.
  3. C Enable the cloudsql.iam_authentication flag on the primary database instance, and grant read access to required tables to the analytics team.
  4. D Provide the database IP address, username, and password of the primary database instance to the analytics, team, and grant read access to required tables to the team.
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 tình huống thực tế trong Google Cloud Platform (GCP): Một tổ chức đang sử dụng Cloud SQL for MySQL instance (cơ sở dữ liệu quan hệ quản lý bởi GCP) với tải giao dịch cao (busy transactional). Nhóm phân tích (analytics team) cần truy cập dữ liệu để xây dựng báo cáo bán hàng hàng tháng (monthly sales reports). Yêu cầu chính: Cung cấp quyền truy cập dữ liệu cho nhóm này mà không ảnh hưởng đến hiệu suất (performance) của instance chính (primary instance).

📌 Vấn đề cốt lõi:

  • Instance chính đang xử lý nhiều giao dịch viết/đọc thời gian thực, nên không thể để analytics team query trực tiếp lên đó (sẽ gây tải cao, chậm trễ).
  • Giải pháp cần: Offload (chuyển hướng) workload đọc (read-only) sang nơi khác, đồng thời đảm bảo bảo mật cao (không chia sẻ mật khẩu trực tiếp).
  • Kiến thức cập nhật 2026: Cloud SQL for MySQL (phiên bản mới nhất hỗ trợ MySQL 8.0+) vẫn khuyến nghị sử dụng read replicas để scale read traffic và Cloud SQL IAM authentication (flag cloudsql.iam_authentication) để xác thực không dùng password, tuân thủ nguyên tắc least privilege và zero-trust security. Không có thay đổi lớn từ AWS vì đây là dịch vụ GCP thuần túy (không liên quan AWS RDS).

✅ Đáp án đúng và lý do lựa chọn

Đáp án đúng: Create a read replica of the database, enable the cloudsql.iam_authentication flag on the replica, and grant read access to required tables to the analytics team.

Lý do chi tiết 🛠️:

  • Tạo read replica: Read replica là bản sao chỉ đọc (read-only) của primary instance, tự động đồng bộ dữ liệu (asynchronous replication). Analytics team query lên replica → Không ảnh hưởng performance primary (offload read workload lên đến 70-80% traffic theo best practices GCP).
  • Bật flag cloudsql.iam_authentication trên replica: Cho phép xác thực bằng IAM service account (không cần username/password), an toàn hơn, dễ quản lý quyền (grant roles/cloudsql.client hoặc custom roles). Flag này chỉ áp dụng cho instance cụ thể (replica), không ảnh hưởng primary.
  • Grant read access: Tạo user/IAM role chỉ đọc các bảng cần thiết (e.g., SELECT privilege), tuân thủ security best practices.
  • Lợi ích tổng: Scale horizontally, high availability, cost-effective (replica tính phí riêng nhưng tiết kiệm vì chỉ đọc).

📋 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 một cách chi tiết, giữ nguyên văn bản gốc tiếng Anh. Mỗi phương án được đánh giá ✅ (đúng) hoặc ❌ (sai), kèm lý do bằng tiếng Việt rõ ràng:

  • ❌ [SAI] Create a read replica of the database, provide the database IP address, username, and password to the analytics team, and grant read access to required tables to the team.
    🧨 Lý do sai: Mặc dù tạo read replica là đúng (offload performance), nhưng chia sẻ IP, username, password là rủi ro bảo mật cao (credential sprawl, dễ leak). Không tận dụng IAM auth (best practice GCP), vi phạm nguyên tắc zero-trust. Analytics team vẫn có thể lạm dụng credential ngoài ý muốn.

  • ✅ [ĐÚNG] Create a read replica of the database, enable the cloudsql.iam_authentication flag on the replica, and grant read access to required tables to the analytics team.
    🛠️ Lý do đúng: Kết hợp hoàn hảo read replica (bảo vệ primary performance) + IAM auth trên chính replica (an toàn, không password). Đây là giải pháp tối ưu theo GCP blueprints, hỗ trợ audit logs qua Cloud Audit Logs.

  • ❌ [SAI] Enable the cloudsql.iam_authentication flag on the primary database instance, and grant read access to required tables to the analytics team.
    🚫 Lý do sai: Chỉ bật IAM trên primary instance không giải quyết vấn đề performance (analytics query nặng vẫn chạy trực tiếp lên primary, gây bottleneck). IAM auth tốt nhưng thiếu read replica → Không offload traffic.

  • ❌ [SAI] Provide the database IP address, username, and password of the primary database instance to the analytics, team, and grant read access to required tables to the team.
    ⚠️ Lý do sai: Chia sẻ credential trực tiếp primary → Analytics query sẽ ảnh hưởng nghiêm trọng performance (transactional workload bị chậm). Vi phạm security (password sharing) và scalability principles của Cloud SQL.

📘 Tài liệu tham khảo (cập nhật 2026)

  • GCP Docs chính thức: Cloud SQL Read Replicas & IAM Database Authentication.
  • Best Practices: Cloud SQL Scaling Guide (khuyến nghị read replicas cho analytics).
  • Exam Prep (Google Cloud Professional Database Engineer): Qwiklabs & official certification guide (phiên bản 2025-2026 không thay đổi core features này).
  • Kiểm chứng: Terraform/CLI examples tại GitHub GCP samples (e.g., gcloud sql instances patch --database-flags=cloudsql.iam_authentication=on).

Hy vọng phân tích này giúp bạn ôn thi hiệu quả! 🚀 Nếu cần ví dụ code Terraform hoặc demo, hãy hỏi thêm nhé!

Câu 72
Your organization stores marketing data such as customer preferences and purchase history on Bigtable. The consumers of this database are predominantly data analysts and operations users. You receive a service ticket from the database operations department citing poor database performance between 9 AM-10 AM every day. The application team has confirmed no latency from their logs. A new cohort of pilot users that is testing a dataset loaded from a third-party data provider is experiencing poor database performance. Other users are not affected. You need to troubleshoot the issue. What should you do?
  1. A Isolate the data analysts and operations user groups to use different Bigtable instances.
  2. B Check the Cloud Monitoring table/bytes_used metric from Bigtable.
  3. C Use Key Visualizer for Bigtable.
  4. D Add more nodes to the Bigtable cluster.
Xem giải thích

🧩 Phân tích nội dung câu hỏi

Câu hỏi mô tả một tình huống thực tế trong Google Cloud Bigtable: Tổ chức lưu trữ dữ liệu marketing (như sở thích khách hàng và lịch sử mua hàng) trên Bigtable, với người dùng chính là data analysts và operations users. Có ticket từ bộ phận operations báo hiệu suất kém từ 9 AM - 10 AM hàng ngày. Đội ngũ ứng dụng xác nhận không có latency từ logs của họ. Vấn đề chỉ ảnh hưởng đến cohort pilot users đang test dataset mới từ third-party data provider, trong khi các user khác không bị ảnh hưởng. Nhiệm vụ là troubleshoot (khắc phục sự cố) để xác định nguyên nhân gốc rễ.
🔍 Điểm chính: Vấn đề cụ thể theo thời gian (9-10 AM), chỉ với subset users/dataset mới, gợi ý nguyên nhân liên quan đến hotspot keys hoặc key skew (phân bố key không đều) trong Bigtable, chứ không phải tổng thể cluster.

✅ Đáp án đúng và lý do lựa chọn

Đáp án đúng: Use Key Visualizer for Bigtable.
🛠️ Lý do: Key Visualizer là công cụ chuyên dụng của Bigtable (cập nhật đến 2026) để visualize và phân tích phân bố key, hot keys, scan ranges. Nó giúp phát hiện hotspots (key được truy vấn quá nhiều gây bottleneck) – phù hợp hoàn hảo vì vấn đề chỉ xảy ra với dataset mới từ third-party (có thể có key prefix giống nhau gây skew) và theo giờ cao điểm 9-10 AM (thời gian pilot users truy vấn nhiều). Công cụ này không chỉ troubleshoot mà còn gợi ý optimize schema key. Các user khác không bị vì dataset của họ phân bố đều hơn.

📋 Giải thích tất cả các phương án

Dưới đây là phân tích từng lựa chọn một cách chi tiết, giữ nguyên văn bản gốc tiếng Anh. Mỗi phương án được đánh dấu ✅ (đúng) hoặc ❌ (sai), kèm giải thích bằng tiếng Việt dựa trên best practices Bigtable mới nhất (phiên bản 2026).

  • ❌ [SAI] Isolate the data analysts and operations user groups to use different Bigtable instances.
    🧨 Giải thích sai: Việc tách instances riêng cho từng nhóm users không giải quyết root cause (nguyên nhân gốc là vấn đề với dataset pilot cụ thể). Nó tốn kém (chi phí instances mới), phức tạp IAM/ACL, và không troubleshoot – chỉ là workaround tạm thời. Bigtable thiết kế cho multi-tenancy, vấn đề ở đây là key-level issue, không phải user isolation.

  • ❌ [SAI] Check the Cloud Monitoring table/bytes_used metric from Bigtable.
    📊 Giải thích sai: Metric table/bytes_used chỉ đo lượng storage sử dụng (bytes lưu trữ), không liên quan đến performance/latency. Vấn đề là read/write hotspots theo thời gian/users cụ thể, không phải hết dung lượng. Cloud Monitoring hữu ích cho tổng quan, nhưng không drill-down vào key distribution – metric phù hợp hơn như table/read_ops_count hoặc table/latency.

  • ✅ [ĐÚNG] Use Key Visualizer for Bigtable.
    🔍 Giải thích đúng: Như đã nêu ở phần đáp án, Key Visualizer hoàn hảo cho troubleshoot hotspots trong Bigtable. Nó hiển thị heatmaps của key access, scan ranges, và CPU usage theo thời gian (filter 9-10 AM), xác định chính xác dataset third-party gây vấn đề. Theo docs GCP 2026, đây là first-line tool cho performance issues isolated như vậy.

  • ❌ [SAI] Add more nodes to the Bigtable cluster.
    ⚠️ Giải thích sai: Scaling nodes tăng throughput tổng thể, nhưng không troubleshoot và có thể lãng phí (chi phí cao nếu vấn đề chỉ với subset data). Bigtable tự động scale, nhưng hotspots vẫn tồn tại dù thêm nodes (vẫn bottleneck trên few nodes). Nên dùng Key Visualizer trước để optimize schema, tránh "scaling bad design".

📘 Tài liệu tham khảo (cập nhật 2026)

Câu 73
Your company is developing a new global transactional application that must be ACID-compliant and have 99.999% availability. You are responsible for selecting the appropriate Google Cloud database to serve as a datastore for this new application. What should you do?
  1. A Use Firestore.
  2. B Use Cloud Spanner.
  3. C Use Cloud SQL.
  4. D Use Bigtable.
Xem giải thích

🧩 Phân tích nội dung câu hỏi

Câu hỏi mô tả một công ty đang phát triển ứng dụng giao dịch toàn cầu (global transactional application) mới, yêu cầu tuân thủ ACID (Atomicity - Tính nguyên tử, Consistency - Tính nhất quán, Isolation - Tính cô lập, Durability - Tính bền vững) và độ khả dụng 99.999% (tức là downtime chỉ khoảng 5.26 phút/năm). Bạn là người chịu trách nhiệm chọn database phù hợp trên Google Cloud làm kho dữ liệu cho ứng dụng này.
Yêu cầu chính: Database phải hỗ trợ giao dịch phân tán toàn cầu (global distribution), ACID đầy đủ ở quy mô lớn, và SLA cao nhất (99.999%) để đảm bảo tính sẵn sàng cao. Đây là tình huống điển hình cho các ứng dụng tài chính, thương mại điện tử cần tính nhất quán mạnh mẽ trên nhiều vùng (multi-region).
📘 Nguồn tham khảo: Google Cloud Documentation - Cloud Spanner Overview (cập nhật đến 2026, xác nhận SLA 99.999% cho multi-region configurations); Database comparison (so sánh các dịch vụ DB).

✅ Đáp án đúng và lý do lựa chọn

Đáp án đúng: Use Cloud Spanner.
🛠️ Lý do: Cloud Spanner là database quan hệ phân tán toàn cầu duy nhất trên Google Cloud hỗ trợ ACID transactions ở quy mô toàn cầu (global consistency), với kiến trúc TrueTime đảm bảo đồng bộ thời gian chính xác. Nó cung cấp SLA 99.999% availability cho cấu hình multi-region, tự động scale horizontally, và phù hợp hoàn hảo cho ứng dụng transactional cao tải. Không dịch vụ nào khác đáp ứng đầy đủ cả 3 tiêu chí: global ACID + high availability.

📋 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 bằng tiếng Anh. Mỗi phương án được đánh giá dựa trên đặc tính kỹ thuật mới nhất (2026):

  • ❌ Use Firestore.
    Sai vì Firestore là NoSQL document database (dựa trên Firestore in Datastore mode), hỗ trợ multi-region replication nhưng chỉ cung cấp eventual consistency (không ACID đầy đủ cho giao dịch phức tạp cross-shard/global). SLA chỉ 99.99% (regional) hoặc 99.999% nhưng không đảm bảo strong consistency ACID cho transactional apps. Phù hợp hơn cho mobile/web apps real-time, không phải global transactions.

  • ✅ Use Cloud Spanner.
    Đúng vì như đã giải thích ở trên: Hỗ trợ ACID transactions toàn cầu, horizontal scaling tự động, SLA 99.999% cho multi-region setups. Sử dụng SQL chuẩn, tích hợp CockroachDB-like distribution, lý tưởng cho ứng dụng yêu cầu consistency mạnh mẽ.
    📘 Nguồn: Spanner SLA (99.999% confirmed đến 2026).

  • ❌ Use Cloud SQL.
    Sai vì Cloud SQL là managed relational DB (MySQL, PostgreSQL, SQL Server) hỗ trợ ACID nhưng chỉ regional/replica sets, không phân tán toàn cầu thực sự (không có global transactions native). SLA tối đa 99.99% (High Availability), downtime cao hơn ở multi-region failover thủ công. Không scale horizontally tốt cho global transactional loads lớn.

  • ❌ Use Bigtable.
    Sai vì Bigtable là NoSQL wide-column store cho big data/analytics (hàng tỷ rows, high throughput), chỉ hỗ trợ eventual consistency (không ACID transactions). Không có SQL, tập trung vào scan/query lớn chứ không phải OLTP transactional. SLA 99.999% nhưng không phù hợp cho ứng dụng ACID-compliant.
    🛠️ Nguồn: Bigtable overview (xác nhận non-relational, no ACID).

Kết luận tổng quát 🎯: Cloud Spanner là lựa chọn tối ưu duy nhất, giúp ứng dụng đạt hiệu suất cao, chi phí tối ưu hóa theo usage-based pricing. Nếu cần triển khai, khuyến nghị bắt đầu với regional config rồi migrate sang multi-region!

Câu 74 Chọn nhiều đáp án
You want to migrate your PostgreSQL database from another cloud provider to Cloud SQL. You plan on using Database Migration Service and need to assess the impact of any known limitations. What should you do? (Choose two.)
  1. A Identify whether the database has over 512 tables.
  2. B Identify all tables that do not have a primary key.
  3. C Identity all tables that do not have at least one foreign key.
  4. D Identify whether the source database is encrypted using pgcrypto extension.
  5. E Identify whether the source database uses customer-managed encryption keys (CMEK).
Xem giải thích

🧩 Phân tích chi tiết nội dung câu hỏi

Câu hỏi tập trung vào việc di chuyển cơ sở dữ liệu PostgreSQL từ một nhà cung cấp đám mây khác sang Cloud SQL trên Google Cloud, sử dụng Database Migration Service (DMS). Nhiệm vụ là đánh giá tác động của các hạn chế đã biết (known limitations) trước khi thực hiện migration. Bạn cần chọn hai hành động phù hợp để kiểm tra và đánh giá rủi ro.

🛠️ Bối cảnh chính: DMS hỗ trợ migration PostgreSQL một cách liền mạch, bao gồm cả chế độ một lần (one-time) và liên tục (continuous với CDC - Change Data Capture). Tuy nhiên, có các hạn chế cụ thể về cấu trúc bảng, khóa mã hóa và số lượng bảng, đặc biệt với PostgreSQL. Việc kiểm tra trước giúp tránh lỗi migration, dữ liệu bị bỏ sót hoặc gián đoạn. Kiến thức dựa trên tài liệu GCP DMS phiên bản mới nhất (cập nhật đến 2026, theo Google Cloud docs về Cloud SQL for PostgreSQL và DMS).

📘 Tài liệu tham khảo:

✅ Đáp án đúng (Chọn hai)

Hai lựa chọn đúng là:
Identify all tables that do not have a primary key.
Identify whether the source database uses customer-managed encryption keys (CMEK).

Lý do lựa chọn:
🧩 DMS yêu cầu tất cả các bảng được replicate trong chế độ continuous migration phải có primary key (PK). Nếu thiếu PK, bảng đó sẽ bị bỏ qua hoặc chỉ migrate ở chế độ read-only, dẫn đến dữ liệu không đồng bộ.
🔐 Đối với CMEK, DMS có hạn chế khi source database sử dụng khóa mã hóa do khách hàng quản lý (từ nhà cung cấp khác như AWS RDS), vì Cloud SQL chỉ hỗ trợ CMEK của Google Cloud. Cần kiểm tra để decrypt hoặc điều chỉnh trước migration, tránh lỗi mã hóa dữ liệu.

📋 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 một cách chi tiết, giữ nguyên văn bản gốc:

  • ❌ [SAI] Identify whether the database has over 512 tables.
    Lý do sai: DMS không giới hạn số lượng bảng ở mức 512. Hạn chế thực tế là tổng kích thước database (< 64 TiB cho Cloud SQL) hoặc hiệu suất replication, nhưng không phải con số cố định 512 tables. Kiểm tra này không liên quan đến known limitations của PostgreSQL migration.

  • ✅ [ĐÚNG] Identify all tables that do not have a primary key.
    Lý do đúng: Theo docs DMS, bảng thiếu primary key sẽ không được replicate đầy đủ trong continuous migration. DMS chỉ hỗ trợ CDC cho bảng có PK duy nhất; các bảng khác bị skip hoặc migrate một chiều, gây mất dữ liệu thay đổi. Phải kiểm tra và thêm PK trước.

  • ❌ [SAI] Identity all tables that do not have at least one foreign key. (Lưu ý lỗi chính tả gốc: "Identity" thay vì "Identify")
    Lý do sai: Foreign key (FK) không phải yêu cầu bắt buộc cho DMS PostgreSQL. Migration vẫn diễn ra bình thường mà không cần FK; chỉ ảnh hưởng đến tính toàn vẹn dữ liệu logic, không phải limitation kỹ thuật của DMS.

  • ❌ [SAI] Identify whether the source database is encrypted using pgcrypto extension.
    Lý do sai: pgcrypto là extension mã hóa cột của PostgreSQL, DMS hỗ trợ migrate bình thường mà không bị chặn. Limitation mã hóa chỉ áp dụng cho CMEK hoặc TDE (Transparent Data Encryption) cấp database, không phải extension này.

  • ✅ [ĐÚNG] Identify whether the source database uses customer-managed encryption keys (CMEK).
    Lý do đúng: CMEK từ nhà cung cấp khác (như AWS KMS) không tương thích trực tiếp với Cloud SQL CMEK. DMS yêu cầu source phải decrypt hoặc sử dụng key tương đương trước migration; nếu không, job sẽ fail với lỗi mã hóa. Kiểm tra giúp lập kế hoạch rotate key hoặc dùng default encryption.

🛡️ Lời khuyên thực hành: Trước migration, chạy công cụ Database Migration Assessment trong GCP Console để tự động phát hiện các issue như thiếu PK hoặc mã hóa. Nếu phát hiện vấn đề, sử dụng gh-ost hoặc script để thêm PK mà không downtime!

Câu 75
Your organization is running a Firestore-backed Firebase app that serves the same top ten news stories on a daily basis to a large global audience. You want to optimize content delivery while decreasing cost and latency. What should you do?
  1. A Enable serializable isolation in the Firebase app.
  2. B Deploy a US multi-region Firestore location.
  3. C Build a Firestore bundle, and deploy bundles to Cloud CDN.
  4. D Create a Firestore index on the news story date.
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 Firebase sử dụng Firestore làm backend, phục vụ cùng 10 tin tức hàng đầu (top ten news stories) hàng ngày cho khán giả toàn cầu lớn. Mục tiêu là tối ưu hóa phân phối nội dung bằng cách giảm chi phí (cost) và độ trễ (latency).
📌 Đặc điểm chính: Nội dung là tĩnh (không thay đổi trong ngày, chỉ cập nhật hàng ngày), truy vấn lặp lại nhiều lần từ người dùng toàn cầu → Cần giải pháp cache và phân phối gần người dùng để tránh đọc Firestore liên tục (tốn kém và chậm).

✅ Đáp án đúng: Build a Firestore bundle, and deploy bundles to Cloud CDN

Lý do lựa chọn:

  • Firestore bundles (tính năng từ 2021, cập nhật đến 2026) cho phép đóng gói dữ liệu tĩnh (như 10 tin tức hàng đầu) thành file bundle nhỏ gọn, có thể tải về client hoặc serve qua Cloud CDN (Google Cloud CDN).
  • Lợi ích:
    🛡️ Giảm truy vấn Firestore (tiết kiệm chi phí đọc dữ liệu).
    ⚡ Giảm latency nhờ CDN cache nội dung gần người dùng toàn cầu.
    🎯 Hoàn hảo cho nội dung tĩnh hàng ngày, chỉ rebuild bundle khi cập nhật tin tức.
  • Đây là best practice cho Firebase apps với static content (theo docs Google Cloud 2026).

📋 Giải thích tất cả các phương án

  • ✅ Build a Firestore bundle, and deploy bundles to Cloud CDN
    🟢 Đúng: Như phân tích trên, bundles + CDN tối ưu hóa hoàn hảo cho nội dung tĩnh, giảm cost (ít read operations) và latency (edge caching). Không cần thay đổi database config.

  • ❌ Enable serializable isolation in the Firebase app
    🔴 Sai: Serializable isolation là mức độ cô lập giao dịch (transaction isolation level) trong Firestore, dùng để tránh race conditions trong write-heavy apps. Không ảnh hưởng đến read latency/cost cho nội dung tĩnh/read-only. Thậm chí có thể tăng overhead không cần thiết.

  • ❌ Deploy a US multi-region Firestore location
    🔴 Sai: Multi-region (như nam6/us-central1) tăng availability/redundancy, nhưng chỉ replicate data trong US, không optimize global delivery (vẫn đọc từ region xa). Với audience toàn cầu, latency vẫn cao và cost tăng do multi-region đắt hơn single-region.

  • ❌ Create a Firestore index on the news story date
    🔴 Sai: Index trên trường "date" chỉ tối ưu query/filter theo ngày (nếu query phức tạp), nhưng nội dung là fixed top 10 stories → Không cần index đặc biệt. Không giảm latency global hay cost cho repeated reads.

📘 Tài liệu tham khảo (cập nhật 2026)

  • Firestore Bundles – Hướng dẫn build/deploy bundles với CDN.
  • Cloud CDN for Firebase – Tích hợp CDN giảm latency 50-80% cho static Firebase content.
  • Firestore Best Practices – Khuyến nghị bundles cho static data (Google Cloud Docs 2026).
    🛠️ Lời khuyên: Test với Firebase Emulator để verify bundles trước deploy!
Câu 76
You need to migrate a 1 TB PostgreSQL database from a Compute Engine VM to Cloud SQL for PostgreSQL. You want to ensure that there is minimal downtime during the migration. What should you do?
  1. A Export the data from the existing database, and load the data into a new Cloud SQL database.
  2. B Use Migrate for Compute Engine to complete the migration.
  3. C Use Datastream to complete the migration.
  4. D Use Database Migration Service to complete the migration.
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 di chuyển (migrate) một cơ sở dữ liệu PostgreSQL dung lượng 1 TB từ máy ảo Compute Engine VM sang Cloud SQL for PostgreSQL, với mục tiêu giảm thiểu thời gian downtime (minimal downtime) nhất có thể.
📌 Bối cảnh chính:

  • Nguồn dữ liệu: PostgreSQL trên Compute Engine VM (on-premises-like trong GCP).
  • Đích đến: Cloud SQL for PostgreSQL (dịch vụ managed database của Google Cloud).
  • Thách thức: Dung lượng lớn (1 TB) nên cần phương pháp hỗ trợ replication liên tục (continuous replication) hoặc change data capture (CDC) để tránh downtime dài, thay vì export/import thủ công.
  • Mục tiêu: Sử dụng dịch vụ Google Cloud phù hợp để migrate tự động, an toàn và nhanh chóng.

🛠️ Kiến thức cập nhật (tính đến 2026): Google Cloud Database Migration Service (DMS) là công cụ chuẩn cho các migration database đến Cloud SQL, hỗ trợ PostgreSQL với chế độ continuous migration (replicate changes real-time), giảm downtime xuống mức thấp nhất (thường chỉ giây/phút khi cutover).

✅ Đáp án đúng và lý do lựa chọn

Đáp án đúng: Use Database Migration Service to complete the migration.

Lý do chi tiết:

  • DMS được thiết kế chuyên biệt cho database migration đến Cloud SQL, hỗ trợ PostgreSQL từ nguồn external (như Compute Engine VM) với minimal downtime qua one-time migration hoặc continuous replication (ghép nối nguồn và đích, replicate changes real-time bằng logical replication của PostgreSQL).
  • Với 1 TB dữ liệu, DMS tự động xử lý backfill (copy dữ liệu ban đầu) và apply changes (binlog/WAL), chỉ cần cutover ngắn khi sẵn sàng.
  • Không yêu cầu downtime dài, phù hợp hoàn hảo với yêu cầu.
    📘 Tài liệu tham khảo: Google Cloud Database Migration Service và Cloud SQL Migration Guide (cập nhật 2025-2026 hỗ trợ PostgreSQL 16+).

📋 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 một cách chi tiết, giữ nguyên văn bản gốc bằng tiếng Anh:

  • Export the data from the existing database, and load the data into a new Cloud SQL database.
    ❌ Sai: Phương pháp export/import thủ công (sử dụng pg_dump/pg_restore) yêu cầu downtime toàn bộ quá trình (hàng giờ/ngày cho 1 TB), vì phải dừng ứng dụng, export dữ liệu lớn, rồi import. Không hỗ trợ replication liên tục, dẫn đến mất dữ liệu mới trong quá trình migrate. Không đạt "minimal downtime".

  • Use Migrate for Compute Engine to complete the migration.
    ❌ Sai: Migrate for Compute Engine (trước là Velostrata) dùng để migrate toàn bộ VM Compute Engine sang GCP khác (như từ on-prem sang GCP), không chuyên cho database migration. Nó copy disk/VM nhưng không xử lý replication database-specific (như WAL của PostgreSQL), dễ gây data inconsistency và downtime cao khi database lớn.

  • Use Datastream to complete the migration.
    ❌ Sai: Datastream chuyên change data capture (CDC) để stream dữ liệu từ database nguồn (PostgreSQL) sang đích như BigQuery, Spanner, Pub/Sub, không hỗ trợ trực tiếp Cloud SQL làm đích. Nó không thay thế DMS cho full migration (backfill + continuous), và chủ yếu cho analytics/real-time sync, không tối ưu cho cutover to Cloud SQL với minimal downtime.

  • Use Database Migration Service to complete the migration.
    ✅ Đúng: Như đã giải thích ở trên, DMS là lựa chọn lý tưởng với continuous mode cho PostgreSQL, hỗ trợ từ Compute Engine VM (qua IP connectivity), tự động handle 1 TB dữ liệu mà không downtime dài. Hỗ trợ promote/retry tự động.

🧠 Tóm tắt nhanh: DMS là "vũ khí bí mật" 🛡️ cho migration Cloud SQL, các phương án khác chỉ phù hợp trường hợp nhỏ hoặc mục đích khác! Nếu cần lab thực hành, thử DMS free tier trên Google Cloud Console.

Câu 77
You have a large Cloud SQL for PostgreSQL instance. The database instance is not mission-critical, and you want to minimize operational costs. What should you do to lower the cost of backups in this environment?
  1. A Set the automated backups to occur every other day to lower the frequency of backups.
  2. B Change the storage tier of the automated backups from solid-state drive (SSD) to hard disk drive (HDD).
  3. C Select a different region to store your backups.
  4. D Reduce the number of automated backups that are retained to two (2).
Xem giải thích

🧩 Phân tích chi tiết câu hỏi trắc nghiệm

📖 Nội dung câu hỏi:
Câu hỏi xoay quanh một instance Cloud SQL for PostgreSQL lớn (large instance), không phải là mission-critical (không quan trọng khẩn cấp), và mục tiêu là giảm thiểu chi phí vận hành, cụ thể là giảm chi phí sao lưu (backups). Cloud SQL là dịch vụ cơ sở dữ liệu quản lý của Google Cloud Platform (GCP), hỗ trợ PostgreSQL với tính năng automated backups tự động hàng ngày. Chi phí backups chủ yếu dựa vào dung lượng lưu trữ (storage) mà các bản sao lưu chiếm dụng theo thời gian (point-in-time recovery). Câu hỏi yêu cầu giải pháp tối ưu để hạ thấp chi phí mà không ảnh hưởng lớn đến tính khả dụng, vì instance không mission-critical.
(Lưu ý: Đây là chủ đề GCP Cloud SQL, không phải AWS như đề cập ban đầu; kiến thức dựa trên tài liệu GCP cập nhật đến 2026, với automated backups retention từ 1-365 ngày, tính phí theo GB-tháng storage).

✅ Đáp án đúng:
Reduce the number of automated backups that are retained to two (2).

🛠️ Lý do chọn đáp án đúng:
Việc giảm số lượng automated backups được giữ lại xuống còn 2 (tương đương retention period 2 ngày) sẽ giảm đáng kể dung lượng lưu trữ backups, từ đó hạ thấp chi phí storage (tính theo GB-tháng). Với instance không mission-critical, chỉ cần giữ 2 bản sao lưu gần nhất là đủ cho recovery cơ bản, mà không mất phí lưu trữ lâu dài các bản cũ. Đây là cách tối ưu nhất theo best practices của GCP, vì backups tự động hàng ngày và retention linh hoạt từ 1 ngày trở lên.
(Nguồn: Cloud SQL Automated Backups - Cập nhật 2025).

🔍 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 một cách chi tiết, giữ nguyên văn bản gốc tiếng Anh:

  • ❌ [SAI] Set the automated backups to occur every other day to lower the frequency of backups.
    Phương án này không khả thi vì Cloud SQL không hỗ trợ thay đổi tần suất automated backups (luôn chạy hàng ngày tự động, không thể set every other day). Thay đổi này sẽ làm giảm độ tin cậy recovery (không có point-in-time chính xác), và GCP không cung cấp tùy chọn tùy chỉnh frequency để tránh rủi ro dữ liệu. Giảm tần suất không phải cách chính thức giảm chi phí backups.

  • ❌ [SAI] Change the storage tier of the automated backups from solid-state drive (SSD) to hard disk drive (HDD).
    Không có tùy chọn này trong Cloud SQL. Automated backups được lưu trữ trên SSD-backed persistent disks (regional hoặc multi-regional), không hỗ trợ downgrade sang HDD (HDD chỉ dùng cho một số storage khác như Compute Engine). Việc thay tier không tồn tại sẽ không giảm chi phí, và có thể tăng latency nếu thử hacky workaround.

  • ❌ [SAI] Select a different region to store your backups.
    Không hiệu quả giảm chi phí. Backups mặc định lưu cùng region với instance (regional storage, rẻ hơn multi-regional). Chuyển region khác có thể tăng chi phí egress/ingress và latency, không hạ thấp storage cost. Multi-regional storage đắt hơn (dùng cho HA), nên không phù hợp mục tiêu minimize costs.

  • ✅ [ĐÚNG] Reduce the number of automated backups that are retained to two (2).
    Như đã giải thích ở trên: Giảm retention xuống 2 ngày trực tiếp xóa backups cũ, giảm storage usage ngay lập tức. Phù hợp instance lớn, không critical, và dễ cấu hình qua Console/SQL Admin API. Tiết kiệm lên đến 90% chi phí nếu retention trước cao (ví dụ từ 7 ngày xuống 2).

📘 Tài liệu tham khảo chính (cập nhật 2025-2026):

Giải pháp này đảm bảo tuân thủ nguyên tắc cost-optimization trong GCP Well-Architected Framework! 🚀

Câu 78
You are the primary DBA of a Cloud SQL for PostgreSQL database that supports 6 enterprise applications in production. You used Cloud SQL Insights to identify inefficient queries and now need to identify the application that is originating the inefficient queries. You want to follow Google-recommended practices. What should you do?
  1. A Shut down and restart each application.
  2. B Write a utility to scan database query logs.
  3. C Write a utility to scan application logs.
  4. D Use query tags to add application-centric database monitoring.
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ả tình huống bạn là DBA chính (primary DBA) của một cơ sở dữ liệu Cloud SQL for PostgreSQL trên Google Cloud, hỗ trợ 6 ứng dụng doanh nghiệp (enterprise applications) đang chạy production. Bạn đã sử dụng Cloud SQL Insights (công cụ phân tích hiệu suất truy vấn) để phát hiện các truy vấn kém hiệu quả (inefficient queries). Bây giờ, nhiệm vụ là xác định ứng dụng nào đang khởi tạo (originating) các truy vấn này, và phải tuân thủ best practices được Google khuyến nghị.

📘 Bối cảnh kỹ thuật: Cloud SQL Insights cung cấp cái nhìn sâu về hiệu suất truy vấn, nhưng để phân tích theo góc độ ứng dụng (application-centric), cần gắn nhãn (tag) cho truy vấn từ từng app. Điều này giúp theo dõi và tối ưu hóa mà không làm gián đoạn hệ thống production (theo tài liệu Google Cloud cập nhật đến 2026, Query Insights hỗ trợ query tags cho PostgreSQL từ phiên bản 13+).

✅ Đáp án đúng và lý do lựa chọn

Đáp án đúng: Use query tags to add application-centric database monitoring.

Lý do:

  • 🛠️ Query tags là tính năng được Google chính thức khuyến nghị trong Cloud SQL Insights để gắn nhãn truy vấn theo ứng dụng (ví dụ: thêm tag như app=app1 vào câu SQL). Điều này cho phép phân tích application-centric monitoring trực tiếp trong dashboard Insights, xác định chính xác app nào gây query kém hiệu quả mà không cần công cụ bên ngoài.
  • ✅ Hiệu quả cao, không gián đoạn production, tích hợp sẵn (native) với Cloud SQL PostgreSQL (hỗ trợ từ 2021 và cập nhật đầy đủ đến 2026 với AI insights nâng cao).
  • Nguồn tham khảo:

❌ Giải thích tất cả các phương án (đúng và sai)

  • Phương án SAI: Shut down and restart each application.
    ❌ Lý do sai: Việc tắt và khởi động lại từng ứng dụng sẽ gây downtime nghiêm trọng cho production (6 apps doanh nghiệp), vi phạm nguyên tắc zero-downtime của Google. Không xác định được nguyên nhân gốc rễ, chỉ là biện pháp tạm thời, không theo best practices. 🛑 Rủi ro cao về mất dữ liệu/SLA.

  • Phương án SAI: Write a utility to scan database query logs.
    ❌ Lý do sai: Quét log database thủ công (qua Cloud Logging) tốn kém thời gian, không scale tốt cho production lớn, và không cung cấp phân tích theo app (logs chỉ ghi query text, không tag theo nguồn gốc app). Cloud SQL Insights đã thay thế cách này bằng công cụ tự động; viết utility tự chế vi phạm khuyến nghị dùng native tools. 📉 Không hiệu quả so với query tags.

  • Phương án SAI: Write a utility to scan application logs.
    ❌ Lý do sai: Log ứng dụng (app logs) thường không ghi đầy đủ query SQL gửi đến DB, chỉ log ở mức app layer. Việc quét 6 apps riêng lẻ phức tạp, không đồng bộ, và không liên kết trực tiếp với database metrics. Google ưu tiên DB-centric monitoring qua tags thay vì phân tán qua app logs. 🔍 Không chính xác và tốn công phát triển.

  • Phương án ĐÚNG: Use query tags to add application-centric database monitoring.
    ✅ Lý do đúng: Như đã giải thích ở trên, đây là best practice chuẩn Google – dễ triển khai (thêm tag trong connection string hoặc pg_app), hiển thị ngay trong Insights dashboard với breakdown theo app, metrics realtime (CPU, I/O, latency). Hỗ trợ PostgreSQL đầy đủ đến 2026. 🚀 Tối ưu nhất!

Kết luận: 🏆 Sử dụng query tags là cách an toàn, hiệu quả, theo chuẩn Google Cloud để giải quyết vấn đề mà không cần custom code hay downtime. Nếu triển khai, hãy enable Insights và test tags trên staging trước!

Câu 79
You are designing a database strategy for a new web application. You plan to start with a small pilot in one country and eventually expand to millions of users in a global audience. You need to ensure that the application can run 24/7 with minimal downtime for maintenance. What should you do?
  1. A Use Cloud Spanner in a regional configuration.
  2. B Use Cloud Spanner in a multi-region configuration.
  3. C Use Cloud SQL with cross-region replicas.
  4. D Use highly available Cloud SQL with multiple zones.
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ả tình huống thiết kế chiến lược cơ sở dữ liệu cho một ứng dụng web mới:

  • Bắt đầu nhỏ: Pilot thử nghiệm ở một quốc gia (scale nhỏ ban đầu).
  • Mở rộng lớn: Sau đó phát triển đến hàng triệu người dùng toàn cầu.
  • Yêu cầu chính: Ứng dụng phải chạy 24/7 với minimal downtime cho bảo trì (thời gian ngừng hoạt động thấp nhất có thể).

Mục tiêu là chọn giải pháp database có khả năng scale từ regional lên global, high availability (HA), và bảo trì không gây downtime đáng kể. Đây là các dịch vụ của Google Cloud (không phải AWS như đề cập nhầm), tập trung vào Cloud Spanner (database phân tán toàn cầu, strongly consistent) và Cloud SQL (managed relational DB như MySQL/PostgreSQL).

Kiến thức cập nhật đến 2026: Theo tài liệu Google Cloud mới nhất (Spanner v2+ với cải tiến TrueTime, AlloyDB integration, và SLA 99.999% cho multi-region), Spanner hỗ trợ zero-downtime maintenance nhờ cơ chế sharding tự động và replication 99.9999% durable. Cloud SQL HA chỉ đạt 99.95% SLA với maintenance window ngắn (vài phút).

📘 Tài liệu tham khảo:

✅ Đáp án đúng: Use Cloud Spanner in a regional configuration

Lý do chọn:

  • Phù hợp pilot nhỏ ở một quốc gia: Regional config chỉ replicate trong một region (ví dụ: us-central1), chi phí thấp hơn multi-region (khoảng 1/3 giá), dễ scale từ nhỏ đến lớn.
  • Minimal downtime cho maintenance: Spanner được thiết kế với zero-downtime maintenance (không ngừng hoạt động khi update/back up), SLA 99.99%, scale horizontal tự động đến petabyte.
  • Scale toàn cầu sau: Có thể migrate seamless sang multi-region mà không downtime, hỗ trợ hàng triệu user với strongly consistent reads/writes.
    🛠️ Ưu điểm nổi bật: Horizontal scaling, global consistency, tự động failover <60s.

📋 Giải thích tất cả các phương án (đúng/sai)

  • ✅ Use Cloud Spanner in a regional configuration
    Đúng vì: Như giải thích trên, lý tưởng cho pilot regional (một quốc gia), chi phí tối ưu, zero-downtime maintenance, và dễ mở rộng global. Phù hợp yêu cầu 24/7 minimal downtime.

  • ❌ Use Cloud Spanner in a multi-region configuration
    Sai vì: Multi-region replicate qua nhiều khu vực địa lý (ví dụ: us + europe), chi phí cao gấp 3 lần ngay từ đầu – không cần thiết cho pilot nhỏ ở một quốc gia. Dù có SLA 99.999% và zero-downtime, nhưng overkill và tốn kém cho giai đoạn đầu.

  • ❌ Use Cloud SQL with cross-region replicas
    Sai vì: Cross-region replicas chỉ là read replicas (không hỗ trợ strongly consistent writes), failover thủ công, và maintenance gây downtime (planned windows 5-10 phút). Không scale toàn cầu tốt như Spanner (vertical scaling giới hạn), chỉ phù hợp workload nhỏ, không đáp ứng "millions of users global".

  • ❌ Use highly available Cloud SQL with multiple zones
    Sai vì: HA multiple zones chỉ trong một region (failover tự động <60s, SLA 99.95%), nhưng maintenance vẫn có downtime ngắn (không zero như Spanner). Giới hạn scale (max ~96 vCPU/instance), không hỗ trợ global distribution native, khó mở rộng đến hàng triệu user 24/7.

Câu 80
Your company is shutting down their on-premises data center and migrating their Oracle databases using Oracle Real Application Clusters (RAC) to Google Cloud. You want minimal to no changes to the applications during the database migration. What should you do?
  1. A Migrate the Oracle databases to Cloud Spanner.
  2. B Migrate the Oracle databases to Compute Engine.
  3. C Migrate the Oracle databases to Cloud SQL.
  4. D Migrate the Oracle databases to Bare Metal Solution for Oracle.
Xem giải thích

🧩 Phân tích chi tiết nội dung câu hỏi

Câu hỏi tập trung vào tình huống di chuyển (migration) cơ sở dữ liệu Oracle sử dụng Oracle Real Application Clusters (RAC) từ data center on-premises sang Google Cloud, với yêu cầu tối thiểu hóa hoặc không thay đổi gì đối với ứng dụng (applications).

  • Oracle RAC là công nghệ clustering cao cấp của Oracle, yêu cầu môi trường bare metal (máy chủ vật lý không ảo hóa) để đảm bảo hiệu suất cao, tính sẵn sàng và tính tương thích đầy đủ.
  • Mục tiêu: Giữ nguyên cấu hình RAC mà không cần chỉnh sửa code ứng dụng, tránh downtime lớn hoặc thay đổi lớn trong migration.
  • Đây là kịch bản thực tế trong Google Cloud's Bare Metal Solution, được Oracle chứng nhận (certified) để chạy RAC mà không cần thay đổi.
    📘 Tài liệu tham khảo: Google Cloud Bare Metal Solution for Oracle (cập nhật 2024-2026, hỗ trợ Oracle 19c/21c RAC).

✅ Đáp án đúng và lý do lựa chọn

Đáp án đúng: Migrate the Oracle databases to Bare Metal Solution for Oracle.
🛠️ Lý do: Bare Metal Solution cung cấp máy chủ vật lý chuyên dụng (bare metal servers) được Oracle chứng nhận, hỗ trợ đầy đủ Oracle RAC với clustering, storage và networking giống hệt on-premises. Ứng dụng không cần thay đổi (zero app changes), migration nhanh chóng qua lift-and-shift. Đây là giải pháp tối ưu nhất cho RAC, giảm rủi ro và downtime.
✅ Ưu điểm nổi bật: Tích hợp Google Cloud networking, hỗ trợ Exadata-like setup, scale up to 64 nodes (cập nhật 2025).

❌ Phân tí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 tiếng Anh. Mỗi phương án được đánh giá dựa trên tính tương thích với Oracle RAC và yêu cầu "minimal to no changes to applications".

  • [SAI] Migrate the Oracle databases to Cloud Spanner.
    ❌ Giải thích sai: Cloud Spanner là cơ sở dữ liệu SQL phân tán globally distributed của Google, không hỗ trợ Oracle RAC hoặc Oracle-specific features (như PL/SQL đầy đủ). Migration yêu cầu re-architect ứng dụng lớn (schema changes, query rewrite), vi phạm yêu cầu "no changes". Không phù hợp cho workload Oracle on-premises.
    📘 Tham khảo: Cloud Spanner docs – chỉ hỗ trợ migration với công cụ như Harambe, không lift-and-shift RAC.

  • [SAI] Migrate the Oracle databases to Compute Engine.
    ❌ Giải thích sai: Compute Engine là VM instances ảo hóa, có thể cài Oracle RAC thủ công nhưng không được Oracle chứng nhận đầy đủ cho RAC clustering (shared storage issues, licensing phức tạp). Yêu cầu cấu hình thủ công lớn, có thay đổi networking/storage so với on-premises, dẫn đến app adjustments. Không phải giải pháp "bare metal" native.
    📘 Tham khảo: Compute Engine Oracle RAC guide – chỉ khuyến nghị cho non-production, không ideal cho production RAC.

  • [SAI] Migrate the Oracle databases to Cloud SQL.
    ❌ Giải thích sai: Cloud SQL là dịch vụ managed relational DB chỉ hỗ trợ MySQL, PostgreSQL, SQL Server – KHÔNG hỗ trợ Oracle (bao gồm RAC). Không thể migrate trực tiếp Oracle RAC, phải chuyển sang engine khác (re-engineering lớn), vi phạm hoàn toàn yêu cầu "minimal changes".
    📘 Tham khảo: Cloud SQL supported engines (cập nhật 2026: vẫn không có Oracle).

  • [ĐÚNG] Migrate the Oracle databases to Bare Metal Solution for Oracle.
    ✅ Giải thích đúng (như phần trên): Giải pháp bare metal certified by Oracle, hỗ trợ RAC đầy đủ, lift-and-shift seamless. Ứng dụng chạy nguyên bản, migration chỉ cần re-IP và storage replication.
    🛠️ Best practice 2026: Kết hợp với Google Cloud's Network Connectivity cho hybrid setup.