ホームページ / テクノロジーの最新情報

Microsoft Fabric: Tự động theo dõi lịch sử dữ liệu với SCD Type 2 không cần code

Microsoft vừa công bố các cải tiến quan trọng cho công cụ Copy job trong Microsoft Fabric Data Factory, giúp doanh nghiệp đơn giản hóa đáng kể việc sao chép và theo dõi lịch sử thay đổi dữ liệu (Change Data Capture – CDC). Với các tính năng mới, doanh nghiệp có thể xây dựng các pipeline sao chép dữ liệu phức tạp từ Oracle, lưu vào Fabric Data Warehouse và tự động duy trì toàn bộ lịch sử thay đổi mà không cần viết một dòng code nào, giúp tiết kiệm đáng kể thời gian và nguồn lực kỹ thuật.

Các cải tiến chính trong Copy job

Trong bản cập nhật ngày 25/03/2026, Microsoft đã giới thiệu một bộ ba cải tiến giúp Copy job trở thành công cụ di chuyển dữ liệu không cần code mạnh mẽ hơn:

  • Nguồn Oracle CDC: Cho phép ghi nhận các thay đổi dữ liệu (insert, update, delete) trực tiếp từ cơ sở dữ liệu Oracle.
  • Đích Fabric Data Warehouse: Dễ dàng sao chép dữ liệu CDC vào kho dữ liệu Fabric Data Warehouse.
  • Hỗ trợ SCD Type 2: Tự động bảo toàn toàn bộ lịch sử dữ liệu và xử lý các bản ghi bị xóa dưới dạng soft delete (xóa mềm).

Những nâng cấp này giải quyết các bài toán vốn đòi hỏi nhiều công sức lập trình và tùy chỉnh phức tạp trên các nền tảng khác.

SCD Type 2: Theo dõi toàn bộ lịch sử thay đổi dữ liệu

Slowly Changing Dimension Type 2 (SCD Type 2) là một kỹ thuật kinh điển trong lĩnh vực kho dữ liệu (data warehousing). Ý tưởng cốt lõi rất đơn giản: khi một bản ghi trong bảng chiều (dimension table) thay đổi, thay vì ghi đè lên dữ liệu cũ (SCD Type 1), hệ thống sẽ chèn một phiên bản mới và giữ lại phiên bản cũ.

Ví dụ, một khách hàng chuyển từ Hà Nội đến TP.HCM. Nếu chỉ ghi đè, doanh nghiệp sẽ mất thông tin khách hàng này từng ở Hà Nội. Mọi giao dịch trong quá khứ của khách hàng đó sẽ hiển thị địa chỉ là “TP.HCM”, gây sai lệch khi phân tích. Với SCD Type 2, cả hai phiên bản địa chỉ đều được lưu lại cùng với khoảng thời gian hiệu lực. Điều này cho phép doanh nghiệp trả lời chính xác cả hai câu hỏi: “Hiện tại khách hàng ở đâu?” và “Khách hàng ở đâu tại thời điểm đặt đơn hàng vào năm ngoái?”.

Ngoài ra, khi một bản ghi bị xóa ở nguồn, SCD Type 2 không xóa vật lý bản ghi đó ở đích. Thay vào đó, nó sẽ đóng phiên bản hiện tại bằng cách cập nhật ngày kết thúc hiệu lực. Điều này đảm bảo toàn bộ vòng đời của dữ liệu được lưu trữ, rất quan trọng cho việc tuân thủ quy định, kiểm toán và phân tích cần ảnh chụp nhanh dữ liệu tại một thời điểm bất kỳ trong quá khứ.

Tầm quan trọng của SCD Type 2 đối với doanh nghiệp

