Xây dựng một hệ thống Data Lake, tại sao không?

Trước tiên để có thể xây dựng được một hệ thống Data Lake hiệu quả, ta cần hiểu được các khái niệm cũng như kiến trúc tổng quan về Data Lake.

Data Lake là gì?

Data Lake là một siêu Kho lưu trữ mà bạn có thể lưu trữ khối lượng rất lớn dữ liệu không cấu trúc, bán cấu trúc và cấu trúc. Nó được tạo ra để lưu mọi loại dữ liệu với định dạng gốc mà không giới hạn dung lượng, bản ghi hay số file. Nó lưu trữ một lượng dữ liệu lớn để tăng khả năng phân tích và tích hợp đa nền tảng.

Data Lake như nghĩa đen của nó, là một hồ và những con sông trong thực tế. Các nguồn dữ liệu (Data Source) như những con sông chảy vào hồ (Lake), một hồ dữ liệu có đa dạng các loại cấu trúc dữ liệu, chảy từ hệ máy này sang máy khác, cập nhật thông tin theo thời gian thực (Real-time).

Data Lake tự do hóa dữ liệu và tối ưu chi phí lưu trữ một cách hiệu quả để lưu toàn bộ dữ liệu của tổ chức phục vụ xử lý, khải thác sau này. Những người nghiên cứu, phân tích có thể tập trung tìm kiếm và khai thác các tri thức dữ liệu thay vì quan tâm tới việc quản lý dữ liệu.

Không giống như một hệ thống Kho dữ liệu thông thường (Data Warehouse), dữ liệu trên Data Lake được lưu trữ dưới dạng Files, thư mục (Folder) và có kiến trúc phẳng. Mỗi thành phần dữ liệu trong Data Lake là độc lập và được gán với một thông tin Meta Data.

Kiến trúc cơ bản của một Data Lake

Trong nội dung này, chúng ta sẽ đi vào kiến trúc tổng quát của một Data Lake. Như hình dưới, ta có thể chia Data Lake thành 5 tầng quan trọng:

  1. Tầng nạp dữ liệu (Ingestion Tier) : Tầng này nằm bên trái của kiến trúc. Dữu liệu có thể được tải vài Data Lake từ nhiều Nguồn (Data Source) thông qua thời gian thực (Real Time) hoặc theo lô (Batches).
  2. Tầng khai phá (Insights Tier): Tầng này nằm ở phía trên bên phải của hình nơi sẽ sử dụng dữ liệu từ hệ thống. Các truy vấn SQL, NoSQL, SQL MapReduce sẽ được sử dụng để khai thác và phân tích dữ liệu.
  3. Tầng lưu trữ (Stogare): Tầng này hiện hầu hết các hệ thống sử dụng HDFS với ưu điểm về chi phí, tính linh hoạt, chịu lỗi và khả năng mở rộng dễ dàng đặc biệt hiệu quả với các dữ liệu cấu trúc và phi cấu trúc. Đây là tầng sẽ lưu trữ toàn bộ dữ liệu của hệ thống.
  4. Tầng tiền xử lý (Distillation tier): Vai trò lấy dữ liệu trực tiếp từ tầng lưu trữ sau đó làm sạch và và chuyển sang dữ liệu có cấu trúc, giúp dễ dàng hơn cho việc phân tích.
  5. Tầng xử lý (Processing tier): Xử lý và chạy các thuật toán phân tích, hỗ trợ người dùng truy vấn thời gian thực, tương tác theo lô với mục đích sinh ra các dữ liệu có cấu trúc để dề dàng phân tích.
  6. Tầng giám sát, vận hành (Operations tier): Chi phối quản lý và giám sát hệ thống, bao gồm cả việc quản lý chất lượng dữ liệu, danh mục dữ liệu, bảo mật và quy trình khai thai, sử dụng hệ thống.

Các khái niệm cơ bản trong Data Lake

Hình dưới là các khái niệm chính mà mọi người cần hiểu để nắm và triển khai được một hệ thống Data Lake:

Data Ingestion: Cung cấp và triển khai các công cụ đồng bộ và tiền xử lý dữ liệu để đưa vào Data Lake (Hiện có nhiều công cụ hỗ trợ đa dạng các loại dữ liệu cũng như cách thức đồng bộ, tham khảo Nifi)

Data Storgare: Việc lưu trữ dữ liệu trên Data Lake đòi hỏi phải có tính mở rộng, chi phí thấp và cho phép truy cập nhanh tới dữ liệu cần khai phá và đặc biệt hỗ trợ đa định dạng.

