Ngân hàng đề — Google Cloud Digital Leader

Tìm thấy 611 câu.

Câu 51 Scaling with Google Cloud Operations

A university provides each student with a Google Cloud project for learning purposes. To prevent uncontrolled spending, the administrator wants to set a hard limit so that no student can create more than two virtual machine instances within their project.

Which Google Cloud feature allows for setting this type of service usage limit?

  1. A

    Resource Quotas

  2. B

    Cloud Billing budgets

  3. C

    IAM Policies

  4. D

    Cloud Monitoring

Xem giải thích

Đáp án

A — Resource Quotas (hạn ngạch tài nguyên).

Vì sao đúng

Đề đòi một giới hạn CỨNG về số lượng tài nguyên, và đó chính xác là việc của quota.

⚠ Quota chặn cứng:

Đặt quota: CPUs = 2 (hoặc số instance)
        ↓
    Sinh viên tạo máy ảo thứ ba
        ↓
    ⚠ LỖI NGAY LẬP TỨC:
      "Quota exceeded"
        ↓
    ⚠ Máy KHÔNG được tạo
    ⚠ Không có cách nào lách
        ↓
    → đúng thứ đề gọi là
      "hard limit"

⚠ Vì sao ngân sách KHÔNG chặn được:

Cloud Billing Budget
        ↓
    Đạt 50%, 90%, 100%
        ↓
    ⚠ CHỈ GỬI CẢNH BÁO
    ⚠ Dịch vụ VẪN chạy
    ⚠ Sinh viên VẪN tạo được máy
        ↓
    → không phải "hard limit"

⚠ Đối chiếu #13255 (lô 138) — đề đó khoá budget threshold rules, vì yêu cầu là được THÔNG BÁO ở các mốc phần trăm. Câu này khoá quota, vì yêu cầu là CHẶN CỨNG số lượng tài nguyên. Hai câu KHÔNG mâu thuẫn — chúng hỏi hai cơ chế khác nhau.

Cách phân biệt: "báo cho tôi biết khi..." → budget alert. "không cho phép tạo quá..." → quota.

⚠ Vì sao IAM cũng không giải quyết:

IAM quyết định ĐƯỢC HAY KHÔNG
được tạo máy ảo
        ↓
    ⚠ Nhưng KHÔNG đếm SỐ LƯỢNG
        ↓
    Có quyền → tạo được 2 máy
              → cũng tạo được 200 máy
        ↓
    → IAM là công tắc bật/tắt,
      quota là cái van định lượng

Vì sao các phương án khác sai

  • B (ngân sách Cloud Billing) — phương án gần nhất vì cũng nhằm kiểm soát chi tiêu. Nhưng ngân sách chỉ cảnh báo, không chặn. Đề nói rõ là muốn "hard limit".

  • C (chính sách IAM) — kiểm soát ai được làm gì, không kiểm soát bao nhiêu.

  • D (Cloud Monitoring) — theo dõi và cảnh báo, không chặn hành động nào.

Ghi nhớ

⚠ Bốn công cụ kiểm soát — bảng phải thuộc: | Công cụ | Tác dụng | |---|---| | Resource Quota | ⚠ CHẶN CỨNG số lượng tài nguyên | | Cloud Billing budget | ⚠ chỉ CẢNH BÁO theo % chi tiêu | | IAM | ai được làm gì | | Organization Policy | ⚠ CẤM một loại hành vi, kể cả với Owner |

Từ khoá nhận diện:

"không cho tạo quá N tài nguyên" → quota "báo cho tôi khi tiêu tới X%" → budget alert "cấm tạo IP công khai ở mọi project" → Organization Policy "ai được tạo máy ảo" → IAM

Hai loại quota Loại
Rate quota ⚠ số lời gọi API mỗi phút — tự đặt lại theo chu kỳ
Allocation quota ⚠ số tài nguyên đồng thời — CPU, IP, đĩa
Đề này allocation quota
Phạm vi theo project, và thường theo VÙNG
⚠ Điều quan trọng về quota Điểm
Mặc định có sẵn cho mọi project Google đặt trần ban đầu
Có thể XIN NÂNG qua console, thường được duyệt
Có thể tự HẠ XUỐNG ⚠ đây là cách dùng trong đề — hạ để giới hạn sinh viên
Theo vùng ⚠ nhớ hạ ở MỌI vùng, không chỉ một
Vượt quota lỗi ngay, không âm thầm
Kiểm soát chi tiêu cho môi trường học tập Việc
Hạ quota CPU, IP, đĩa ⚠ rào chắn cứng
Đặt ngân sách cảnh báo biết khi có bất thường
Organization Policy giới hạn loại máy cấm máy quá lớn, cấm GPU
Giới hạn vùng được dùng
Tự động tắt máy ngoài giờ script hoặc scheduler
⚠ Kết hợp quota chặn, budget cảnh báo, policy đặt lằn ranh
⚠ Cách chặn chi tiêu triệt để nhất Cách
Budget alert → Pub/Sub → Cloud Function
Function gỡ liên kết tài khoản thanh toán
Hậu quả ⚠ MỌI dịch vụ trong project DỪNG — kể cả dữ liệu có thể mất
Dùng cho môi trường học tập, thử nghiệm
⚠ KHÔNG dùng cho production

Ba việc kiểm chứng: | Việc | Cách | |---|---| | Quota hiện tại là bao nhiêu | trang IAM & Admin → Quotas | | Đã hạ ở mọi vùng chưa | ⚠ lọc theo vùng, đừng chỉ xem một | | Sinh viên có bị chặn thật không | thử tạo máy thứ ba bằng tài khoản thử |

Và một cách phân biệt gọn để không bao giờ nhầm hai công cụ này: quota nói "không", ngân sách nói "coi chừng". Khi đề bài dùng những chữ như hard limit, prevent, not allowed thì câu trả lời gần như luôn là quota hoặc Organization Policy, chứ không phải cảnh báo ngân sách.

Câu 52 Exploring Data Transformation with Google Cloud

A company wants to migrate its on-premises transactional database, which runs a standard WordPress website, to Google Cloud. They need a fully managed relational database service that supports MySQL and is optimized for a single region.

What is the most straightforward and cost-effective choice?

  1. A

    Cloud Storage

  2. B

    BigQuery

  3. C

    Cloud Spanner

  4. D

    Cloud SQL

Xem giải thích

Đáp án

D — Cloud SQL.

Vì sao đúng

Đề nêu bốn yêu cầu, và Cloud SQL khớp cả bốn một cách thẳng thắn:

⚠ Bốn yêu cầu ↔ Cloud SQL:

1. CSDL GIAO DỊCH cho WordPress
     → WordPress vốn chạy trên MySQL

2. QUAN HỆ, CÓ QUẢN LÝ HOÀN TOÀN
     → Google lo vá, sao lưu, HA

3. ⚠ HỖ TRỢ MySQL
     → Cloud SQL có MySQL, PostgreSQL,
       SQL Server

4. ⚠ TỐI ƯU CHO MỘT VÙNG,
   ĐƠN GIẢN VÀ TIẾT KIỆM NHẤT
     → đúng vị trí của Cloud SQL

⚠ Di cư WordPress gần như không phải sửa gì:

WordPress tại chỗ
    → MySQL tự quản
        ↓
    Database Migration Service
        ↓
Cloud SQL for MySQL
        ↓
    ⚠ Chỉ đổi chuỗi kết nối
      trong wp-config.php
    ⚠ KHÔNG sửa mã WordPress
    ⚠ KHÔNG đổi schema

⚠ Vì sao Spanner là thừa ở đây:

SPANNER
    ✔ quan hệ, ACID
    ✔ mở rộng ngang toàn cầu
        ↓
    ⚠ Nhưng đề nói rõ:
      "TỐI ƯU CHO MỘT VÙNG"
      "ĐƠN GIẢN và TIẾT KIỆM NHẤT"
        ↓
    ⚠ Spanner ĐẮT hơn nhiều
    ⚠ Và WordPress KHÔNG được
      chứng nhận chạy trên Spanner
        ↓
    → dùng Spanner ở đây là
      trả tiền cho thứ không cần

