Chuyển tới nội dung chính

So sánh đầy đủ công cụ ETL trong Fabric

Microsoft Fabric cung cấp nhiều công cụ tích hợp và chuyển đổi dữ liệu, mỗi công cụ có mục đích và trường hợp sử dụng cụ thể.


🔥 Bảng so sánh công cụ cốt lõi

Công cụMục đích chínhTình huống phù hợpNền tảng kỹ thuậtThời gian thực
Dataflow Gen2ETL low-code, chuyển đổi dữ liệu trực quanNhà phân tích nghiệp vụ làm làm sạch và chuyển đổi dữ liệuPower Query (ngôn ngữ M)Xử lý hàng loạt
PipelinesĐiều phối và tự động hóa workflowĐiều phối quy trình ETL phức tạp, thực thi theo lịchAzure Data FactoryXử lý hàng loạt
NotebooksKỹ thuật dữ liệu dựa trên mãLogic chuyển đổi phức tạp, machine learning, phân tích nâng caoPython / Spark / R / ScalaXử lý hàng loạt
EventstreamThu thập dữ liệu streaming thời gian thựcIoT, sự kiện thời gian thực, streaming logTương tự KafkaStreaming thời gian thực
Data ActivatorGiám sát thời gian thực và trigger tự độngTrigger quy tắc nghiệp vụ, cảnh báo, hành động tự độngKiến trúc hướng sự kiệnGiám sát thời gian thực

📋 So sánh chi tiết

1️⃣ Dataflow Gen2

Bản chất: Công cụ ETL low-code / no-code

Tính năng cốt lõi:

  • ✅ Giao diện trực quan (Power Query)
  • ✅ Không cần viết mã
  • ✅ Hỗ trợ hơn 100 nguồn dữ liệu
  • ✅ Chức năng làm sạch và chuyển đổi dữ liệu tích hợp sẵn
  • ✅ Có thể xuất ra Lakehouse / Warehouse / Datamart

Người dùng mục tiêu:

  • Nhà phân tích nghiệp vụ
  • Nhà phát triển BI
  • Nhân viên làm việc với dữ liệu không quen với lập trình

Trường hợp sử dụng:

  • Nhập dữ liệu từ Excel / CSV
  • Làm sạch dữ liệu bẩn (loại trùng lặp, điền giá trị null)
  • Chuyển đổi và gộp dữ liệu đơn giản
  • Xây dựng dữ liệu lớp Bronze → Silver

Ngôn ngữ: Power Query (ngôn ngữ M)


2️⃣ Pipelines

Bản chất: Engine điều phối workflow (tương tự Azure Data Factory)

Tính năng cốt lõi:

  • ✅ Giao diện thiết kế kéo thả
  • ✅ Hỗ trợ logic điều kiện và vòng lặp phức tạp
  • ✅ Có thể gọi Dataflow / Notebook / Stored Procedure
  • ✅ Lập lịch và trigger tích hợp sẵn
  • ✅ Giám sát và xử lý lỗi

Người dùng mục tiêu:

  • Kỹ sư dữ liệu
  • Nhà phát triển ETL
  • Kỹ sư DevOps

Trường hợp sử dụng:

  • Điều phối nhiều bước ETL
  • Cập nhật dữ liệu tự động hàng ngày/hàng tuần
  • Thực thi các luồng khác nhau dựa trên điều kiện (if-else)
  • Gọi API hoặc dịch vụ bên ngoài
  • Sao chép lượng lớn dữ liệu (Copy Activity)

Hoạt động chính:

  • Copy Data
  • Dataflow
  • Notebook
  • Stored Procedure
  • Web Activity
  • For Each / Until / If Condition

3️⃣ Notebooks

Bản chất: Môi trường mã tương tác (dựa trên Jupyter)

Tính năng cốt lõi:

  • ✅ Hỗ trợ Python / PySpark / Scala / R
  • ✅ Kiểm soát lập trình đầy đủ
  • ✅ Có thể sử dụng Spark để xử lý big data
  • ✅ Hỗ trợ machine learning và phân tích nâng cao
  • ✅ Trực quan hóa và khám phá tương tác

Người dùng mục tiêu:

  • Nhà khoa học dữ liệu
  • Kỹ sư dữ liệu (quen với Python/Spark)
  • Kỹ sư ML

Trường hợp sử dụng:

  • Logic chuyển đổi dữ liệu phức tạp
  • Xử lý big data (hàng tỷ bản ghi)
  • Huấn luyện mô hình machine learning
  • Phân tích dữ liệu khám phá (EDA)
  • Logic nghiệp vụ tùy chỉnh

Công nghệ phổ biến:

  • PySpark DataFrame
  • pandas
  • Thao tác Delta Lake
  • MLflow
  • scikit-learn / TensorFlow

4️⃣ Eventstream

Bản chất: Thu thập và xử lý dữ liệu streaming thời gian thực

Tính năng cốt lõi:

  • ✅ Streaming dữ liệu thời gian thực
  • ✅ Hỗ trợ Event Hubs / IoT Hub / Kafka
  • ✅ Độ trễ thấp (mức mili giây)
  • ✅ Tự động mở rộng quy mô
  • ✅ Có thể ghi trực tiếp vào KQL Database / Lakehouse

Người dùng mục tiêu:

  • Kỹ sư IoT
  • Nhà phát triển phân tích thời gian thực
  • Kỹ sư dữ liệu streaming

