Phá bỏ ELT: Khi bạn cần Graph thay vì Silo
(jack-vanlightly.com)- ELT (Extract, Load, Transform) được dùng để kết nối các "silo" giữa phân tích dữ liệu và phát triển phần mềm trong tổ chức, nhưng chính cấu trúc silo này mới là gốc rễ của vấn đề
-
ELT chỉ là cây cầu giữa các silo. Một thế giới không có silo là "graph"
Giới hạn của tư duy ELT
- Trong một thế giới silo, nơi một silo chứa phần mềm còn silo khác chứa phân tích dữ liệu, ELT có ý nghĩa rất lớn
- ELT hoạt động với tiền đề là cấu trúc silo
- Công việc "trích xuất (Extract)" phát sinh khi đội phát triển phần mềm và đội phân tích dữ liệu bị tách rời
- Đội phần mềm không quan tâm đến công việc của đội dữ liệu, còn đội dữ liệu thì dùng quyền truy cập cơ sở dữ liệu để trích xuất dữ liệu một cách máy móc
- Chỉ sau khi trích xuất xong mới áp dụng các nguyên tắc kỹ thuật như chất lượng dữ liệu và mô hình hóa, nhưng lúc đó đã quá muộn
- Định luật Conway đang phát huy tác dụng
- "Thiết kế của hệ thống do một tổ chức tạo ra sẽ phản chiếu cấu trúc giao tiếp của chính tổ chức đó"
- Do tư duy silo, ETL/ELT/Reverse ETL không phù hợp để xử lý độ phức tạp của kiến trúc dữ liệu hiện đại
- Dữ liệu giờ đây không chỉ tồn tại trong hệ thống vận hành và hệ thống phân tích, mà còn mở rộng sang vùng dữ liệu thứ ba, tiêu biểu là SaaS
- Dữ liệu chảy qua các khu vực, giữa cloud, backend và SaaS
- Hiện nay có số lượng ứng dụng nhiều hơn gấp 100 lần trước đây, các tổ chức đang được phần mềm hóa, và mạng lưới quan hệ giữa các hệ thống phần mềm ngày càng phức tạp
Sự cần thiết của tư duy graph
- Nếu đội phần mềm và đội dữ liệu có thể hợp tác hài hòa, thì thay vì mô hình trích xuất và lưu trữ dữ liệu như ELT, có thể chuyển sang mô hình graph
- Hãy hình dung một graph gồm các node "tiêu thụ (Consume)" dữ liệu
- Mỗi node vừa sản xuất vừa tiêu thụ dữ liệu, từ đó tự nhiên hình thành một mạng lưới hoặc graph
- Lợi ích của tư duy graph:
- Giảm trích xuất dữ liệu, tăng tiêu thụ dữ liệu
- Tăng cường mô hình hóa dữ liệu xoay quanh các tập dữ liệu chất lượng cao
- Giảm việc làm sạch dữ liệu, lưu trữ dữ liệu thô và sửa lỗi pipeline
- Tận dụng xử lý tăng dần và nguồn streaming để thay thế các quy trình batch
- Phân tích không còn bị giới hạn ở công cụ ra quyết định chiến lược mà được mở rộng sang mục đích vận hành
- Tăng hợp tác và sự đồng bộ giữa các đội, giảm silo
Kết luận
- Tư duy ELT là kết quả của định luật Conway, phản ánh sự chia cắt giữa đội phần mềm và đội dữ liệu
- Không nhất thiết phải loại bỏ toàn bộ công cụ ETL/ELT hiện có, nhưng cần tập trung vào tiêu thụ dữ liệu và xây dựng các tập dữ liệu dẫn xuất đáng tin cậy
- Trên thực tế, Shift Left vẫn mới ở giai đoạn mang tính định hướng, và các vấn đề tích hợp với hạ tầng legacy hiện tại vẫn còn tồn tại
- Shift Left: chiến lược tích hợp các thực hành phát triển quan trọng từ sớm trong vòng đời phát triển phần mềm (SDLC)
- Các tổ chức chấp nhận tư duy graph sẽ thu được lợi ích lớn nhất về khai thác dữ liệu, AI ROI và kết quả kinh doanh
"Không có trích xuất (Extract). Chỉ có tiêu thụ (Consume)." – Yoda dữ liệu
5 bình luận
Đọc cuốn sách Data Mesh xong, tôi thấy có khá nhiều phần trở nên dễ hiểu hơn.
Tôi vẫn đang đều đặn lên ý tưởng về việc ra quyết định dựa trên đồ thị, và sẽ thật tuyệt nếu có thể tập hợp được những người cũng đang có cùng suy nghĩ này.
Thì ra thuật ngữ dùng trong trường hợp này là ideation. Tôi đã học thêm được một điều. Cá nhân tôi rất quan tâm đến chủ đề này. Sẽ thật tuyệt nếu có thể tụ họp lại.
Có ai có thể giải thích thêm một chút không? Cách tác giả nói ở đây có phải là lưu trữ và quản lý riêng toàn bộ các dataset được dẫn xuất ra dưới dạng đồ thị không? Nếu không phải vậy thì tôi khá khó hiểu nó khác ETL ở điểm nào.
Người viết cho rằng cấu trúc tách biệt giữa miền vận hành hiện có và miền phân tích mang vấn đề cấu trúc kiểu silo; khi xây dựng kiến trúc dữ liệu, không nên xem xét hai phần này một cách tách rời mà nên phân chia theo nhà tạo dữ liệu và người tiêu thụ dữ liệu.
Giờ đây, khi ranh giới giữa dữ liệu vận hành và dữ liệu phân tích ngày càng mờ đi, họ cho rằng cần một cách tư duy theo đồ thị (
graph thinking, haygraph mindset).Theo cảm nhận của tôi, thay vì tách biệt một cách minh thị giữa dữ liệu vận hành và dữ liệu phân tích, bài viết đang nhìn nhận việc phân biệt người tiêu thụ và người tạo dữ liệu như phần kéo dài của dữ liệu vận hành, và xem quyền truy cập dữ liệu từ góc độ dòng chảy dữ liệu (dù vai trò có thể vẫn được tách riêng).
Có vẻ như bài viết đang nói từ góc nhìn kiến trúc dữ liệu về việc lấy dữ liệu vận hành để phân tích, rồi đưa trở lại vận hành, và sau đó lại tiếp tục đi sang phía phân tích.