Vì sao các phương án khác sai

  • C (Cloud Spanner) — phương án gần nhất vì cũng là CSDL quan hệ có quản lý. Nhưng nó sinh ra cho quy mô toàn cầu với nhất quán mạnh, đắt hơn đáng kể, và đề chỉ cần một vùng cùng tiết kiệm nhất.

  • B (BigQuery) — kho phân tích (OLAP). WordPress cần đọc ghi giao dịch độ trễ thấp, hoàn toàn sai loại.

  • A (Cloud Storage) — lưu tệp, không phải cơ sở dữ liệu. (Nó có vai trò cho ảnh và tệp tải lên của WordPress, nhưng không thay được CSDL.)

Ghi nhớ

⚠ Chọn CSDL — bảng phải thuộc: | Nhu cầu | Chọn | |---|---| | MySQL/PostgreSQL/SQL Server, một vùng | ⚠ Cloud SQL | | Quan hệ + toàn cầu + nhất quán mạnh | Spanner | | NoSQL tài liệu, ứng dụng di động | Firestore | | NoSQL thông lượng cực lớn | Bigtable | | Phân tích | BigQuery | | Bộ nhớ đệm | Memorystore |

Từ khoá nhận diện:

"nâng và chuyển MySQL/WordPress" → Cloud SQL "nhiều châu lục, nhất quán mạnh" → Spanner "đơn giản nhất, tiết kiệm nhất, một vùng" → ⚠ thường là Cloud SQL "báo cáo, phân tích" → BigQuery

Cloud SQL — điều cần nhớ Điểm
Ba engine MySQL, PostgreSQL, SQL Server
Có quản lý ⚠ vá, sao lưu, sao chép, chuyển đổi dự phòng
HA primary + standby ở hai zone, tự chuyển đổi
Read replica giảm tải đọc, có cả xuyên vùng
Point-in-time recovery quay về một thời điểm
Mở rộng ⚠ chủ yếu DỌC — máy to hơn
Cloud SQL Enterprise Plus hiệu năng cao hơn, bảo trì gần như không gián đoạn
Kiến trúc WordPress trên Google Cloud Thành phần
Ứng dụng Compute Engine, GKE, hoặc Cloud Run
CSDL ⚠ Cloud SQL for MySQL
Ảnh và tệp tải lên ⚠ Cloud Storage, không để trên đĩa máy chủ
CDN Cloud CDN cho nội dung tĩnh
Bộ nhớ đệm Memorystore for Redis
Chống tấn công Cloud Armor
Công cụ di cư CSDL Công cụ
Database Migration Service ⚠ di cư MySQL/PostgreSQL với ít gián đoạn
mysqldump + import cách đơn giản, có gián đoạn
Datastream CDC liên tục
Lời khuyên ⚠ luôn thử ở môi trường staging trước
Tối ưu chi phí Cloud SQL Việc
Chọn đúng kích cỡ máy ⚠ Recommender gợi ý sau vài tuần
Cam kết dài hạn (CUD) giảm sâu nếu chạy lâu dài
Tắt HA cho môi trường dev ⚠ HA gần gấp đôi chi phí
Dừng instance dev ngoài giờ
Dọn bản sao lưu cũ

Ba việc kiểm chứng: | Việc | Cách | |---|---| | Có cần HA không | ⚠ production thì có, dev thì không | | Kích cỡ máy có hợp không | Cloud Monitoring — CPU và bộ nhớ | | Sao lưu có chạy không | ⚠ và đã thử KHÔI PHỤC bao giờ chưa |

Và một việc mà rất nhiều đội bỏ qua cho tới ngày cần đến: thử khôi phục từ bản sao lưu. Cloud SQL sao lưu tự động rất đáng tin, nhưng một bản sao lưu chưa từng được khôi phục thử vẫn chỉ là một giả thiết — và ngày mất dữ liệu là ngày tệ nhất để kiểm chứng giả thiết đó.

Câu 53 Exploring Data Transformation with Google Cloud

A data analyst is running queries on BigQuery.

Which of the following statements about BigQuery is NOT true?

  1. A

    It can run fast SQL queries over petabytes of data.

  2. B

    It is primarily designed for Online Transaction Processing (OLTP) workloads like e-commerce checkouts.

  3. C

    It separates the concepts of storage and compute, allowing them to scale independently.

  4. D

    It is a serverless platform, meaning users do not need to provision or manage underlying infrastructure.

Xem giải thích

Đáp án

B — "BigQuery chủ yếu được thiết kế cho tải OLTP như thanh toán trong thương mại điện tử." Đây là mệnh đề KHÔNG đúng.

Vì sao đúng

⚠ Đây là câu hỏi PHỦ ĐỊNH — đề hỏi mệnh đề nào SAI. Ba mệnh đề còn lại đều mô tả đúng BigQuery.

⚠ BigQuery là OLAP, không phải OLTP:

OLTP (Online Transaction Processing)
    → nhiều thao tác NHỎ, rất nhanh
    → đọc/ghi vài dòng, độ trễ mili-giây
    → ⚠ ví dụ: thanh toán đơn hàng
    → công cụ: Cloud SQL, Spanner,
      Firestore, Bigtable

OLAP (Online Analytical Processing)
    → ⚠ ÍT truy vấn nhưng mỗi truy vấn
      QUÉT RẤT NHIỀU dữ liệu
    → độ trễ tính bằng GIÂY
    → ví dụ: doanh thu theo vùng
      trong ba năm
    → công cụ: ⚠ BIGQUERY

⚠ Vì sao BigQuery không làm được việc thanh toán:

Thanh toán đơn hàng cần:
    - ⚠ giao dịch ACID trên vài dòng
    - ⚠ độ trễ dưới 100ms
    - ⚠ hàng nghìn thao tác/giây
        ↓
    BigQuery:
    ⚠ độ trễ truy vấn tính bằng GIÂY
    ⚠ tính tiền theo BYTE QUÉT
    ⚠ ⚠ có giới hạn số lần
      UPDATE/DELETE mỗi bảng
        ↓
    → sai hoàn toàn loại tải công việc

⚠ Ba mệnh đề kia đều ĐÚNG:

A. "SQL nhanh trên hàng petabyte"
     → ⚠ ĐÚNG — đây là thế mạnh chính

C. "TÁCH lưu trữ và tính toán,
    mở rộng độc lập"
     → ⚠ ĐÚNG — kiến trúc cốt lõi:
       Colossus lưu, Dremel tính,
       Jupiter nối hai bên

D. "Serverless, không phải
    cấp phát hạ tầng"
     → ⚠ ĐÚNG — không có cụm nào
       để quản

Vì sao các phương án khác sai

(Ở câu phủ định, "sai" nghĩa là mệnh đề đó đúng về BigQuery, nên không phải đáp án.)

  • A — BigQuery thật sự chạy được truy vấn SQL trên hàng petabyte trong vài giây.
  • C — kiến trúc tách lưu trữ khỏi tính toán là đặc điểm nền tảng của BigQuery.
  • D — BigQuery là serverless: không cụm, không máy chủ, không cấp phát.

Ghi nhớ

⚠ OLTP và OLAP — bảng phải thuộc: | | OLTP | OLAP | |---|---|---| | Mục đích | giao dịch | phân tích | | Truy vấn | nhiều, nhỏ | ⚠ ít, quét rất nhiều | | Độ trễ | mili-giây | giây | | Dữ liệu | hiện hành | lịch sử | | Sản phẩm | Cloud SQL, Spanner, Firestore, Bigtable | ⚠ BigQuery |

Từ khoá nhận diện:

"thanh toán, đặt hàng, cập nhật hồ sơ" → OLTP "báo cáo, xu hướng, tổng hợp nhiều năm" → OLAP → BigQuery "tách lưu trữ và tính toán" → BigQuery "serverless kho dữ liệu" → BigQuery

