
Triển khai hệ thống dữ liệu trên CLOUD
Trong thế giới hiện đại, cuộc chơi của kỹ thuật dữ liệu đã hoàn toàn chuyển lên nền tảng đám mây (Cloud). Việc xây dựng các hệ thống trên máy chủ vật lý đã trở nên lỗi thời, nhường chỗ cho sự linh hoạt, khả năng mở rộng gần như vô hạn và sức mạnh của các dịch vụ quản lý sẵn có từ các nhà cung cấp hàng đầu. Khóa học này được thiết kế để trở thành bước cuối cùng trong hành trình của bạn, trang bị những kỹ năng cần thiết để đưa toàn bộ pipeline dữ liệu từ môi trường local lên một hạ tầng đám mây hoàn chỉnh.
Chương trình sẽ tập trung vào một trong những nền tảng phổ biến nhất là Google Cloud Platform (GCP), cung cấp cho bạn một lộ trình thực hành bài bản để xây dựng một hệ thống dữ liệu end-to-end. Bạn sẽ học cách thiết kế một Data Lake hiện đại trên Google Cloud Storage (GCS), triển khai một Data Warehouse mạnh mẽ với Google BigQuery, và xây dựng các pipeline xử lý dữ liệu tự động, không cần quản lý máy chủ (serverless) bằng Cloud Functions.
Thời lượng: 24h

KẾT QUẢ ĐẠT ĐƯỢC

NẮM VỮNG CÁC DỊCH VỤ CLOUD CỐT LÕI
Hiểu và có thể sử dụng các dịch vụ quan trọng nhất của GCP cho một Kỹ sư Dữ liệu.

THIẾT KẾ DATA LAKE TRÊN CLOUD
Có khả năng sử dụng Google Cloud Storage (GCS) để xây dựng một Data Lake hiệu quả về chi phí và có khả năng mở rộng.

QUẢN LÝ BẢO MẬT VÀ TRUY CẬP (IAM)
Sử dụng IAM để quản lý quyền hạn cho người dùng và dịch vụ một cách an toàn, tuân thủ nguyên tắc đặc quyền tối thiểu.

XÂY DỰNG PIPELINE DỮ LIỆU SERVERLESS TỰ ĐỘNG HÓA
Tận dụng các dịch vụ serverless như Cloud Functions để xây dựng các pipeline ETL/ELT tự động được kích hoạt bởi sự kiện.

TỐI ƯU HÓA CHI PHÍ VÀ GIÁM SÁT HỆ THỐNG
Nắm vững các kỹ thuật giám sát hiệu năng, theo dõi và tối ưu hóa chi phí lưu trữ cũng như xử lý dữ liệu để vận hành hệ thống.


