Apache Storm một hệ thống xử lý dữ liệu thời gian thực

Storm_logo

Apache Storm là một dự án cho phép bạn tổ chức quá trình xử lý đảm bảo các sự kiện khác nhau trong thời gian thực. Ví dụ, Storm có thể được sử dụng để phân tích luồng dữ liệu trong thời gian thực, để thực hiện các tác vụ học máy, tổ chức tính toán liên tục, thực hiện RPC, ETL, v.v.

Hệ thống hỗ trợ phân cụm, lđể xây dựng các cấu hình có khả năng chịu lỗi, chế độ xử lý dữ liệu được đảm bảo và có thông lượng đủ cao để xử lý hơn một triệu yêu cầu mỗi giây trên một nút cụm.

Tích hợp Apache Storm với các hệ thống xử lý hàng đợi và công nghệ cơ sở dữ liệu khác nhau.

Kiến trúc của Storm liên quan đến việc nhận và xử lý các luồng dữ liệu phi cấu trúc và được cập nhật liên tục bằng cách sử dụng các bộ điều khiển phức tạp tùy ý với khả năng phân chia giữa các giai đoạn tính toán khác nhau.

Về Apache Storm

Dự án đã được chuyển giao cho cộng đồng Apache sau khi BackType mua lại Twitter, công ty ban đầu đã phát triển framework này.

Trên thực tế, Storm đã được sử dụng trong BackType để phân tích sự phản ánh của các sự kiện trong blog nhỏ, bằng cách so sánh các tweet mới đang diễn ra và các liên kết đã được sử dụng trong đó (ví dụ: chúng được đánh giá là liên kết bên ngoài hoặc quảng cáo Twitter được phát bởi những người tham gia khác).

Chức năng Storm so với nền tảng Hadoop, và điểm khác biệt chính là dữ liệu không được đưa vào kho lưu trữ mà được nhận từ bên ngoài và xử lý theo thời gian thực.

Trong Storm, không có lớp lưu trữ tích hợp sẵn và truy vấn phân tích bắt đầu áp dụng cho dữ liệu đến cho đến khi nó bị hủy bỏ (nếu Hadoop sử dụng công việc MapReduce chiếm thời gian hữu hạn, thì Storm sử dụng ý tưởng chạy "cấu trúc liên kết" liên tục).

Việc thực thi các trình xử lý có thể được phân phối đến một số máy chủ: Storm tự động song song hóa công việc với các luồng trong các nút khác nhau của cụm.

Các trường hợp sử dụng chính có thể được cấp cho Apache Storm

Xử lý các luồng dữ liệu mới hoặc cập nhật cơ sở dữ liệu trong thời gian thực
Tính toán liên tục: Storm có thể đưa ra các yêu cầu liên tục và xử lý các luồng liên tục, chuyển kết quả xử lý cho khách hàng trong thời gian thực.

Cuộc gọi thủ tục từ xa phân tán (RPC): Một cơn bão có thể được sử dụng để cung cấp tính đồng thời trong việc thực hiện các truy vấn sử dụng nhiều tài nguyên.

Một tác vụ ("cấu trúc liên kết") trong Storm là một chức năng phân tán giữa các nút đang chờ xử lý các thông điệp đến.

Sau khi nhận được thông báo, hàm xử lý nó trong ngữ cảnh cục bộ và trả về kết quả. Ví dụ về việc sử dụng RPC phân tán có thể là xử lý song song các truy vấn tìm kiếm hoặc thực hiện các thao tác trên một tập hợp lớn.

Các tính năng mới chính của Apache Storm 2.0

Tổ chức Apache đưa ra các sáng kiến ​​để chuyển Storm sang một nhân mới được viết bằng Java, kết quả được đề xuất trong phiên bản Apache Storm 2.0.

Tất cả các thành phần cơ bản của nền tảng được viết lại bằng Java. Hỗ trợ cho các trình xử lý viết trong Clojure vẫn được giữ lại, nhưng hiện được cung cấp dưới dạng liên kết. Java 8 là cần thiết để Storm 2.0.0 hoạt động.

Mô hình xử lý đa luồng đã được thiết kế lại hoàn toàn, điều này đã dẫn đến sự gia tăng hiệu suất đáng chú ý (đối với một số cấu trúc liên kết, độ trễ đã được giảm 50-80%).

Trong phiên bản mới một API Luồng được nhập mới đã được đề xuất, cho phép bạn định cấu hình trình xử lý bằng cách sử dụng các hoạt động theo kiểu lập trình chức năng.

API mới được triển khai trên cơ sở API thông thường và hỗ trợ tự động kết hợp các hoạt động để tối ưu hóa quá trình xử lý của chúng. API Windowing cho các hoạt động cửa sổ bổ sung hỗ trợ để lưu và khôi phục trạng thái trong chương trình phụ trợ.

Mặt khác bộ điều khiển để bắt đầu tính đến tài nguyên bổ sung khi đưa ra quyết định không giới hạn CPU và bộ nhớ, chẳng hạn như các thông số mạng và GPU, nó đã được thêm vào bộ lập lịch khởi động.

Một loạt các cải tiến liên quan đến việc đảm bảo tích hợp với nền tảng Kafka.
Hệ thống kiểm soát truy cập đã được mở rộng, trong đó có cơ hội tạo ra các nhóm quản trị viên và ủy quyền mã thông báo.

Đã thêm các cải tiến liên quan đến hỗ trợ SQL và số liệu. Giao diện quản trị viên có các lệnh mới để gỡ lỗi trạng thái cụm.


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: Miguel Ángel Gatón
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.