⚠ Kiến trúc BigQuery — vì sao nó nhanh Thành phần
Colossus hệ thống tệp phân tán — lớp LƯU TRỮ
Dremel engine truy vấn — lớp TÍNH TOÁN
Jupiter ⚠ mạng siêu nhanh nối hai lớp
Borg điều phối tài nguyên
Định dạng cột (Capacitor) ⚠ chỉ đọc cột cần — nền tảng của tốc độ
⚠ Vì sao tách lưu trữ và tính toán lại quan trọng Lý do
Lưu trữ rẻ, tăng bao nhiêu cũng được
Tính toán chỉ trả khi chạy truy vấn
Hai bên mở rộng ĐỘC LẬP
So với kho truyền thống ⚠ phải mua cụm cho cả hai cùng lúc
Hệ quả lưu dữ liệu nhiều năm mà không tốn tiền tính toán
Hai mô hình giá của BigQuery Mô hình
On-demand ⚠ trả theo BYTE QUÉT
Capacity (slots) trả theo năng lực tính toán — dễ dự đoán
Lưu trữ theo GB, ⚠ rẻ hơn sau 90 ngày không sửa
Giảm chi phí ⚠ SELECT đúng cột, phân vùng, cụm
⚠ Bẫy lớn nhất SELECT * quét toàn bộ cột — rất tốn
Khi nào BigQuery vẫn "gần" thời gian thực Trường hợp
Storage Write API nạp luồng, đọc được ngay
BI Engine ⚠ bộ nhớ đệm trong RAM cho dashboard
Materialized view kết quả tính sẵn
⚠ Vẫn không phải thay thế cho CSDL giao dịch
Mẹo làm câu hỏi PHỦ ĐỊNH Mẹo
⚠ Gạch chân chữ NOT / KHÔNG trước khi đọc phương án
Đánh dấu Đ/S cho từng phương án
Chọn cái duy nhất bị đánh S
Lỗi hay mắc ⚠ đọc lướt rồi chọn mệnh đề ĐÚNG nhất

Ba việc kiểm chứng: | Việc | Cách | |---|---| | Truy vấn quét bao nhiêu byte | ⚠ xem ước tính ở góc trên trước khi chạy | | Bảng đã phân vùng chưa | bq show — xem timePartitioning | | Ai đang tốn nhiều nhất | INFORMATION_SCHEMA.JOBS |

Và một thói quen nhỏ giúp tiết kiệm rất nhiều tiền trong BigQuery: luôn nhìn con số ước tính byte quét trước khi bấm chạy. Nó hiện sẵn trong giao diện, mất một giây để đọc, và là thứ duy nhất phân biệt một truy vấn vài xu với một truy vấn vài triệu đồng.

Câu 54 Modernize Infrastructure and Applications with Google Cloud

A company is migrating its on-premises e-commerce application to Google Cloud. Instead of moving their self-managed MySQL database to a virtual machine, they decide to migrate it to Google's fully managed Cloud SQL service. This allows them to take advantage of automated backups and patching without fundamentally changing the application's code.

What is this migration strategy called?

  1. A

    Replatform

  2. B

    Reimagine

  3. C

    Rehost

  4. D

    Retire

Xem giải thích

Đáp án

A — Replatform.

Vì sao đúng

Replatform nằm giữa rehost và refactor: có thay đổi, nhưng chỉ đủ để dùng dịch vụ có quản lý, không viết lại ứng dụng.

⚠ Đọc đề thấy đúng đặc trưng của replatform:

"THAY VÌ chuyển MySQL tự quản
 sang một máy ảo..."
        ↓
    ⚠ Đó chính là mô tả rehost
      bị BÁC BỎ

"...họ chuyển sang Cloud SQL
 có quản lý hoàn toàn"
        ↓
    ⚠ ĐỔI nền tảng chạy CSDL

"...KHÔNG thay đổi về căn bản
 mã của ứng dụng"
        ↓
    ⚠ KHÔNG phải refactor
        ↓
    → REPLATFORM

⚠ Ba mức thay đổi — nhìn cạnh nhau:

REHOST
  MySQL tự quản → MySQL trên VM
        ↓
    ⚠ vẫn tự vá, tự sao lưu,
      tự dựng HA

REPLATFORM             ← đề này
  MySQL tự quản → Cloud SQL
        ↓
    ⚠ chỉ đổi chuỗi kết nối
    ⚠ Google lo vá, sao lưu, HA

REFACTOR
  Ứng dụng khối → microservices,
  CSDL chia theo dịch vụ
        ↓
    ⚠ viết lại nhiều, mất hàng tháng

⚠ Vì sao replatform thường là điểm ngọt:

Công sức: vừa phải
    → đổi chuỗi kết nối, thử lại

Lợi ích: rất lớn
    → ⚠ bỏ hẳn việc vá CSDL
    → ⚠ có sao lưu tự động và PITR
    → ⚠ bật HA bằng một hộp kiểm
    → ⚠ read replica trong vài phút
        ↓
    → tỉ lệ lợi ích trên công sức
      cao nhất trong ba chiến lược

⚠ Đối chiếu #13280 (cùng lô này) — đề đó khoá Rehost vì công ty phải ra khỏi trung tâm dữ liệu gấp và muốn thay đổi ít nhất có thể, chạy trên VM mô phỏng máy chủ cũ. Câu này khoá Replatform vì họ chủ động đổi sang dịch vụ có quản lý. Hai câu KHÔNG mâu thuẫn — chúng khác nhau ở mức độ thay đổi.

Vì sao các phương án khác sai

  • C (Rehost) — phương án gần nhất, và chính đề đã bác bỏ nó tường minh: "thay vì chuyển sang một máy ảo". Rehost là bê nguyên trạng lên VM.

  • B (Reimagine) — không phải một chiến lược trong bộ "6 R" chuẩn. Từ gần nghĩa là Refactor / Re-architect, và dù sao cũng đòi viết lại — trái với "không đổi mã ứng dụng".

  • D (Retire) — bỏ hẳn ứng dụng. Ở đây họ đang chuyển nó đi, không bỏ.

Ghi nhớ

⚠ Bộ "6 R" chiến lược di cư — bảng phải thuộc: | Chiến lược | Nội dung | |---|---| | Rehost | ⚠ bê nguyên lên VM — nhanh nhất, lợi ích ít nhất | | Replatform | ⚠ chỉnh nhẹ để dùng dịch vụ có quản lý — điểm ngọt | | Refactor | viết lại theo kiến trúc đám mây — lợi ích lớn nhất | | Repurchase | thay bằng SaaS | | Retire | ⚠ bỏ hẳn — thường 10–20% ứng dụng không ai dùng | | Retain | tạm giữ lại tại chỗ |

Từ khoá nhận diện:

"đổi sang dịch vụ có quản lý, không sửa mã" → Replatform "bê nguyên trạng, thay đổi ít nhất" → Rehost "tách microservices, viết lại" → Refactor "mua SaaS thay thế" → Repurchase

Các cặp replatform hay gặp Từ → Sang
MySQL/PostgreSQL tự quản → Cloud SQL
Máy chủ web trên VM → Cloud Run hoặc App Engine
Hadoop tự dựng → Dataproc
Kafka tự quản → Pub/Sub
Redis tự quản → Memorystore
Airflow tự dựng → Cloud Composer
Kho dữ liệu truyền thống → BigQuery
⚠ Lợi ích cụ thể khi bỏ CSDL tự quản Lợi ích
Không còn vá hệ điều hành và MySQL
Sao lưu tự động + PITR
HA bằng một hộp kiểm ⚠ tự chuyển đổi trong ~60 giây
Read replica trong vài phút
Giám sát và cảnh báo sẵn có
Nâng phiên bản có hỗ trợ
Cái giá của replatform Cái giá
Phải kiểm thử lại tương thích phiên bản, tham số
⚠ Mất một số quyền ở tầng CSDL không có SUPER privilege
Một số plugin, extension không được hỗ trợ ⚠ kiểm tra TRƯỚC
Khoá chân nhiều hơn rehost giảm bằng cách dùng engine chuẩn
Thứ tự nên theo trong một dự án di cư Bước
1 Retire trước — ⚠ thứ không dùng thì đừng chuyển
2 Repurchase những gì có SaaS tốt
3 Replatform phần hạ tầng phổ biến (CSDL, cache, queue)
4 Rehost phần còn lại nếu gấp
5 Refactor dần sau khi đã lên đám mây