Yêu cầu tiên quyết:
-
- Hoàn thành kiến thức của tất cả các khóa học trước.
- Hiểu rõ về một pipeline dữ liệu hoàn chỉnh và các thành phần của nó.
Nội dung khóa học
1. Kiến trúc dữ liệu trên Cloud
- Cloud Computing Model:
- Giải thích sự khác biệt giữa IaaS (máy chủ ảo, tự quản lý), PaaS (nền tảng quản lý sẵn), SaaS (dịch vụ phần mềm).
- Khi nào chọn mô hình nào cho dự án dữ liệu.
- Kiến trúc Data Lake và Data Warehouse trên Cloud:
- Data Lake: nơi lưu trữ mọi loại dữ liệu (thô, bán cấu trúc, phi cấu trúc) trên Cloud Storage (AWS S3, GCS).
- Data Warehouse: kho dữ liệu có cấu trúc, tối ưu cho phân tích – BigQuery (GCP), Redshift (AWS).
- Mô hình kiến trúc tổng thể: ingest, storage, processing, serving.
- So sánh AWS và GCP:
- Bảng đối chiếu các dịch vụ tương ứng cho Data Engineer: Storage, Compute, ETL, Monitoring, IAM…
- Lựa chọn nền tảng theo nhu cầu và xu thế thị trường Việt Nam/thế giới.
2. Lưu trữ dữ liệu
- Amazon S3:
- Khái niệm buckets (thùng chứa), objects (file), cấu trúc phân cấp trên S3.
- Lifecycle policies: tự động chuyển dữ liệu sang tier lưu trữ rẻ hơn, xóa file cũ.
- Versioning: quản lý nhiều phiên bản dữ liệu, phục hồi khi cần thiết.
- Quản lý dữ liệu lớn: upload/download multi-part, kiểm soát chi phí.
- Google Cloud Storage (GCS):
- Cấu trúc bucket, phân quyền truy cập (ACL), quản lý lifecycle, quản lý object metadata.
- So sánh thao tác, bảo mật, tối ưu chi phí giữa GCS và S3.
- Kết nối với Spark, dbt, Airflow:
- Hướng dẫn cài đặt credential, kết nối GCS/S3 với các công cụ đã học.
- Thực hành đọc/ghi dữ liệu từ Spark, nạp dữ liệu lên data warehouse, trigger pipeline tự động với Airflow.
3. Xử lý dữ liệu trên Cloud
- AWS Glue:
- Crawler & Data Catalog: tự động phát hiện schema, lập danh mục dữ liệu.
- ETL jobs: viết và chạy script ETL bằng Python/Spark trên đám mây.
- Glue Studio: giao diện trực quan thiết kế job ETL, theo dõi tiến trình.
- GCP Dataflow:
- Lý thuyết về pipeline batch và streaming (Apache Beam).
- Thực hành viết job Dataflow với Python, xử lý dữ liệu từ GCS, lưu vào BigQuery.
- So sánh tính năng, cost, khả năng mở rộng giữa Glue và Dataflow.
- Quy trình thực tiễn:
- Xây dựng một pipeline đọc dữ liệu từ cloud storage, làm sạch, biến đổi, lưu kết quả vào data warehouse.
4. Bảo mật & IAM
- IAM fundamentals:
- Người dùng (users), nhóm (groups), vai trò (roles), policy phân quyền.
- Triết lý phân quyền tối thiểu (least privilege principle).
- Quản lý quyền truy cập:
- Thiết lập quyền cho từng bucket S3/GCS, cấu hình ACL, role-based access.
- Thực hành tạo service account, phân quyền đọc/ghi cho Spark, Airflow, dbt trên Cloud.
- Bảo mật dữ liệu:
- Giới thiệu Cloud Key Management Service (KMS) cho mã hóa, bảo vệ khóa.
- Thực hành gán policy bảo vệ bucket, dùng service account cho pipeline.
5. Triển khai pipeline dữ liệu trên Cloud
- Deploy Spark job:
- Chạy Spark job trên Amazon EMR hoặc Google Dataproc: so sánh cluster managed vs serverless.
- Kết nối và chia sẻ dữ liệu giữa Spark, GCS/S3, BigQuery/Redshift.
- Tích hợp Airflow với Cloud Services:
- Thiết lập DAGs tự động hóa xử lý dữ liệu trên Cloud.
- Gọi các dịch vụ cloud qua operators, sensors, connection.
- Lưu kết quả vào Data Warehouse:
- Hướng dẫn ghi dữ liệu cuối pipeline vào BigQuery (GCP) hoặc Redshift (AWS).
- Thực hành tạo bảng, schema, tối ưu hóa performance và chi phí lưu trữ.
- Bài học về data partitioning, clustering trên BigQuery/Redshift.
6. Giám sát và tối ưu chi phí
- Giám sát hệ thống:
- Sử dụng AWS CloudWatch, GCP Monitoring để theo dõi health của dịch vụ, pipeline, và tài nguyên sử dụng.
- Thiết lập logging, alerting (cảnh báo lỗi, báo động khi vượt chi phí/ngưỡng).
- Tối ưu chi phí lưu trữ và xử lý:
- Cách chọn tier lưu trữ, lifecycle rules để giảm chi phí S3/GCS.
- Tối ưu job xử lý dữ liệu: batch size, scheduling, sử dụng spot/preemptible instance cho Spark/Dataproc.
- Thực hành tính toán cost, dự báo ngân sách hệ thống dữ liệu lớn.
7. BÀI THỰC HÀNH CUỐI KHÓA: Triển khai một pipeline ETL Serverless trên GCP
- Yêu cầu:
- IAM: Tạo một Service Account với quyền hạn tối thiểu (chỉ đọc GCS và ghi vào BigQuery).
- Storage: Tạo một GCS bucket với 2 thư mục: raw_data và processed_data.
- Data Warehouse: Tạo một Dataset và một bảng trong BigQuery.
- Processing: Viết một Cloud Function bằng Python, được kích hoạt khi có file CSV mới được tải lên thư mục raw_data.
- Pipeline: Cloud Function sẽ đọc file CSV, thực hiện một phép biến đổi đơn giản (ví dụ: đổi tên cột, đổi kiểu dữ liệu) và nạp dữ liệu đã xử lý vào bảng BigQuery. Toàn bộ quá trình phải sử dụng Service Account đã tạo.

Bài viết liên quan
