CDC PIPELINE · Data EngineeringVượt qua giới hạn của xử lý theo lô,
hãy tự mình hoàn thiện pipeline CDC theo thời gian thực
Dữ liệu vận hành liên tục thay đổi, bạn có đang truy vấn toàn bộ bảng mỗi lần không?
Nội dung bao quát từng bước, từ nguyên lý cốt lõi đến triển khai thực tế CDC(Change Data Capture), công nghệ phát hiện và truyền các thay đổi của cơ sở dữ liệu gần như theo thời gian thực.
- Debezium
- MySQL
- Kafka
- Kafka Connect
- PostgreSQL
Không chỉ dừng lại ở việc nhập các giá trị cài đặt theo hướng dẫn.
Bạn sẽ học vì sao cần CDC, mỗi thành phần truyền dữ liệu như thế nào,
và khi vận hành cần cân nhắc những gì.
Bạn sẽ học những nội dung như thế này
Sau khi hiểu các khái niệm, bạn sẽ trực tiếp xây dựng hệ thống và cuối cùng kết nối với góc nhìn vận hành.
01
Lý do cần CDC và nguyên lý cốt lõi
Xem xét những hạn chế của phương thức batch và thu thập gia tăng dựa trên updated_at, đồng thời hiểu lý do CDC theo dõi các thay đổi dữ liệu nhanh chóng và chính xác hơn.
- Thu thập các sự kiện thay đổi Insert · Update · Delete
- Sự khác biệt giữa Batch và CDC
- Các trường hợp ứng dụng thực tế như phân tích, đồng bộ hóa tìm kiếm và nhật ký kiểm toán
02
Cách đọc và diễn giải MySQL Binlog
Học về cấu trúc MySQL Binlog – điểm khởi đầu của CDC – và cách ghi nhận dữ liệu thay đổi, đồng thời tìm hiểu theo dòng chảy cách Debezium đọc dữ liệu này.
- Nguyên lý hoạt động và các định dạng chính của Binlog
- Hiểu nội dung tệp Binlog
- Cấu hình và quyền MySQL cho CDC
03
Vai trò của Kafka và Kafka Connect
Học cách Kafka lưu trữ và truyền các sự kiện thay đổi một cách ổn định, cũng như cấu trúc Kafka Connect kết nối Source và Sink.
- Các khái niệm cốt lõi về Topic · Partition · Offset
- Source Connector và Sink Connector
- Thông thạo thiết kế cơ bản có cân nhắc đến thứ tự thông điệp, xử lý lại và khả năng mở rộng
04
Thực hành xây dựng pipeline CDC với Debezium
Trong môi trường cục bộ dựa trên Docker Compose, bạn sẽ trực tiếp xây dựng toàn bộ pipeline để dữ liệu thay đổi được truyền đến PostgreSQL.
MySQL
→
Debezium
→
Kafka
→
PostgreSQL
- Đăng ký Connector và kiểm tra cài đặt
- Phân tích cấu trúc sự kiện CDC được tạo ra
- Xác minh việc phản ánh dữ liệu Insert · Update · Delete
05
Các vấn đề gặp phải trong vận hành thực tế và phương pháp xử lý
Không chỉ dừng lại ở việc chạy pipeline một lần, nội dung còn đề cập đến Snapshot, Offset, chuyển đổi thông điệp và các kịch bản khôi phục sự cố cần thiết trong môi trường vận hành.
- Tối ưu hóa Snapshot của Debezium
- Khởi động lại Connector và xử lý lại dựa trên Offset
- Chiến lược SMT, đảm bảo thứ tự dữ liệu và Schema Evolution
Giới thiệu giảng viên
Tôi là kỹ sư dữ liệu đang làm việc thực tế, từng thiết kế và vận hành luồng dữ liệu cho các dịch vụ quy mô lớn.
SỰ NGHIỆP GIẢNG VIÊN
Truyền đạt rõ ràng những điểm cốt lõi của
CDC từ góc nhìn của người có kinh nghiệm thực tế và nhà tuyển dụng.
- Từng làm kỹ sư dữ liệu và phỏng vấn viên tại Kakao
- Trưởng nhóm kỹ thuật dữ liệu của một dịch vụ toàn cầu hiện nay
Thay vì liệt kê các tính năng, khóa học tập trung vào lý do chọn cấu trúc này, những điểm dễ phát sinh vấn đề và cách một kỹ sư dữ liệu nên tiếp cận để giải quyết vấn đề.
Lưu ý trước khi tham gia khóa học
Nếu chuẩn bị môi trường và các khái niệm cơ bản dưới đây, bạn sẽ có thể theo dõi phần thực hành thuận tiện hơn.
Môi trường thực hành
Kiến thức nền tảng được khuyến nghị
- Cú pháp SQL cơ bản
- Kiến thức cơ bản về cơ sở dữ liệu quan hệ
- Kinh nghiệm sử dụng các lệnh Docker cơ bản
Hướng dẫn học tập
- Không bắt buộc phải có kinh nghiệm về Kafka hay Debezium. Chúng tôi sẽ giải thích từ những khái niệm cốt lõi.
- Tập trung vào việc hiểu luồng dữ liệu tổng thể và vai trò của từng thành phần thay vì học thuộc từng công nghệ.
- Trực tiếp kiểm tra các giá trị cấu hình và dữ liệu, đồng thời xác minh từng bước quá trình di chuyển dữ liệu.
Dành cho những người này
Từ những người mới tiếp cận CDC lần đầu đến những người muốn mở rộng pipeline dữ liệu trong thực tế, tất cả đều có thể tham gia.
- Dành cho những ai muốn mở rộng pipeline dữ liệu lấy batch làm trọng tâm thành một cấu trúc thời gian thực
- Dành cho những ai muốn học CDC, Debezium và Kafka Connect từ đầu
- Dành cho những ai muốn sử dụng các sự kiện thay đổi dữ liệu trong hệ thống phân tích, tìm kiếm và đồng bộ hóa.
- Những người muốn học cách xây dựng pipeline CDC có thể vận hành và phương pháp ứng phó với sự cố