ETL là ba bước đưa dữ liệu từ nguồn vào kho phân tích: Extract (lấy ra), Transform (biến đổi), Load (nạp vào).
- Extract — đọc dữ liệu từ nguồn: database ứng dụng, API, file CSV từ đối tác, log. Thường chỉ lấy phần mới hoặc thay đổi kể từ lần trước để giảm tải cho nguồn.
- Transform — làm sạch và chuẩn hoá: bỏ bản ghi trùng, xử lý giá trị null, đổi múi giờ, thống nhất đơn vị tiền, join với bảng khác, tính cột mới như
revenue = price * quantity. - Load — ghi vào data warehouse, thường qua một bảng staging trước để kiểm tra rồi mới đưa vào bảng chính.
Ví dụ: mỗi đêm lấy đơn hàng hôm qua từ MySQL, bỏ đơn test, đổi giờ UTC sang giờ Việt Nam, gắn tên sản phẩm, rồi nạp vào bảng fact_orders để sáng hôm sau dashboard có số.
Lưu ý: khi được hỏi câu này, nên kể một pipeline mình từng làm (nguồn gì, biến đổi gì, chạy bao lâu một lần) thay vì chỉ đọc định nghĩa ba chữ cái.