Data Engineering
8 bài viết
Đọc theo series
Giải thích Snowflake là gì, kiến trúc 3 lớp tách rời (Storage — Compute — Cloud Services) và mô hình tách compute khỏi storage. So sánh định vị với BigQuery, Redshift và data warehouse on-prem, cùng khung quyết định khi nào ngân hàng nên chọn Snowflake.
Virtual warehouse là lớp compute co giãn của Snowflake: kích cỡ T-shirt và quy luật credit gấp đôi mỗi bậc, auto-suspend/auto-resume để tiết kiệm, scaling UP vs OUT (multi-cluster), scaling policy Standard/Economy, và cách tách warehouse theo workload để đội dữ liệu ngân hàng không tranh chấp tài nguyên.
Các loại stage (user/table/named/external), FILE FORMAT, lệnh COPY INTO và xử lý lỗi, PUT/GET, Snowpipe auto-ingest và Snowpipe Streaming. So sánh batch vs near-real-time, best practice kích cỡ file, và cách đưa dữ liệu core banking qua Kafka/CDC vào Snowflake.
Phương ngữ SQL của Snowflake (ANSI + phần mở rộng) và cách xử lý dữ liệu bán cấu trúc bằng kiểu VARIANT/OBJECT/ARRAY: nạp JSON/Parquet thẳng vào cột VARIANT, truy cập bằng colon và dot, ép kiểu ::, bung mảng lồng với LATERAL FLATTEN, cùng các hàm SQL đặc thù (QUALIFY, LISTAGG, IFF, DECODE) áp vào payload giao dịch core banking.
Cách Snowflake tổ chức dữ liệu bằng micro-partition và cắt tỉa (pruning) dựa trên metadata, khi nào cần clustering key và chi phí reclustering, ba tầng cache, cách đọc Query Profile để tìm nút thắt, cùng search optimization và materialized view. Kèm anti-pattern hay gặp khi tối ưu.
Hiểu mô hình chi phí Snowflake (compute credit theo giây, storage nén, cloud services, serverless), cách quy đổi credit ra tiền, và bộ công cụ FinOps: Resource Monitor đặt quota/suspend, auto-suspend, tách warehouse để charge-back theo team, và dùng ACCOUNT_USAGE để săn query tốn kém — dưới góc nhìn ngân hàng.
Mổ xẻ mô hình bảo mật Snowflake cho ngân hàng: RBAC (role → privilege → object, role hierarchy, các role hệ thống ACCOUNTADMIN/SECURITYADMIN/SYSADMIN/USERADMIN), Dynamic Data Masking che PII theo vai trò, Row Access Policy lọc dòng theo chi nhánh, Secure View/UDF, object tagging + tag-based masking, network policy và mã hóa end-to-end.
Bốn tính năng làm nên sự khác biệt của Snowflake: Time Travel + Fail-safe để quay ngược thời gian và khôi phục sự cố, Zero-copy Cloning dựng UAT tức thì không tốn storage, Streams + Tasks để xây pipeline ELT incremental ngay trong Snowflake, và Secure Data Sharing chia sẻ dữ liệu không copy — tất cả nhìn dưới góc độ vận hành một ngân hàng.