Sunday, January 19, 2025

[AWS] Big Data Ingestion Pipeline

-

Big Data Ingestion Pipeline

Chúng tôi muốn đường ống thu thập dữ liệu vào hệ thống lưu trữ là hoàn toàn serverless. Chúng tôi muốn thu thập dữ liệu theo thời gian thực và chuyển đổi dữ liệu đó. Sau đó, chúng tôi muốn truy vấn dữ liệu đã chuyển đổi sử dụng SQL và xuất báo cáo tạo từ các truy vấn này vào S3. Cuối cùng, chúng tôi muốn tải dữ liệu đó vào data warehouse và tạo bảng điều khiển.

Sơ đồ này mô tả một hệ thống xử lý dữ liệu trực tuyến với các thành phần như sau:

  • Dữ liệu từ các thiết bị IoT được gửi đến Amazon Kinesis Data Streams, một dịch vụ cho phép thu thập, xử lý và phân phối dữ liệu stream trên AWS.
  • Amazon Kinesis Data Firehose là một dịch vụ giúp chuyển tiếp dữ liệu từ Kinesis Data Streams vào Amazon Simple Storage Service (S3) (Ingestion Bucket), một kho lưu trữ đơn giản và giá rẻ trên AWS.
  • AWS Lambda được sử dụng để xử lý dữ liệu trước khi lưu vào S3. Lambda là một dịch vụ xử lý chức năng (function-as-a-service) cho phép thực thi mã không cần quản lý máy chủ.
  • Amazon Simple Queue Service là một hàng đợi thông điệp được sử dụng để chuyển tiếp dữ liệu từ Lambda đến Amazon Athena, một dịch vụ truy vấn dữ liệu phân tích với SQL.
  • Lambda cũng được sử dụng để kích hoạt Amazon Athena khi có dữ liệu mới trong hàng đợi. Khi Athena thực thi truy vấn, kết quả được lưu vào ReportingBucket, một S3 bucket khác.
  • Dữ liệu từ ReportingBucket cũng được chuyển tiếp đến Amazon QuickSight, một dịch vụ trực quan hóa dữ liệu, và Amazon Redshift, một kho dữ liệu quan hệ (RDBMS) không serverless, để tạo bảng điều khiển và báo cáo.

Với sơ đồ này, hệ thống có thể thu thập và xử lý dữ liệu từ các thiết bị IoT và đưa ra các báo cáo và biểu đồ trực quan để giúp người dùng hiểu rõ hơn về tình trạng của hệ thống và các hoạt động liên quan.

Big Data Ingestion Pipeline discussion

Trong đoạn văn bản này, ta thấy các thành phần của một Big Data Ingestion Pipeline. Cụ thể là, IoT Core cho phép thu thập dữ liệu từ các thiết bị IoT. Kinesis là một công cụ tuyệt vời để thu thập dữ liệu thời gian thực. Firehose giúp giao tiếp với S3 để lưu trữ dữ liệu gần thời gian thực (khoảng 1 phút). Lambda có thể giúp cho Firehose trong việc chuyển đổi dữ liệu. Amazon S3 có thể kích hoạt thông báo đến SQS. Lambda có thể đăng ký vào SQS (chúng ta có thể kết nối S3 với Lambda). Athena là một dịch vụ SQL không máy chủ và kết quả được lưu trữ trong S3. Thùng chứa báo cáo chứa dữ liệu được phân tích và có thể được sử dụng bởi các công cụ báo cáo như AWS QuickSight, Redshift, vv …

LEAVE A REPLY

Please enter your comment!
Please enter your name here

4,956FansLike
256FollowersFollow
223SubscribersSubscribe
spot_img

Related Stories