Data Governance: Quản trị dữ liệu là một quá trình quản lý tính khả dụng, khả năng tương tác, bảo mật, tri thức nghiệp vụ và tính toán vẹn của dữ liệu trong tổ chức.

Security: Bảo mật và An toàn thông tin cần được thực hiện trong mọi lớp của hồ dữ liệu. Nó bắt đầu với việc lưu trữ, xử lý và khai thác. Đơn giản là việc cấm truy cập các tầng với những người không được cho phép. Nó nên hỗ trợ nhiều công cụ truy cập dữ liệu thông quan giao diện hoặc các màn hình quản lý.

Data Quality: Chất lượng dữ liệu là một thành phần thiết yếu của hệ thống Dữ liệu, đặc biệt với Data Lake. Dữ liệu khi sử dụng phải đảm bảo tính chính xác, toàn vẹn và kịp thời như vậy sẽ đem lại giá trị cho kinh doanh. Rủi ro về dữ liệu không chính xác, thiếu sẽ dẫn tới các quyết định sai lầm.

Data Discovery: Khai phá dữ liệu là một bước quan trọng trước khi bạn có thể bắt đầu phân tích chúng. Trong giai đoạn này, các kỹ thuật làm sạch và gán cấu trúc được sử dụng để gia tăng giá trị cho dữ liệu, giúp chúng được tổ chức và diễn giải dễ hiểu.

Data Auditing: Kiếm soát tác động với dữ liệu giúp theo dõi các tác động, thay đổi, rủi ro và tính tuân thủ đối với những người sử dụng.

Data Lineage: Dòng đời dữ liệu cho phép người dùng nắm được nguồn gốc của thông tin mình đang sử dụng, nơi nó đến, di chuyển qua và những gì được tác động lên nó. Nó giúp giảm các lỗi trong bước phân tích dữ liệu từ gốc tới đích.

Data Exploration: Không giống như Data Discovery, giai đoạn này người sử dụng cần phân tích dữ liệu, họ cần lẩy mẫu và thử nghiệm với các thông tin thu thập. Các thông tin cần được phối hợp với nhau để dễ dàng phát triển và xây dựng các bài toán phù hợp.

Các công ty lớn đang sử dụng Data Lake như thế nào?

Hiện có 6 nhóm ứng dụng phổ biển của Data Lake cho các doanh nghiệp:

  • Thành phố thông mình (Smart City)
  • Internet vạn vật (IOT)
  • Khoa học và đời sống
  • An ninh mạng và Bảo mật
  • Khách hàng và Marketing
  • Tư vấn và hỗ trợ

Vậy Data Lake có những lợi ích và rủi ro như thế nào?

Lợi ích:

– Hệ thống hóa toàn bộ quy trình xử lý, khai thác và phân tích dữ liệu

– Cung cấp khả năng mở rộng linh hoạt và tối ưu chi phí

– Cung cấp khả năng không giới hạn về định dạng và lưu trữ dữ liệu

– Giảm chi phí sở hữu, lưu trữ dữ liệu lâu dài

– Cho phép lưu trữ hợp lý về chi phí

– Thích nghi nhanh với việc thay đổi

– Tập trung được toàn bộ các nguồn dữ liệu từ nhiều nguồn khác nhau

– Người dùng từ mọi nơi trên toàn cầu có thể dễ dàng truy cập và khai thác

Rủi ro:

– Khó khăn trong việc quản lý hay nâng cấp để đảm bảo sự đồng bộ và liên kết giữa các version

– Rủi ro lớn trong thiết kế do kiến trúc gồm rất nhiều thành phần và phân hệ phức tạp

– Việc lưu trữ lớn dữ liệu không cấu trúc có thể dẫn tới rối loạn dữ liệu, phức tạp và không thể khai thác được

– Do lưu trữ lâu và nhiều hơn lên cũng làm tăng chi phí

– Khó kiếm soát bảo mật và truy cập

Về TechX Corp. 

TechX Corp. là đối tác AWS tại Việt Nam được thành lập năm 2019 bởi các chuyên gia có trên 15 năm kinh nghiệm đến từ các công ty đa quốc gia và tập đoàn đi đầu về chuyển đổi số. Sứ mệnh của TechX là tạo lập môi trường cho những con người đầy đam mê, nhiệt huyết thỏa sức khám phá và kiến tạo, mang đến những sản phẩm công nghệ đơn giản và thân thiện, góp phần đẩy nhanh quá trình xây dựng một Việt Nam số trên nền tảng công nghệ điện toán đám mây.

TechX 2 năm liền nhận danh hiệu Đối tác AWS của năm – AWS Partner of the Year tại Việt Nam