Nguyên tắc: biết PII nằm ở đâu, lấy ít nhất có thể, che càng sớm càng tốt, và thiết kế trước cho việc xoá. Ở Việt Nam, Luật Bảo vệ dữ liệu cá nhân có hiệu lực từ 1/1/2026 và Nghị định 356/2025/NĐ-CP hướng dẫn thi hành đã thay Nghị định 13/2023; ở châu Âu là GDPR. Cả hai đều cho người dùng quyền yêu cầu xoá dữ liệu của mình.
1. Phân loại ngay lúc ingest. Gắn tag cho cột PII trong catalog (pii=phone, pii=national_id) để lineage chỉ ra cột đó chảy tới những bảng nào. Không cần thì không lấy: bảng phân tích hiếm khi cần số CCCD thật.
2. Che ở tầng sớm nhất.
- Pseudonymization: thay số điện thoại, email bằng keyed hash (HMAC với khoá bí mật trong secret manager); vẫn join và đếm distinct được mà không lộ giá trị gốc. Hash không có khoá của số điện thoại dò ngược được, vì số lượng số điện thoại có thể có là nhỏ.
- Masking theo quyền: cột gốc chỉ nhóm được duyệt mới đọc, người khác thấy 09xx xxx 123 (column mask trên Unity Catalog, masking policy trên Snowflake, dynamic data masking trên BigQuery).
- Mã hoá khi lưu và khi truyền; log của job không in giá trị PII.
3. Thiết kế cho việc xoá.
- Tách PII ra bảng riêng (user_pii, khoá bằng user_id), các bảng fact chỉ giữ id đã pseudonymize. Khi có yêu cầu xoá, chỉ phải xoá một chỗ, phần dữ liệu phân tích còn lại không liên kết ngược được tới người đó.
- Trên lakehouse, DELETE chỉ bỏ file cũ khỏi phiên bản hiện tại, bản cũ vẫn nằm trên storage cho time travel. Phải VACUUM sau thời gian retention thì dữ liệu mới bị xoá thật:
DELETE FROM silver.user_pii WHERE user_id = 'u_123';
VACUUM silver.user_pii RETAIN 168 HOURS;Nếu bảng Delta bật deletion vectors, DELETE chỉ đánh dấu dòng đã xoá mà không ghi lại file; phải chạy REORG TABLE silver.user_pii APPLY (PURGE) trước VACUUM thì dòng đó mới biến khỏi storage.
- Crypto-shredding: mã hoá PII của mỗi user bằng một khoá riêng; xoá khoá là mọi bản sao (backup, Kafka topic, file cũ) đều không đọc được nữa.
- Liệt kê mọi nơi có bản sao (raw zone, Kafka topic, backup, file export cho đối tác) và có job xoá chạy theo hàng đợi yêu cầu, lưu log làm bằng chứng đã xoá.
Lưu ý: tầng raw/bronze vốn "chỉ ghi thêm, không sửa" nên hay bị quên khi xoá. Đặt retention cho raw (ví dụ 30–90 ngày) hoặc che PII ngay trước khi ghi raw thì phạm vi phải xoá nhỏ hơn nhiều. Thời hạn xử lý yêu cầu và các ngoại lệ phải lấy theo văn bản luật hiện hành cùng bộ phận pháp chế, không tự suy ra.