Việc lưu trữ lịch sử dữ liệu chính xác mang lại giá trị to lớn cho nhiều ngành:

  • Dịch vụ tài chính: Báo cáo pháp lý yêu cầu biết chính xác trạng thái của tài khoản khách hàng hoặc phân loại rủi ro tại một thời điểm cụ thể.
  • Y tế: Hồ sơ bệnh nhân, liên kết nhà cung cấp và các gói bảo hiểm thay đổi theo thời gian. Phân tích điều trị phải phản ánh đúng hồ sơ của bệnh nhân tại thời điểm chăm sóc.
  • Bán lẻ và thương mại điện tử: Phân khúc khách hàng, bậc giá sản phẩm và trạng thái khách hàng thân thiết luôn thay đổi. Phân tích hiệu quả khuyến mãi cần biết khách hàng thuộc phân khúc nào khi họ mua hàng.
  • Sản xuất và chuỗi cung ứng: Chứng nhận nhà cung cấp, thông số kỹ thuật vật liệu và các chỉ định định tuyến phát triển theo thời gian. Kiểm toán chất lượng đòi hỏi khả năng truy xuất nguồn gốc tại một thời điểm.
  • Bảo hiểm: Các điều khoản hợp đồng, giới hạn bảo hiểm và đại lý phụ trách thay đổi sau mỗi lần gia hạn. Phân tích yêu cầu bồi thường phải gắn với phiên bản hợp đồng có hiệu lực tại thời điểm xảy ra sự cố.

Đơn giản hóa quy trình phức tạp chỉ bằng một cú nhấp chuột

Trong quá khứ, việc triển khai SCD Type 2 rất phức tạp, đòi hỏi các bước như: phát hiện dòng nào đã thay đổi, đóng phiên bản hiện tại, chèn phiên bản mới và xử lý xóa mềm. Tất cả đều cần logic lập trình thủ công.

Với Copy job trong Fabric, toàn bộ quy trình này được tự động hóa. Người dùng chỉ cần:

  1. Tạo một Copy job.
  2. Chọn một nguồn dữ liệu có hỗ trợ CDC.
  3. Chọn một đích đến được hỗ trợ.
  4. Bật tùy chọn SCD Type 2 trong phần phương thức ghi (write method).
Giao diện kích hoạt SCD Type 2 trong Copy job của Microsoft Fabric

Việc triển khai SCD Type 2 chỉ bằng một nút gạt là minh chứng cho thấy các công cụ không cần code có thể giải quyết những bài toán phức tạp đến mức nào. Bảng so sánh dưới đây cho thấy sự khác biệt rõ rệt:

Yếu tố Nền tảng dựa trên code Copy job (Không cần code)
Thời gian thiết lập Vài ngày đến vài tuần Vài phút
Logic MERGE Tự viết và bảo trì lệnh MERGE INTO cho mỗi bảng Được tạo tự động bởi nền tảng
SCD Type 2 + Xóa mềm Thêm cột thủ công, viết code riêng cho update/delete Kích hoạt bằng một bước, áp dụng nhất quán
Công sức cho mỗi bảng Mỗi bảng cần logic MERGE riêng Chọn hàng loạt bảng, áp dụng đồng nhất
Mở rộng đến 100+ bảng Cần xây dựng framework riêng, đầu tư kỹ thuật lớn Trải nghiệm không đổi dù là 1 hay 500 bảng
Bảo trì Liên tục xử lý các trường hợp đặc biệt, nâng cấp phiên bản Không có code để bảo trì, nền tảng tự xử lý
Yêu cầu kỹ năng Chuyên môn Spark/PySpark/SQL, kiến thức về CDC Người dùng nghiệp vụ có hiểu biết cơ bản về dữ liệu

Lợi thế vượt trội so với Azure Data Factory (ADF)

Đối với các doanh nghiệp đang sử dụng Azure, đây là một nâng cấp đáng giá. Azure Data Factory (ADF) không có sẵn tính năng hỗ trợ SCD Type 2. Để thực hiện điều tương tự trên ADF, người dùng phải xây dựng các data flow phức tạp cho từng bảng với nhiều bước biến đổi.

Copy job trong Fabric Data Factory đã thay đổi hoàn toàn điều này. Cùng một tác vụ đòi hỏi nhiều công sức trên ADF giờ đây có thể được thực hiện chỉ bằng một nút gạt duy nhất trong Copy job, áp dụng nhất quán cho tất cả các bảng được chọn và không cần bảo trì. Đây là một trong những lý do thuyết phục nhất để các doanh nghiệp xem xét chuyển đổi từ ADF sang Microsoft Fabric.

👋 Hi! Bạn cần tư vấn gì về dịch vụ Microsoft?