Ba việc kiểm chứng: | Việc | Cách | |---|---| | Phiên bản có tương thích không | kiểm phiên bản MySQL Cloud SQL hỗ trợ | | Plugin/extension có chạy không | ⚠ thử ở staging trước | | Hiệu năng có giữ nguyên không | đo trước và sau khi chuyển |

Và một quy tắc rất đáng theo khi lập kế hoạch di cư: đừng chuyển thứ không ai dùng. Mỗi tổ chức đều có một số ứng dụng vẫn chạy chỉ vì chưa ai dám tắt — và bước "retire" thường tiết kiệm nhiều thời gian hơn mọi kỹ thuật tối ưu khác cộng lại.

Câu 55 Exploring Data Transformation with Google Cloud

A business analyst needs to run complex SQL queries over several years' worth of historical sales data, amounting to many terabytes. The goal is to identify long-term trends and patterns.

Which Google Cloud service is purpose-built for this type of large-scale analytical workload?

  1. A

    BigQuery

  2. B

    Cloud SQL

  3. C

    Cloud Spanner

  4. D

    Cloud Storage

Xem giải thích

Đáp án

A — BigQuery.

Vì sao đúng

Đề mô tả đúng loại tải công việc mà BigQuery sinh ra để làm: truy vấn SQL phức tạp, trên nhiều terabyte dữ liệu lịch sử, để tìm xu hướng dài hạn.

⚠ Ba manh mối ↔ BigQuery:

1. "SQL PHỨC TẠP"
     → BigQuery hỗ trợ SQL chuẩn
       đầy đủ, có window function,
       CTE, mảng và cấu trúc lồng

2. "NHIỀU NĂM DỮ LIỆU, HÀNG TERABYTE"
     → ⚠ BigQuery quét hàng petabyte
       trong vài giây

3. "TÌM XU HƯỚNG VÀ MẪU DÀI HẠN"
     → ⚠ đây là PHÂN TÍCH (OLAP),
       không phải giao dịch

⚠ Vì sao BigQuery nhanh đến vậy:

LƯU TRỮ THEO CỘT
    → truy vấn 3 cột trong bảng
      có 200 cột
        ↓
    ⚠ chỉ đọc 3 cột đó
    ⚠ không đọc 197 cột còn lại
        ↓
XỬ LÝ SONG SONG QUY MÔ LỚN
    → ⚠ hàng nghìn slot cùng chạy
      một truy vấn
        ↓
TÁCH LƯU TRỮ VÀ TÍNH TOÁN
    → thêm sức tính toán mà
      không phải chuyển dữ liệu

⚠ Vì sao ba phương án kia không hợp:

CLOUD SQL
    → ⚠ CSDL GIAO DỊCH, một máy chủ
    → truy vấn quét terabyte sẽ
      chạy hàng giờ hoặc treo

CLOUD SPANNER
    → quan hệ, quy mô lớn ✔
    → ⚠ nhưng tối ưu cho GIAO DỊCH
    → phân tích nặng thì đắt và chậm
      hơn BigQuery nhiều

CLOUD STORAGE
    → ⚠ lưu TỆP, không truy vấn được
    → (BigQuery CÓ THỂ đọc dữ liệu ở đó
       qua bảng ngoài, nhưng engine
       phân tích vẫn là BigQuery)

Vì sao các phương án khác sai

  • C (Cloud Spanner) — phương án gần nhất về mặt "quy mô lớn và SQL", nhưng Spanner tối ưu cho OLTP. Chạy phân tích nặng trên Spanner vừa chậm hơn vừa đắt hơn, và còn ảnh hưởng tới tải giao dịch đang chạy.

  • B (Cloud SQL) — CSDL một máy chủ cho tải giao dịch. Không có kiến trúc song song để quét terabyte.

  • D (Cloud Storage) — chỉ lưu tệp, tự nó không chạy được truy vấn SQL.

Ghi nhớ

⚠ Chọn công cụ theo loại tải — bảng phải thuộc: | Tải | Chọn | |---|---| | Phân tích, báo cáo, xu hướng | ⚠ BigQuery | | Giao dịch, một vùng | Cloud SQL | | Giao dịch, toàn cầu | Spanner | | Đọc/ghi khoá–giá trị cực nhanh | Bigtable | | Lưu tệp | Cloud Storage |

Từ khoá nhận diện:

"phân tích lịch sử, hàng terabyte, xu hướng" → BigQuery "thanh toán, đặt hàng" → Cloud SQL / Spanner "dashboard cho người dùng nghiệp vụ" → Looker trên BigQuery "dự báo bằng SQL" → BigQuery ML

⚠ Giảm chi phí truy vấn BigQuery Việc
⚠ ĐỪNG dùng SELECT * quét mọi cột — lỗi tốn tiền số một
Phân vùng theo ngày ⚠ truy vấn một tháng chỉ quét một tháng
Gom cụm (clustering) theo cột hay lọc
Xem ước tính byte trước khi chạy hiện sẵn trong giao diện
Đặt hạn mức byte tối đa mỗi truy vấn chặn tai nạn
Materialized view tính sẵn phần hay dùng
BI Engine đệm RAM cho dashboard
Tính năng phân tích mạnh của BigQuery Tính năng
Window function xếp hạng, chạy tích luỹ
Mảng và STRUCT dữ liệu lồng nhau
APPROX_* ⚠ đếm phân biệt gần đúng — nhanh hơn nhiều
Time travel ⚠ truy vấn dữ liệu 7 ngày trước
BigQuery ML mô hình bằng SQL
Geospatial phân tích không gian
Search index tìm kiếm văn bản
Tổ chức dữ liệu phân tích theo lớp Lớp
Raw / bronze nguyên trạng, không sửa
Staging / silver đã làm sạch
Mart / gold ⚠ đã mô hình hoá cho nghiệp vụ
Công cụ Dataform để quản chuỗi biến đổi SQL
BigQuery còn là gì ngoài kho dữ liệu Vai trò
Bảng ngoài / BigLake truy vấn dữ liệu ngoài tại chỗ
Analytics Hub chia sẻ dữ liệu giữa các tổ chức
BigQuery Omni ⚠ truy vấn dữ liệu nằm ở đám mây khác
Log Analytics chạy SQL trên log

Ba việc kiểm chứng: | Việc | Cách | |---|---| | Truy vấn quét bao nhiêu | ⚠ ước tính hiện ở góc trên | | Bảng đã phân vùng chưa | bq show | | Ai tốn nhiều nhất | INFORMATION_SCHEMA.JOBS |

Và một quyết định thiết kế nên làm ngay từ bảng đầu tiên: phân vùng theo cột ngày. Nó không tốn gì để bật lúc tạo bảng, nhưng thêm vào sau khi bảng đã có hàng tỉ dòng thì phải viết lại toàn bộ bảng — và cho tới lúc đó, mọi truy vấn đều đang quét nhiều hơn mức cần thiết.

Câu 56 Trust and Security with Google Cloud

A temporary contractor needs access to a Google Cloud project to update the code for an application running on Compute Engine VMs.

According to the principle of least privilege, which predefined IAM role would be most appropriate to grant them?

  1. A

    Project Browser

  2. B

    Project Viewer

  3. C

    Project Editor

  4. D

    Project Owner

Xem giải thích

Đáp án

C — Project Editor.

Vì sao đúng

Trong bốn vai được đưa ra, Editor là vai hẹp nhất mà vẫn đủ để nhà thầu làm được việc đề mô tả: cập nhật mã của ứng dụng chạy trên máy ảo Compute Engine.

⚠ So bốn vai với công việc cần làm:

