Storage management for ephemeral messages
First Claim
1. A system comprising:
- at least one hardware processor configured to;
assign an individual time to each of a plurality of logical disks, each time indicating when the respective logical disk is available for writing;
select one of the plurality of logical disks having an assigned time closest to an estimated deletion time of an electronic message or having an assigned time closest to the estimated deletion time of the electronic message without being earlier than the estimated deletion time of the electronic message; and
store the electronic message on the selected logical disk;
marking each of the plurality of logical disks as unavailable in response to an amount of data stored on the logical disk exceeding a first size threshold;
in response to the amount of data stored on the logical disk decreasing below a second size threshold lower than the first size threshold;
copying electronic messages stored on the logical disk to a different logical disk,deleting the electronic messages stored on the logical disk, andclearing an unavailable designation from the logical disk.
2 Assignments
0 Petitions
Accused Products
Abstract
A storage controller processes electronic messages by partitioning a storage device into logical disks and designating a logical disk as unavailable based on its storage capacity being fully used. A time is assigned to each logical disk that is available for writing, and an estimated deletion time is determined for an electronic message. The electronic message is stored in a logical disk that is identified by comparing the assigned times of the logical disks to the estimated deletion time of the electronic message. The electronic message may be deleted based on the detection of a triggering event. If a deletion of a message results in an unavailable logical disk having more than a threshold amount of unused storage capacity, then each of the electronic messages stored in the unavailable logical disk may be copied to a logical disk available for writing and the unavailable designation may be removed from the logical disk.
162 Citations
19 Claims
-
1. A system comprising:
- at least one hardware processor configured to;
assign an individual time to each of a plurality of logical disks, each time indicating when the respective logical disk is available for writing; select one of the plurality of logical disks having an assigned time closest to an estimated deletion time of an electronic message or having an assigned time closest to the estimated deletion time of the electronic message without being earlier than the estimated deletion time of the electronic message; and store the electronic message on the selected logical disk; marking each of the plurality of logical disks as unavailable in response to an amount of data stored on the logical disk exceeding a first size threshold; in response to the amount of data stored on the logical disk decreasing below a second size threshold lower than the first size threshold; copying electronic messages stored on the logical disk to a different logical disk, deleting the electronic messages stored on the logical disk, and clearing an unavailable designation from the logical disk. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
- at least one hardware processor configured to;
-
13. A method for storing electronic messages sent between users of a network, the method comprising:
-
assigning an individual time to each of a plurality of logical disks; selecting one of the plurality of logical disks having an assigned time closest to an estimated deletion time of an electronic message or having an assigned time closest to the estimated deletion time of the electronic message without being earlier than the estimated deletion time of the electronic message; storing the electronic message in the selected logical disk; marking each of the plurality of logical disks as unavailable in response to an amount of data stored on the logical disk exceeding a first size threshold; in response to the amount of data stored on the logical disk decreasing below a second size threshold lower than the first size threshold; copying electronic messages stored on the logical disk to a different logical disk, deleting the electronic messages stored on the logical disk, and clearing an unavailable designation from the logical disk. - View Dependent Claims (14, 15, 16)
-
-
17. A non-transitory machine-readable medium storing program code for storing electronic messages sent between users of a network which, when executed, is operative to cause a machine to perform operations comprising:
-
assigning an individual time to each of a plurality of logical disks; selecting one of the plurality of logical disks having an assigned time closest to an estimated deletion time of an electronic message or having an assigned time closest to the estimated deletion time of the electronic message without being earlier than the estimated deletion time of the electronic message; storing the electronic message in the selected logical disk; mark each of the plurality of logical disks as unavailable in response to an amount of data stored on the logical disk exceeding a first size threshold; in response to the amount of data stored on the logical disk decreasing below a second size threshold lower than the first size threshold; copying electronic messages stored on the logical disk to a different logical disk, deleting the electronic messages stored on the logical disk, and clearing an unavailable designation from the logical disk. - View Dependent Claims (18, 19)
-
Specification