US2020044994A1PendingUtilityA1

Data storage systems and methods using a real-time messaging system

53
Assignee: SATORI WORLDWIDE LLCPriority: Feb 24, 2017Filed: Sep 4, 2019Published: Feb 6, 2020
Est. expiryFeb 24, 2037(~10.6 yrs left)· nominal 20-yr term from priority
H04L 67/146G06F 16/2474H04L 51/04G06F 16/23H04L 67/26H04L 51/14H04L 51/214H04L 67/55
53
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for implementing functionality within a messaging system. An example method includes maintaining a plurality of channels, wherein each channel is associated with a respective key, and wherein at least one key is associated with a respective time-to-live and becomes unavailable when the respective time-to-live expires, and wherein each channel comprises a plurality of messages, and wherein each message comprises a value associated with a respective key to form a plurality of key-value pairs. The method also includes receiving a function comprising (i) a key for identifying a channel of the plurality of channels and (ii) processing instructions to be applied to one or more values associated with the key. The method also includes applying, by one or more computer processors, the processing instructions based at least in part on the key.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A method, comprising:
 maintaining a plurality of channels,
 wherein each channel is associated with a respective key, 
 wherein at least one key is associated with a respective time-to-live and becomes unavailable when the respective time-to-live expires; 
 wherein each channel comprises a plurality of messages, and 
 wherein each message comprises a value associated with a respective key to form a plurality of key-value pairs; 
   receiving a function comprising (i) a key for identifying a channel of the plurality of channels and (ii) processing instructions to be applied to one or more values associated with the key; and   applying, by one or more computer processors, the processing instructions based at least in part on the key.   
     
     
         2 . The method of  claim 1 , wherein the plurality of channels is maintained in a publish-subscribe system. 
     
     
         3 . The method of  claim 1 , wherein the plurality of messages is published to each channel according to an order. 
     
     
         4 . The method of  claim 1 , wherein the plurality of messages is provided to one or more subscribers of each channel according to an order. 
     
     
         5 . The method of  claim 1 , wherein the function is associated with a time-to-live, and wherein the function is deleted when the time-to-live expires. 
     
     
         6 . The method of  claim 1 , wherein the function is stored based at least in part e processing instructions. 
     
     
         7 . The method of  claim 1 , wherein the processing instructions are applied as the key-value pairs are received. 
     
     
         8 . The method of  claim 1 , wherein at least a subset of the plurality of key-value pairs comprises a historical series of key-value pairs. 
     
     
         9 . The method of  claim 8 , wherein the historical series of key-value pairs comprises a state log for each of the plurality of channels. 
     
     
         10 . The method of  claim 9 , wherein application of the processing instructions to the historical series of key-value pairs restores the channel to a prior state. 
     
     
         11 . A system, comprising:
 one or more computer processors programmed to perform operations to:
 maintain a plurality of channels,
 wherein each channel is associated with a respective key, 
 wherein at least one key is associated with a respective time-to-live and becomes unavailable when the respective time-to-live expires; 
 wherein each channel comprises a plurality of messages, and 
 wherein each message comprises a value associated with a respective key to form a plurality of key-value pairs; 
 
   receive a function comprising (i) a key for identifying a channel of the plurality of channels and (ii) processing instructions to be applied to one or more values associated with the key; and   apply the processing instructions based at least in part on the key.   
     
     
         12 . The system of  claim 11 , wherein the plurality of channels is maintained in a publish-subscribe system. 
     
     
         13 . The system of  claim 11 , wherein the plurality of messages is published to each channel according to an order. 
     
     
         14 . The system of  claim 11 , wherein the plurality of messages is provided to one or more subscribers of each channel according to an order. 
     
     
         15 . The system of  claim 11 , wherein the function is associated with a time-to-live, and wherein the function is deleted when the time-to-live expires. 
     
     
         16 . The system of  claim 11 , wherein the function is stored based at least in part on the processing instructions. 
     
     
         17 . The system of  claim 11 , wherein the processing instructions are applied as the key-value pairs are received. 
     
     
         18 . The system of  claim 11 , wherein at least a subset of the plurality of key-value pairs comprises a historical series of key-value pairs. 
     
     
         19 . The system of  claim 18 , wherein the historical series of key-value pairs comprises a state log for each of the plurality of channels. 
     
     
         20 . A non-transitory computer-readable medium having instructions stored thereon that, when executed by one or more computer processors, cause the one or more computer processors to:
 maintain a plurality of channels,
 wherein each channel is associated with a respective key, 
 wherein at least one key is associated with a respective time-to-live and becomes unavailable when the respective time-to-live expires; 
 wherein each channel comprises a plurality of messages, and 
 wherein each message comprises a value associated with a respective key to form a plurality of key-value pairs; 
   receive a function comprising (i) a key for identifying a channel of the plurality of channels and processing instructions to be applied to one or more values associated with the key; and   apply the processing instructions based at least in part on the key.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.