BROWSER
    → ⚠ CHỈ xem cây phân cấp tài nguyên
    → không xem được nội dung
    → KHÔNG đủ

VIEWER
    → xem tài nguyên và cấu hình
    → ⚠ KHÔNG SỬA được gì
    → KHÔNG đủ để cập nhật mã

EDITOR                    ← đủ
    → xem + tạo + sửa + xoá tài nguyên
    → ⚠ triển khai được mã lên VM
    → ⚠ KHÔNG quản lý được QUYỀN
    → KHÔNG quản lý được thanh toán

OWNER
    → mọi quyền của Editor
    → ⚠ + CẤP QUYỀN cho người khác
    → ⚠ + quản lý thanh toán
    → QUÁ RỘNG cho nhà thầu tạm thời

⚠ Ranh giới quan trọng nhất giữa Editor và Owner:

EDITOR có thể đổi TÀI NGUYÊN
OWNER có thể đổi AI ĐƯỢC LÀM GÌ
        ↓
    ⚠ Owner tự cấp thêm quyền
      cho chính mình hoặc người khác
    ⚠ Owner gỡ được quyền của bạn
        ↓
    → tuyệt đối không cấp Owner
      cho người ngoài tổ chức

Ghi nhớ về chất lượng câu hỏi

Trong thực tế, quyền tối thiểu thật sự cho việc này còn hẹp hơn Editor rất nhiều. Nhà thầu chỉ cần triển khai mã lên vài máy ảo, nên các vai dựng sẵn phù hợp hơn sẽ là:

  • roles/compute.instanceAdmin.v1 — quản lý máy ảo
  • roles/compute.osLogin hoặc osAdminLogin — đăng nhập SSH vào máy
  • roles/iap.tunnelResourceAccessor — vào máy qua IAP mà không cần IP công khai

Editor cho quyền trên MỌI dịch vụ trong project — kể cả BigQuery, Cloud Storage, Pub/Sub — những thứ nhà thầu không cần đụng tới.

Nhưng các vai hẹp đó KHÔNG có trong danh sách phương án, và trong bốn vai cơ bản được đưa ra thì Editor là lựa chọn đúng. Khoá đáp án giữ nguyên là C. Quy tắc làm bài: chọn phương án phù hợp nhất CÓ TRONG DANH SÁCH — nhưng khi làm thật, hãy tìm vai dựng sẵn hẹp hơn.

Vì sao các phương án khác sai

  • B (Project Viewer) — phương án gần nhất theo hướng "càng hẹp càng tốt", nhưng Viewer chỉ đọc. Nhà thầu sẽ không triển khai được bản cập nhật nào — quyền tối thiểu vẫn phải đủ để làm việc.

  • D (Project Owner) — quá rộng: cho phép cấp quyền cho người khác và quản lý thanh toán. Vi phạm nghiêm trọng nguyên tắc quyền tối thiểu.

  • A (Project Browser) — chỉ cho xem cấu trúc phân cấp (danh sách project, folder), không xem được nội dung tài nguyên. Còn hẹp hơn Viewer.

Ghi nhớ

⚠ Các vai cơ bản của IAM — bảng phải thuộc: | Vai | Làm được gì | |---|---| | Browser | chỉ xem CÂY phân cấp | | Viewer | xem tài nguyên và cấu hình, KHÔNG sửa | | Editor | ⚠ xem + tạo + sửa + xoá, KHÔNG quản quyền | | Owner | ⚠ mọi thứ + CẤP QUYỀN + thanh toán | | ⚠ Google khuyến nghị | dùng vai DỰNG SẴN thay cho bốn vai này |

Từ khoá nhận diện:

"chỉ xem, kiểm toán" → Viewer "cần sửa và triển khai" → Editor (hoặc vai dựng sẵn hẹp hơn) "quản lý quyền cho người khác" → Owner "quyền tối thiểu trong thực tế" → ⚠ vai dựng sẵn theo dịch vụ

Nguyên tắc quyền tối thiểu Nguyên tắc
Cấp đúng đủ để làm việc, không hơn
⚠ Không hơn nhưng cũng không thiếu
Ưu tiên vai dựng sẵn > vai cơ bản
Hẹp nhất vai tuỳ biến — tốn công bảo trì
Công cụ ⚠ IAM Recommender — gợi ý thu hẹp dựa trên mức dùng thật
⚠ Với NGƯỜI NGOÀI tổ chức Biện pháp
Cấp quyền CÓ THỜI HẠN ⚠ IAM Conditions theo thời gian hết hạn
Giới hạn phạm vi một project, không phải cả tổ chức
Bắt buộc MFA
Bật Data Access audit log biết họ đã xem gì
⚠ Đặt lịch GỠ QUYỀN bước hay bị quên nhất
Ghi lại lý do cấp phục vụ kiểm toán
Vai dựng sẵn hay dùng cho Compute Engine Vai
compute.instanceAdmin.v1 quản lý máy ảo
compute.osLogin SSH với quyền thường
compute.osAdminLogin SSH với quyền sudo
compute.viewer chỉ xem
iap.tunnelResourceAccessor ⚠ vào máy qua IAP, không cần IP công khai
Ba cách siết chặt hơn nữa Cách
IAM Conditions theo thời gian, IP, tài nguyên cụ thể
IAM Deny policy ⚠ chặn tường minh một số quyền dù có vai
Organization Policy đặt lằn ranh cho cả tổ chức

Ba việc kiểm chứng: | Việc | Cách | |---|---| | Nhà thầu đang có quyền gì | gcloud projects get-iam-policy | | Họ có dùng hết quyền đó không | ⚠ IAM Recommender sau vài tuần | | Quyền đã hết hạn chưa | kiểm IAM Conditions, hoặc lịch nhắc thủ công |

Và một việc nên làm cùng lúc với việc cấp quyền cho nhà thầu: đặt luôn ngày hết hạn. IAM Conditions cho phép ghi thẳng thời điểm quyền tự mất hiệu lực — và đó là cách duy nhất chắc chắn rằng một hợp đồng ba tháng không biến thành một tài khoản có quyền sửa production suốt ba năm.

Câu 57 Exploring Data Transformation with Google Cloud

A financial services company needs a database for a global trading platform. The two absolute requirements are: It must be a relational database with full support for SQL and ACID transactions. It must scale horizontally across multiple continents while providing strong global consistency.

Which Google Cloud database is the only one that meets both of these requirements?

  1. A

    Cloud Spanner

  2. B

    Cloud SQL

  3. C

    Cloud Bigtable

  4. D

    BigQuery

Xem giải thích

Đáp án

A — Cloud Spanner.

Vì sao đúng

Đề nêu hai yêu cầu tuyệt đối, và điểm mấu chốt là chúng phải cùng tồn tại:

⚠ Hai yêu cầu, và vì sao chỉ Spanner có cả hai:

YÊU CẦU 1
  Quan hệ đầy đủ: SQL + giao dịch ACID
        ↓
    Cloud SQL   ✔
    Spanner     ✔
    Bigtable    ✘ (chỉ ACID trong 1 dòng)
    BigQuery    ✘ (không phải OLTP)

YÊU CẦU 2
  Mở rộng NGANG xuyên lục địa +
  nhất quán mạnh TOÀN CẦU
        ↓
    Cloud SQL   ✘ (chỉ mở rộng DỌC)
    Spanner     ✔
        ↓
    ⚠ GIAO của hai tập:
      CHỈ CÒN SPANNER

⚠ TrueTime — thứ làm nên điều bất thường này:

Định lý CAP nói: khi mạng phân mảnh,
phải chọn giữa nhất quán và sẵn sàng
        ↓
    Spanner không phá vỡ định lý,
    nhưng làm phân mảnh trở nên
    CỰC KỲ HIẾM
        ↓
    ⚠ Đồng hồ nguyên tử + GPS
      ở mọi trung tâm dữ liệu
    ⚠ Mạng riêng của Google
        ↓
    → nhất quán ngoại (external
      consistency): mọi giao dịch có
      THỨ TỰ TOÀN CỤC thống nhất

