How Can We Help?

Search for answers or browse our knowledge base.

Table of Contents
< All Topics
Print

Hướng dẫn sử dụng hoạt động lồng nhau trong Azure Data Factory và Azure Synapse Analytics

Hướng dẫn sử dụng hoạt động lồng nhau trong Azure Data Factory và Azure Synapse Analytics

Giới thiệu

Trong quá trình xây dựng hệ thống xử lý dữ liệu hiện đại, Azure Data FactoryAzure Synapse Analytics đóng vai trò trung tâm trong việc thiết kế và tự động hóa quy trình ETL/ELT. Một trong những tính năng quan trọng giúp tối ưu hoá pipeline chính là khả năng sử dụng hoạt động lồng nhau (Nested Activities).

Hoạt động lồng nhau cho phép tổ chức logic xử lý dữ liệu theo cách linh hoạt, có điều kiện và có thể lặp lại, từ đó giúp người dùng thiết kế các pipeline phức tạp nhưng dễ quản lý và mở rộng.

📌 [Hình 1 – Minh họa hoạt động lồng nhau trong pipeline]


Các hoạt động điều khiển hỗ trợ lồng nhau

Trong cả Azure Data FactoryAzure Synapse Analytics, các hoạt động điều khiển sau có khả năng chứa các hoạt động khác bên trong:

  • ForEach: Lặp qua một tập hợp giá trị, cho phép xử lý từng phần tử một cách riêng biệt.
  • If Condition: Thực hiện phân nhánh luồng dữ liệu dựa trên điều kiện đúng hoặc sai.
  • Until: Tạo vòng lặp cho đến khi một điều kiện cụ thể được đáp ứng.
  • Switch: Phân nhánh luồng điều khiển dựa trên giá trị cụ thể, tương tự như câu lệnh switch trong lập trình.

📌 [Hình 2 – Các hoạt động điều khiển hỗ trợ hoạt động lồng nhau]


Cách truy cập vào hoạt động lồng nhau

Trong cả Azure Data FactoryAzure Synapse Analytics, bạn có thể truy cập vào các hoạt động lồng nhau bằng hai cách chính:

  1. Trong các hoạt động như ForEach, If, bạn sẽ thấy tab Activities – nhấn biểu tượng bút ✏️ để chỉnh sửa bên trong.
  2. Nhấp đúp trực tiếp vào hoạt động trên canvas để mở ra nội dung bên trong hoạt động lồng.

📌 [Hình 3 – Giao diện tab Activities trong hoạt động lồng nhau]

📌 [Hình 4 – Nhấp đúp vào hoạt động để truy cập nội dung bên trong]

Sau khi truy cập, bạn sẽ thấy giao diện chuyển sang phần bên trong hoạt động. Ở đầu màn hình, hệ thống sẽ hiển thị breadcrumb (đường dẫn phân cấp) cho phép bạn quay về pipeline cha.

📌 [Hình 5 – Giao diện breadcrumb điều hướng quay về pipeline cha]


Các giới hạn khi sử dụng hoạt động lồng nhau

Mặc dù mạnh mẽ, nhưng việc sử dụng hoạt động lồng nhau trong Azure Data FactoryAzure Synapse Analytics cần lưu ý các giới hạn sau:

  • IfSwitch có thể được sử dụng bên trong ForEach hoặc Until.
  • Không được lồng If vào trong một If, hoặc Switch vào trong một Switch.
  • ForEachUntil chỉ hỗ trợ 1 cấp độ lồng nhau.
  • Validation activity không được phép sử dụng bên trong các hoạt động điều khiển hỗ trợ lồng nhau.

📌 [Hình 6 – Ví dụ minh họa giới hạn lồng nhau]


Cách xử lý logic nhiều tầng bằng Execute Pipeline

Khi bạn cần xử lý logic phức tạp với nhiều cấp độ lồng nhau, cách tiếp cận phù hợp là sử dụng hoạt động Execute Pipeline để gọi một pipeline phụ. Pipeline được gọi có thể chứa các hoạt động lồng khác, từ đó vượt qua giới hạn chỉ một cấp của các hoạt động điều khiển như ForEach hoặc Until.

Ví dụ: bên trong một vòng lặp ForEach, bạn có thể gọi một pipeline con, pipeline này sẽ thực hiện If, Switch hoặc các xử lý riêng biệt mà không vi phạm các quy tắc lồng.

📌 [Hình 7 – Sử dụng Execute Pipeline để mở rộng xử lý nhiều tầng]


Tài liệu liên quan


Kết luận

Việc tận dụng khả năng hoạt động lồng nhau trong Azure Data FactoryAzure Synapse Analytics sẽ giúp bạn xây dựng hệ thống xử lý dữ liệu chuyên nghiệp, linh hoạt và dễ duy trì. Để triển khai hiệu quả, bạn cần hiểu rõ giới hạn, điều hướng và tận dụng công cụ Execute Pipeline để mở rộng logic.

Nếu bạn đang phát triển hệ thống dữ liệu phức tạp, thì hoạt động lồng nhau chính là công cụ cốt lõi không thể thiếu trong kiến trúc dữ liệu hiện đại trên nền tảng Microsoft Azure.

Was this article helpful?
0 out of 5 stars
5 Stars 0%
4 Stars 0%
3 Stars 0%
2 Stars 0%
1 Stars 0%
5
Please Share Your Feedback
How Can We Improve This Article?