Patents by Inventor Philippe Vincent Ajoux
Philippe Vincent Ajoux has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 11310315Abstract: Techniques for directive-based messaging synchronization are described. In one embodiment, an apparatus may comprise a local network component operative to receive a directive package at a messaging client on a client device; and a local database synchronization component operative to execute the directive package with a messaging-sync virtual machine to modify a local messaging database of the messaging client; and refresh a user interface component of the messaging client in response to modifying the local messaging database of the messaging client. Other embodiments are described and claimed.Type: GrantFiled: April 9, 2021Date of Patent: April 19, 2022Assignee: META PLATFORMS, INC.Inventors: Jason Curtis Jenks, Joshua Scott Evenson, Mohsen M Agsen, Jeremy David Fein, Philippe Vincent Ajoux
-
Patent number: 11055314Abstract: Techniques for a database-driven messaging user interface are described. In one embodiment, an apparatus may comprise a database access component operative to determine that a local messaging database of a messaging client on a client device has been updated; and examine the local messaging database to determine a set of database queries to rerun for a plurality of local user interface components; and the local user interface components operative to refresh based on running the set of database queries against the local messaging database. Other embodiments are described and claimed.Type: GrantFiled: December 31, 2018Date of Patent: July 6, 2021Assignee: FACEBOOK, INC.Inventors: Jason Curtis Jenks, Joshua Scott Evenson, Mohsen Agsen, Jeremy David Fein, Philippe Vincent Ajoux
-
Patent number: 11025576Abstract: Techniques for backend-specific cursor tracking are described. In one embodiment, an apparatus may comprise a local database synchronization component operative to initiate a client update at a messaging client on a client device, the client update associated with a specific backend service for a messaging system; retrieve an opaque backend-specific update cursor for the specific backend service; and store an updated opaque backend-specific update cursor for the messaging client; and a local network component operative to send the opaque backend-specific update cursor to the messaging system in association with a client update request; and receive an update package at the messaging client on the client device, the update package comprising the updated opaque backend-specific update cursor. Other embodiments are described and claimed.Type: GrantFiled: December 31, 2018Date of Patent: June 1, 2021Assignee: FACEBOOK, INC.Inventors: Jason Curtis Jenks, Joshua Scott Evenson, Mohsen Agsen, Jeremy David Fein, Philippe Vincent Ajoux
-
Patent number: 10979500Abstract: Techniques for directive-based messaging synchronization are described. In one embodiment, an apparatus may comprise a local network component operative to receive a directive package at a messaging client on a client device; and a local database synchronization component operative to execute the directive package with a messaging-sync virtual machine to modify a local messaging database of the messaging client; and refresh a user interface component of the messaging client in response to modifying the local messaging database of the messaging client. Other embodiments are described and claimed.Type: GrantFiled: December 31, 2018Date of Patent: April 13, 2021Assignee: FACEBOOK, INC.Inventors: Jason Curtis Jenks, Joshua Scott Evenson, Mohsen Agsen, Jeremy David Fein, Philippe Vincent Ajoux
-
Patent number: 10855761Abstract: Techniques for in-place directive execution are described. In one embodiment, an apparatus may comprise a local network component operative to receive a directive package at a messaging client on a client device, the directive package formatted according to a serialized directive schema; and store the directive package in a memory of the client device in the serialized directive schema; and a local database synchronization component operative to execute the directive package using in-place access of the directive package in the memory of the client device. Other embodiments are described and claimed.Type: GrantFiled: December 31, 2018Date of Patent: December 1, 2020Assignee: FACEBOOK, INC.Inventors: Jason Curtis Jenks, Joshua Scott Evenson, Mohsen Agsen, Jeremy David Fein, Philippe Vincent Ajoux
-
Patent number: 10608960Abstract: Techniques for batched bulk processing are described. In one embodiment, an apparatus may comprise a client front-end component operative to receive a plurality of messaging deltas at a messaging system; and queue the plurality of messaging deltas through a message queue of the messaging system; a message queue monitoring component operative to monitor the message queue to identify a plurality of batch-operation messaging deltas of the plurality of messaging deltas; and store a plurality of batch-operation instructions in a batch-operation instruction system; and a batch-operation component of the batch-operation instruction system operative to perform the plurality of batch-operation instructions.Type: GrantFiled: December 28, 2017Date of Patent: March 31, 2020Assignee: FACEBOOK, INC.Inventors: Zardosht Kasheff, Ron Eizenband, Philippe Vincent Ajoux, Gyujin Hwang
-
Patent number: 10503720Abstract: A multi-shard database system receives a transaction including multiple actions directed to different shards of the database system. The database system creates a transaction record including a transaction identifier and a transaction status for the transaction in a transaction database. The database system then executes, in parallel, the multiple actions on the different shards by associating with each data item involved in the transaction a data structure that includes the transaction identifier and new data to be applied to the data item. The database system then updates the transaction status in the transaction record for the transaction from pending to completed when each of the multiple actions is successfully executed on the corresponding shard. Consistency is eventually implemented when the data structures associated with the data items involved in the transaction are evaluated. The evaluation of a data structure can be triggered by a read request or other events.Type: GrantFiled: February 16, 2017Date of Patent: December 10, 2019Assignee: Facebook, Inc.Inventors: Neil Earnest Chao, Daniel Nota Peek, Dmitri Perelman, Philippe Vincent Ajoux
-
Publication number: 20190207873Abstract: Techniques for batched bulk processing are described. In one embodiment, an apparatus may comprise a client front-end component operative to receive a plurality of messaging deltas at a messaging system; and queue the plurality of messaging deltas through a message queue of the messaging system; a message queue monitoring component operative to monitor the message queue to identify a plurality of batch-operation messaging deltas of the plurality of messaging deltas; and store a plurality of batch-operation instructions in a batch-operation instruction system; and a batch-operation component of the batch-operation instruction system operative to perform the plurality of batch-operation instructions. Other embodiments are described and claimed.Type: ApplicationFiled: December 28, 2017Publication date: July 4, 2019Inventors: Zardosht Kasheff, Ron Eizenband, Philippe Vincent Ajoux, Gyujin Hwang
-
Publication number: 20170161310Abstract: A multi-shard database system receives a transaction including multiple actions directed to different shards of the database system. The database system creates a transaction record including a transaction identifier and a transaction status for the transaction in a transaction database. The database system then executes, in parallel, the multiple actions on the different shards by associating with each data item involved in the transaction a data structure that includes the transaction identifier and new data to be applied to the data item. The database system then updates the transaction status in the transaction record for the transaction from pending to completed when each of the multiple actions is successfully executed on the corresponding shard. Consistency is eventually implemented when the data structures associated with the data items involved in the transaction are evaluated. The evaluation of a data structure can be triggered by a read request or other events.Type: ApplicationFiled: February 16, 2017Publication date: June 8, 2017Inventors: Neil Earnest Chao, Daniel Nota Peek, Dmitri Perelman, Philippe Vincent Ajoux
-
Patent number: 9674291Abstract: Disclosed is a technology for publishing subscriptions in a publish-subscribe system in accordance with subscription groups. The technology may include (i) determining a consumption characteristic by which each of multiple subscribers in a publish-subscribe system consumes a subscription published by a publisher; (ii) identifying the subscribers whose consumption characteristics satisfy a specified similarity criterion; (iii) defining multiple subscription groups, each of which includes subscriptions of those of the subscribers whose consumption characteristics satisfy the specified similarity criterion; (iv) storing the subscriptions in multiple logical partitions of a storage system where each of the logical partitions contains a separate non-overlapping subset of the subscriptions; and (v) transmitting the subscriptions to the subscribers in accordance with the subscription groups.Type: GrantFiled: April 7, 2016Date of Patent: June 6, 2017Assignee: Facebook, Inc.Inventors: Harry C. Li, Philippe Vincent Ajoux, Laurent Demailly, Liat Atsmon Guz, Yee Jiun Song, Sabyasachi Roy, Sanjeev Kumar
-
Patent number: 9613122Abstract: A multi-shard database system receives a transaction including multiple actions directed to different shards of the database system. The database system creates a transaction record including a transaction identifier and a transaction status for the transaction in a transaction database. The database system then executes, in parallel, the multiple actions on the different shards by associating with each data item involved in the transaction a data structure that includes the transaction identifier and new data to be applied to the data item. The database system then updates the transaction status in the transaction record for the transaction from pending to completed when each of the multiple actions is successfully executed on the corresponding shard. Consistency is eventually implemented when the data structures associated with the data items involved in the transaction are evaluated. The evaluation of a data structure can be triggered by a read request or other events.Type: GrantFiled: May 2, 2014Date of Patent: April 4, 2017Assignee: Facebook, Inc.Inventors: Neil Earnest Chao, Daniel Nota Peek, Dmitri Perelman, Philippe Vincent Ajoux
-
Patent number: 9477598Abstract: When multiple regional data clusters are used to store data in a system, maintaining cache consistency across different regions is important for providing a desirable user experience. In one embodiment, there is a master data cluster where all data writes are performed, and the writes are replicated to each of the slave data clusters in the other regions. Appended to the replication statements are invalidations for cache values for the keys whose values have been changed in the master data cluster. An apparatus in the master data cluster logs replication statements sent to the slave databases. When a slave database fails, the apparatus extracts the invalidations intended for the failed database and publishes the invalidations to a subscriber in the region of the failed database. The subscriber sends the invalidations to the local caches to cause stale data for those keys to be deleted from the caches.Type: GrantFiled: September 4, 2015Date of Patent: October 25, 2016Assignee: Facebook, Inc.Inventors: Yee Jiun Song, Philippe Vincent Ajoux, Harry C. Li, Jason Sobel, Sanjeev Kumar, Rajesh Nishtala
-
Publication number: 20160226991Abstract: Disclosed is a technology for publishing subscriptions in a publish-subscribe system in accordance with subscription groups. The technology may include (i) determining a consumption characteristic by which each of multiple subscribers in a publish-subscribe system consumes a subscription published by a publisher; (ii) identifying the subscribers whose consumption characteristics satisfy a specified similarity criterion; (iii) defining multiple subscription groups, each of which includes subscriptions of those of the subscribers whose consumption characteristics satisfy the specified similarity criterion; (iv) storing the subscriptions in multiple logical partitions of a storage system where each of the logical partitions contains a separate non-overlapping subset of the subscriptions; and (v) transmitting the subscriptions to the subscribers in accordance with the subscription groups.Type: ApplicationFiled: April 7, 2016Publication date: August 4, 2016Inventors: Harry C. Li, Philippe Vincent Ajoux, Laurent Demailly, Liat Atsmon Guz, Yee Jiun Song, Sabyasachi Roy, Sanjeev Kumar
-
Patent number: 9344395Abstract: Disclosed is a technology for publishing subscriptions in a publish-subscribe system in accordance with subscription groups. The technology may include (i) determining a consumption characteristic by which each of multiple subscribers in a publish-subscribe system consumes a subscription published by a publisher; (ii) identifying the subscribers whose consumption characteristics satisfy a specified similarity criterion; (iii) defining multiple subscription groups, each of which includes subscriptions of those of the subscribers whose consumption characteristics satisfy the specified similarity criterion; (iv) storing the subscriptions in multiple logical partitions of a storage system where each of the logical partitions contains a separate non-overlapping subset of the subscriptions; and (v) transmitting the subscriptions to the subscribers in accordance with the subscription groups.Type: GrantFiled: February 11, 2015Date of Patent: May 17, 2016Assignee: FACEBOOK, INC.Inventors: Harry C. Li, Philippe Vincent Ajoux, Laurent Demailly, Liat Atsmon Guz, Yee Jiun Song, Sabyasachi Roy, Sanjeev Kumar
-
Publication number: 20150378894Abstract: When multiple regional data clusters are used to store data in a system, maintaining cache consistency across different regions is important for providing a desirable user experience. In one embodiment, there is a master data cluster where all data writes are performed, and the writes are replicated to each of the slave data clusters in the other regions. Appended to the replication statements are invalidations for cache values for the keys whose values have been changed in the master data cluster. An apparatus in the master data cluster logs replication statements sent to the slave databases. When a slave database fails, the apparatus extracts the invalidations intended for the failed database and publishes the invalidations to a subscriber in the region of the failed database. The subscriber sends the invalidations to the local caches to cause stale data for those keys to be deleted from the caches.Type: ApplicationFiled: September 4, 2015Publication date: December 31, 2015Inventors: Yee Jiun Song, Philippe Vincent Ajoux, Harry C. Li, Jason Sobel, Sanjeev Kumar, Rajesh Nishtala
-
Publication number: 20150317349Abstract: A multi-shard database system receives a transaction including multiple actions directed to different shards of the database system. The database system creates a transaction record including a transaction identifier and a transaction status for the transaction in a transaction database. The database system then executes, in parallel, the multiple actions on the different shards by associating with each data item involved in the transaction a data structure that includes the transaction identifier and new data to be applied to the data item. The database system then updates the transaction status in the transaction record for the transaction from pending to completed when each of the multiple actions is successfully executed on the corresponding shard. Consistency is eventually implemented when the data structures associated with the data items involved in the transaction are evaluated. The evaluation of a data structure can be triggered by a read request or other events.Type: ApplicationFiled: May 2, 2014Publication date: November 5, 2015Applicant: FACEBOOK, INC.Inventors: Neil Earnest Chao, Daniel Nota Peek, Dmitri Perelman, Philippe Vincent Ajoux
-
Publication number: 20150156158Abstract: Disclosed is a technology for publishing subscriptions in a publish-subscribe system in accordance with subscription groups. The technology may include (i) determining a consumption characteristic by which each of multiple subscribers in a publish-subscribe system consumes a subscription published by a publisher; (ii) identifying the subscribers whose consumption characteristics satisfy a specified similarity criterion; (iii) defining multiple subscription groups, each of which includes subscriptions of those of the subscribers whose consumption characteristics satisfy the specified similarity criterion; (iv) storing the subscriptions in multiple logical partitions of a storage system where each of the logical partitions contains a separate non-overlapping subset of the subscriptions; and (v) transmitting the subscriptions to the subscribers in accordance with the subscription groups.Type: ApplicationFiled: February 11, 2015Publication date: June 4, 2015Inventors: Harry C. Li, Philippe Vincent Ajoux, Laurent Demailly, Liat Atsmon Guz, Yee Jiun Song, Sabyasachi Roy, Sanjeev Kumar