Bỏ qua để đến nội dung

Lineage và kế hoạch biến đổi dữ liệu (transformation plans)

Dữ liệu hiếm khi đi thẳng từ nguồn tới báo cáo. Trên đường đi, nó được làm sạch, chuẩn hóa, tính toán và gộp lại — và chính những bước xử lý này là nơi giá trị được tạo ra, nhưng cũng là nơi lỗi dễ len vào nhất. Trong Ataccama ONE, các bước đó được tổ chức thành kế hoạch biến đổi (transformation plan). Trang này giải thích kế hoạch biến đổi là gì, vì sao bước biến đổi là chỗ “khó nhất” của lineage, và cách Ataccama gắn nguồn gốc dữ liệu vào từng bước để logic xử lý trở nên minh bạch.

Kế hoạch biến đổi (transformation plan) là gì

Phần tiêu đề “Kế hoạch biến đổi (transformation plan) là gì”

Một kế hoạch biến đổi là chuỗi các bước xử lý dữ liệu được sắp đặt theo thứ tự, biến dữ liệu thô đầu vào thành dữ liệu sẵn dùng ở đầu ra. Hãy hình dung nó như một dây chuyền chế biến: nguyên liệu (dữ liệu nguồn) đi vào một đầu, qua từng công đoạn, ra thành phẩm (bảng/báo cáo sạch) ở đầu kia.

Các bước thường gặp trong một kế hoạch biến đổi:

  • Làm sạch (cleansing) — bỏ khoảng trắng thừa, sửa định dạng, loại bỏ ký tự rác, xử lý ô trống.
  • Chuẩn hóa (standardization) — đưa dữ liệu về một dạng thống nhất: “TP. HCM”, “Tp Hồ Chí Minh”, “HCMC” cùng quy về một giá trị chuẩn.
  • Tính toán (calculation/derivation) — sinh ra cột mới từ cột cũ: doanh thu thuần, tuổi từ ngày sinh, phân loại theo ngưỡng.
  • Gộp (join/merge) — ghép nhiều nguồn theo khóa chung: nối đơn hàng với thông tin khách hàng.
  • Lọc và tổng hợp (filter/aggregate) — giữ lại phần cần thiết, cộng dồn theo nhóm (theo tỉnh, theo tháng).

Mỗi bước nhận dữ liệu từ bước trước và đưa kết quả cho bước sau. Toàn bộ chuỗi này chính là phần “biến đổi” nằm giữa nguồn và đích trong bức tranh nguồn gốc dữ liệu.

Vì sao biến đổi là nơi lineage khó nhất

Phần tiêu đề “Vì sao biến đổi là nơi lineage khó nhất”

Nếu dữ liệu chỉ được sao chép nguyên vẹn từ bảng này sang bảng kia, lineage sẽ rất dễ: cứ nối thẳng nguồn tới đích. Nhưng thực tế, giữa nguồn và đích luôn có biến đổi, và đó là lý do lineage trở nên vừa khó vừa đáng giá.

  • Mỗi biến đổi là một mắt xích trong dòng chảy. Một con số ở đầu ra có thể đã đi qua chục bước: được làm sạch, chuẩn hóa, gộp với nguồn khác, rồi tính toán. Lineage tốt phải giữ được toàn bộ chuỗi mắt xích đó, chứ không chỉ điểm đầu và điểm cuối. Đứt một mắt là mất dấu một đoạn quan trọng.
  • Biến đổi là nơi logic ẩn mình. Hai cột nối nhau ở cấp bảng trông giống nhau, nhưng cái gì xảy ra trên đường nối mới quyết định kết quả. Một công thức tính sai, một quy tắc chuẩn hóa thiếu sót — lỗi nằm bên trong bước biến đổi, không phải ở nguồn cũng không phải ở đích.
  • Đây cũng là nơi lỗi dễ phát sinh nhất. Nguồn và đích thường ổn định; thứ hay thay đổi và hay sai là logic xử lý ở giữa. Vì vậy, khi truy nguyên gốc lỗi, gần như mọi con đường đều dẫn về một bước biến đổi nào đó.

