Method for distributed RDSMS
First Claim
Patent Images
1. A method of brokering messages comprising data records between publishers and subscribers using at least one data processing device, said method comprising:
- said at least one data processing device comprising one or more processors;
providing at least one data stream processing program executing on said at least one data processing device for processing streams of data records;
processing said streams of data records within said data stream processing programs according to a set of relational stream processing operations that comprise stream processing queries, wherein each said at least one data processing device performs said processing without a need to include a persistent relational database element to process said streams of data records;
communicating with a collection of external data publishers to create input data streams for processing by said data stream processing programs;
communicating with a collection of external data subscribers to consume output data streams of said data stream processing programs;
allowing said external data subscribers to create subscriptions in the form of subscription queries comprising stream processing queries including relational stream processing queries;
evaluating said subscription queries against said streams by executing the stream processing operations of said subscription queries within said data stream processing programs;
generating a stream of query subscription answer records per subscription from said subscription queries;
sending said query subscription answer records for each subscription to said external data subscribers via a stream answer mechanism such that said data records can be read individually;
allowing said external data subscribers to be notified when there are at least one of said data records available for reading.
2 Assignments
0 Petitions
Accused Products
Abstract
Distributed Data Stream Management System (DDSMS) and the optimization strategies and capabilities enabled therein, and embodiments of its stream processing nodes are provided. Data recovery both from local buffered data and through recursive recovery are possible.
49 Citations
10 Claims
-
1. A method of brokering messages comprising data records between publishers and subscribers using at least one data processing device, said method comprising:
-
said at least one data processing device comprising one or more processors; providing at least one data stream processing program executing on said at least one data processing device for processing streams of data records; processing said streams of data records within said data stream processing programs according to a set of relational stream processing operations that comprise stream processing queries, wherein each said at least one data processing device performs said processing without a need to include a persistent relational database element to process said streams of data records; communicating with a collection of external data publishers to create input data streams for processing by said data stream processing programs; communicating with a collection of external data subscribers to consume output data streams of said data stream processing programs; allowing said external data subscribers to create subscriptions in the form of subscription queries comprising stream processing queries including relational stream processing queries; evaluating said subscription queries against said streams by executing the stream processing operations of said subscription queries within said data stream processing programs; generating a stream of query subscription answer records per subscription from said subscription queries; sending said query subscription answer records for each subscription to said external data subscribers via a stream answer mechanism such that said data records can be read individually; allowing said external data subscribers to be notified when there are at least one of said data records available for reading. - View Dependent Claims (2, 3, 4, 10)
-
-
5. A method of brokering messages comprising data records between publishers and subscribers using at least one data processing device, said method comprising:
-
said at least one data processing device comprising one or more processors; providing at least one data stream processing program executing on said at least one data processing device for processing streams of data records; processing said streams of data records within said data stream processing programs according to a set of relational stream processing operations that comprise stream processing queries, wherein each said at least one data processing device performs said processing without a need to include a relational database element to process said streams of data records;
wherein multiple, differing views of said data streams are defined;communicating with a collection of external data publishers to create input data streams for processing by said data stream processing programs; and communicating with a collection of external data subscribers to consume output data streams of said data stream processing programs; wherein said data stream processing programs are written that process said data records sequentially. - View Dependent Claims (6, 7, 8)
-
-
9. A method of managing and processing streams of data records over a data communication network linking a plurality of data processors, said method comprising:
-
said at least one data processors comprising one or more processors; providing a plurality of stream processing nodes for consuming and generating streams of data records executing relational streaming operations on said data processors, wherein said stream processing nodes perform said consuming and generating without a need to include a persistent relational database element to consume and generate said streams of data records; receiving transmission of said streams of data records by said stream processing nodes; buffering outputs of said streams of data records by said stream processing nodes; retransmitting a least a portion of said outputs buffered by at least one of said stream processing nodes when requested by at least one other of said stream processing nodes; disposing of said outputs having been buffered when it is confirmed that all of said stream processing nodes programmed to receive said outputs have received said outputs; and further comprising ensuring that no retransmitted outputs that have been previously processed by any of said stream processing nodes are processed again by any of the same said stream processing nodes.
-
Specification