Netflix chuyển sang Autoscaler mã nguồn mở của Apache Flink cho hơn 30.000 tác vụ streaming
Netflix đang tiến tới sử dụng Apache Flink Autoscaler mã nguồn mở cho hơn 30.000 tác vụ streaming trên nhiều khu vực AWS. Cách tiếp cận ở cấp độ operator này giải quyết những hạn chế của autoscaler cấp cụm trước đây khi xử lý các pipeline phức tạp, có trạng thái. Nhờ đó, Netflix đã ghi nhận mức giảm 58% chi phí tính toán Flink hàng năm cho một nhóm, tiết kiệm khoảng 1,1 triệu USD mỗi năm.
Netflix tiến tới dùng Autoscaler mã nguồn mở của Apache Flink cho hơn 30.000 tác vụ streaming
Netflix vừa công bố kế hoạch chuyển đổi sang Apache Flink Autoscaler mã nguồn mở để quản lý hơn 30.000 tác vụ streaming xử lý dữ liệu thời gian thực trên nhiều vùng AWS. Đây là bước thay đổi lớn nhằm khắc phục những hạn chế của hệ thống autoscaler cấp cụm trước đây, vốn gặp khó khăn khi điều phối các pipeline phức tạp và có trạng thái.
Theo đại diện kỹ thuật của Netflix, việc áp dụng cơ chế tự co giãn ở cấp độ operator không chỉ giúp tối ưu hiệu năng xử lý mà còn mang lại hiệu quả chi phí rõ rệt. Một nhóm kỹ thuật của họ đã đạt mức giảm 58% chi phí tính toán Flink hàng năm, tương đương tiết kiệm khoảng 1,1 triệu USD mỗi năm.
Bối cảnh sử dụng Flink tại Netflix
Netflix là một trong những công ty công nghệ có quy mô sử dụng Apache Flink lớn nhất thế giới, chạy hàng chục nghìn tác vụ streaming phục vụ các hệ thống khuyến nghị, cá nhân hóa, phát hiện bất thường và nhiều ứng dụng dữ liệu khác.
Trước đây, Netflix xây dựng một hệ thống autoscaler tùy chỉnh ở cấp độ cụm (cluster level) để tự động điều chỉnh tài nguyên. Tuy nhiên, khi nhu cầu xử lý ngày càng phức tạp với các luồng dữ liệu có trạng thái lâu dài, hệ thống này bộc lộ những hạn chế như:
- Khó dự đoán và đáp ứng kịp thời với biến động tải tại các giai đoạn xử lý riêng lẻ.
- Gây lãng phí tài nguyên khi phải mở rộng toàn bộ cụm dù chỉ một phần pipeline cần thêm khả năng xử lý.
- Không tối ưu cho việc kiểm soát chi phí vận hành trên quy mô lớn.
Giải pháp hướng tới mã nguồn mở
Để giải quyết bài toán này, Netflix quyết định tiến tới sử dụng Apache Flink Autoscaler — một dự án mã nguồn mở hoạt động ở cấp độ operator. Thay vì điều chỉnh cả cụm, hệ thống mới có khả năng theo dõi và tự co giãn từng tác vụ (job) một cách thông minh dựa trên các chỉ số như tỷ lệ xử lý backlog hay mức độ sử dụng tài nguyên thực tế.
Cách tiếp cận này đặc biệt hữu ích cho các pipeline có trạng thái (stateful pipelines) — nơi mà việc thu hồi hoặc cấp thêm tài nguyên một cách mù quáng ở cấp cụm có thể dẫn đến gián đoạn hoặc mất dữ liệu trung gian.
"Việc chuyển sang autoscaler mã nguồn mở không chỉ giúp chúng tôi tận dụng được sự phát triển từ cộng đồng mà còn mang lại khả năng kiểm soát chi tiết hơn cho hạ tầng streaming của mình," một kỹ sư tại Netflix chia sẻ.
Kết quả đạt được và kế hoạch tương lai
Theo báo cáo, một nhóm vận hành dữ liệu tại Netflix đã thử nghiệm áp dụng autoscaler mới và đạt được mức tiết kiệm đáng kể:
- Giảm 58% chi phí tính toán Flink hàng năm.
- Tiết kiệm xấp xỉ 1,1 triệu USD mỗi năm.
- Cải thiện độ ổn định và giảm thiểu các sự cố liên quan đến việc thiếu hoặc thừa tài nguyên.
Với những hiệu quả ban đầu này, Netflix đặt mục tiêu dần dần di dời toàn bộ hơn 30.000 tác vụ streaming sang sử dụng autoscaler mã nguồn mở. Điều này không chỉ giúp giảm chi phí vận hành mà còn đồng nghĩa với việc Netflix sẽ đóng góp tích cực hơn vào cộng đồng Flink, thúc đẩy hệ sinh thái dữ liệu lớn ngày càng hoàn thiện.
Với các doanh nghiệp Việt Nam đang xây dựng hạ tầng dữ liệu thời gian thực dựa trên Flink, động thái này là một minh chứng cho thấy việc tận dụng các giải pháp mã nguồn mở và cơ chế tự co giãn thông minh có thể mang lại lợi ích kinh tế và vận hành bền vững trong dài hạn.