Kiến trúc Lambda - Cách triển khai Lớp hợp nhất / Lớp truy vấn


7

Tôi đang đọc về kiến ​​trúc lambda.

Nó có ý nghĩa. chúng tôi có hàng đợi dựa trên dữ liệu nhập. chúng tôi có một kho lưu trữ trong bộ nhớ cho dữ liệu rất mới và chúng tôi có HDFS cho dữ liệu cũ.

Vì vậy, chúng tôi có toàn bộ dữ liệu của chúng tôi. trong hệ thống của chúng tôi. rất tốt.

nhưng sơ đồ kiến ​​trúc cho thấy lớp hợp nhất có thể truy vấn cả lớp lô và lớp tốc độ trong một lần chụp.

Làm thế nào để làm điều đó?

Lớp lô của bạn có thể là một công việc giảm bản đồ hoặc truy vấn HIVE. Truy vấn lớp tốc độ có lẽ là một chương trình scala được thực thi trên tia lửa.

Bây giờ bạn sẽ hợp nhất những thứ này như thế nào?

Có hướng dẫn nào không.


Bạn có thể truy vấn đầu ra được biết đến cuối cùng của lô, không chạy quy trình lô.
Sean Owen

ĐỒNG Ý. vậy làm cách nào để hợp nhất các đầu ra đã biết của lô với dữ liệu truyền phát được lưu trữ bên trong RDD rời rạc?
Không biết nhiều

Câu trả lời:


3

Những gì bạn đang hỏi là, theo quan điểm của tôi, vấn đề chính của việc thực hiện một kiến ​​trúc lambda. Dưới đây là một số gợi ý về cách giải quyết nó.

Sự kết hợp giữa Spark và Spark Streaming phần lớn thay thế kiến ​​trúc lambda ban đầu (thường liên quan đến Hadoop và Storm). Đọc ở đây một ví dụ về cách sử dụng a SparkContextvà riêng biệt StreamingContextđể tạo ra các RDD s khác nhau , một cho kết quả được xử lý hàng loạt và một cho kết quả thời gian thực.

Khi bạn đã sao chép nó trong hệ thống của mình, bạn vẫn phải suy nghĩ về cách truy vấn cả hai loại RDDs. Trường hợp tầm thường sẽ chỉ là unioncả hai:

scala> rdd1.union(rdd2).collect

Hoặc có thể bạn có thể tạo một cái mới DStream, tương tự như stateStreamtrong ví dụ được liên kết, trong đó một số khóa được giữ cho kết quả thời gian thực và một số khác cho kết quả hàng loạt.


điều này có nghĩa là kiến ​​trúc Lambda có một chút điều cổ tích thoáng đãng. dễ dàng để nói chuyện trên các slide và trông khá đẹp nhưng trong thực tế nó không dễ thực hiện như vậy.
Không biết nhiều

hoặc một sự tương tự tốt hơn là những con chuột quyết định "rung chuông mèo". kiến trúc tuyệt vời ... nhưng ai sẽ làm điều đó?
Không biết nhiều

3

Từ những gì tôi hiểu về các mục tiêu của kiến ​​trúc lambda, quan điểm của bạn:

Lớp lô của bạn có thể là một công việc giảm bản đồ hoặc truy vấn HIVE.

Không phải là những gì đã được dự định. Lớp bó không có nghĩa là được truy vấn trực tiếp, mà là cung cấp lớp phục vụ, có thể là kho lưu trữ khóa-giá trị đơn giản, cho các truy vấn có độ trễ thấp.

sơ đồ kiến ​​trúc lambda

Kiểm tra http://lambda-arch architecture.net/ để được giải thích đầy đủ hơn.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.