Tóm lại, biến đổi vừa là chỗ khó nhất để dựng lineage (phải đọc hiểu được logic xử lý), vừa là chỗ quan trọng nhất để có lineage (vì đó là nơi giá trị được tạo ra và là nơi lỗi ẩn nấp). Một bản đồ nguồn gốc dữ liệu bỏ qua các bước biến đổi thì chỉ là bản đồ thiếu mất khúc giữa.

Ataccama gắn lineage vào các bước biến đổi thế nào

Phần tiêu đề “Ataccama gắn lineage vào các bước biến đổi thế nào”

Điểm mạnh là kế hoạch biến đổi của Ataccama không phải hộp đen. Khi dữ liệu chảy qua một kế hoạch biến đổi, Ataccama hiểu được từng bước đang làm gì, nên có thể dựng lineage xuyên qua chuỗi xử lý thay vì chỉ nối hai đầu.

  • Lineage đi xuyên từng bước. Vì biết bước nào nhận cột nào và sinh ra cột nào, Ataccama nối được dòng chảy qua từng công đoạn: nguồn → làm sạch → chuẩn hóa → gộp → tính toán → đích. Bạn lần theo được không chỉ “cột này từ đâu” mà còn “trên đường đi nó bị biến đổi ra sao ở mỗi bước”.
  • Logic trở nên minh bạch. Thay vì hỏi đội kỹ thuật “bước này thực ra làm gì?”, người dùng nhìn ngay được mỗi mắt xích tương ứng với phép xử lý nào. Đây chính là cầu nối để giải thích một con số cho cả người kỹ thuật lẫn người nghiệp vụ.
  • Kết hợp với cấp cột thành lineage rất chi tiết. Khi gắn vào lineage cấp cột, bạn thấy được: cột đích này được tạo ở bước tính toán nào, từ những cột nào đã qua bước chuẩn hóa nào trước đó — chuỗi lý lịch đầy đủ của một trường dữ liệu.

Nhờ vậy, nơi vốn “khó nhất” của lineage lại trở thành nơi Ataccama soi rõ nhất, vì bản thân công cụ là người thực thi các bước biến đổi đó.

Ví dụ Việt Nam: bước chuẩn hóa địa chỉ trong dòng chảy

Phần tiêu đề “Ví dụ Việt Nam: bước chuẩn hóa địa chỉ trong dòng chảy”

Một doanh nghiệp gom dữ liệu khách hàng từ ba nguồn: website, cửa hàng và tổng đài. Cột địa chỉ mỗi nơi nhập một kiểu — “Q.1, TP.HCM”, “Quận 1, Thành phố Hồ Chí Minh”, “District 1, HCMC”. Báo cáo cuối cùng cần thống kê doanh thu theo tỉnh/thành, nên trong kế hoạch biến đổi có một bước chuẩn hóa địa chỉ đưa mọi cách viết về một giá trị chuẩn duy nhất.

Bước này là một mắt xích then chốt trong dòng chảy, và lineage gắn vào nó đem lại giá trị rất cụ thể:

  • Truy lỗi: Một tháng, báo cáo bỗng xuất hiện nhóm tỉnh tên “Không xác định” chiếm doanh thu lớn bất thường. Lần theo lineage, đội dữ liệu thấy con số ấy hình thành ngay tại bước chuẩn hóa địa chỉ — hóa ra tổng đài vừa đổi cách nhập liệu khiến quy tắc chuẩn hóa cũ không bắt được, dữ liệu rơi vào nhóm mặc định. Lỗi nằm đúng trong bước biến đổi, không phải ở nguồn hay ở báo cáo.
  • Phân tích tác động: Khi muốn sửa quy tắc chuẩn hóa để gộp thêm cách viết mới, lineage cho biết mọi báo cáo nào ở hạ nguồn dựa trên cột địa chỉ chuẩn hóa — để kiểm thử đúng chỗ trước khi áp dụng, tránh vô tình làm lệch các thống kê khác.

Cũng từ đây thấy rõ mối liên hệ giữa biến đổichất lượng dữ liệu: bước chuẩn hóa chính là một dạng làm sạch/khắc phục (remediation), và lineage cho biết việc khắc phục đó ảnh hưởng tới đâu trong toàn dòng chảy.

Chia sẻ: