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: 11310315
    Abstract: 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: Grant
    Filed: April 9, 2021
    Date of Patent: April 19, 2022
    Assignee: META PLATFORMS, INC.
    Inventors: Jason Curtis Jenks, Joshua Scott Evenson, Mohsen M Agsen, Jeremy David Fein, Philippe Vincent Ajoux
  • Patent number: 11055314
    Abstract: 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: Grant
    Filed: December 31, 2018
    Date of Patent: July 6, 2021
    Assignee: FACEBOOK, INC.
    Inventors: Jason Curtis Jenks, Joshua Scott Evenson, Mohsen Agsen, Jeremy David Fein, Philippe Vincent Ajoux
  • Patent number: 11025576
    Abstract: 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: Grant
    Filed: December 31, 2018
    Date of Patent: June 1, 2021
    Assignee: FACEBOOK, INC.
    Inventors: Jason Curtis Jenks, Joshua Scott Evenson, Mohsen Agsen, Jeremy David Fein, Philippe Vincent Ajoux
  • Patent number: 10979500
    Abstract: 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: Grant
    Filed: December 31, 2018
    Date of Patent: April 13, 2021
    Assignee: FACEBOOK, INC.
    Inventors: Jason Curtis Jenks, Joshua Scott Evenson, Mohsen Agsen, Jeremy David Fein, Philippe Vincent Ajoux
  • Patent number: 10855761
    Abstract: 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: Grant
    Filed: December 31, 2018
    Date of Patent: December 1, 2020
    Assignee: FACEBOOK, INC.
    Inventors: Jason Curtis Jenks, Joshua Scott Evenson, Mohsen Agsen, Jeremy David Fein, Philippe Vincent Ajoux
  • Patent number: 10608960
    Abstract: 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: Grant
    Filed: December 28, 2017
    Date of Patent: March 31, 2020
    Assignee: FACEBOOK, INC.
    Inventors: Zardosht Kasheff, Ron Eizenband, Philippe Vincent Ajoux, Gyujin Hwang
  • Patent number: 10503720
    Abstract: 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: Grant
    Filed: February 16, 2017
    Date of Patent: December 10, 2019
    Assignee: Facebook, Inc.
    Inventors: Neil Earnest Chao, Daniel Nota Peek, Dmitri Perelman, Philippe Vincent Ajoux
  • Publication number: 20190207873
    Abstract: 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: Application
    Filed: December 28, 2017
    Publication date: July 4, 2019
    Inventors: Zardosht Kasheff, Ron Eizenband, Philippe Vincent Ajoux, Gyujin Hwang
  • Publication number: 20170161310
    Abstract: 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: Application
    Filed: February 16, 2017
    Publication date: June 8, 2017
    Inventors: Neil Earnest Chao, Daniel Nota Peek, Dmitri Perelman, Philippe Vincent Ajoux
  • Patent number: 9674291
    Abstract: 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: Grant
    Filed: April 7, 2016
    Date of Patent: June 6, 2017
    Assignee: Facebook, Inc.
    Inventors: Harry C. Li, Philippe Vincent Ajoux, Laurent Demailly, Liat Atsmon Guz, Yee Jiun Song, Sabyasachi Roy, Sanjeev Kumar
  • Patent number: 9613122
    Abstract: 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: Grant
    Filed: May 2, 2014
    Date of Patent: April 4, 2017
    Assignee: Facebook, Inc.
    Inventors: Neil Earnest Chao, Daniel Nota Peek, Dmitri Perelman, Philippe Vincent Ajoux
  • Patent number: 9477598
    Abstract: 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: Grant
    Filed: September 4, 2015
    Date of Patent: October 25, 2016
    Assignee: Facebook, Inc.
    Inventors: Yee Jiun Song, Philippe Vincent Ajoux, Harry C. Li, Jason Sobel, Sanjeev Kumar, Rajesh Nishtala
  • Publication number: 20160226991
    Abstract: 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: Application
    Filed: April 7, 2016
    Publication date: August 4, 2016
    Inventors: Harry C. Li, Philippe Vincent Ajoux, Laurent Demailly, Liat Atsmon Guz, Yee Jiun Song, Sabyasachi Roy, Sanjeev Kumar
  • Patent number: 9344395
    Abstract: 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: Grant
    Filed: February 11, 2015
    Date of Patent: May 17, 2016
    Assignee: FACEBOOK, INC.
    Inventors: Harry C. Li, Philippe Vincent Ajoux, Laurent Demailly, Liat Atsmon Guz, Yee Jiun Song, Sabyasachi Roy, Sanjeev Kumar
  • Publication number: 20150378894
    Abstract: 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: Application
    Filed: September 4, 2015
    Publication date: December 31, 2015
    Inventors: Yee Jiun Song, Philippe Vincent Ajoux, Harry C. Li, Jason Sobel, Sanjeev Kumar, Rajesh Nishtala
  • Publication number: 20150317349
    Abstract: 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: Application
    Filed: May 2, 2014
    Publication date: November 5, 2015
    Applicant: FACEBOOK, INC.
    Inventors: Neil Earnest Chao, Daniel Nota Peek, Dmitri Perelman, Philippe Vincent Ajoux
  • Publication number: 20150156158
    Abstract: 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: Application
    Filed: February 11, 2015
    Publication date: June 4, 2015
    Inventors: Harry C. Li, Philippe Vincent Ajoux, Laurent Demailly, Liat Atsmon Guz, Yee Jiun Song, Sabyasachi Roy, Sanjeev Kumar