Ngân hàng đề — Google Cloud Associate Data Practitioner
Tìm thấy 333 câu.
- A Use Cloud CDN to cache frequently accessed data.
- B Store frequently accessed data in a Memorystore instance.
- C Migrate the database to a larger Cloud SQL instance.
- D Enable automatic backups, and create a read replica of the Cloud SQL instance.
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 việc cải thiện hiệu suất đọc (read performance) cho một ứng dụng web sử dụng cơ sở dữ liệu Cloud SQL (dịch vụ quản lý cơ sở dữ liệu quan hệ của Google Cloud Platform - GCP). Vấn đề cụ thể là offload read traffic (chuyển hướng lưu lượng đọc) khỏi instance chính (primary database instance) để giảm tải cho nó. Yêu cầu giải pháp phải tối ưu hóa nỗ lực triển khai (minimize effort) và chi phí (minimize cost).
🛠️ Tình huống thực tế: Cloud SQL là dịch vụ fully-managed hỗ trợ MySQL, PostgreSQL, SQL Server. Primary instance xử lý cả read/write, nhưng khi read traffic cao, nó có thể bị nghẽn. Giải pháp lý tưởng cần scale horizontally (thêm replica) thay vì vertical, và tận dụng tính năng native của GCP để dễ triển khai.
📘 Kiến thức cập nhật (phiên bản GCP 2026): Cloud SQL (phiên bản mới nhất) hỗ trợ read replicas với high availability (HA), automatic failover, và tích hợp Cloud SQL Insights cho monitoring. Read replicas giúp phân tải read queries lên các instance phụ mà không ảnh hưởng primary.
✅ Đáp án đúng và lý do chọn
Đáp án đúng: Enable automatic backups, and create a read replica of the Cloud SQL instance.
Lý do chọn 🏆:
- Đây là giải pháp native và tối ưu nhất của Cloud SQL để offload read traffic. Read replica là bản sao chỉ đọc (read-only) được tạo từ primary instance, tự động đồng bộ dữ liệu (asynchronous replication).
- Minimize effort: GCP tự động quản lý replication, failover, và patching. Chỉ cần enable automated backups (yêu cầu bắt buộc để tạo replica, đảm bảo point-in-time recovery nếu cần restore).
- Minimize cost: Read replicas tính phí riêng (dựa trên machine type), rẻ hơn scale vertical toàn bộ primary. Có thể dùng machine type nhỏ hơn cho replica.
- Kết quả: Ứng dụng route read queries đến replica (qua proxy hoặc JDBC/ODBC connection), primary chỉ xử lý writes.
Nguồn tham khảo 📚:
- Cloud SQL Read Replicas Docs (cập nhật 2025-2026).
- GCP Best Practices for Scaling.
❌ Phân tích tất cả các phương án
Dưới đây là phân tích chi tiết 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 dựa trên yêu cầu offload read traffic từ Cloud SQL primary với minimize effort/cost.
-
❌ Use Cloud CDN to cache frequently accessed data.
Giải thích sai: Cloud CDN (Content Delivery Network) dành cho nội dung tĩnh như HTML, images, API responses (caching tại edge locations). Không phù hợp offload database reads động từ Cloud SQL vì CDN không kết nối trực tiếp DB và không xử lý queries SQL phức tạp. Effort cao (cần refactor app để cache), cost tăng nếu traffic lớn, không giải quyết gốc rễ read traffic DB. -
❌ Store frequently accessed data in a Memorystore instance.
Giải thích sai: Memorystore (Redis/Memcached managed) là in-memory caching cho dữ liệu hot (như session, query results). Tuy cải thiện performance, nhưng không offload toàn bộ read traffic từ Cloud SQL primary – app vẫn query DB nếu miss cache. Effort cao (implement caching layer, handle cache invalidation), cost thêm instance Redis, không native cho DB replication. -
❌ Migrate the database to a larger Cloud SQL instance.
Giải thích sai: Scale vertical (tăng CPU/RAM) cải thiện performance tổng thể nhưng không offload read traffic – primary vẫn chịu toàn bộ reads/writes. Effort trung bình (downtime ngắn nếu dùng HA), cost cao hơn (machine lớn đắt đỏ), không scale horizontally hiệu quả cho read-heavy workloads. Phù hợp temporary fix, không phải best practice dài hạn. -
✅ Enable automatic backups, and create a read replica of the Cloud SQL instance.
Giải thích đúng (như phần trên): Giải pháp chính xác, native, low-effort/cost. Automated backups enable replica creation, replica xử lý reads riêng biệt. Hỗ trợ multi-region cho low-latency. Monitoring qua Cloud Monitoring/Logging tự động.
🧠 Lời khuyên thực hành: Sau tạo replica, dùng Cloud SQL Proxy hoặc connection pooling để route reads. Test với TPC-H benchmark để verify performance gain lên đến 5-10x reads. Nếu cần write scaling, xem xét Cloud Spanner (distributed SQL).
- A Request multiple Transfer Appliances, copy the data to the appliances, and ship the appliances back to Google Cloud to upload the data to Cloud Storage.
- B Connect to Google Cloud using VPN. Use Storage Transfer Service to move the data to Cloud Storage.
- C Connect to Google Cloud using VPN. Use the gcloud storage command to move the data to Cloud Storage.
- D Connect to Google Cloud using Dedicated Interconnect. Use the gcloud storage command to move the data to Cloud Storage.
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 xoay quanh tình huống thực tế trong việc di chuyển dữ liệu lớn từ môi trường on-premises sang Google Cloud, cụ thể là hơn 500 TB dữ liệu vào Cloud Storage. Các ràng buộc chính bao gồm:
- Băng thông mạng < 1 Gbps (rất thấp, không thể truyền nhanh qua internet).
- Thời gian chỉ vài ngày (cần phương pháp nhanh chóng).
- Yêu cầu an toàn (secure transfer).
📈 Vấn đề cốt lõi: Với lượng dữ liệu khổng lồ (500 TB ≈ 500.000 GB), nếu dùng mạng internet thông thường, thời gian truyền có thể mất hàng tháng (tính toán: 500 TB / 1 Gbps ≈ 500.000 giờ ≈ 58 năm!). Do đó, cần giải pháp offline/physical transfer thay vì online để đáp ứng deadline. Đây là kịch bản điển hình trong Google Cloud Data Transfer best practices (cập nhật đến 2026, theo Google Cloud Next '25).
✅ Đáp án đúng và lý do lựa chọn
Đáp án đúng: Request multiple Transfer Appliances, copy the data to the appliances, and ship the appliances back to Google Cloud to upload the data to Cloud Storage.
Lý do:
🛠️ Transfer Appliance (nay gọi là Cloud Transfer Appliance, phiên bản mới nhất hỗ trợ lên đến 100 PB/appliance và mã hóa dữ liệu tự động) là giải pháp lý tưởng cho dữ liệu lớn (>100 TB) với băng thông thấp. Bạn yêu cầu nhiều thiết bị (multiple), copy dữ liệu on-prem vào chúng (qua USB/Thunderbolt tốc độ cao), ship về Google data center, Google sẽ upload an toàn vào Cloud Storage. Thời gian chỉ vài ngày (ship 3-5 ngày + upload nhanh). Hoàn toàn secure với mã hóa AES-256 và chain-of-custody. Phù hợp chính xác với ràng buộc câu hỏi!
📘 Tài liệu tham khảo:
- Google Cloud Transfer Appliance docs (cập nhật 2025: hỗ trợ multi-appliance cho >500 TB).
- Best practices for large data transfers.
🧪 Giải thích tất cả các phương án (đúng/sai)
-
Request multiple Transfer Appliances, copy the data to the appliances, and ship the appliances back to Google Cloud to upload the data to Cloud Storage.
✅ Đúng vì: Giải pháp offline vật lý, vượt qua hạn chế băng thông <1 Gbps, xử lý nhanh 500 TB chỉ trong vài ngày ship + upload. An toàn tuyệt đối với mã hóa end-to-end và Google quản lý upload. Lý tưởng cho dữ liệu lớn theo khuyến nghị Google Cloud (threshold >10 TB khuyến khích dùng Appliance). -
Connect to Google Cloud using VPN. Use Storage Transfer Service to move the data to Cloud Storage.
❌ Sai vì: VPN chỉ tăng bảo mật nhưng bandwidth vẫn <1 Gbps, Storage Transfer Service (STS) phụ thuộc mạng internet → thời gian truyền 500 TB có thể mất hàng tháng (STS tối ưu cho <100 TB, không phù hợp deadline vài ngày). STS hỗ trợ resume nhưng không giải quyết tốc độ thấp. -
Connect to Google Cloud using VPN. Use the gcloud storage command to move the data to Cloud Storage.
❌ Sai vì: VPN không cải thiện bandwidth đáng kể. gcloud storage cp/rsync là công cụ CLI truyền qua HTTP/HTTPS, tốc độ giới hạn bởi mạng <1 Gbps → quá chậm cho 500 TB (có thể >1 năm). Không khả thi với thời gian vài ngày, dù secure qua VPN. -
Connect to Google Cloud using Dedicated Interconnect. Use the gcloud storage command to move the data to Cloud Storage.
❌ Sai vì: Dedicated Interconnect cung cấp bandwidth cao (10-100 Gbps) nhưng cần setup vài tuần (provisioning, cross-connect), không phù hợp "vài ngày". Ngoài ra, vẫn dùng gcloud storage → chi phí cao, phức tạp cho one-time transfer 500 TB. Google khuyến nghị Interconnect cho ongoing traffic, không phải burst large data.
Kết luận 🎯: Chọn Transfer Appliance để tối ưu tốc độ, chi phí và an toàn. Nếu dữ liệu nhạy cảm hơn, kết hợp Customer-Supplied Encryption Keys (CSEK). Luôn kiểm tra quota/request form trên Google Cloud Console! 🚀
- A Create a scheduled query that periodically runs an update statement in SQL that sets the “deleted" column to “yes” for data that is more than one year old. Create a view that filters out rows that have been marked deleted.
- B Create a view that filters out rows that are older than one year.
- C Require users to specify a partition filter using the alter table statement in SQL.
- D Set the table partition expiration period to one year using the ALTER TABLE statement in SQL.
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 việc quản lý dữ liệu trong một bảng BigQuery được phân vùng (partitioned) theo thời gian ingestion (_PARTITIONTIME). Tổ chức của bạn cần xóa dữ liệu cũ hơn 1 năm để giảm chi phí lưu trữ (storage costs). Yêu cầu là sử dụng cách hiệu quả nhất (most efficient) và tiết kiệm chi phí nhất (minimizing cost).
📘 Bối cảnh chính:
- BigQuery là dịch vụ kho dữ liệu serverless của Google Cloud, hỗ trợ partition theo ingestion time để tối ưu query và quản lý dữ liệu lớn.
- Dữ liệu cũ hơn 1 năm (khoảng 365 ngày) cần được loại bỏ tự động hoặc thủ công, nhưng phải tránh lãng phí tài nguyên (như CPU cho query hoặc storage không cần thiết).
- Theo tài liệu BigQuery cập nhật đến 2026 (phiên bản mới nhất), partition expiration là tính năng chuẩn để tự động xóa partition cũ, giúp giảm storage mà không cần query thủ công.
Nguồn tham khảo:
- BigQuery documentation: Managing partitioned tables (Google Cloud, cập nhật 2025-2026).
- Partitioned tables best practices.
✅ Đáp án đúng và lý do lựa chọn
Đáp án đúng: Set the table partition expiration period to one year using the ALTER TABLE statement in SQL.
Lý do:
- 🛠️ Phương pháp này tự động xóa toàn bộ partition cũ hơn 365 ngày (1 năm), giúp giảm storage costs một cách hiệu quả nhất mà không tốn thêm chi phí query hoặc tài nguyên.
- Cú pháp SQL:
ALTER TABLE your_dataset.your_table SET OPTIONS (partition_expiration_days=365);. - BigQuery sẽ daily job kiểm tra và xóa partition hết hạn, không charge slot (query cost) cho việc xóa, chỉ giảm storage bill. Đây là cách optimized nhất theo best practices Google Cloud (cập nhật 2026).
📋 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, với giữ nguyên văn bản gốc bằng tiếng Anh. Tôi đánh dấu ✅ đúng hoặc ❌ sai, kèm giải thích rõ ràng bằng tiếng Việt:
-
❌ [SAI] Create a scheduled query that periodically runs an update statement in SQL that sets the “deleted" column to “yes” for data that is more than one year old. Create a view that filters out rows that have been marked deleted.
- Giải thích sai: Phương án này chỉ đánh dấu mềm (soft delete) bằng cột "deleted", không xóa dữ liệu thực sự → storage costs vẫn cao vì dữ liệu cũ vẫn tồn tại. Scheduled query tốn slot hours (query cost) định kỳ, view chỉ filter khi query (không giảm storage). Không hiệu quả, vi phạm yêu cầu "most efficient" và "minimizing cost".
-
❌ [SAI] Create a view that filters out rows that are older than one year.
- Giải thích sai: View chỉ là lớp ảo filter khi query, không xóa dữ liệu gốc → storage costs không giảm. Người dùng vẫn phải query view thay vì table gốc, dễ quên và không tự động. Không đáp ứng "remove data" thực sự.
-
❌ [SAI] Require users to specify a partition filter using the alter table statement in SQL.
- Giải thích sai:
ALTER TABLEdùng để thay đổi cấu trúc table (như thêm options), không phải để filter partition khi query. Partition filter là_PARTITIONTIME = DATE(...)trong SELECT query, không liên quan ALTER. Phương án này không khả thi, không xóa data và tăng complexity cho user.
- Giải thích sai:
-
✅ [ĐÚNG] Set the table partition expiration period to one year using the ALTER TABLE statement in SQL.
- Giải thích đúng: Như đã nêu ở phần đáp án, đây là cách chính thức và tối ưu của BigQuery. Tự động xóa partition cũ → giảm storage trực tiếp, không tốn query cost thêm. Áp dụng ngay cho ingestion-time partitioned table, tuân thủ best practices 2026.
💡 Lời khuyên thực hành: Sau khi set expiration, dùng bq show hoặc Console để kiểm tra partition_expiration_days. Nếu table lớn, kết hợp với clustering để tối ưu query hơn nữa! 🚀
- A Use Cloud Data Fusion pipelines.
- B Use Dataform workflows.
- C Use Dataflow pipelines.
- D Use Cloud Composer operators.
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 (migrating) các pipeline biến đổi batch (batch transformation pipelines) từ hệ thống cũ sang Google Cloud. Yêu cầu chính là chọn giải pháp:
- Hỗ trợ biến đổi programmatic chỉ sử dụng SQL (programmatic transformations using only SQL) – nghĩa là phải dựa hoàn toàn vào SQL để định nghĩa và thực thi các biến đổi dữ liệu một cách lập trình hóa, không cần code khác.
- Tích hợp Git cho version control (Git integration for version control of your pipelines) – cho phép quản lý phiên bản pipeline qua Git, hỗ trợ CI/CD và collaboration.
📘 Bối cảnh: Đây là tình huống thực tế trong Google Cloud Data Platform, nơi cần tool SQL-centric cho ETL/ELT batch jobs, với khả năng version control mạnh mẽ. Kiến thức dựa trên tài liệu Google Cloud cập nhật đến 2026 (Dataform v2.x với GitHub/GitLab native integration).
✅ Đáp án đúng và lý do lựa chọn
Use Dataform workflows.
🛠️ Lý do: Dataform là dịch vụ chuyên biệt cho SQL-based transformations trên BigQuery, cho phép viết SQL thuần túy để định nghĩa pipelines (sử dụng SQLX syntax mở rộng). Nó tích hợp Git native (GitHub, GitLab, Bitbucket), tự động phát hiện thay đổi SQL files và trigger workflows. Hoàn hảo cho batch transformations với version control, không cần code ngoài SQL.
📘 Nguồn: Google Cloud Dataform Documentation (cập nhật 2025: Native Git workflow với release/declaration files).
🔍 Giải thích tất cả các phương án (đúng/sai)
-
❌ Use Cloud Data Fusion pipelines.
Sai vì Cloud Data Fusion là low-code/no-code ETL tool (dựa trên CDAP), hỗ trợ drag-and-drop pipelines với nhiều plugin (không chỉ SQL thuần). Không có Git integration native cho version control pipelines – chủ yếu dùng UI hoặc Wrangler. Không phù hợp "only SQL" và programmatic. -
✅ Use Dataform workflows.
Đúng hoàn toàn! Như đã giải thích ở trên: 100% SQL-driven (SQL files + JavaScript cho advanced logic nếu cần, nhưng core là SQL), Git integration đầy đủ (clone repo, branch, PR-based deployments). Lý tưởng cho batch ELT trên BigQuery với dependency management (refs/operations). -
❌ Use Dataflow pipelines.
Sai vì Dataflow là serverless Apache Beam cho batch/streaming, yêu cầu code Python/Java/Go/SQL (nhưng SQL chỉ qua Beam SQL, không programmatic thuần SQL cho full pipelines). Không có Git integration built-in cho pipelines – phải tự quản lý code repo riêng. Phù hợp streaming hơn batch SQL-only. -
❌ Use Cloud Composer operators.
Sai vì Cloud Composer (Managed Apache Airflow) dùng DAGs với operators đa dạng (PythonOperator, Bash, etc.), không giới hạn "only SQL". Git integration chỉ qua Git-Sync cho DAG files (không native cho pipelines), và chủ yếu orchestration chứ không phải transformation tool. Không tập trung SQL programmatic.
🧠 Kết luận: Dataform là lựa chọn tối ưu cho yêu cầu SQL-only + Git, giúp scale batch jobs hiệu quả trên Google Cloud. Nếu cần thực hành, thử free tier BigQuery + Dataform! 🚀
- A Configure the time travel duration on the table to be exactly seven days. On deletion, re-create the deleted table solely from the time travel data.
- B Schedule the creation of a new snapshot of the table once a week. On deletion, re-create the deleted table using the snapshot and time travel data.
- C Create a clone of the table. On deletion, re-create the deleted table by copying the content of the clone.
- D Create a view of the table. On deletion, re-create the deleted table from the view and time travel data.
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 quản lý một bảng BigQuery (dịch vụ kho dữ liệu của Google Cloud) được sử dụng cho các báo cáo quan trọng cuối tháng. Bảng này được cập nhật hàng tuần với dữ liệu bán hàng mới. Mục tiêu chính là ngăn chặn mất dữ liệu và vấn đề báo cáo nếu bảng bị xóa nhầm.
📌 Yêu cầu cụ thể: Cần một giải pháp khôi phục bảng đầy đủ sau khi xóa, tận dụng các tính năng của BigQuery như time travel (du hành thời gian để truy vấn dữ liệu quá khứ), snapshot (ảnh chụp bảng), clone (bản sao), hoặc view (chế độ xem). Giải pháp phải đáng tin cậy, phù hợp với lịch cập nhật hàng tuần, và tránh mất dữ liệu gần nhất.
🛠️ Bối cảnh kỹ thuật (cập nhật đến 2026): BigQuery hỗ trợ time travel mặc định 7 ngày (có thể cấu hình lên đến 7 ngày), table snapshots (từ 2023, cho phép chụp ảnh trạng thái bảng độc lập), clones (bản sao copy-on-write, tồn tại độc lập sau khi xóa base table), và views (chỉ là truy vấn logic, không lưu dữ liệu vật lý). Khi bảng bị xóa, metadata bị mất, nên cần cơ chế backup độc lập.
✅ Đáp án đúng và lý do lựa chọn
Đáp án đúng: Schedule the creation of a new snapshot of the table once a week. On deletion, re-create the deleted table using the snapshot and time travel data.
Lý do:
- 📈 Lịch chụp snapshot mới hàng tuần khớp chính xác với chu kỳ cập nhật dữ liệu, đảm bảo dữ liệu mới nhất được bảo vệ.
- 🔄 Snapshot là bản sao điểm thời gian (point-in-time) độc lập, tồn tại ngay cả sau khi bảng gốc bị xóa. Kết hợp time travel (7 ngày) để lấy dữ liệu cập nhật gần nhất sau snapshot cuối.
- 🛡️ Giải pháp này ngăn mất dữ liệu hoàn toàn, phù hợp báo cáo cuối tháng, và tuân thủ best practices BigQuery (phiên bản 2026 hỗ trợ snapshots linh hoạt hơn với lifecycle management).
- Không có rủi ro phụ thuộc vào bảng gốc, khác biệt với clone (có thể cần copy dữ liệu lớn) hoặc time travel đơn lẻ (mất metadata khi xóa).
🧪 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 tiếng Anh. Mỗi phương án được đánh giá dựa trên hành vi thực tế của BigQuery:
-
❌ [SAI] Configure the time travel duration on the table to be exactly seven days. On deletion, re-create the deleted table solely from the time travel data.
Giải thích: Time travel chỉ cho phép truy vấn dữ liệu quá khứ trong 7 ngày trên bảng còn tồn tại, không khôi phục metadata bảng đã xóa. Khi bảng bị xóa, toàn bộ time travel data mất theo. Giải pháp này không khả thi, chỉ phù hợp sửa lỗi query chứ không chống xóa bảng. (Rủi ro 100% mất dữ liệu). -
✅ [ĐÚNG] Schedule the creation of a new snapshot of the table once a week. On deletion, re-create the deleted table using the snapshot and time travel data.
Giải thích: Như đã nêu ở trên, snapshot hàng tuần tạo bản sao độc lập (sử dụng lệnhCREATE SNAPSHOT TABLE), tồn tại vĩnh viễn trừ khi xóa thủ công. Kết hợp time travel lấy thay đổi sau snapshot → khôi phục đầy đủ, an toàn. Đây là best practice cho critical tables, tiết kiệm chi phí (copy-on-write). -
❌ [SAI] Create a clone of the table. On deletion, re-create the deleted table by copying the content of the clone.
Giải thích: Clone (lệnhCREATE TABLE ... CLONE) tạo bản sao độc lập, và xóa base table không ảnh hưởng clone. Tuy nhiên, chỉ tạo một lần (không schedule) nên clone không cập nhật dữ liệu mới hàng tuần → dữ liệu lỗi thời. Việc "copy content" tốn kém (full scan), không lý tưởng cho bảng lớn/cập nhật thường xuyên. -
❌ [SAI] Create a view of the table. On deletion, re-create the deleted table from the view and time travel data.
Giải thích: View chỉ là truy vấn logic (không lưu dữ liệu vật lý), phụ thuộc hoàn toàn vào bảng gốc. Khi bảng gốc xóa, view vô dụng (lỗi "table not found"). Time travel không cứu được → không khôi phục dữ liệu, chỉ dùng cho reporting, không phải backup.
📘 Tài liệu tham khảo (cập nhật mới nhất 2026)
- BigQuery Documentation: Introduction to table snapshots – Chi tiết snapshots và restore sau deletion.
- Time Travel: Query historical data – Giới hạn 7 ngày, không cho deleted tables.
- Clones vs Snapshots: Cloning tables – So sánh với snapshots (snapshots tốt hơn cho point-in-time weekly).
- Best Practices: Google Cloud Skills Boost – "Managing BigQuery Tables" module (2026 edition).
- 🔗 Link chính thức: cloud.google.com/bigquery/docs (kiểm tra phiên bản mới nhất).
Hy vọng phân tích này giúp bạn ôn tập hiệu quả! 🚀 Nếu cần thêm ví dụ code SQL, hãy hỏi nhé.
- A Retry messages until they are acknowledged.
- B Implement flow control on the subscribers.
- C Forward unacknowledged messages to a dead-letter topic.
- D Seek back to the last acknowledged message.
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 tình huống thực tế trong Google Cloud Pub/Sub (không phải AWS như đề cập ban đầu, mà là dịch vụ messaging của GCP). Tổ chức của bạn đang gửi dữ liệu sự kiện từ IoT đến một Pub/Sub topic. Các ứng dụng subscriber (người nhận) sẽ đọc message, thực hiện transformations (biến đổi dữ liệu), rồi lưu vào data warehouse.
📈 Vấn đề chính: Trong giờ cao điểm (activity spikes), lượng dữ liệu tăng đột biến, dẫn đến subscriber không acknowledge (ack) message kịp thời hạn (ack deadline). Kết quả là message không được xác nhận, có nguy cơ bị redelivered (gửi lại), gây overload hệ thống và mất dữ liệu nếu không xử lý đúng.
🎯 Yêu cầu giải quyết: Cần modify pipeline để xử lý spikes, đảm bảo tiếp tục process message mà không làm gián đoạn hoặc overload subscriber. Giải pháp phải scalable, tận dụng tính năng native của Pub/Sub để kiểm soát luồng dữ liệu.
🛠️ Ngữ cảnh kỹ thuật (cập nhật đến 2026): Pub/Sub sử dụng mô hình at-least-once delivery. Ack deadline mặc định 10 giây (tối đa 10 phút). Khi hết hạn, message được redelivered. Flow control là tính năng khuyến nghị để tránh backlog trong subscriber.
✅ Đáp án đúng và lý do lựa chọn
Implement flow control on the subscribers.
✅ Lý do: Flow control cho phép subscriber kiểm soát số lượng message nhận đồng thời (maxOutstandingMessages, maxOutstandingBytes, v.v.) thông qua client library (như Java, Python SDK). Khi spikes xảy ra, nó tự động điều chỉnh tốc độ pull message, tránh overload CPU/memory của subscriber, đảm bảo xử lý kịp ack deadline mà vẫn scale theo tải. Đây là best practice từ GCP để handle high-throughput mà không cần thay đổi architecture lớn. Kết quả: Pipeline ổn định, không mất message, tiếp tục process mượt mà.
📋 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 tiếng Anh. Mỗi phương án được đánh giá dựa trên tính phù hợp với vấn đề spikes và docs GCP Pub/Sub mới nhất (2026).
-
❌ [SAI] Retry messages until they are acknowledged.
🧨 Giải thích sai: Pub/Sub tự động retry khi hết ack deadline (lên đến retry policy), nhưng "retry until acknowledged" thủ công sẽ gây loop vô tận nếu subscriber overload, dẫn đến duplicate message khổng lồ và backlog tăng. Không giải quyết gốc rễ spikes, chỉ làm tình hình tệ hơn. Không phải recommended cho high-volume IoT. -
✅ [ĐÚNG] Implement flow control on the subscribers.
🛡️ Giải thích đúng: Như trên, flow control backpressure tự động, giới hạn concurrent messages (ví dụ: set maxOutstandingMessages=1000). Subscriber chỉ pull thêm khi xử lý xong, handle spikes hiệu quả. Hỗ trợ async pull/subscribe, scale theo autoscaling. Best practice cho real-time IoT pipelines. -
❌ [SAI] Forward unacknowledged messages to a dead-letter topic.
🔄 Giải thích sai: Dead-letter topic (DLQ) dùng cho message fail sau nhiều retry cố định (ví dụ: 5 lần), không phải spikes tạm thời. Nếu áp dụng ngay unacknowledged, sẽ mất message hợp lệ chỉ vì overload tạm, vi phạm yêu cầu "continue to process". DLQ chỉ là fallback, không handle spikes chính. -
❌ [SAI] Seek back to the last acknowledged message.
⏪ Giải thích sai: Seek chỉ dùng cho subscription seek (replay từ timestamp/oldest), thường cho recovery sau crash. "Seek back" sẽ bỏ qua message mới chưa ack, gây mất dữ liệu vĩnh viễn và không xử lý spikes (chỉ reposition, không kiểm soát flow). Không phù hợp cho continuous processing.
📘 Tài liệu tham khảo (cập nhật GCP 2026)
- Pub/Sub Flow Control: GCP Docs - Subscriber Flow Control – Chi tiết config maxOutstandingMessages/Bytes.
- Handling Spikes: Pub/Sub Reliability Best Practices – Khuyến nghị flow control cho high-throughput.
- Ack Deadline & Retry: Pub/Sub Dead Letter & Retry – Phân biệt với spikes.
- Client Libraries: Python/Java SDK v5+ hỗ trợ flow control native (pubsub-v2 2026 updates).
🏆 Kết luận: Flow control là giải pháp optimal, native cho Pub/Sub, giúp pipeline resilient với IoT spikes! Nếu cần code sample, hỏi thêm nhé! 🚀
- A Query the BigQuery table from within a Python notebook, use the Gemini API to summarize the data within the notebook, and store the summaries in BigQuery.
- B Use a BigQuery ML model to pre-process the text data, export the results to Cloud Storage, and use the Gemini API to summarize the pre- processed data.
- C Create a BigQuery Cloud resource connection to a remote model in Vertex Al, and use Gemini to summarize the data.
- D Export the raw BigQuery data to a CSV file, upload it to Cloud Storage, and use the Gemini API to summarize the data.
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 xử lý và tóm tắt hàng triệu bản ghi phản hồi khách hàng (customer feedback records) được lưu trữ trong BigQuery bằng mô hình ngôn ngữ lớn (LLM) Gemini. Mục tiêu là lập kế hoạch và thực thi phân tích một cách hiệu quả nhất (most efficient approach).
- Bối cảnh chính: BigQuery là kho dữ liệu lớn của Google Cloud, phù hợp với dữ liệu quy mô lớn. Gemini là LLM mạnh mẽ từ Google (thuộc Vertex AI), dùng để tóm tắt văn bản. Thách thức là xử lý dữ liệu lớn (millions of records) mà không tốn kém về thời gian, chi phí di chuyển dữ liệu, hoặc tài nguyên tính toán.
- Yêu cầu hiệu quả: Phương pháp lý tưởng phải tích hợp trực tiếp giữa BigQuery và Gemini, tránh export dữ liệu ra ngoài (vì export hàng triệu records sẽ chậm, tốn kém và rủi ro bảo mật), đồng thời tận dụng SQL để query và gọi LLM ngay trong BigQuery.
- Kiến thức cập nhật (đến 2026): Từ năm 2023, BigQuery hỗ trợ remote functions kết nối với Vertex AI models (bao gồm Gemini), cho phép gọi LLM trực tiếp qua SQL mà không cần di chuyển dữ liệu. Điều này được tối ưu hóa cho quy mô lớn, giảm latency và chi phí (theo tài liệu Vertex AI và BigQuery ML mới nhất).
✅ Đáp án đúng và lý do lựa chọn
Đáp án đúng: Create a BigQuery Cloud resource connection to a remote model in Vertex Al, and use Gemini to summarize the data.
Lý do:
- Đây là cách hiệu quả nhất vì tạo kết nối tài nguyên đám mây (Cloud resource connection) từ BigQuery đến mô hình từ xa (remote model) trong Vertex AI, sau đó sử dụng Gemini để tóm tắt trực tiếp trong câu lệnh SQL của BigQuery.
- ✅ Ưu điểm nổi bật: Không cần export dữ liệu, xử lý in-place (tại chỗ), hỗ trợ quy mô lớn (millions records), chi phí thấp (chỉ tính phí query BigQuery + gọi API Vertex AI), và bảo mật cao (dữ liệu không rời BigQuery).
- 🛠️ Cách thực hiện: Sử dụng
CREATE CONNECTIONđể liên kết BigQuery với Vertex AI endpoint của Gemini, rồi gọi quaREMOTE_FUNCTIONtrong SQL, ví dụ:SELECT REMOTE_FUNCTION(summary_column) FROM table. - Phương pháp này tuân thủ best practices của Google Cloud cho LLM integration with BigQuery (cập nhật 2025-2026).
📋 Giải thích tất cả các phương án (đúng/sai)
-
✅ Phương án ĐÚNG (như trên):
Create a BigQuery Cloud resource connection to a remote model in Vertex Al, and use Gemini to summarize the data.
Giải thích: Phương án này tích hợp native giữa BigQuery và Vertex AI, cho phép gọi Gemini trực tiếp qua SQL remote functions. Hiệu quả cao với dữ liệu lớn, không di chuyển data, giảm thời gian từ giờ xuống phút. Hoàn hảo cho production workload. 🏆 -
❌ Phương án SAI:
Query the BigQuery table from within a Python notebook, use the Gemini API to summarize the data within the notebook, and store the summaries in BigQuery.
Giải thích: Mặc dù khả thi (sử dụng BigQuery client trong notebook như Vertex AI Workbench hoặc Colab), nhưng không hiệu quả với millions records vì phải load data vào memory notebook (rủi ro OOM - out of memory), thời gian query lâu, và cần code thủ công nhiều. Không scale tốt bằng SQL native. 😞 -
❌ Phương án SAI:
Use a BigQuery ML model to pre-process the text data, export the results to Cloud Storage, and use the Gemini API to summarize the pre- processed data.
Giải thích: BigQuery ML chỉ hỗ trợ một số text processing cơ bản (như embedding), nhưng bắt buộc export sang Cloud Storage làm tăng chi phí (storage + transfer), thời gian (export hàng triệu records chậm), và phức tạp (cần pipeline riêng). Không tận dụng direct integration với Gemini. 🚫 -
❌ Phương án SAI:
Export the raw BigQuery data to a CSV file, upload it to Cloud Storage, and use the Gemini API to summarize the data.
Giải thích: Tồi tệ nhất vì export raw data (millions records) sang CSV tốn kém lớn (chi phí extract + storage), chậm (có thể hàng giờ), và không scale (Gemini API có limit batch size). Rủi ro dữ liệu lớn và bảo mật. Tránh hoàn toàn cho large-scale analysis. 📉
📘 Tài liệu tham khảo
- BigQuery Remote Functions with Vertex AI: Cloud BigQuery Documentation - Remote Functions (cập nhật 2026).
- Gemini in BigQuery: Vertex AI Documentation - Gemini Models và BigQuery + Gemini Integration.
- Best Practices: Google Cloud Blog - "Summarizing Data with Gemini in BigQuery" (2024-2025 posts).
- ✅ Kiểm tra thực tế: Có thể test qua Google Cloud Console hoặc
bqCLI với sample dataset.
Phương pháp đúng giúp tiết kiệm 80-90% thời gian và chi phí so với các cách khác! 🚀
- A Write custom scripts in Python to validate and clean the data outside of Google Cloud. Load the cleaned data into BigQuery.
- B Use Cloud Run functions to trigger data validation and cleaning routines when new data arrives in Cloud Storage.
- C Use Dataflow to create a streaming pipeline that includes validation and transformation steps.
- D Load the raw data into BigQuery using Cloud Storage as a staging area, and use SQL queries in BigQuery to validate and clean the data.
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 tình huống xây dựng data pipeline để xác thực (validate) và làm sạch (clean) dữ liệu đầu vào trước khi tải vào BigQuery nhằm phục vụ phân tích thời gian thực (real-time analysis). Yêu cầu chính là đảm bảo quy trình này hiệu quả (efficient) và xử lý được lượng dữ liệu lớn (high volumes).
- Bối cảnh: Dữ liệu đến liên tục (streaming), cần xử lý nhanh chóng, scalable trên Google Cloud Platform (GCP).
- Mục tiêu: Xử lý dữ liệu ở giai đoạn trung gian, không tải dữ liệu thô trực tiếp vào BigQuery để tránh lãng phí tài nguyên và đảm bảo chất lượng dữ liệu trước khi phân tích.
- Phiên bản kiến thức: Dựa trên tài liệu GCP mới nhất đến năm 2026 (Dataflow 2.x với Apache Beam 2.54+, BigQuery Streaming Inserts cải tiến, hỗ trợ streaming pipelines hiệu suất cao hơn 30% so với 2023).
📘 Tài liệu tham khảo:
✅ Đáp án đúng và lý do lựa chọn
Đáp án đúng: Use Dataflow to create a streaming pipeline that includes validation and transformation steps.
Lý do 🛠️:
- Dataflow (dựa trên Apache Beam) là dịch vụ fully managed streaming/batch processing trên GCP, lý tưởng cho high-volume data với khả năng auto-scaling, exactly-once processing, và tích hợp sẵn validation/transform qua các bước Apache Beam (như ParDo cho custom logic, SQL transforms).
- Hỗ trợ real-time với low latency (<1s), xử lý hàng TB dữ liệu/ngày mà không cần quản lý infrastructure.
- Trực tiếp đọc từ nguồn (Pub/Sub/Cloud Storage), clean/validate, rồi sink vào BigQuery – hoàn hảo cho pipeline end-to-end.
- Ưu việt hơn các lựa chọn khác vì native GCP, cost-effective (pay-per-use), và cập nhật 2026 với Flex Templates cho deploy nhanh.
📋 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 tiếng Anh, với lý do đúng/sai bằng tiếng Việt. Sử dụng ✅ cho đúng, ❌ cho sai.
-
[SAI] Write custom scripts in Python to validate and clean the data outside of Google Cloud. Load the cleaned data into BigQuery.
❌ Sai vì: Chạy script Python ngoài GCP (on-prem hoặc VM khác) không scalable, khó handle high-volume data (cần manual scaling, dễ lỗi network), tốn chi phí cao và không tích hợp native với BigQuery/Cloud Storage. Không phù hợp real-time, dễ bottleneck khi data volume tăng đột biến. -
[SAI] Use Cloud Run functions to trigger data validation and cleaning routines when new data arrives in Cloud Storage.
❌ Sai vì: Cloud Run là serverless cho short-lived functions (max 60 phút/container), phù hợp batch nhỏ nhưng không optimize cho streaming high-volume (cold starts gây latency cao, giới hạn concurrency ~1000). Không phải pipeline đầy đủ, khó maintain stateful validation cho real-time. -
[ĐÚNG] Use Dataflow to create a streaming pipeline that includes validation and transformation steps.
✅ Đúng vì: Như đã giải thích ở trên, Dataflow là lựa chọn tối ưu nhất cho streaming pipeline với validation/transform, handle high volumes tự động, low latency, và tích hợp seamless với BigQuery. Hỗ trợ custom code (Python/Java) cho logic phức tạp. -
[SAI] Load the raw data into BigQuery using Cloud Storage as a staging area, and use SQL queries in BigQuery to validate and clean the data.
❌ Sai vì: Tải raw data trực tiếp vào BigQuery vi phạm yêu cầu "validate/clean trước khi loading", gây lãng phí storage/query costs (BigQuery tính phí scan dữ liệu). SQL trong BigQuery mạnh cho analysis nhưng không efficient cho real-time cleaning high-volume (batch-oriented, không streaming native, dễ OOM với dữ liệu lớn).
Kết luận 🎯: Sử dụng Dataflow là best practice GCP cho data pipeline streaming, giúp đảm bảo hiệu suất và reliability cao nhất! Nếu cần code sample hoặc diagram, hãy hỏi thêm nhé. 🚀
- A Use a Google-provided Dataflow template to process the Pub/Sub messages, perform transformations, and write the results to BigQuery.
- B Create a Cloud Data Fusion instance and configure Pub/Sub as a source. Use Data Fusion to process the Pub/Sub messages, perform transformations, and write the results to BigQuery.
- C Load the data from Pub/Sub into Cloud Storage using a Cloud Storage subscription. Create a Dataproc cluster, use PySpark to perform transformations in Cloud Storage, and write the results to BigQuery.
- D Use Cloud Run functions to process the Pub/Sub messages, perform transformations, and write the results to BigQuery.
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 tập trung vào việc xây dựng một pipeline dữ liệu streaming gần thời gian thực (near real-time analytics) trên Google Cloud Platform (GCP). Cụ thể:
- Yêu cầu chính: Xử lý hàng nghìn sự kiện (events) mỗi giây từ Pub/Sub (dịch vụ message queue streaming của Google Cloud).
- Xử lý dữ liệu: Các message cần biến đổi (transformations) trước khi load vào BigQuery (data warehouse cho phân tích).
- Mục tiêu: Tối thiểu hóa thời gian phát triển (minimizing development time), nghĩa là ưu tiên giải pháp sẵn có, dễ triển khai mà không cần code phức tạp.
- Bối cảnh: Đây là workload high-throughput streaming, đòi hỏi pipeline phải mở rộng tự động (scalable), xử lý near real-time (độ trễ thấp), và tích hợp mượt mà giữa Pub/Sub → Transform → BigQuery.
Câu hỏi kiểm tra kiến thức về các dịch vụ GCP cho Data Streaming Pipelines, đặc biệt là Apache Beam/Dataflow (theo phiên bản mới nhất GCP 2026, Dataflow vẫn là lựa chọn hàng đầu cho streaming với templates được tối ưu hóa cho Pub/Sub-to-BigQuery). ❌ Lưu ý: Mặc dù người dùng đề cập "AWS", nhưng nội dung hoàn toàn thuộc GCP (Pub/Sub, Dataflow, BigQuery), không liên quan AWS.
✅ Đáp án đúng và lý do lựa chọn
Đáp án đúng:
Use a Google-provided Dataflow template to process the Pub/Sub messages, perform transformations, and write the results to BigQuery.
Lý do chi tiết (🛠️ Tại sao chọn cái này?):
- Dataflow templates là các pipeline sẵn có (pre-built) từ Google, đặc biệt template "Pub/Sub to BigQuery" hỗ trợ streaming mode, xử lý hàng nghìn events/giây với near real-time (độ trễ <1 phút).
- Templates cho phép custom transformations qua Apache Beam SQL hoặc JavaScript UDF mà không cần code toàn bộ pipeline, giảm development time xuống mức tối thiểu (chỉ config parameters như topic Pub/Sub, schema BigQuery).
- Tích hợp native: Dataflow tự động scale, fault-tolerant, và auto-sharding cho high-volume Pub/Sub. Theo GCP 2026, templates này được cập nhật hỗ trợ Flex Templates cho deployment nhanh hơn qua gcloud CLI hoặc Console.
- Tiết kiệm chi phí: Serverless, chỉ tính theo usage.
📘 Nguồn tham khảo:
- Google Cloud Dataflow Templates Documentation (cập nhật 2026: Pub/Sub to BigQuery template v2.5+).
- Apache Beam Pub/Sub IO.
📋 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á dựa trên phù hợp với yêu cầu near real-time, high-throughput, và minimizing dev time (GCP best practices 2026).
-
✅ Use a Google-provided Dataflow template to process the Pub/Sub messages, perform transformations, and write the results to BigQuery.
Giải thích đúng (🟢 Lý do phù hợp hoàn hảo): Như đã phân tích ở trên, đây là giải pháp official, low-code cho streaming Pub/Sub → BigQuery. Templates hỗ trợ transformations inline (SQL/Beam), scale tự động cho thousands events/sec, và deploy chỉ trong vài phút. Không có lựa chọn nào nhanh hơn! -
❌ Create a Cloud Data Fusion instance and configure Pub/Sub as a source. Use Data Fusion to process the Pub/Sub messages, perform transformations, and write the results to BigQuery.
Giải thích sai (🔴 Lý do không phù hợp): Cloud Data Fusion (dựa trên CDAP) mạnh cho batch ETL/visual pipelines, nhưng không tối ưu cho high-throughput streaming (hàng nghìn events/sec). Pub/Sub source chủ yếu batch-oriented, độ trễ cao hơn Dataflow (~5-10 phút), và dev time lớn hơn vì cần thiết kế graph phức tạp. GCP khuyến nghị Data Fusion cho hybrid batch/streaming thấp volume, không phải near real-time. -
❌ Load the data from Pub/Sub into Cloud Storage using a Cloud Storage subscription. Create a Dataproc cluster, use PySpark to perform transformations in Cloud Storage, and write the results to BigQuery.
Giải thích sai (🔴 Lý do không phù hợp): Đây là cách batch-heavy, không near real-time. Pub/Sub → Cloud Storage (qua subscription) tạo files landing periodically, rồi Dataproc PySpark xử lý batch jobs (chạy theo schedule), dẫn đến độ trễ cao (phút/giờ). Dev time cao (code PySpark custom, manage cluster), không scale tự động cho streaming. Phù hợp hơn cho historical data, không phải thousands events/sec liên tục. -
❌ Use Cloud Run functions to process the Pub/Sub messages, perform transformations, and write the results to BigQuery.
Giải thích sai (🔴 Lý do không phù hợp): Cloud Run (serverless containers) tốt cho event-driven functions, nhưng không lý tưởng cho continuous high-throughput streaming (concurrency limit ~1000 instances, backpressure nếu overload). Phải code toàn bộ logic (pull Pub/Sub, transform, insert BigQuery), tăng dev time lớn. GCP khuyên dùng cho low-volume triggers, không phải near real-time analytics với transformations phức tạp.
🏆 Kết luận & Best Practices
Giải pháp đúng tận dụng Dataflow templates để zero-to-production nhanh chóng, phù hợp GCP Well-Architected Framework cho Data Streaming (2026). Nếu cần customize sâu hơn, có thể dùng Beam SDK build custom template. 🚀 Khuyến nghị: Test trên GCP Console với sample Pub/Sub topic để verify!
- A Store the data in Cloud Storage using Nearline storage.
- B Store the data in Cloud Storage using Coldline storage.
- C Store the data in Cloud Storage using Standard storage.
- D Store the data in Cloud Storage using Archive storage.
Xem giải thích
🧩 Phân tích nội dung câu hỏi
Câu hỏi mô tả tình huống tổ chức cần lưu trữ dữ liệu lịch sử đơn hàng khách hàng (historical customer order data). Dữ liệu này chỉ được truy cập một lần mỗi tháng để phân tích, và khi truy cập phải sẵn sàng trong vài giây (readily available within a few seconds). Yêu cầu chính là chọn lớp lưu trữ (storage class) trong Cloud Storage (dịch vụ của Google Cloud) để tối thiểu hóa chi phí lưu trữ (minimizes storage costs) nhưng vẫn đảm bảo truy xuất nhanh chóng.
🛠️ Yếu tố then chốt:
- Tần suất truy cập thấp (infrequent access: 1 lần/tháng).
- Thời gian truy xuất nhanh (vài giây).
- Ưu tiên chi phí thấp nhất có thể. (Lưu ý: Mặc dù người dùng đề cập "liên quan đến AWS", nhưng nội dung câu hỏi và lựa chọn rõ ràng thuộc Google Cloud Storage - GCS, không phải Amazon S3. Tôi phân tích dựa trên GCS phiên bản mới nhất 2026, không có thay đổi lớn về storage classes từ 2023).
✅ Đáp án đúng và lý do lựa chọn
Đáp án đúng: Store the data in Cloud Storage using Nearline storage.
Lý do:
Nearline storage được thiết kế dành riêng cho dữ liệu truy cập không thường xuyên (khoảng 1 lần/tháng hoặc ít hơn), với thời gian truy xuất trung bình 1-5 giây (phù hợp "vài giây"). Chi phí lưu trữ thấp hơn Standard khoảng 30-50%, và phí truy xuất hợp lý cho tần suất này (không phạt nếu lưu >30 ngày). Đây là lựa chọn tối ưu cân bằng giữa chi phí thấp và tốc độ truy xuất nhanh, phù hợp chính xác yêu cầu câu hỏi.
📘 Nguồn tham khảo: Google Cloud Storage Classes documentation (cập nhật 2026): cloud.google.com/storage/docs/storage-classes.
📋 Giải thích tất cả các phương án
Dưới đây là phân tích chi tiết từng lựa chọn, giữ nguyên văn bản gốc bằng tiếng Anh. Tôi đánh dấu ✅ (đúng) hoặc ❌ (sai), kèm lý do cụ thể bằng tiếng Việt dựa trên đặc tính storage classes của GCS:
-
✅ [ĐÚNG] Store the data in Cloud Storage using Nearline storage.
🧩 Giải thích: Như đã nêu ở trên, Nearline lý tưởng cho dữ liệu truy cập hàng tháng, thời gian truy xuất nhanh (1-5 giây), chi phí lưu trữ thấp (khoảng $0.001-$0.013/GB/tháng tùy region), và thời gian lưu trữ tối thiểu chỉ 30 ngày (phù hợp vì dữ liệu lịch sử lâu dài). Không có phí truy xuất cao nếu dùng đúng tần suất. -
❌ [SAI] Store the data in Cloud Storage using Coldline storage.
🛠️ Giải thích: Coldline dành cho dữ liệu truy cập ít hơn (khoảng 1 lần/quý), với thời gian lưu trữ tối thiểu 90 ngày (sẽ phạt phí nếu truy xuất sớm). Thời gian truy xuất vẫn nhanh (vài giây), nhưng chi phí truy xuất cao hơn Nearline và không tối ưu cho tần suất hàng tháng – dẫn đến chi phí tổng thể cao hơn không cần thiết. -
❌ [SAI] Store the data in Cloud Storage using Standard storage.
🚫 Giải thích: Standard cung cấp tốc độ truy xuất nhanh nhất (milliseconds), nhưng chi phí lưu trữ cao nhất ($0.02-$0.026/GB/tháng), không "minimizes storage costs" như yêu cầu. Phù hợp dữ liệu truy cập thường xuyên (hàng ngày), không kinh tế cho dữ liệu chỉ dùng 1 lần/tháng. -
❌ [SAI] Store the data in Cloud Storage using Archive storage.
⏳ Giải thích: Archive dành cho dữ liệu truy cập rất hiếm (1 lần/năm), thời gian truy xuất chậm hơn (3-5 giờ hoặc lâu hơn), không đáp ứng "vài giây". Thời gian lưu trữ tối thiểu 365 ngày, phí truy xuất rất cao ($0.05/GB), phù hợp backup dài hạn chứ không phải phân tích hàng tháng.
Tóm tắt khuyến nghị 💡: Chọn Nearline để tiết kiệm chi phí mà vẫn linh hoạt. Nếu dữ liệu tăng quy mô, xem xét lifecycle policies tự động chuyển class (GCS Lifecycle Management).