Technique for managing messages
First Claim
1. A method for minimizing an elapsed time to delete messages stored in a messaging system, the method being implemented by one or more data processors and comprising:
- determining, by at least one data processor, a number of messages not designated for deletion within a current data container within a messaging persistence layer of the messaging system;
determining, by at least one data processor, whether a quantity of messages designated for deletion within the current data container within the messaging persistence layer of the messaging system exceeds a predetermined threshold;
calculating, by at least one data processor, a first amount of time required to delete the messages designated for deletion, based on the quantity of messages designated for deletion and an average amount of time to delete a single message;
calculating, by at least one data processor, a second amount of time required to copy messages not designated for deletion in the current data container to a new data container within the messaging persistence layer of the messaging system, the second amount of time being based on the number of messages not designated for deletion and an average amount of time to copy a single message and based on an amount of time to drop the current data container and to generate the new data container;
determining, by at least one data processor, whether the first amount of time is less than the second amount of time or whether the second amount of time is less than the first amount of time or whether the first amount of time is equal to the second amount of time;
when the second amount of time exceeds the first amount of time, deleting, by at least one data processor, the messages designated for deletion; and
when the first amount of time either exceeds the second amount of time or is equal to the second amount of time, copying, by at least one data processor, the messages not designated for deletion into the new data container and deleting the current data container;
wherein each data container comprises a table within a database.
2 Assignments
0 Petitions
Accused Products
Abstract
A technique for managing messages stored in a messaging system may include determining whether messages designated for deletion within a current data container exceed a predetermined threshold. If such a determination is made, thereafter, a first amount of time required to delete the messages designated for deletion is calculated. A second amount of time required to copy the messages not designated for deletion in the current data container is also calculated. Thereafter, messages are selectively deleted or copied based at least in part on the calculated first and second amounts of time. In some variations, if the second amount of time exceeds the first amount of time (or exceeds the first amount of time by a predetermined threshold), then the messages designated for deletion are deleted. Otherwise, the messages not designated for deletion may be copied into a new data container and the current data container may be dropped.
29 Citations
14 Claims
-
1. A method for minimizing an elapsed time to delete messages stored in a messaging system, the method being implemented by one or more data processors and comprising:
-
determining, by at least one data processor, a number of messages not designated for deletion within a current data container within a messaging persistence layer of the messaging system; determining, by at least one data processor, whether a quantity of messages designated for deletion within the current data container within the messaging persistence layer of the messaging system exceeds a predetermined threshold; calculating, by at least one data processor, a first amount of time required to delete the messages designated for deletion, based on the quantity of messages designated for deletion and an average amount of time to delete a single message; calculating, by at least one data processor, a second amount of time required to copy messages not designated for deletion in the current data container to a new data container within the messaging persistence layer of the messaging system, the second amount of time being based on the number of messages not designated for deletion and an average amount of time to copy a single message and based on an amount of time to drop the current data container and to generate the new data container; determining, by at least one data processor, whether the first amount of time is less than the second amount of time or whether the second amount of time is less than the first amount of time or whether the first amount of time is equal to the second amount of time; when the second amount of time exceeds the first amount of time, deleting, by at least one data processor, the messages designated for deletion; and when the first amount of time either exceeds the second amount of time or is equal to the second amount of time, copying, by at least one data processor, the messages not designated for deletion into the new data container and deleting the current data container; wherein each data container comprises a table within a database. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A non-transitory computer program product for minimizing an elapsed time to delete messages stored in a messaging system, embodied on a machine-readable storage device, that includes executable instructions for causing a computer system to:
-
determine a number of messages not designated for deletion within a current data container within a messaging persistence layer of the messaging system; determine whether a quantity of messages designated for deletion within the current data container within the messaging persistence layer of the messaging system exceeds a predetermined threshold; calculate a first amount of time required to delete the messages designated for deletion, based on the quantity of messages designated for deletion and an average amount of time to delete a single message; calculate a second amount of time required to copy messages not designated for deletion in the current data container to a new data container within the messaging persistence layer of the messaging system, the second amount of time being based on the number of messages not designated for deletion and an average amount of time to copy a single message and based on an amount of time to drop the current data container and to generate the new data container; determine whether the first amount of time is less than the second amount of time or whether the second amount of time is less than the first amount of time or whether the first amount of time is equal to the second amount of time; when the second amount of time exceeds the first amount of time, deleting the messages designated for deletion; and when the first amount of time either exceeds the second amount of time or is equal to the second amount of time, copying the messages not designated for deletion into the new data container and deleting the current data container; wherein each data container comprises a table within a database.
-
-
14. A method for implementation by one or more data processors comprising:
-
exchanging, by at least one data processor, a plurality of messages among applications in a messaging system, the messaging system comprising a message transport layer to transport messages from at least one sending application to one or more receiving applications, a business process layer to execute business process logic on selected messages processed by the message transport layer, and a messaging persistence layer accessible by both the message transport layer and the business process layer; determining, by at least one data processor, a number of messages not designated for deletion within a current data container within the messaging persistence layer of the messaging system; determining, by at least one data processor, whether a quantity of messages designated for deletion within the current data container within the messaging persistence layer of the messaging system exceeds a predetermined threshold; calculating, by at least one data processor, a first amount of time required to delete the messages designated for deletion, based on the quantity of messages designated for deletion and an average amount of time to delete a single message; calculating, by at least one data processor, a second amount of time required to copy messages not designated for deletion in the current data container to a new data container within the messaging persistence layer of the messaging system, the second amount of time being based on the number of messages not designated for deletion and an average amount of time to copy a single message and based on an amount of time to drop the current data container and to generate the new data container; determining, by at least one data processor, whether the first amount of time is less than the second amount of time or whether the second amount of time is less than the first amount of time or whether the first amount of time is equal to the second amount of time; when the second amount of time exceeds the first amount of time, deleting the messages designated for deletion; and when the first amount of time either exceeds the second amount of time or is equal to the second amount of time, copying the messages not designated for deletion into the new data container and deleting the current data container; wherein each data container comprises a table within a database.
-
Specification