Method and system for processing raw financial data streams to produce and distribute structured and validated product offering objects
First Claim
1. A processor-implemented method for processing a raw data stream generated by a financial product provider and carrying a plurality of raw data objects containing information related to financial product offerings and subject to periodic updates, the method comprising:
- receiving a raw data object carried on a raw data stream input;
determining an object type of the raw data object;
generating via a processor a formatted data object based on the contents of the raw data object by applying a set of formatting rules selected in accordance with the determined object type;
determining if a prior version of the formatted data object is present in an object storage pool;
if a prior version is present in the object storage pool;
determining a data differential between the formatted data object and the prior version;
updating the prior version of the formatted data object to correspond with the generated formatted data object; and
incrementing a sequence number associated with the formatted data object; and
broadcasting the data differential and the sequence number on an output broadcast data channel selected from a plurality of broadcast channels according to the object type;
otherwise, if no prior version is present in the object storage pool;
providing the formatted data object to subscriber processes; and
storing the formatted data object and an associated initial sequence number in the object storage pool.
2 Assignments
0 Petitions
Accused Products
Abstract
A real time information manager which processes raw data from data providers, such as feeds of current information about financial product offerings, is provided. Raw data objects received from various data providers are analyzed, formatted, and a current version of each unique data object is stored in an object storage pool. Information about the state of each objects is transmitted on a particular output data channel in accordance with the type of object. A subscriber process can access one or more of the data channels and utilize the broadcast data. In one configuration, one or more client managers are provided which subscribe to particular data channels and serve as an intermediary between the real time information manager and sets of clients.
-
Citations
44 Claims
-
1. A processor-implemented method for processing a raw data stream generated by a financial product provider and carrying a plurality of raw data objects containing information related to financial product offerings and subject to periodic updates, the method comprising:
-
receiving a raw data object carried on a raw data stream input; determining an object type of the raw data object; generating via a processor a formatted data object based on the contents of the raw data object by applying a set of formatting rules selected in accordance with the determined object type; determining if a prior version of the formatted data object is present in an object storage pool; if a prior version is present in the object storage pool; determining a data differential between the formatted data object and the prior version; updating the prior version of the formatted data object to correspond with the generated formatted data object; and incrementing a sequence number associated with the formatted data object; and broadcasting the data differential and the sequence number on an output broadcast data channel selected from a plurality of broadcast channels according to the object type; otherwise, if no prior version is present in the object storage pool; providing the formatted data object to subscriber processes; and storing the formatted data object and an associated initial sequence number in the object storage pool. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A system for processing raw data streams carrying a plurality of raw events containing information which is subject to periodic updates, the system comprising processor-implemented components:
-
an information manager component receiving the raw data streams as input; a processing database component connected to the information manager and having object typing and formatting rules stored therein; and an object storage pool component connected to the information manager; the information manager component configured to; receive a raw data object carried on a particular raw data stream input; identify an object type of the raw data object in accordance with the object typing rules; generate a formatted data object based on the contents of the raw data object by in accordance with the formatting rules; determine if a prior version of the formatted data object is present in the object storage pool and in response to a negative determination;
provide the formatted data object to subscriber processes, and store the formatted data object in the object storage pool;otherwise, in response to a negative determination;
update the prior version of the formatted data object to correspond with the generated formatted data object, identify a data differential between the formatted data object and the prior version, and broadcast the data differential on an output broadcast data channel. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A system for processing raw data streams generated by respective financial product providers, each stream carrying a plurality of raw data objects containing information related to financial product offerings and subject to periodic updates, the system comprising processor-implemented components:
-
a translator component configured to receive the raw data objects as input and generate raw events comprising a set of name-value pairs derived from data in the raw data objects; a processing database component having object typing and formatting rules stored therein; an offer processor component connected to the processing database and configured to, in response to the receipt of a raw event; determine an object type associated with the raw event; and generate an external event containing a formatted data object derived from the contents of the received raw event in accordance with the formatting rules; an object storage pool component configured to store a plurality of formatted data objects therein; an offer pool manager component connected to the object storage pool and configured to, upon receipt of an external event; determine if a prior version of the formatted data object is present in an object storage pool; if a prior version is present in the object storage pool;
determine a data differential between the formatted data object and the prior version, update the prior version of the formatted data object to correspond with the generated formatted data object, and broadcast the data differential on an output broadcast data channel;otherwise, if no prior version is present in the object storage pool;
provide the formatted data object to subscriber processes, and store the formatted data object in the object storage pool. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29, 30, 31, 32)
-
-
33. A processor-implemented method for processing raw data streams carrying a plurality of raw data objects containing information which is subject to periodic updates, the method comprising:
-
receiving a raw data object carried on a raw data stream input; determining an object type of the raw data object; generating via a processor a formatted data object based on the contents of the raw data object by applying a set of formatting rules; determining if a prior version of the formatted data object is present in an object storage pool; if a prior version is present in the object storage pool; determining a data differential between the formatted data object and the prior version; updating the prior version of the formatted data object to correspond with the generated formatted data object; and broadcasting the data differential on an output broadcast data channel; otherwise, if no prior version is present in the object storage pool; providing the formatted data object to subscriber processes; and storing the formatted data object in the object storage pool. - View Dependent Claims (34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44)
-
Specification