US2017257425A1PendingUtilityA1

Scalable Local Cache in Distributed Streaming Platform for Real-Time Applications

59
Assignee: DATATORRENT INCPriority: Mar 11, 2013Filed: May 16, 2017Published: Sep 7, 2017
Est. expiryMar 11, 2033(~6.7 yrs left)· nominal 20-yr term from priority
H04L 67/10H04L 29/06027G06F 16/24568H04L 67/55H04L 65/765H04L 65/1101G06F 11/00G06F 16/951G06F 16/258G06F 16/248G06F 16/252G06F 9/541H04L 65/60G06F 11/1402
59
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Software for a distributed streaming platform receives an application. The application is structured as a directed acyclic graph (DAG) with instances of operators as nodes and streams as edges between nodes. Multiple instances of an operator access a shared database. The software receives a pre-defined hint associated with the application. The pre-defined hint sets a maximum period of time for local caching of a result from a query of the database by each of the multiple instances. The software launches the application by assigning the instances of operators to one or more containers provided by the streaming platform and initiating the streams. Each container is associated with a local cache. The software then receives a request from the application to make a dynamic adjustment that increases the maximum period of time for local caching of a result from a query of the database by each of the multiple instances.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         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;   setting 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, 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;   receiving a request from the application through an application programming interface (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; and   executing 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.   
     
     
         2 . The method as in  claim 1 , wherein the instances of operators are program instructions and the streams are unbound sequences of streaming windows that are ordered in terms of time. 
     
     
         3 . The method as in  claim 2 , wherein each streaming window is an atomic sequence of sequential structured tuples. 
     
     
         4 . The method as in  claim 1 , further comprising,
 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 the API exposed by the streaming platform.   
     
     
         5 . The method of  claim 1 , wherein the query of the database is processed by each of the multiple instances. 
     
     
         6 . The method of  claim 1 , wherein said launching further causes initiation of the streams. 
     
     
         7 . A method as in  claim 1 , wherein the performance statistic measures one of throughput, or keys read, or keys written. 
     
     
         8 . Computer readable media having non-transitory programming instructions for processing an application, comprising:
 program instructions for receiving the 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;   program instructions for setting a maximum period of time for a local caching of a result from a query of the database by each of the multiple instances;   program instructions for launching the application by assigning the instances of operators to one or more containers provided by the streaming platform, 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;   program instructions for receiving a request from the application through an application programming interface (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; and   program instructions for executing 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.   
     
     
         9 . The computer readable media of  claim 8 , wherein the instances of operators are program instructions and the streams are unbound sequences of streaming windows that are ordered in terms of time. 
     
     
         10 . The computer readable media of  claim 9 , wherein each streaming window is an atomic sequence of sequential structured tuples. 
     
     
         11 . The computer readable media of  claim 8 , further comprising,
 program instructions for 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 the API exposed by the streaming platform.   
     
     
         12 . The computer readable media of  claim 8 , wherein the query of the database is processed by each of the multiple instances. 
     
     
         13 . The computer readable media of  claim 8 , wherein said launching further causes initiation of the streams. 
     
     
         14 . The computer readable media of  claim 8 , wherein the performance statistic measures one of throughput, or keys read, or keys written.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.