Message and attachment deletion
First Claim
Patent Images
1. A method, comprising:
- receiving, by a message deletion module in a storage system, a request to delete a message associated with a first user of multiple users of the storage system;
identifying, by the message deletion module and based on a first key associated with the first user, a first value corresponding to the first user, the first value and the first key stored in a key-value store residing in computer memory on the storage system, wherein the first value represents a plurality of messages associated with the first user, wherein each key of the key-value store indicates one of the multiple users, and wherein each value of the key-value store is indexed by a key and structured to include multiple column portions that are associated with corresponding column families;
identifying, by the message deletion module, information associated with the message in an actions portion of the first value, the information including (a) an action log comprising a list of actions performed on the message and (b) attachment information, which includes an encryption key and a pointer, the encryption key comprising a key for decrypting an encrypted attachment and the pointer indicating a location of the encrypted attachment in an attachment data store;
removing, by the message deletion module, the information from the actions portion of the first value to be stored in a deletion portion of the first value, wherein the actions portion of the first value is associated with an actions column family; and
storing, by the message deletion module, the removed information in the deletion portion of the first value, wherein the deletion portion of the first value is associated with a deletion column family having an associated retention policy, wherein the action log is available in the storage system while the removed information is still stored in the deletion portion.
2 Assignments
0 Petitions
Accused Products
Abstract
The disclosed techniques provide systems and methods for deletion of end-user messages, message threads, attachments, and/or other message information. More specifically, a key-value store residing in computer memory on the storage system is described. Each value in the key-value store is indexed by a key and structured to include multiple column portions associated with multiple column families. In one embodiment, a deletion column family having an associated retention policy for data stored therein is defined.
9 Citations
16 Claims
-
1. A method, comprising:
-
receiving, by a message deletion module in a storage system, a request to delete a message associated with a first user of multiple users of the storage system; identifying, by the message deletion module and based on a first key associated with the first user, a first value corresponding to the first user, the first value and the first key stored in a key-value store residing in computer memory on the storage system, wherein the first value represents a plurality of messages associated with the first user, wherein each key of the key-value store indicates one of the multiple users, and wherein each value of the key-value store is indexed by a key and structured to include multiple column portions that are associated with corresponding column families; identifying, by the message deletion module, information associated with the message in an actions portion of the first value, the information including (a) an action log comprising a list of actions performed on the message and (b) attachment information, which includes an encryption key and a pointer, the encryption key comprising a key for decrypting an encrypted attachment and the pointer indicating a location of the encrypted attachment in an attachment data store; removing, by the message deletion module, the information from the actions portion of the first value to be stored in a deletion portion of the first value, wherein the actions portion of the first value is associated with an actions column family; and storing, by the message deletion module, the removed information in the deletion portion of the first value, wherein the deletion portion of the first value is associated with a deletion column family having an associated retention policy, wherein the action log is available in the storage system while the removed information is still stored in the deletion portion. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A storage system, comprising:
-
a processor; a memory device having a key-value store stored thereon, wherein each key of the key-value store indicates one of multiple users of the storage system, and wherein each value of the key-value store is indexed by a corresponding key and structured to include multiple column portions that are associated with corresponding column families; a storage interface, operatively coupled to the processor, through which to access the memory device; a network interface, operatively coupled to the processor, through which to receive one or more system requests; and the memory device further having instructions stored thereon which, when executed by the processor, cause the storage system to; identify a first value corresponding to a first user in the key-value store responsive to a system request to delete a message associated with the first user of the multiple users of the storage system, wherein the first value represents a plurality of messages associated with the first user, identify information associated with the message in an actions portion of the first value, the information including (a) an action log comprising a list of actions performed on the message and (b) attachment information, which includes an encryption key and a pointer, the encryption key comprising a key for decrypting an encrypted attachment and the pointer indicating a location of the encrypted attachment in an attachment data store, remove the information from the actions portion of the first value to be stored in a deletion portion of the first value, wherein the actions portion of the first value is associated with an actions column family, and store the removed information in the deletion portion of the first value associated with a deletion column family having an associated retention policy, wherein the action log is available in the storage system while the removed information is stored in the deletion portion, wherein the information in the deletion portion is automatically deleted after a time period specified by the retention policy. - View Dependent Claims (13, 14)
-
-
15. A method, comprising:
-
responsive to an occurrence of a triggering event, identifying, by a message deletion module of a storage system, a first message thread that is marked as deleted, wherein the first message thread is one of multiple message threads in a key-value store residing in computer memory on the storage system, wherein the identifying includes; prior to the occurrence of the triggering event, receiving a request to delete the first message thread with an associated thread identifier (ID), and marking the thread as deleted; identifying, by the message deletion module, metadata associated with the first message thread; identifying, by the message deletion module, one or more messages associated with the first message thread using the metadata; and removing, by the message deletion module, each of the one or more messages by; removing the message from an actions portion of a value in the key-value store, wherein the value represents a plurality of messages associated with a user corresponding to a key with which the value is associated, wherein the actions portion of the value is associated with an actions column family, wherein the actions portion of the value includes an action log comprising a list of actions performed on the message, wherein each key of the key-value store indicates one of multiple users of the storage system, and wherein each value of the key-value store is indexed by a key and structured to include multiple column portions associated with corresponding column families, and storing the removed message in a deletion portion of the first value, wherein the deletion portion of the first value is associated with a deletion column family having an associated retention policy, wherein the action log is available in the storage system while the removed message is still stored in the deletion portion. - View Dependent Claims (16)
-
Specification