⚠ Vì sao sàn giao dịch cần chính xác điều đó:

Lệnh mua ở Tokyo và
lệnh bán ở New York
        ↓
    ⚠ Phải có MỘT thứ tự duy nhất
      mà cả hai nơi đều đồng ý
        ↓
    Nếu chỉ nhất quán cuối cùng
        ↓
    ⚠ Hai nơi thấy hai trạng thái
      sổ lệnh khác nhau
    ⚠ Khớp lệnh sai, đối soát sai

⚠ Gần trùng với #13253 (lô 138) và #13141 (lô 138) — cả ba đề đều nêu cùng bộ yêu cầu (quan hệ + toàn cầu + nhất quán mạnh) cho ba ngành khác nhau (bán lẻ, thanh toán, giao dịch chứng khoán), và cả ba cùng khoá Spanner. Hoàn toàn nhất quán. Đây là mẫu đề lặp nhiều nhất trong phần cơ sở dữ liệu.

Vì sao các phương án khác sai

  • B (Cloud SQL) — phương án gần nhất: thoả yêu cầu 1 (quan hệ, ACID) nhưng trượt yêu cầu 2. Nó mở rộng dọc, và bản sao xuyên vùng chỉ nhất quán cuối cùng.

  • C (Cloud Bigtable) — thoả yêu cầu 2 một phần (mở rộng ngang) nhưng trượt yêu cầu 1: không phải quan hệ, không SQL đầy đủ, giao dịch chỉ trong một dòng.

  • D (BigQuery) — có SQL và quy mô lớn, nhưng là kho phân tích, không phải CSDL giao dịch.

Ghi nhớ

⚠ Ma trận chọn CSDL — bảng phải thuộc: | CSDL | Quan hệ? | Mở rộng ngang? | Nhất quán mạnh toàn cầu? | |---|---|---|---| | Cloud SQL | ✔ | ✘ | ✘ | | Spanner | ✔ | ✔ | ⚠ ✔ — duy nhất | | Bigtable | ✘ | ✔ | ✘ (chỉ trong dòng) | | Firestore | ✘ | ✔ | ✔ trong phạm vi hẹp | | BigQuery | SQL nhưng OLAP | ✔ | không áp dụng |

Từ khoá nhận diện:

"quan hệ + nhiều châu lục + nhất quán mạnh" → ⚠ Spanner, luôn luôn "MySQL/PostgreSQL một vùng" → Cloud SQL "phi quan hệ + hàng triệu thao tác/giây" → Bigtable "phân tích lịch sử" → BigQuery

Spanner — điều cần nhớ Điểm
Phương ngữ GoogleSQL và PostgreSQL
TrueTime ⚠ đồng hồ nguyên tử + GPS
Nhất quán ngoại mức mạnh nhất
Đơn vị node hoặc processing unit
Cấu hình regional, dual-region, multi-region
Interleaved tables đặt bảng con cạnh bảng cha
⚠ Chống hotspot đừng dùng khoá chính tăng dần
SLA ⚠ tới 99,999% với cấu hình đa vùng
⚠ Ba mức nhất quán Mức
Nhất quán ngoại (external) Spanner — có thứ tự toàn cục
Nhất quán mạnh đọc luôn thấy ghi mới nhất
Nhất quán cuối cùng ⚠ có thể đọc dữ liệu cũ trong chốc lát
Khi nào KHÔNG chọn Spanner Trường hợp
Ứng dụng chỉ chạy một vùng Cloud SQL rẻ hơn nhiều
Tải nhỏ, ngân sách chặt Spanner có mức sàn
Chỉ chạy phân tích BigQuery
Không cần giao dịch nhiều dòng Bigtable
Thiết kế trên Spanner — điều quyết định Điều
⚠ Khoá chính quan trọng hơn cả số node
Tránh UUID tuần tự, timestamp, số tăng dần
Nên băm, UUIDv4, hoặc đảo bit
Công cụ kiểm Key Visualizer

Ba việc kiểm chứng: | Việc | Cách | |---|---| | CPU có quá tải không | ⚠ giữ dưới 65% cho đa vùng | | Có hotspot không | Key Visualizer | | Truy vấn nào chậm | Query Insights |

Và một mẫu câu hỏi rất đáng nhận diện khi ôn thi: hễ đề liệt kê "quan hệ" và "toàn cầu" và "nhất quán mạnh" cùng một lúc thì đáp án là Spanner. Đó là sản phẩm duy nhất trong danh mục Google Cloud có cả ba, và các đề thi khai thác điều đó rất nhiều lần dưới những vỏ ngành nghề khác nhau.

Câu 58 Trust and Security with Google Cloud

An employee receives an email that appears to be from their company's IT department, asking them to click a link and enter their corporate credentials on a web page to perform a mandatory security update.

The web page is a fake, designed to steal their username and password.

What type of cybersecurity attack is this?

  1. A

    Phishing

  2. B

    Ransomware

  3. C

    Man-in-the-middle

  4. D

    Distributed Denial-of-Service (DDoS)

Xem giải thích

Đáp án

A — Phishing (tấn công lừa đảo).

Vì sao đúng

Đề mô tả đúng ba yếu tố cấu thành một cuộc tấn công phishing: mạo danh một nguồn đáng tin, tạo cớ khẩn cấp, và lừa lấy thông tin đăng nhập qua một trang web giả.

⚠ Ba yếu tố trong đề:

1. MẠO DANH
     "email trông như từ bộ phận IT
      của công ty"
        ↓
2. CỚ HỢP LÝ VÀ KHẨN CẤP
     "cập nhật bảo mật BẮT BUỘC"
        ↓
3. THU THẬP THÔNG TIN ĐĂNG NHẬP
     "trang web GIẢ để đánh cắp
      tên đăng nhập và mật khẩu"
        ↓
    ⚠ Đây là định nghĩa của phishing:
      tấn công vào CON NGƯỜI,
      không phải vào hệ thống

⚠ Vì sao phishing hiệu quả đến vậy:

Không cần khai thác lỗ hổng nào
        ↓
    ⚠ Nó khai thác TÂM LÝ:
      - tin vào thẩm quyền (bộ phận IT)
      - sợ hậu quả ("bắt buộc")
      - vội vàng, không kiểm tra kỹ
        ↓
    → Mọi tường lửa và bản vá
      đều không giúp gì
        ↓
    ⚠ Đây là véc-tơ tấn công
      phổ biến nhất trong thực tế

⚠ Ba loại tấn công kia khác hẳn:

RANSOMWARE
    → mã độc MÃ HOÁ dữ liệu
      rồi đòi tiền chuộc
    → ⚠ phishing thường là
      CÁCH ransomware xâm nhập,
      nhưng là hai thứ khác nhau

MAN-IN-THE-MIDDLE
    → ⚠ kẻ tấn công CHẶN GIỮA
      hai bên đang liên lạc
    → nạn nhân không hề gõ gì
      vào trang giả

DDoS
    → dội lưu lượng làm dịch vụ sập
    → ⚠ không đánh cắp gì cả

Vì sao các phương án khác sai

  • B (ransomware) — phương án gần nhất vì phishing thường là cửa vào của ransomware. Nhưng bản thân ransomware là mã độc mã hoá dữ liệu đòi tiền chuộc; đề chỉ mô tả bước đánh cắp thông tin đăng nhập.

  • C (man-in-the-middle) — kẻ tấn công xen vào giữa một phiên liên lạc hợp lệ. Ở đây nạn nhân chủ động truy cập một trang giả.

  • D (DDoS) — nhằm làm ngừng dịch vụ, không đánh cắp thông tin.

Ghi nhớ

