Computer processing and programming method using dynamic block, streaming and synchronizing data handling
Abstract
A computer processing and programming method calls for creating a plurality of software entities (“molecules”) which can be dynamically configured to process data autonomously. The molecules can send and receive signals indicating the state of a molecule, whether or not a processing task is fulfilled, the results of a processing task, and whether or not the operation of a molecule is to be terminated, interrupted, reconfigured, or continued by creation of one or more “next” molecules. The molecules are created from a common set of software micro-components, which may be programmed in any programming languages to run in any operating system environments. The molecules may reside with a single computing resource, however, they are ideally suited to be deployed with distributed computing resources of different types on a network or in a parallel processing environment. An overall data processing task is performed by creating molecules in a “logic web” which can dynamically adapt to fulfill the task. Logic webs can be assigned to operate with different legacy systems, with applications programmed in different languages, and with data of any type stored in any format. As a result, data processing tasks in distributed or parallel processing environments can be performed much more efficiently, and entirely new types of data processing tasks can be undertaken.
Claims
exact text as granted — not AI-modified1 - 20 . (canceled)
21 . A computer processing method performed on a computing resource comprising the steps of:
creating a logically interconnected web of software programmed modules, each of which is configured for and capable of performing an incremental data processing step, and which is comprised of interoperable software micro-components including a signal handler for handling communication signals to or from said software programmed module, at least one input handler for handling data input to said module, at least one output handler for handling data output from said module, an interface handler for determining when data input conditions are fulfilled for invoking a data processing method to be performed by said module, and at least one method handler for performing an associated data processing method, and initializing a first software programmed module as a start for creating a logically interconnected web, and invoking through the first or a preceding software programmed module a second or subsequent software programmed module in order to dynamically create said logically interconnected web, and in a Data Block Process for a data processing method to be performed by a software programmed module of said logically interconnected web: (i) waiting for the input handler of the software programmed module to register with its interface handler that it has its data input condition fulfilled; (ii) when the interface handler is fulfilled, invoking the method handler to receive the input handler's data as a block and perform its associated data processing method thereon; and (iii) when a result of the data processing method is returned, passing the result to its output handler in order to send the output result as data into its output environment; then (iv) returning the software programmed module to waiting for the input handler to queue more data.
22 . A computer processing method according to claim 21 , wherein said creating step includes creating a plurality of logically interconnected webs on a plurality of computing resources which are connected together in an extended network, and each logically interconnected web performs a data processing task on its respective computing resource autonomously of the other computing resources.
23 . A computer processing method according to claim 22 , wherein said plurality of computing resources are distributed on the extended network as a distributed computing environment.
24 . A computer processing method according to claim 22 , wherein said plurality of computing resources include an array of computing units operated in parallel as a parallel processing environment.
25 . A computer processing method according to claim 21 , each logically interconnected web generates software programmed modules in successive layers of incremental data processing steps.
26 . A computer processing method performed on a computing resource comprising the steps of:
creating a logically interconnected web of software programmed modules, each of which is configured for and capable of performing an incremental data processing step, and which is comprised of interoperable software micro-components including a signal handler for handling communication signals to or from said software programmed module, at least one input handler for handling data input to said module, at least one output handler for handling data output from said module, an interface handler for determining when data input conditions are fulfilled for invoking a data processing method to be performed by said module, and at least one method handler for performing an associated data processing method, and initializing a first software programmed module as a start for creating a logically interconnected web, and invoking through the first or a preceding software programmed module a second or subsequent software programmed module in order to dynamically create said logically interconnected web, and in a Data Streaming Process for a data processing method to be performed by a software programmed module of said logically interconnected web: (i) waiting for the input handler of the software programmed module to register with its interface handler that it has at least some data available; (ii) when the interface handler is fulfilled, invoking the method handler to receive the input handler's data and perform its associated data processing method thereon; and (iii) when a result of the data processing method is returned, passing the result to its output handler in order to send the output result as data into its output environment; then (iv) continuing to stream next available data from the input handler to be processed by the method handler and passed to the output handler until the input handler's data queue is empty and the last method result is passed to the output handler; then (v) returning the software programmed module return to waiting for the input handler to queue more data.
27 . A computer processing method according to claim 26 , wherein said creating step includes creating a plurality of logically interconnected webs on a plurality of computing resources which are connected together in an extended network, and each logically interconnected web performs a data processing task on its respective computing resource autonomously of the other computing resources.
28 . A computer processing method according to claim 27 , wherein said plurality of computing resources are distributed on the extended network as a distributed computing environment.
29 . A computer processing method according to claim 27 , wherein said plurality of computing resources include an array of computing units operated in parallel as a parallel processing environment.
30 . A computer processing method according to claim 26 , each logically interconnected web generates software programmed modules in successive layers of incremental data processing steps.
31 . A computer processing method performed on a computing resource operating a computing resource environment comprising the steps of:
creating a logically interconnected web of software programmed modules, each of which is configured for and capable of performing an incremental data processing step, and which is comprised of interoperable software micro-components including a signal handler for handling communication signals to or from said software programmed module, at least one input handler for handling data input to said module, at least one output handler for handling data output from said module, an interface handler for determining when data input conditions are fulfilled for invoking a data processing method to be performed by said module, and at least one method handler for performing an associated data processing method, and initializing a first software programmed module as a start for creating a logically interconnected web, and invoking through the first or a preceding software programmed module a second or subsequent software programmed module in order to dynamically create said logically interconnected web, and in a Data Synchronization Process for synchronizing processing of data streams from different data sources: (i) initializing a Resource Manager module, and having it query the computing resource environment for how many available data sources the computing resource environment is intended to handle, and then invoke a plurality of Data Loader modules corresponding in number to the available data sources; (iii) having the Data Loader modules load each module's respective data into memory, and invoking respective Data Streamer modules for interfacing with data streams from the respective Data Loader modules in order to allow offset of respective times and/or periods within which the respective data streams therefrom are to be processed, and (iv) invoking a Synchronization module to produce a synchronization pulse and send it to the Data Streamer modules to synchronize streaming of the data streams therefrom to downstream data processing modules of the logically interconnected web.
32 . A computer processing method according to claim 31 , wherein the available data sources handled in the computing resource environment include data sources of different media types, and the Data Synchronization Process enables synchronizing of processing of multimedia data streams.
33 . A computer processing method according to claim 31 , wherein the available data sources handled in the computing resource environment include data sources of different data feed types, and the Data Synchronization Process enables synchronizing of processing of multiple data feeds.
34 . A computer processing method according to claim 31 , wherein the available data sources handled in the computing resource environment include data sources of different data formats, and the Data Synchronization Process enables synchronizing of processing of multiple data formats.
35 . A computer processing method according to claim 31 , wherein multiple users are enabled to use respective Data Synchronization Processes for automatic load balancing in the computing machine environment.
36 . A computer processing method according to claim 31 , wherein the computing resource environment is applied to one of the group of computing applications consisting of: data integration, modeling, simulation, data visualization, animation, rendering, modular production, data center, system monitoring, visual corporate helm, decision support systems, complex relational displays, and scientific modeling visualization applications.
37 . A computer processing method according to claim 31 , wherein said creating step includes creating a plurality of logically interconnected webs on a plurality of computing resources which are connected together in an extended network, and each logically interconnected web performs a data processing task on its respective computing resource autonomously of the other computing resources.
38 . A computer processing method according to claim 37 , wherein said plurality of computing resources are distributed on the extended network as a distributed computing environment.
39 . A computer processing method according to claim 37 , wherein said plurality of computing resources include an array of computing units operated in parallel as a parallel processing environment.
40 . A computer processing method performed on a computing resource operating a computing resource environment comprising the steps of:
creating a logically interconnected web of software programmed modules, each of which is configured for and capable of performing an incremental data processing step, and which is comprised of interoperable software micro-components including a signal handler for handling communication signals to or from said software programmed module, at least one input handler for handling data input to said module, at least one output handler for handling data output from said module, an interface handler for determining when data input conditions are fulfilled for invoking a data processing method to be performed by said module, and at least one method handler for performing an associated data processing method, providing a library containing a plurality of types of software micro-components from which desired types of software programmed modules can be invoked; initializing a first software programmed module by invoking its software micro-components from said library as a start for creating a logically interconnected web, and invoking through the first or a preceding software programmed module a second or subsequent software programmed module by invoking its software micro-components from said library, in order to dynamically create the logically interconnected web to process different data sources as they become available for handling in the computing resource environment.Join the waitlist — get patent alerts
Track US2007192768A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.