Chúng tôi có một số lượng lớn các ứng dụng được phân phối trên nhiều máy trong nhiều trung tâm dữ liệu.Sử dụng Twitter Storm để xử lý dữ liệu nhật ký?
Trong suốt cả ngày, chúng tôi sẽ nhận được tín hiệu (nội bộ hoặc bên ngoài), điều này gây ra một loạt các sự kiện trong mỗi ứng dụng.
Mỗi tín hiệu do đó tạo ra một lượng lớn dữ liệu nhật ký sự kiện. Bản thân các logline không được cấu trúc đặc biệt và chúng cũng khá khác nhau giữa các ứng dụng. Họ thực hiện theo quy ước cơ bản mặc dù:
<timestamp> <calling function/method> <payload>
Chúng tôi có số ID trong nhật ký có thể giúp liên kết các sự kiện với nhau - tuy nhiên, chúng tôi không cần sử dụng các cách khác để cố gắng mảnh sự kiện với nhau.
Tôi đã đọc về hệ thống Storm của Twitter và tôi rất muốn thử nó để phân tích khối lượng dữ liệu nhật ký này trong thời gian thực và ghép lại với nhau.
Tôi muốn làm những việc như:
- báo cáo Sản xuất và đồ thị trực tuyến dựa trên xu hướng từ các dữ liệu trong thời gian thực.
- Truy vấn tín hiệu, sau đó hiển thị toàn bộ chuỗi sự kiện liên quan đến tín hiệu đó trong tất cả các ứng dụng, bao gồm cả độ trễ giữa các bước trong chuỗi. (Điều này quan trọng).
- Xem các sự kiện có liên quan và xem xét những ứng dụng khác đang hoạt động vào khoảng thời gian của một sự kiện nhất định.
Tải dữ liệu vào?
Dữ liệu nhật ký được lưu trữ trong tệp nhật ký cục bộ (và điều này không có khả năng thay đổi), vì vậy chúng tôi cần có cách để tự nhập dữ liệu vào chính Storm. Logfiles cũng có thể được nén. Tôi đã sử dụng Flume, hoặc Logstash - suy nghĩ của mọi người về điều này là gì? Hoặc có những cách thay thế mà sẽ làm việc tốt với Storm?
Lưu trữ sự kiện?
Tôi cũng cần cả hai cách để lưu trữ dữ liệu cho báo cáo và biểu đồ trực tiếp, cũng như chính dữ liệu sự kiện.
Đó là phần thứ hai tôi đang tìm kiếm một chút khó khăn - loại phụ trợ lưu trữ nào phù hợp cho các sự kiện lưu trữ, cũng như các liên kết giữa chúng? Liệu một số loại cơ sở dữ liệu đồ thị có phù hợp không, một trong những loại lược đồ NoSQL mới lạ, hay cái gì đó truyền thống hơn một chút?
Bão có phù hợp không?
Cuối cùng, Storm có phù hợp với vai trò này hay không?
Và nếu tôi đi với Storm, tôi có thể thực hiện phương pháp tiếp cận nào để giải quyết vấn đề này? Tôi hy vọng những người khác có kinh nghiệm với các vấn đề tương tự.
Chúc mừng, Victor