⚠ Các loại tấn công phải phân biệt được: | Loại | Đặc điểm | |---|---| | Phishing | ⚠ email/tin nhắn giả mạo lừa lấy thông tin | | Spear phishing | ⚠ nhắm vào MỘT người cụ thể, có nghiên cứu trước | | Whaling | nhắm vào lãnh đạo cấp cao | | Vishing / Smishing | qua điện thoại / tin nhắn SMS | | Ransomware | mã hoá dữ liệu, đòi tiền chuộc | | Man-in-the-middle | chặn giữa hai bên liên lạc | | DDoS | dội lưu lượng làm ngừng dịch vụ | | Social engineering | ⚠ khái niệm bao trùm — thao túng con người |

Từ khoá nhận diện:

"email giả, trang đăng nhập giả" → phishing "dữ liệu bị mã hoá, đòi tiền chuộc" → ransomware "nghe lén, chặn giữa" → man-in-the-middle "làm sập bằng lưu lượng" → DDoS → Cloud Armor

⚠ Cách phòng phishing hiệu quả nhất Cách
⚠ Khoá bảo mật phần cứng (Titan Security Key) CHỐNG ĐƯỢC phishing hoàn toàn
Vì sao ⚠ khoá gắn với TÊN MIỀN — trang giả không kích hoạt được
MFA nói chung tốt, nhưng OTP vẫn bị lừa được
Đào tạo và diễn tập phishing
Bộ lọc email Gmail chặn phần lớn
Chính sách xác minh qua kênh khác gọi điện xác nhận
Dịch vụ Google Cloud liên quan Dịch vụ
Titan Security Key ⚠ chống phishing ở tầng phần cứng
Google Workspace security lọc thư, cảnh báo
BeyondCorp / IAP ⚠ xét cả thiết bị và ngữ cảnh, không chỉ mật khẩu
Advanced Protection Program cho tài khoản rủi ro cao
Security Command Center phát hiện hoạt động bất thường
Cloud Audit Logs lần theo sau sự cố
Dấu hiệu nhận biết một email phishing Dấu hiệu
Tạo cảm giác KHẨN CẤP ⚠ "bắt buộc", "trong 24 giờ"
Tên miền người gửi hơi lệch it-suport@ thay vì it-support@
Link không khớp với chữ hiển thị ⚠ rê chuột để xem URL thật
Hỏi thông tin đăng nhập ⚠ bộ phận IT thật KHÔNG BAO GIỜ hỏi mật khẩu
Lỗi chính tả, cách xưng hô chung chung
Việc phải làm khi nghi bị lừa Việc
Đổi mật khẩu NGAY
Thu hồi mọi phiên đăng nhập ⚠ bước hay bị quên
Báo cho đội bảo mật
Rà audit log xem có truy cập lạ không
Kiểm tra quy tắc chuyển tiếp thư ⚠ kẻ tấn công hay cài để đọc thư sau này

Ba việc kiểm chứng cho một tổ chức: | Việc | Cách | |---|---| | Đã bắt buộc MFA chưa | Admin console | | Tài khoản quản trị đã dùng khoá phần cứng chưa | ⚠ ưu tiên nhóm này trước | | Nhân viên có nhận ra phishing không | diễn tập phishing nội bộ định kỳ |

Và một sự thật đáng suy nghĩ về bảo mật đám mây: kẻ tấn công hiếm khi phá vỡ mã hoá của Google — họ chỉ cần một nhân viên gõ mật khẩu vào một trang giả. Đó cũng là lý do khoá bảo mật phần cứng, thứ khiến trang giả không thể hoạt động dù nạn nhân có bấm vào, là khoản đầu tư bảo mật hiệu quả nhất trên mỗi đồng bỏ ra.

Câu 59 Innovating with Google Cloud Artificial Intelligence

A cutting-edge research institute is using TensorFlow to build and train extremely large and complex machine learning models. To reduce training time from weeks to days, they need access to Google's purpose-built, proprietary hardware that is highly optimized for TensorFlow performance.

What is this hardware accelerator called?

  1. A

    Field-Programmable Gate Array (FPGA)

  2. B

    Graphics Processing Unit (GPU)

  3. C

    Central Processing Unit (CPU)

  4. D

    Tensor Processing Unit (TPU)

Xem giải thích

Đáp án

D — Tensor Processing Unit (TPU).

Vì sao đúng

Đề nêu ba đặc điểm, và cả ba chỉ đúng TPU: phần cứng độc quyền do Google tự thiết kế, tối ưu cho TensorFlow, và rút ngắn thời gian huấn luyện.

⚠ Ba manh mối ↔ TPU:

1. "PHẦN CỨNG ĐỘC QUYỀN của Google"
     → ⚠ TPU do Google tự thiết kế
     → CPU và GPU là của Intel/AMD/NVIDIA

2. "TỐI ƯU CAO ĐỘ CHO TENSORFLOW"
     → ⚠ TPU sinh ra cho TensorFlow
       (nay hỗ trợ cả JAX và PyTorch)

3. "GIẢM THỜI GIAN HUẤN LUYỆN
    TỪ TUẦN XUỐNG NGÀY"
     → mô hình rất lớn, rất phức tạp

⚠ Vì sao TPU nhanh cho học sâu:

Huấn luyện mạng nơ-ron chủ yếu là
NHÂN MA TRẬN khổng lồ, lặp đi lặp lại
        ↓
    CPU: vài chục lõi mạnh, đa dụng
        → linh hoạt, không chuyên
    GPU: hàng nghìn lõi nhỏ
        → tốt cho tính toán song song
    ⚠ TPU: MẠCH CHUYÊN DỤNG (ASIC)
        chỉ để nhân ma trận
        ↓
    ⚠ Systolic array — dữ liệu chảy
      qua mảng nhân mà không phải
      quay lại bộ nhớ liên tục
        ↓
    → hiệu suất trên mỗi watt
      cao hơn nhiều

⚠ Khi nào chọn cái nào:

CPU
  → mô hình nhỏ, tiền xử lý,
    suy luận đơn giản

GPU
  → ⚠ linh hoạt nhất: nhiều framework,
    nhiều kiểu mô hình
  → mô hình vừa, nghiên cứu đa dạng

TPU
  → ⚠ mô hình RẤT LỚN,
    huấn luyện dài ngày,
    kiến trúc phù hợp
  → hiệu quả chi phí cao nhất
    ở quy mô lớn

Vì sao các phương án khác sai

  • B (GPU) — phương án gần nhất và thật sự dùng được cho việc này. Nhưng GPU không phải phần cứng độc quyền của Google (chủ yếu là NVIDIA), và không được thiết kế riêng cho TensorFlow. Đề nhấn mạnh cả hai điểm đó.

  • C (CPU) — đa dụng, chậm hơn nhiều lần cho học sâu quy mô lớn.

  • A (FPGA) — mạch lập trình lại được, không phải sản phẩm Google cung cấp cho khách hàng huấn luyện ML trên Google Cloud.

Ghi nhớ

⚠ Ba loại bộ xử lý cho ML — bảng phải thuộc: | Loại | Đặc điểm | |---|---| | CPU | đa dụng, ít lõi mạnh — tiền xử lý, mô hình nhỏ | | GPU | ⚠ hàng nghìn lõi, linh hoạt, hỗ trợ mọi framework | | TPU | ⚠ ASIC của Google, chuyên nhân ma trận, quy mô rất lớn |

Từ khoá nhận diện:

"phần cứng độc quyền của Google, tối ưu cho TensorFlow" → TPU "linh hoạt, nhiều framework, CUDA" → GPU "mô hình nhỏ, tiền xử lý" → CPU "huấn luyện mô hình khổng lồ, tiết kiệm chi phí ở quy mô lớn" → TPU

