Patent ID: 9654546
Date: 2017-05-16
CPC Classifications: G06F,H04L

Claim:
1. A method, comprising the operations of: receiving an application that runs on a streaming platform, wherein the application is structured as a directed acyclic graph (DAG) with instances of operators as nodes and streams as edges between nodes and wherein multiple instances of an operator access a shared database; receiving a pre-defined hint associated with the application, wherein the pre-defined hint sets a maximum period of time for a local caching of a result from a query of the database by each of the multiple instances; launching the application by assigning the instances of operators to one or more containers provided by the streaming platform and initiating the streams, wherein each container is a process associated with a local cache that is an allocation of volatile memory created by the streaming platform on an as needed basis and that performs the local caching; monitoring a performance statistic for accesses to the database by each of the multiple instances and transmitting results of the monitoring to the application through an application programming interface (API) exposed by the streaming platform; receiving a request from the application through the API to make a dynamic adjustment that increases the maximum period of time for the local caching of a result from a query of the database by each of the multiple instances; and making the dynamic adjustment and re-launching the application using a recovery policy, wherein each of the operations is executed by one or more processors in real time or near real time rather than offline.