Quay lại bộ đề
Question #164 Topic 1
You are planning to load some of your existing on-premises data into BigQuery on Google Cloud. You want to either stream or batch-load data, depending on your use case. Additionally, you want to mask some sensitive data before loading into BigQuery. You need to do this in a programmatic way while keeping costs to a minimum. What should you do?
Bạn đang có kế hoạch tải một số dữ liệu cục bộ (on-premises) hiện tại của mình vào BigQuery trên Google Cloud. Bạn muốn stream hoặc tải hàng loạt (batch-load) dữ liệu, tùy thuộc vào trường hợp sử dụng của mình. Ngoài ra, bạn muốn che giấu (mask) một số dữ liệu nhạy cảm trước khi tải vào BigQuery. Bạn cần thực hiện việc này theo cách lập trình trong khi vẫn giữ chi phí ở mức tối thiểu. Bạn nên làm gì?
A
Use Cloud Data Fusion to design your pipeline, use the Cloud DLP plug-in to de-identify data within your pipeline, and then move the data into BigQuery.
Sử dụng Cloud Data Fusion để thiết kế pipeline của bạn, sử dụng plug-in Cloud DLP để ẩn danh dữ liệu (de-identify) trong pipeline, và sau đó di chuyển dữ liệu vào BigQuery.
B
Use the BigQuery Data Transfer Service to schedule your migration. After the data is populated in BigQuery, use the connection to the Cloud Data Loss Prevention (Cloud DLP) API to de-identify the necessary data.
Sử dụng BigQuery Data Transfer Service để lập lịch di chuyển của bạn. Sau khi dữ liệu được điền vào BigQuery, sử dụng kết nối với API Cloud Data Loss Prevention (Cloud DLP) để ẩn danh dữ liệu cần thiết.
C
Create your pipeline with Dataflow through the Apache Beam SDK for Python, customizing separate options within your code for streaming, batch processing, and Cloud DLP. Select BigQuery as your data sink.
Tạo pipeline của bạn với Dataflow thông qua Apache Beam SDK cho Python, tùy chỉnh các tùy chọn riêng biệt trong mã nguồn của bạn cho streaming, xử lý theo lô (batch) và Cloud DLP. Chọn BigQuery làm sink chứa dữ liệu của bạn.
D
Set up Datastream to replicate your on-premise data on BigQuery.
Thiết lập Datastream để sao chép dữ liệu cục bộ của bạn trên BigQuery.
Giải thích & Tài liệu tham khảo
Yêu cầu là xây dựng một giải pháp tải dữ liệu (hỗ trợ cả streaming và batch), thực hiện che giấu dữ liệu nhạy cảm (data masking) trước khi lưu vào BigQuery, thực hiện theo cách lập trình (programmatic) và tối thiểu hóa chi phí.
- C. Sử dụng Dataflow với Apache Beam SDK: Đây là lựa chọn tối ưu nhất.
- Theo cách lập trình (Programmatic): Sử dụng Apache Beam SDK (Python) cho phép các kỹ sư dữ liệu viết code chi tiết để kiểm soát toàn bộ logic biến đổi, tích hợp trực tiếp với thư viện API của Cloud DLP.
- Tối thiểu chi phí và Linh hoạt: Dataflow là dịch vụ serverless, tự động mở rộng/thu nhỏ (autoscaling) tài nguyên và bạn chỉ trả tiền cho lượng tài nguyên thực tế sử dụng trong thời gian chạy. So với Cloud Data Fusion (yêu cầu cụm chạy liên tục và có chi phí tài nguyên nền khá đắt đỏ), Dataflow tiết kiệm chi phí hơn rất nhiều cho cả batch và streaming.
- Ẩn danh trước khi lưu: Tích hợp Cloud DLP vào pipeline Dataflow đảm bảo rằng dữ liệu nhạy cảm được che giấu (masking/de-identify) trước khi ghi vào BigQuery, tránh rò lọt dữ liệu nhạy cảm vào kho lưu trữ dữ liệu.
- Các phương án khác:
- A: Cloud Data Fusion là giao diện đồ họa kéo thả (không phải thuần programmatic) và chi phí vận hành cụm Dataproc làm nền tảng bên dưới thường cao hơn nhiều so với Dataflow.
- B: BigQuery Data Transfer Service chỉ hỗ trợ tải dữ liệu theo lô từ các nguồn cố định, không linh hoạt cho streaming tùy chỉnh và việc ẩn danh sau khi dữ liệu đã lưu vào BigQuery có nguy cơ làm lộ lọt dữ liệu nhạy cảm trong thời gian ngắn.
- D: Datastream chủ yếu là công cụ Change Data Capture (CDC) để đồng bộ hóa cơ sở dữ liệu, không hỗ trợ tốt các tùy biến lập trình phức tạp và che giấu dữ liệu bằng Cloud DLP linh hoạt trước khi lưu.
(Đáp án được gợi ý bởi AI)