TPU — điều cần biết Điểm
Bản chất ASIC — mạch tích hợp chuyên dụng
Framework hỗ trợ ⚠ TensorFlow, JAX, và PyTorch/XLA
Pod ⚠ hàng nghìn chip nối bằng mạng tốc độ cao
Dùng ở đâu Vertex AI, GKE, Compute Engine
Thế hệ v2, v3, v4, v5e, v5p…
Ironwood / thế hệ mới tối ưu cho suy luận mô hình lớn
⚠ Khi nào TPU KHÔNG phải lựa chọn tốt Trường hợp
Mô hình nhỏ chi phí không bù được
Kiến trúc có nhiều thao tác tuỳ biến ⚠ TPU kén hơn GPU
Cần thư viện chỉ chạy trên CUDA
Phần lớn thời gian tốn ở nạp dữ liệu ⚠ nâng phần cứng không giúp gì
Lời khuyên đo xem nút thắt ở đâu TRƯỚC khi đổi phần cứng
Tối ưu chi phí huấn luyện Việc
Spot / Preemptible ⚠ rẻ hơn nhiều, có checkpoint thì không sợ mất
Lưu checkpoint thường xuyên
Bắt đầu bằng mô hình nhỏ chứng minh ý tưởng trước
Transfer learning ⚠ thường bỏ qua được việc huấn luyện từ đầu
Chọn vùng có TPU và giá tốt
Tắt tài nguyên ngay khi xong
Nút thắt thật khi huấn luyện Nút thắt
Nạp dữ liệu (I/O) ⚠ rất hay là thủ phạm thật
Tiền xử lý trên CPU
Giao tiếp giữa các node khi huấn luyện phân tán
Tính toán mới là chỗ TPU/GPU giúp
Công cụ profiler của TensorFlow / Vertex AI

Ba việc kiểm chứng: | Việc | Cách | |---|---| | Nút thắt nằm ở đâu | ⚠ chạy profiler trước khi đổi phần cứng | | Mức sử dụng chip bao nhiêu | thấp nghĩa là nghẽn ở dữ liệu | | Chi phí mỗi lần huấn luyện | so giữa GPU và TPU trên cùng bài toán |

Và một lời nhắc thực tế trước khi ai đó đề xuất mua thêm phần cứng mạnh hơn: rất nhiều lần vấn đề không nằm ở chip. Nếu đường ống nạp dữ liệu không theo kịp, TPU đắt tiền sẽ ngồi chờ đúng như GPU rẻ hơn đã ngồi chờ — và profiler là thứ cho bạn biết điều đó trong mười phút.

Câu 60 Exploring Data Transformation with Google Cloud

An application is composed of several independent microservices. When a new user signs up, the user service" needs to notify the "email service" and the "analytics service" so they can perform their respective tasks.

To ensure the services are not tightly coupled, what product should be used to act as a reliable, asynchronous message bus between them?

  1. A

    Dataflow

  2. B

    Cloud SQL

  3. C

    Pub/Sub

  4. D

    Cloud Load Balancing

Xem giải thích

Đáp án

C — Pub/Sub.

Vì sao đúng

Đề dùng đúng ba chữ mô tả Pub/Sub: bus thông điệp, bất đồng bộ, đáng tin cậy — và mục tiêu là giảm ràng buộc chặt (tight coupling) giữa các dịch vụ.

⚠ Trước và sau khi có Pub/Sub:

RÀNG BUỘC CHẶT
  user service
      ├── gọi HTTP → email service
      └── gọi HTTP → analytics service
        ↓
    ⚠ user service PHẢI BIẾT
      địa chỉ của cả hai
    ⚠ Một dịch vụ chết → đăng ký
      người dùng LỖI THEO
    ⚠ Thêm dịch vụ thứ ba
      → phải SỬA MÃ user service

TÁCH RỜI VỚI PUB/SUB
  user service → publish "user.created"
                     ↓
                 TOPIC
          ┌────────┴────────┐
   subscription        subscription
   email service      analytics service
        ↓
    ⚠ user service KHÔNG biết
      ai đang nghe
    ⚠ Một bên chết → thông điệp
      NẰM CHỜ, không mất
    ⚠ Thêm dịch vụ mới → chỉ tạo
      thêm SUBSCRIPTION

⚠ Fan-out — cơ chế then chốt:

MỘT topic, NHIỀU subscription
        ↓
    ⚠ MỖI subscription nhận
      MỘT BẢN SAO ĐẦY ĐỦ
        ↓
    Email service xử lý theo cách của nó
    Analytics service theo cách của nó
        ↓
    → hai bên độc lập hoàn toàn

Xem thêm #13260 (lô 138) — Pub/Sub với vai trò "cửa trước" của dữ liệu luồng. Câu này là vai trò thứ hai: bus thông điệp giữa các microservice. Cùng một sản phẩm, hai kiểu dùng.

Vì sao các phương án khác sai

  • A (Dataflow) — công cụ xử lý dữ liệu luồng và lô. Nó tiêu thụ dữ liệu từ Pub/Sub, không thay thế vai trò truyền tin.

  • B (Cloud SQL) — cơ sở dữ liệu. Có thể giả lập hàng đợi bằng bảng, nhưng đó là mẫu chống (anti-pattern): không mở rộng, phải hỏi vòng (polling), khó bảo đảm giao đúng một lần.

  • D (Cloud Load Balancing) — phân phối lưu lượng đồng bộ tới các backend. Người gọi vẫn phải chờ phản hồi, và backend chết thì lời gọi vẫn lỗi.

Ghi nhớ

⚠ Đồng bộ và bất đồng bộ — bảng phải thuộc: | | Đồng bộ (HTTP) | Bất đồng bộ (Pub/Sub) | |---|---|---| | Người gọi | CHỜ phản hồi | ⚠ gửi xong đi luôn | | Bên nhận chết | ⚠ lời gọi LỖI | thông điệp NẰM CHỜ | | Thêm bên nhận | phải sửa mã bên gửi | ⚠ chỉ thêm subscription | | Hợp với | cần kết quả ngay | việc chạy nền, thông báo |

Từ khoá nhận diện:

"tách rời, bất đồng bộ, bus thông điệp" → Pub/Sub "nhận luồng dữ liệu quy mô lớn" → Pub/Sub "xử lý và biến đổi luồng" → Dataflow "hàng đợi tác vụ có kiểm soát tốc độ" → Cloud Tasks "định tuyến sự kiện tới dịch vụ" → Eventarc

Bốn khái niệm của Pub/Sub Khái niệm
Topic nơi bên gửi đẩy thông điệp vào
Subscription ⚠ mỗi cái nhận MỘT BẢN SAO đầy đủ
Push / Pull Pub/Sub gọi bạn, hay bạn tự kéo
Dead-letter topic ⚠ nơi chứa thông điệp giao hỏng nhiều lần
Bảo đảm của Pub/Sub Bảo đảm
Giao ít nhất một lần mặc định
Exactly-once tuỳ chọn, trong một vùng
Ordering key giữ thứ tự theo khoá
Giữ thông điệp ⚠ mặc định 7 ngày
Tự mở rộng không cần khai trước dung lượng
⚠ Bên nhận phải xử lý được thông điệp TRÙNG Lý do
Giao ít nhất một lần nghĩa là có thể lặp
Cách chữa ⚠ thiết kế IDEMPOTENT — chạy lại không đổi kết quả
Ví dụ kiểm message_id đã xử lý chưa trước khi làm
Sai lầm giả định mỗi thông điệp chỉ đến đúng một lần
Chọn giữa ba công cụ bất đồng bộ Công cụ
Pub/Sub ⚠ fan-out, thông lượng lớn, nhiều bên nhận
Cloud Tasks hàng đợi tác vụ, ⚠ kiểm soát tốc độ gửi tới một đích
Eventarc định tuyến sự kiện Google Cloud tới Cloud Run

Ba việc kiểm chứng: | Việc | Cách | |---|---| | Có bị dồn ứ không | num_undelivered_messages | | Thông điệp có bị mất không | ⚠ kiểm hạn giữ và dead-letter topic | | Xử lý trùng có an toàn không | rà lại tính idempotent của bên nhận |

Và một lợi ích của kiến trúc tách rời chỉ lộ rõ khi hệ thống lớn lên: thêm một tính năng mới không cần đụng tới mã cũ. Sáu tháng nữa, khi đội chống gian lận cũng muốn biết mỗi lần có người đăng ký, họ chỉ cần tạo một subscription — còn dịch vụ người dùng thì không hề biết có gì thay đổi.