METHODS, APPARATUS AND COMPUTER PROGRAMS FOR MANAGING PERSISTENCE
First Claim
1. A data processing apparatus comprising:
- a processor;
a volatile data store;
a non-volatile data store; and
a persistence manager for managing saving of data to the non-volatile data store, wherein the persistence manager includes means for evaluating at least one criterion of a set of criteria, the set of criteria representing costs of saving and risks associated with not saving data to the non-volatile data store, to determine whether a data update held in the volatile data store requires saving to the non-volatile data store.
1 Assignment
0 Petitions
Accused Products
Abstract
Described are methods, apparatus and computer programs for managing persistence within a data processing system such as a messaging system, database system or file system. The method for managing persistence includes a deferred evaluation (230,330,430) of at least one criterion associated with costs and/or benefits of saving to persistent storage, instead of persistence behaviour being fully predefined. The evaluation may be performed when a disk write is about to be performed (240,340,440), or at various times during processing of a data update and at various points within a data processing network. In a messaging solution, the method for managing persistence includes a dynamic evaluation (230,330,430) of costs and/or benefits of saving to persistent storage, with the evaluation being performed at various points in the messaging network after the message has been created and sent by the originating entity. The method includes determining whether message data and/or log records relating to the message require saving to persistent storage, in accordance with the costs and/or the benefits of saving to persistent storage. The benefits of persisting may be determined with reference to a message value (400).
62 Citations
29 Claims
-
1. A data processing apparatus comprising:
-
a processor; a volatile data store; a non-volatile data store; and a persistence manager for managing saving of data to the non-volatile data store, wherein the persistence manager includes means for evaluating at least one criterion of a set of criteria, the set of criteria representing costs of saving and risks associated with not saving data to the non-volatile data store, to determine whether a data update held in the volatile data store requires saving to the non-volatile data store. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A method for managing persistence of data within a data processing apparatus, comprising the steps of:
-
evaluating at least one criterion of a set of criteria, the set of criteria representing costs of saving and risks associated with not saving data to persistent storage, to determine whether to save a data update to persistent storage; and in response to a determination that the data update should be saved to persistent storage, initiating a save of the data update to persistent storage. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27, 28)
-
-
29. A computer program comprising a set of instructions implemented in program code for controlling performance of a data processing apparatus on which the computer program executes, to perform a method comprising the steps of:
-
evaluating at least one criterion of a set of criteria the set of criteria representing costs of saving and risks associated with not saving data to persistent storage, to determine whether to save a data update to persistent storage; and in response to a determination that the data update should be saved to persistent storage, initiating a save of the data update to persistent storage.
-
Specification