Python chuyên sâu cho Data Engineer

Đối với một Kỹ sư Dữ liệu, việc biết Python là chưa đủ; bạn phải sử dụng Python như một Kỹ sư Phần mềm thực thụ. Khóa học này được thiết kế để đưa bạn vượt qua giới hạn của việc viết các script đơn lẻ, hướng tới việc xây dựng các pipeline dữ liệu chuyên nghiệp, hiệu quả và có thể bảo trì. Đây là nơi tư duy lập trình và kỹ thuật dữ liệu giao thoa, tạo nên nền tảng vững chắc để bạn xây dựng các hệ thống dữ liệu có độ tin cậy cao.

Chương trình sẽ trang bị cho bạn một bộ kỹ năng Python chuyên sâu, bắt đầu bằng Lập trình Hướng đối tượng (OOP) – phương pháp luận giúp bạn kiến tạo nên các thành phần pipeline dưới dạng module, dễ dàng tái sử dụng và mở rộng. Bạn sẽ học cách làm chủ việc thu thập dữ liệu từ các nguồn API phức tạp, xử lý các kịch bản xác thực và phân trang để lấy dữ liệu quy mô lớn. Khóa học cũng sẽ giúp bạn xử lý thành thạo các định dạng dữ liệu công nghiệp, từ JSON phổ biến, XML truyền thống cho đến Parquet – định dạng cột hiệu năng cao cho Big Data.

Thời lượng: 30h

Hình thức đào tạo:

    • Đào tạo trực tiếp tại lớp học
    • Đào tạo trực tuyến
    • Đào tạo hybrid (trực tuyến kết hợp trực tiếp)
    • Đào tạo tại văn phòng khách hàng

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

  1. TƯ DUY LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG (OOP)
    Có khả năng thiết kế và xây dựng các pipeline dưới dạng các module (class, object) dễ dàng tái sử dụng, bảo trì và mở rộng.
  2. THÀNH THẠO THU THẬP DỮ LIỆU TỪ API
    Tự tin tương tác với các RESTful API, xử lý các phương thức HTTP, authentication để lấy dữ liệu quy mô lớn.
  3. XỬ LÝ HIỆU QUẢ CÁC ĐỊNH DẠNG DỮ LIỆU PHỨC TẠP
    Đọc, ghi và biến đổi các định dạng dữ liệu phổ biến trong ngành như JSON, XML và đặc biệt là định dạng cột hiệu năng cao Parquet.
  4. XÁC THỰC VÀ ĐẢM BẢO CHẤT LƯỢNG DỮ LIỆU
    Sử dụng Pydantic để định nghĩa schema, tự động xác thực và làm sạch dữ liệu ngay từ nguồn, ngăn chặn dữ liệu lỗi đi vào hệ thống.
  5. VIẾT CODE SẴN SÀNG CHO PRODUCTION
    Trang bị các kỹ năng thiết yếu để vận hành code trong môi trường thực tế: ghi log hệ thống, xử lý các ngoại lệ (lỗi).

Đối tượng tham gia

Nội dung khóa học

 1. Lập trình Hướng đối tượng (OOP) cho Data Pipelines
    • Ôn tập các khái niệm cơ bản: Class, Object, Attribute, Method.
    • Từ duy thiết kế: Đóng gói các chức năng của pipeline vào các class riêng biệt (ví dụ: APIExtractor, DataTransformer, DataLoader).
    • Tính kế thừa (Inheritance): Xây dựng các class chuyên biệt từ một class cơ sở.
    • Tính đa hình (Polymorphism): Thiết kế các phương thức có thể hoạt động với nhiều loại đối tượng khác nhau.
 2. Xử lí dữ liệu với Pandas
    • Giới thiệu về Pandas 
      • Pandas Series và DataFrame là gì?
      • Đọc và ghi dữ liệu từ các file CSV, Excel.
      • Thao tác cơ bản: xem dữ liệu (head, tail), thông tin (info, describe).
    • Truy xuất và Lọc dữ liệu với Pandas
      • Truy xuất theo chỉ mục và tên: ilocloc.
      • Lọc dữ liệu theo một hoặc nhiều điều kiện (boolean indexing).
      • Xử lý các giá trị thiếu (missing values): isna(), fillna(), dropna().
    • Tổng hợp dữ liệu với Pandas
      • Thực hiện các phép tính tổng hợp: sum(), mean(), count(), nunique().
      • Nhóm dữ liệu với groupby() và áp dụng các hàm tổng hợp.
    • Kết hợp các bảng dữ liệu (DataFrames)
      • Kết hợp dữ liệu với pd.merge() (tương tự JOIN trong SQL).
      • Nối dữ liệu với pd.concat().
 3. Tương tác với API chuyên sâu
    • Tổng quan về RESTful API: Resources, HTTP Methods (GET, POST), Status Codes.
    • Sử dụng thư viện requests để gửi các yêu cầu API.
    • Xử lý các loại Authentication phổ biến (API Keys, OAuth).
    • Kỹ thuật xử lý phân trang (Pagination) để lấy toàn bộ dữ liệu.
    • Thực hành: Xây dựng một class APIClient để tương tác với một API thực tế.
 4.  Xử lý các Định dạng Dữ liệu Phổ biến
    • Làm việc với dữ liệu JSON:
      • Sử dụng thư viện json để đọc và ghi file.
      • Parse các cấu trúc JSON lồng nhau (nested).
      • Sử dụng Pydantic để định nghĩa Schema và xác thực dữ liệu:
    • Parse dữ liệu JSON thành các đối tượng Python tin cậy.
    • Tự động validate schema, kiểm tra kiểu dữ liệu và các trường bắt buộc.
    • Xử lý tường minh các lỗi dữ liệu bị thiếu hoặc sai định dạng.
    • Làm việc với dữ liệu XML:
      • Giới thiệu về cấu trúc XML.
      • Sử dụng thư viện xml.etree.ElementTree để trích xuất dữ liệu.
    • Làm việc với định dạng Parquet:
      • Hiểu về định dạng lưu trữ theo cột (Columnar Storage) và lợi ích.
      • Sử dụng thư viện pyarrow để đọc và ghi file Parquet.
 5. Xây dựng Code Production-Ready
    • Ghi log (Logging):
      • Tại sao logging quan trọng hơn print().
      • Cấu hình thư viện logging để ghi log ra file với các cấp độ khác nhau (INFO, WARNING, ERROR).
    • Xử lý ngoại lệ (Error Handling):
      • Sử dụng try…except…finally để bắt và xử lý lỗi một cách an toàn.
      • Tạo các Custom Exception để quản lý lỗi theo nghiệp vụ.
    • Best Practices:
      • Quản lý thư viện với virtual environment và file requirements.txt.
      • Cấu trúc một dự án Python khoa học và dễ bảo trì.
 6. BÀI THỰC HÀNH CUỐI KHÓA: Xây dựng pipeline thu thập dữ liệu thị trường chứng khoán
    • Yêu cầu:
      • Thiết kế dự án theo mô hình OOP với các class chức năng rõ ràng.
      • Viết class để kết nối và lấy dữ liệu giá cổ phiếu lịch sử từ một API tài chính công khai (ví dụ: Alpha Vantage, Finnhub), có xử lý pagination.
      • Dữ liệu trả về (JSON) sẽ được xử lý, làm sạch.
      • Lưu dữ liệu đã xử lý xuống file Parquet, phân vùng theo mã cổ phiếu và năm.
      • Tích hợp logging và error handling đầy đủ cho toàn bộ pipeline.

LỊCH KHAI GIẢNG

(Đang cập nhật)

Bài viết liên quan