Execution of dataflow jobs
First Claim
Patent Images
1. A system for storing data in memory:
- at least one multistage application configured to generate intermediate data in a generating stage of the application and consume the intermediate data in a subsequent consuming stage of the application;
a runtime profiler configured to monitor the application'"'"'s execution and dynamically allocate memory to the application from an in-memory data grid; and
a pre-profiler configured to generate, prior to execution of the multistage application, an initial profile received by the runtime profiler, the initial profile providing an estimated allocation of memory needed from the in-memory data grid to store intermediate data for the multistage application.
1 Assignment
0 Petitions
Accused Products
Abstract
A method, system and computer program product for storing data in memory. An example system includes at least one multistage application configured to generate intermediate data in a generating stage of the application and consume the intermediate data in a subsequent consuming stage of the application. A runtime profiler is configured to monitor the application'"'"'s execution and dynamically allocate memory to the application from an in-memory data grid.
-
Citations
19 Claims
-
1. A system for storing data in memory:
-
at least one multistage application configured to generate intermediate data in a generating stage of the application and consume the intermediate data in a subsequent consuming stage of the application; a runtime profiler configured to monitor the application'"'"'s execution and dynamically allocate memory to the application from an in-memory data grid; and a pre-profiler configured to generate, prior to execution of the multistage application, an initial profile received by the runtime profiler, the initial profile providing an estimated allocation of memory needed from the in-memory data grid to store intermediate data for the multistage application. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method for storing data in memory:
-
receiving an estimation of memory required to store intermediate data of a multistage application, the multistage application configured to generate the intermediate data in a generating stage of the application and consume the intermediate data in a subsequent consuming stage of the application; allocating memory from an in-memory data grid before execution of the multistage application based on the estimation of memory required to store the intermediate data of the multistage application; executing the multistage application; monitoring a change in memory required to store the intermediate data during execution of the multistage application; and adjusting the allocated memory at the in-memory data grid based on the change in memory required to store the intermediate data during execution of the multistage application. - View Dependent Claims (7, 8, 9, 10, 11, 12)
-
-
13. A computer program product for storing data in memory, the computer program product comprising:
a non-transitory computer readable storage medium having computer readable program code embodied therewith, the computer readable program code configured to; receive an estimation of memory required to store intermediate data of a multistage application, the multistage application configured to generate the intermediate data in a generating stage of the application and consume the intermediate data in a subsequent consuming stage of the application; allocate memory from an in-memory data grid before execution of the multistage application based on the estimation of memory required to store the intermediate data of the multistage application; monitor a change in memory required to store the intermediate data during execution of the multistage application; and adjust the allocated memory at the in-memory data grid based on the change in memory required to store the intermediate data during execution of the multistage application. - View Dependent Claims (14, 15, 16, 17, 18, 19)
Specification