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

Tạo và biên tập: nạp dữ liệu, parse, 9 loại stage

Bài thao tác chính của series: đưa dữ liệu vào bằng đường nào, đọc file thế nào cho đúng, và bộ đồ nghề transform gồm những gì.

CáchKết quảGhi chú
Table từ file uploadCó dữ liệu ngay≤100 file cùng schema, chuẩn RFC 4180; file đầu định nghĩa field
Table từ Workday report / từ table-dataset có sẵn / thủ côngTable RỖNGPhải tạo data change task để nạp — điểm bất ngờ số một với người mới
Base dataset từ SFTPChưa có dữ liệu đến lần integration đầuPattern file case-sensitive; lịch integration riêng
Base dataset từ file (≤500 MB) / từ custom reportCó dữ liệuReport cần prompt Specify Value hoặc Determine at Runtime
Derived datasetPipeline bắt đầu bằng Import stageNơi duy nhất có Join/Union

Quy tắc chung: API name không bao giờ đổi được sau khi lưu (table, dataset, field) — đặt tên như đặt tên cột database. Tên field dataset case-sensitive, không bắt đầu bằng WPA_ (prefix của 5 field hệ thống Workday tự thêm: LoadID, LoadTimestamp, RowID…, tiện cho Group By đếm dòng theo lần nạp).

Replace vs Append — và luật schema khi append

Phần tiêu đề “Replace vs Append — và luật schema khi append”

Replace thay sạch; Append cộng dồn (mỗi lần nạp toàn bộ file — không phải incremental; dùng cho snapshot lịch sử). Luật sống còn khi append dài hạn: chỉ thêm field ở CUỐI file, đừng xóa field (dùng NULL thay) — xóa rồi thêm field mới là append fail. File có header thì Workday khớp theo tên, dễ thở hơn file không header (chỉ nhận thay đổi ở cuối).

Đủ bộ tùy chọn: row/field delimiter, quote + escape (quote trong dữ liệu phải nhân đôi), comment character, bỏ N dòng đầu, jagged rows (schema lệch nhẹ), trim whitespace. Hai điểm hay vấp: giá trị chứa newline phải bật riêng “Field values contain new lines” (chậm với file lớn); và bảng số định dạng quốc tế (chấm nghìn, phẩy thập phân, dấu trừ ở cuối — kiểu 9.000,1222-) phải nhập dạng Text rồi xử lý chuỗi REGEX_REPLACE + CASE trước khi convert — pattern chuẩn cho dữ liệu kiểu châu Âu/Việt Nam.

StageCông dụngLưu ý đắt giá
JoinNối 2 pipeline (Inner, Left/Right Outer, Full, Left/Right Anti)Chỉ trong Primary Pipeline; match nhiều → nhân bản dòng; NULL sinh từ outer join bị thay default khi publish
UnionGộp dòng = UNION ALL, không khử trùngField không map → NULL; schema lệch thì chuẩn hóa bằng calculated field ở dataset nguồn (tái dùng được)
Group ByAggregate (Sum/Avg/Count/Min/Max) — đưa dữ liệu về đúng level trước khi joinAvg bỏ NULL khỏi mẫu số, Count đếm cả NULL; nhóm nhiều mã tiền → NULL
FilterLọc dòng (Basic prompt / Advanced boolean)Basic→Advanced một chiều; nhớ bẫy != loại luôn NULL
UnpivotCột → hàng≤150 input field/stage; nhiều nhóm trong 1 stage tốt hơn nhiều stage
ExplodeMulti-instance → mỗi instance một dòngField gốc bị drop ở stage sau
Manage FieldsẨn/đổi tên/đổi typeChốt tên field TRƯỚC khi viết expression — đổi sau là gãy
ValidationChốt chất lượng: dòng lỗi → Table for ExceptionsPhải đi kèm data change task làm “máy phân loại”; publish thẳng không qua DCT thì dòng lỗi bị vứt bỏ, bảng lỗi rỗng
Instance MappingText → Instance field (analytic dimension)Xem bài Dimension & biểu thức

Kèm theo: Prism calculated field (chain được, comment /* */), đổi type đặc biệt phải qua hàm (TO_DATE, EXTRACT_AMOUNT, BUILD_CURRENCY…), và example data để xem trước — nhớ giới hạn: example chạy trên subset, dataset có Join + calculated field sau Join có thể ra khác published data; số thật là số sau publish. Debug lệch giữa hai lần publish bằng Pipeline Snapshot Comparison (so 2 activity cạnh nhau).

Date trong filter viết trần không nháy kép, format yyyy-MM-dd; phần thiếu tự điền 0 → BETWEEN 2019-06-01 AND 2019-07-31 KHÔNG gồm ngày 31/7 (= 00:00:00 ngày 31) — muốn trọn tháng dùng AND 2019-08-01. Đây là lỗi lệch số cuối tháng kinh điển.


Chắt lọc từ Workday Prism Analytics User Guide (mục Creating Tables and Datasets, Editing Tables, Editing Datasets) — doc.workday.com.

Chia sẻ: