Abstract:
Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for executing software on distributed computing systems. In one aspect, a method comprises executing a workflow controller configured to manage a plurality of factory workflows; executing a plurality of extraction workers, each configured to extract data from a plurality of external data sources into plurality of extracted datasets; executing a plurality of intermediate workers, each configured to integrate and/or contextualize the extracted data sets into a plurality of intermediate datasets; and executing a plurality of visualization workers, each configured to use the intermediate datasets to produce an interactive display or a plurality of reports based on the intermediate datasets.
Abstract:
This disclosure describes techniques for providing an application, such as a real-time data analytics application, to be generated and executed. The system described herein decouples at least some application-specific details from application-component code, enabling component reuse and simplifying application composition. The system may present abstractions at design time, generating and compiling efficient code "just in time" prior to deployment of the application. The system may provide a graphical user interface (GUI) for composing real-time applications from modular components, and a framework for developers to enable component configuration via the GUI. The system may also enable developers to reuse previously developed applications, and portions thereof, to reapply desired design patterns within multiple applications.