Trường hợp sử dụng:

  • Thu thập dữ liệu cảm biến IoT thời gian thực
  • Streaming log ứng dụng thời gian thực
  • Giám sát hệ thống giao dịch thời gian thực
  • Phân tích mạng xã hội thời gian thực
  • Phân tích clickstream

Nguồn dữ liệu:

  • Azure Event Hubs
  • Azure IoT Hub
  • Kafka
  • Ứng dụng tùy chỉnh (qua API)

5️⃣ Data Activator

Bản chất: Engine giám sát thời gian thực và trigger sự kiện

Tính năng cốt lõi:

  • ✅ Cấu hình quy tắc nghiệp vụ no-code
  • ✅ Giám sát thay đổi dữ liệu và tự động trigger hành động
  • ✅ Tích hợp với Power BI / Eventstream
  • ✅ Hỗ trợ nhiều kênh thông báo

Người dùng mục tiêu:

  • Nhà phân tích nghiệp vụ
  • Nhân viên vận hành
  • Nhu cầu giám sát và cảnh báo

Trường hợp sử dụng:

  • Tồn kho dưới ngưỡng tự động cảnh báo
  • Bất thường doanh số tự động thông báo cho quản lý
  • Suy giảm hiệu suất hệ thống tự động trigger sửa chữa
  • Bất thường hành vi khách hàng tự động đánh dấu
  • Thiết bị IoT hỏng thông báo thời gian thực

Hành động trigger:

  • Thông báo email
  • Tin nhắn Teams
  • Power Automate Flow
  • Webhook

🎯 Cây quyết định

Cần xử lý thời gian thực?
├─ Có → Cần trigger hành động?
│ ├─ Có → Data Activator
│ └─ Không → Eventstream

└─ Không (Xử lý hàng loạt)
├─ Cần viết mã?
│ ├─ Có → Logic phức tạp/ML?
│ │ ├─ Có → Notebooks
│ │ └─ Không → Xem xét Dataflow Gen2
│ │
│ └─ Không → Cần điều phối nhiều bước?
│ ├─ Có → Pipelines
│ └─ Không → Dataflow Gen2

💡 Ví dụ kết hợp thực tế

Ví dụ 1: Báo cáo bán hàng hàng ngày

Pipelines (Lập lịch thực thi hàng ngày)

Dataflow Gen2 (Trích xuất dữ liệu bán hàng từ SQL Server)

Lakehouse (Lớp Silver)

Power BI (Báo cáo)

Ví dụ 2: Giám sát IoT thời gian thực

Eventstream (Thu thập dữ liệu IoT)

KQL Database (Truy vấn thời gian thực)

Data Activator (Tự động cảnh báo nếu nhiệt độ quá cao)

Ví dụ 3: Mô hình dự đoán ML

Pipelines (Điều phối luồng)

Notebook (Huấn luyện mô hình ML)

Lakehouse (Lưu kết quả dự đoán)

Power BI (Trực quan hóa)

Ví dụ 4: Luồng ETL phức tạp

Pipelines (Trình điều phối chính)
├─ Dataflow Gen2 (Chuyển đổi đơn giản)
├─ Notebook (Logic nghiệp vụ phức tạp)
└─ Stored Procedure (Xác thực dữ liệu)

📊 So sánh khả năng kỹ thuật

Tính năngDataflow Gen2PipelinesNotebooksEventstreamData Activator
Thiết kế trực quan
Yêu cầu mã
Thực thi theo lịch⚠️*⚠️**N/AN/A
Xử lý thời gian thực
Xử lý Big Data⚠️⚠️
Machine Learning
Điều phối
Độ khó họcThấpTrung bìnhCaoTrung bìnhThấp

* Yêu cầu trigger Pipeline ** Có thể lập lịch qua Pipeline hoặc sử dụng trình lập lịch công việc Spark


🎓 Điểm trọng tâm thi

Ghi nhớ những điểm khác biệt chính:

  1. Dataflow Gen2 = Power Query = ETL Low-code
  2. Pipelines = Trình điều phối = Workflow tự động
  3. Notebooks = Mã nguồn = Logic phức tạp / ML
  4. Eventstream = Streaming thời gian thực = IoT / Sự kiện
  5. Data Activator = Trigger giám sát = Tự động hóa quy tắc nghiệp vụ

Tình huống thi thường gặp:

Tình huốngCông cụ đúng
Nhà phân tích nghiệp vụ cần nhập dữ liệu từ Excel và làm sạchDataflow Gen2
Tự động thực thi 5 bước ETL mỗi sángPipelines
Huấn luyện mô hình machine learning để dự đoán khách hàng rời bỏNotebooks
Thu thập dữ liệu cảm biến nhà máy thời gian thựcEventstream
Tự động gửi email cho bộ phận mua hàng khi tồn kho dưới 100Data Activator
Xử lý 1 tỷ bản ghi với chuyển đổi phức tạpNotebooks (Spark)
Quyết định bước tiếp theo dựa trên kết quả bước trướcPipelines (logic điều kiện)

🚀 Thực tiễn tốt nhất

  1. Kết hợp công cụ - Đừng chỉ dùng một công cụ, tận dụng điểm mạnh của từng công cụ
  2. Bắt đầu đơn giản - Nếu có thể, hãy dùng Dataflow Gen2 thay vì Notebooks
  3. Điều phối tập trung - Sử dụng Pipelines để quản lý tất cả các luồng ETL
  4. Tách biệt thời gian thực và hàng loạt - Đừng trộn lẫn, kiến trúc sẽ rõ ràng hơn
  5. Giám sát và cảnh báo - Sử dụng Data Activator để giảm giám sát thủ công