Patents by Inventor Yee Jiun Song
Yee Jiun Song 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: 10225238Abstract: Various embodiments implement a secure content distribution architecture involving a content delivery network (CDN). A web server system can encrypt a content file and store the encrypted content file in an origin data center. The web server system can store a decryption key for decrypting the content file. The CDN can fetch the encrypted content file after the content file is first requested by the CDN from the origin cache system. When a client device requests access to a website supported by the web server system, the web server system can provide a blueprint of a page of the website, a link to the content file in the CDN, and the decryption key for decrypting the content file. The client device can then request the encrypted content file from the CDN and utilize the decryption key to decrypt the encrypted content file.Type: GrantFiled: April 11, 2016Date of Patent: March 5, 2019Assignee: Facebook, Inc.Inventors: Yee Jiun Song, Wendy Tobagus, Aravind Narayanan
-
Publication number: 20170295144Abstract: Various embodiments implement a secure content distribution architecture involving a content delivery network (CDN). A web server system can encrypt a content file and store the encrypted content file in an origin data center. The web server system can store a decryption key for decrypting the content file. The CDN can fetch the encrypted content file after the content file is first requested by the CDN from the origin cache system. When a client device requests access to a website supported by the web server system, the web server system can provide a blueprint of a page of the website, a link to the content file in the CDN, and the decryption key for decrypting the content file. The client device can then request the encrypted content file from the CDN and utilize the decryption key to decrypt the encrypted content file.Type: ApplicationFiled: April 11, 2016Publication date: October 12, 2017Inventors: Yee Jiun Song, Wendy Tobagus, Aravind Narayanan
-
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: 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
-
Patent number: 9417938Abstract: A remote procedure call chain is provided that replaces multiple consecutive remote procedure calls to multiple servers from a client by allowing a client to specify multiple functions to be performed consecutively at multiple servers in a single remote procedure call chain. The remote procedure call chain is executed by a sequence of multiple servers. Each server executes a service function and a chaining function of the remote procedure call chain. The chaining function uses the state of the remote procedure call chain in the sequence of servers to determine the next server to receive the remote procedure call chain, and the service function to be executed by that server. After the last service function is performed, the last server in the sequence of servers sends the results of the executed service functions to the client that originated the remote procedure call chain.Type: GrantFiled: March 17, 2009Date of Patent: August 16, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Marcos K. Aguilera, Dahlia Malkhi, Ramakrishna R. Kotla, Yee Jiun Song
-
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
-
Patent number: 9189510Abstract: 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: February 26, 2013Date of Patent: November 17, 2015Assignee: FACEBOOK, INC.Inventors: Yee Jiun Song, Philippe Ajoux, Harry C. Li, Jason Sobel, Sanjeev Kumar, Rajesh Nishtala
-
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
-
Patent number: 8990375Abstract: Disclosed is a method and system for publishing subscriptions in a publish-subscribe system in accordance with subscription groups. Embodiments may include (i) determining a consumption characteristic by which each of a plurality of 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 a plurality of subscription groups, each of which includes subscriptions of those of the subscribers whose consumption characteristics satisfy the specified similarity criterion; and (iv) transmitting the subscriptions to the subscribers in accordance with the subscription groups.Type: GrantFiled: August 31, 2012Date of Patent: March 24, 2015Assignee: Facebook, Inc.Inventors: Harry Li, Philippe Ajoux, Laurent Demailly, Liat Atsmon Guz, Yee Jiun Song, Sabyasachi Roy, Sanjeev Kumar
-
Publication number: 20140244584Abstract: 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: February 26, 2013Publication date: August 28, 2014Applicant: Facebook, Inc.Inventors: Yee Jiun Song, Philippe Ajoux, Harry C. Li, Jason Sobel, Sanjeev Kumar, Rajesh Nishtala
-
Publication number: 20140067940Abstract: Disclosed is a method and system for publishing subscriptions in a publish-subscribe system in accordance with subscription groups. Embodiments may include (i) determining a consumption characteristic by which each of a plurality of 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 a plurality of subscription groups, each of which includes subscriptions of those of the subscribers whose consumption characteristics satisfy the specified similarity criterion; and (iv) transmitting the subscriptions to the subscribers in accordance with the subscription groups.Type: ApplicationFiled: August 31, 2012Publication date: March 6, 2014Applicant: Facebook, Inc.Inventors: Harry Li, Philippe Ajoux, Laurent Demailly, Liat Atsmon Guz, Yee Jiun Song, Sabyasachi Roy, Sanjeev Kumar
-
Publication number: 20100242055Abstract: A remote procedure call chain is provided that replaces multiple consecutive remote procedure calls to multiple servers from a client by allowing a client to specify multiple functions to be performed consecutively at multiple servers in a single remote procedure call chain. The remote procedure call chain is executed by a sequence of multiple servers. Each server executes a service function and a chaining function of the remote procedure call chain. The chaining function uses the state of the remote procedure call chain in the sequence of servers to determine the next server to receive the remote procedure call chain, and the service function to be executed by that server. After the last service function is performed, the last server in the sequence of servers sends the results of the executed service functions to the client that originated the remote procedure call chain.Type: ApplicationFiled: March 17, 2009Publication date: September 23, 2010Applicant: Microsoft CorporationInventors: Marcos K. Aguilera, Dahlia Malkhi, Ramakrishna R. Kotla, Yee Jiun Song