Patents by Inventor Yongfu Lou
Yongfu Lou 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: 11120046Abstract: Data is replicated between primary and secondary storage systems using a data pulling process or a log shipping process. If data is to be replicated through the log shipping process, a transaction and its associated data get stored in a transaction log in the secondary storage system. Subsequently, when the transaction gets executed, actual data gets persisted from the transaction log to a data log in the secondary storage system. If the data is to be replicated through the data pulling process, the transaction is stored in the transaction log. However, the associated data for the transaction is retrieved from the first primary storage system and stored directly in the data log in the secondary system.Type: GrantFiled: March 21, 2019Date of Patent: September 14, 2021Assignee: MICROSOFT TECHNOLOGY LICENSING LLCInventors: Pradeep Seela, Pei Zhang, Yongfu Lou, Jegan Devaraju, Krishnan Varadarajan, Yi-Fan Tsai, Maneesh Sah, Kristopher T. Lange, Shane K. Mainali
-
Patent number: 10817197Abstract: A distributed storage system includes multiple partitions. A block received for storage is striped across the partitions if it meets predetermined criteria. Multiple tables are maintained for indexing the blocks and the subblocks of blocks that are partitioned. The tables for the subblocks and the tables for the corresponding blocks of the subblocks are updated to include metadata for the subblocks for retrieving the subblocks in response to a request for a corresponding stored block.Type: GrantFiled: February 19, 2019Date of Patent: October 27, 2020Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Jegan Devaraju, Pradeep Seela, Yi-Fan Tsai, Yongfu Lou, Kristopher T. Lange, Pei Zhang, Maneesh Sah, Shane K. Mainali
-
Patent number: 10764364Abstract: Live migration of partitions can be achieved using server-to-server communications to coordinate and control partition migration and rebuild a persistent state of the partition on a destination server while the partition is served on the source server. The live migration approach breaks the heavy dependency on the partition master by eliminating most of the server-to-master communications, delegating coordination and control of the migration to the source and destination servers. After the migration is initiated by the partition master, the source server sends in-memory cache entries indicating the persistent state of the partition to the destination server. Once transferred, the two servers can cooperate to complete the handover, which loads the partition on the destination server using the cache entries received from the source server. Once the source server offloads the partition, it can redirect traffic for the partition to the destination server by triggering an update to the partition map.Type: GrantFiled: May 24, 2018Date of Patent: September 1, 2020Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Yongfu Lou, Arild Einar Skjolsvold, Qiuhan Wang, Donglin Wei, Maneesh Sah, Jegan Devaraju
-
Patent number: 10609174Abstract: Prefetching metadata stream sub-portions and/or log stream sub-portions to recreate partition states in a distributed computing system. A system monitors performance metrics associated with a first node running an instance of a partition and, based thereon, cause a second node to duplicate a desired operational state of the partition. The desired operational state may result from transactions being performed on the partition after a previous operational state. Re-creating the desired operational state may include causing multiple prefetch buffers to simultaneously load sub-portions of the transactions and then commencing a replay operation after an initial subset of the transactions is loaded but prior to the entirety of the transactions being fully loaded. The system may preemptively analyze individual prefetch buffers to identify partial buffers that have not fully loaded. Then, the system may cause other prefetch buffers to assist the partial buffers in fully loading a corresponding subset of transactions.Type: GrantFiled: April 11, 2017Date of Patent: March 31, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Jegan Devaraju, Yongfu Lou, Maneesh Sah
-
Publication number: 20190364105Abstract: Live migration of partitions can be achieved using server-to-server communications to coordinate and control partition migration and rebuild a persistent state of the partition on a destination server while the partition is served on the source server. The live migration approach breaks the heavy dependency on the partition master by eliminating most of the server-to-master communications, delegating coordination and control of the migration to the source and destination servers. After the migration is initiated by the partition master, the source server sends in-memory cache entries indicating the persistent state of the partition to the destination server. Once transferred, the two servers can cooperate to complete the handover, which loads the partition on the destination server using the cache entries received from the source server. Once the source server offloads the partition, it can redirect traffic for the partition to the destination server by triggering an update to the partition map.Type: ApplicationFiled: May 24, 2018Publication date: November 28, 2019Inventors: Yongfu LOU, Arild Einar SKJOLSVOLD, Qiuhan WANG, Donglin WEI, Maneesh SAH, Jegan DEVARAJU
-
Publication number: 20190339886Abstract: A distributed storage system includes multiple partitions. A block received for storage is striped across the partitions if it meets predetermined criteria. Multiple tables are maintained for indexing the blocks and the subblocks of blocks that are partitioned. The tables for the subblocks and the tables for the corresponding blocks of the subblocks are updated to include metadata for the subblocks for retrieving the subblocks in response to a request for a corresponding stored block.Type: ApplicationFiled: February 19, 2019Publication date: November 7, 2019Applicant: Microsoft Technology Licensing, LLCInventors: Jegan DEVARAJU, Pradeep Seela, Yi-Fan Tsai, Yongfu Lou, Kristopher T. Lange, Pei Zhang, Maneesh Sah, Shane K. Mainali
-
Publication number: 20190340185Abstract: Data is replicated between primary and secondary storage systems using a data pulling process or a log shipping process. If data is to be replicated through the log shipping process, a transaction and its associated data get stored in a transaction log in the secondary storage system. Subsequently, when the transaction gets executed, actual data gets persisted from the transaction log to a data log in the secondary storage system. If the data is to be replicated through the data pulling process, the transaction is stored in the transaction log. However, the associated data for the transaction is retrieved from the first primary storage system and stored directly in the data log in the secondary system.Type: ApplicationFiled: March 21, 2019Publication date: November 7, 2019Applicant: Microsoft Technology Licensing, LLCInventors: Pradeep Seela, Pei Zhang, Yongfu Lou, Jegan Devaraju, Krishnan Varadarajan, Yi-Fan Tsai, Maneesh Sah, Kristopher T. Lange, Shane K. Mainali
-
Publication number: 20180295206Abstract: Prefetching metadata stream sub-portions and/or log stream sub-portions to recreate partition states in a distributed computing system. A system monitors performance metrics associated with a first node running an instance of a partition and, based thereon, cause a second node to duplicate a desired operational state of the partition. The desired operational state may result from transactions being performed on the partition after a previous operational state. Re-creating the desired operational state may include causing multiple prefetch buffers to simultaneously load sub-portions of the transactions and then commencing a replay operation after an initial subset of the transactions is loaded but prior to the entirety of the transactions being fully loaded. The system may preemptively analyze individual prefetch buffers to identify partial buffers that have not fully loaded. Then, the system may cause other prefetch buffers to assist the partial buffers in fully loading a corresponding subset of transactions.Type: ApplicationFiled: April 11, 2017Publication date: October 11, 2018Inventors: Jegan Devaraju, Yongfu Lou, Maneesh Sah