Xin chào ! Nếu đây là lần đầu tiên bạn đến với diễn đàn, xin vui lòng danh ra một phút bấm vào đây để đăng kí và tham gia thảo luận cùng VnPro.
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • TỔNG QUAN CÁC DỊCH VỤ DỮ LIỆU & PHÂN TÍCH TRONG AWS

    🚀 TỔNG QUAN CÁC DỊCH VỤ DỮ LIỆU & PHÂN TÍCH TRONG AWS


    Hệ sinh thái Data & Analytics trong AWS cực kỳ lớn và mạnh mẽ, phục vụ từ phân tích dữ liệu theo thời gian thực, lưu trữ kho dữ liệu (Data Warehouse), đến xây dựng Dashboard BI.


    🌟 1. Amazon Athena – Truy vấn dữ liệu trực tiếp trên S3 bằng SQL


    Athena là một dịch vụ serverless, nghĩa là không cần quản lý máy chủ.
    Bạn chỉ cần có dữ liệu trong Amazon S3 là có thể truy vấn bằng SQL chuẩn. Các đặc điểm chính
    • Không cần cấu hình server
    • Dữ liệu có thể là CSV, JSON, Parquet, ORC, Avro
    • Tính phí theo tổng dung lượng dữ liệu được quét
    • Thường dùng với Amazon QuickSight để tạo báo cáo và dashboard
    • Rất phù hợp cho phân tích log như VPC Flow Logs, CloudTrail, ELB Logs…
    Mẹo tăng tốc độ & tiết kiệm phí
    • Sử dụng định dạng cột như Parquet hoặc ORC
    • Nén dữ liệu (gzip, snappy, zstd…) để giảm dung lượng cần quét
    • Tổ chức dữ liệu trong S3 theo dạng thư mục phân vùng (partition)
    • Dùng Glue để chuyển file sang Parquet/ORC
    • Dùng file lớn hơn 128 MB để truy vấn hiệu quả hơn
    Athena Federated Query


    Athena có thể truy vấn dữ liệu từ:
    • Cơ sở dữ liệu on-premises
    • DynamoDB
    • RDS
    • DocumentDB
    • ElastiCache
      và nhiều nguồn khác thông qua Data Source Connectors chạy trên AWS Lambda.
      Kết quả truy vấn lại được lưu về S3.


    🌟 2. Amazon Redshift – Data Warehouse cho phân tích dữ liệu quy mô lớn


    Redshift là hệ quản trị data warehouse dựa trên PostgreSQL, nhưng được tối ưu cho xử lý truy vấn số lượng lớn (OLAP), không phù hợp cho OLTP (giao dịch). Đặc điểm chính
    • Xử lý nhanh hơn 10 lần so với data warehouse truyền thống
    • Lưu dữ liệu dạng cột (columnar)
    • Chạy truy vấn song song
    • Hỗ trợ BI tools như QuickSight hoặc Tableau
    • Thích hợp cho truy vấn phức tạp, join, phân tích dữ liệu lớn
    Cấu trúc Redshift Cluster
    • Leader Node: lập kế hoạch truy vấn, tổng hợp kết quả
    • Compute Nodes: thực thi truy vấn

    Người dùng truy vấn cluster qua JDBC/ODBC. Snapshot & Disaster Recovery
    • Snapshot lưu bằng S3
    • Có thể tự động: 8 giờ/lần, mỗi 5GB, hoặc lịch tùy chỉnh
    • Snapshot có thể sao chép sang Region khác
    • Snapshot là incremental chỉ lưu phần thay đổi
    • Có thể phục hồi thành cluster mới
    Tải dữ liệu vào Redshift
    • Nên import dữ liệu theo lô (batch)
    • Dùng lệnh COPY từ S3 là nhanh nhất
    • Có thể dùng Kinesis Firehose → S3 → COPY vào Redshift
    • Enhanced VPC Routing giúp kiểm soát đường đi dữ liệu


    🌟 3. Redshift Spectrum – Truy vấn dữ liệu trong S3 mà không cần import


    Redshift Spectrum cho phép Redshift truy vấn dữ liệu ngay trên S3.
    Quy trình:
    1. Redshift gửi truy vấn đến hàng nghìn node Spectrum
    2. Spectrum xử lý dữ liệu trên S3
    3. Trả kết quả về Redshift

    Giải pháp này cực kỳ hiệu quả khi dữ liệu quá lớn hoặc được lưu lâu dài trong S3.


    🌟 4. Amazon OpenSearch (tiền thân: Elasticsearch)


    OpenSearch thích hợp cho:
    • Tìm kiếm văn bản không theo khóa
    • Tìm kiếm theo nhiều trường
    • Log analytics
    • Văn bản không cấu trúc
    Đặc điểm chính
    • Tìm kiếm toàn văn, phân mảnh, gợi ý
    • Kết nối tốt với DynamoDB, IoT, CloudWatch Logs
    • Yêu cầu cluster (không phải serverless)
    • Có giao diện OpenSearch Dashboard
    • Hỗ trợ xác thực bằng IAM và Cognito
    Một số Pattern phổ biến


    Kết hợp DynamoDB
    • DynamoDB Stream → Lambda → OpenSearch để tạo công cụ tìm kiếm nâng cao

    Kết hợp CloudWatch Logs
    • Gửi log → Lambda hoặc Kinesis Firehose → OpenSearch

    Kinesis Stream/Data Firehose
    • Đẩy log theo thời gian thực (real-time hoặc near real-time)


    🌟 5. Amazon EMR – Big Data với Hadoop/Spark


    EMR giúp triển khai cluster xử lý Big Data sử dụng Hadoop, Spark, HBase, Presto, Flink… Công dụng
    • Xử lý dữ liệu lớn
    • Machine Learning
    • Web indexing
    • Phân tích lớn (big data analytics)
    Các loại Node trong EMR
    • Master Node: điều phối cluster
    • Core Node: xử lý & lưu dữ liệu
    • Task Node: chạy tác vụ tạm thời (rẻ, thường dùng Spot)
    Tùy chọn mua
    • On-demand
    • Reserved
    • Spot
      EMR tự động scale và tích hợp spot instance rất tốt.


    🌟 6. Amazon QuickSight – Xây dựng Dashboard BI


    QuickSight là công cụ BI serverless, dùng để:
    • Xây dựng dashboard
    • Visualize dữ liệu
    • Phân tích ad-hoc
    • Kết nối Athena, Redshift, RDS, Aurora, S3…

    QuickSight dùng SPICE Engine để tăng tốc độ. Dashboard trong QuickSight
    • Dashboard là phiên bản “read-only” của Analysis
    • Người xem dashboard có thể xem toàn bộ dữ liệu
    • Phải “Publish” trước khi chia sẻ
    • Hỗ trợ phân quyền theo User/Group


    🌟 7. AWS Glue – ETL Serverless


    Glue hỗ trợ:
    • Trích xuất dữ liệu
    • Chuyển đổi (transform)
    • Tải dữ liệu (load) vào hệ thống phân tích
    Glue có các thành phần chính
    • Glue Data Catalog: lưu metadata
    • Glue Crawler: tự động đọc dữ liệu → tạo bảng & schema
    • Glue Job (ETL)
    • Glue Studio, Glue DataBrew: giao diện làm ETL dễ dàng
    • Glue Elastic Views: đồng bộ dữ liệu giữa các nguồn khác nhau

    Glue giúp chuyển đổi dữ liệu thành Parquet để Athena truy vấn siêu nhanh.


    🌟 8. AWS Lake Formation – Dựng Data Lake trong vài ngày


    Lake Formation xây dựng Data Lake trên S3 với:
    • Quét dữ liệu
    • Làm sạch dữ liệu
    • Chuyển đổi
    • Thiết lập bảo mật đến mức cột/hàng

    Nó kết hợp Glue + chính sách bảo mật để tạo Data Lake hoàn chỉnh.


    🌟 9. Kinesis Data Analytics – Phân tích real-time bằng SQL


    Phân tích luồng dữ liệu từ:
    • Kinesis Data Streams
    • Kinesis Firehose

    Không cần server.
    Có thể thêm dữ liệu tham chiếu từ S3.
    Kết quả có thể đẩy sang Streams, Firehose hoặc các dịch vụ khác.


    🌟 10. Kinesis Data Analytics for Apache Flink


    Chạy ứng dụng Apache Flink để:
    • Xử lý streaming data
    • Tính toán thời gian thực
    • Sử dụng Java / Scala / SQL


    🌟 11. Amazon MSK – Kafka Managed trên AWS


    MSK cung cấp Apache Kafka dạng fully managed, xử lý:
    • Tạo cluster Kafka
    • Vận hành Kafka brokers
    • Zookeeper
    • Lưu trữ EBS
    • Multi-AZ
    • Tự động scale

    Cũng có phiên bản MSK Serverless.


    🌟 12. Big Data Ingestion Pipeline – Kiến trúc tổng thể


    Một pipeline serverless hoàn chỉnh gồm:
    • IoT Core
    • Kinesis Data Streams
    • Kinesis Firehose
    • S3
    • Lambda transform
    • Athena
    • QuickSight hoặc Redshift

    Quy trình:
    1. Thiết bị IoT gửi dữ liệu → Kinesis
    2. Kinesis chuyển gần real-time → S3 qua Firehose
    3. S3 kích hoạt Lambda hoặc SQS
    4. Athena dùng SQL phân tích
    5. Kết quả đưa vào “reporting bucket”
    6. QuickSight/Redshift dùng dữ liệu để tạo dashboard

Working...
X