Vấn đề với batch

Các khái niệm về Streaming

Mike Metzger

Data Engineer

Độ trễ

  • Thời gian đến khi dữ liệu sẵn sàng để xử lý
    • Mọi dữ liệu đã có chưa?
  • Thời gian đến khi bắt đầu xử lý
    • Khi nào khoảng tiếp theo bắt đầu?
  • Thời gian để xử lý dữ liệu
    • Mất bao lâu để hoàn tất?
  • Thời gian đến khi dữ liệu đã xử lý sẵn sàng sử dụng
    • Mất bao lâu để người dùng có thể dùng dữ liệu?
Các khái niệm về Streaming

Ví dụ #1

Chờ dữ liệu nguồn

  • Máy chỉ gửi log khi tải thấp
  • Hoạt động ổn ở mức tải bình thường
  • Tải cao sẽ hạn chế việc gửi log, có thể che khuất sự cố.
Các khái niệm về Streaming

Ví dụ #2

Chờ quy trình xử lý

  • Log 100GB mỗi ngày
  • Hiện mất 23 giờ để xử lý
  • Xấp xỉ 4.4GB/giờ
  • Tăng 5% mỗi tháng
  • Tháng sau sẽ 105GB và mất ~24 giờ
  • Tháng kế sẽ ~110GB và mất ~25 giờ
  • Mất hơn 1 ngày để xử lý dữ liệu của 1 ngày!
Các khái niệm về Streaming

Ví dụ #3

Chờ dữ liệu sẵn sàng

  • Bao lâu thì phân tích sẵn sàng?
  • Báo cáo bán hàng phải chờ đủ thông tin để tạo
  • Tổng các độ trễ là thời gian tối thiểu để tạo báo cáo mới
    • Thời gian thu thập / chuẩn bị dữ liệu: 1 ngày
    • Thời gian xử lý dữ liệu: 7 giờ
    • Thời gian cập nhật hệ thống: 5 giờ
    • Thời gian tạo báo cáo: 2 phút
  • Tổng thời gian mỗi báo cáo: 1.5 ngày
Các khái niệm về Streaming

Luyện tập nào!

Các khái niệm về Streaming

Preparing Video For Download...