Patents by Inventor Huseyin Simitci
Huseyin Simitci 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: 12093715Abstract: A system including a data plane including a first virtual machine designated as a primary node and a second virtual machine designated as a secondary node, and a lock service configured to control changes in designation of the primary node and the secondary node. The first virtual machine repeatedly issues requests to the second virtual machine or lock service extending designation as the primary node for a first duration. The request is repeatedly issued within a duration shorter than the first duration. The second virtual machine receives an indication of the designation of the first virtual machine as the primary node being extended, issues a request to the lock service to change the designation of the primary node after passage the first duration of time without further indication of first virtual machine being extended as primary node, and receives confirmation from the lock service of the change in designation.Type: GrantFiled: August 31, 2021Date of Patent: September 17, 2024Assignee: Google LLCInventors: Zhenyu Zhao, Zachary Fewtrell, Srishti Srivastava, Prajakta Joshi, Nikhil Kothari, Nayer Naguib, Lawrence E. Greenfield, Huseyin Simitci, Gopal Ashok, Cristopher Whitton Shumate
-
Patent number: 11314459Abstract: In various embodiments, methods and systems for implementing a distributed metadata management system in distributed storage systems are provided. A distributed storage system operates based on data storage resources (e.g., extents and streams). The distributed metadata management system is implemented for extent and stream metadata to facilitate the scalability of metadata processing. The distributed storage system implements extent managers and stream managers that independently manage extent and stream metadata, respectively. The extent managers are associated with an extent table that stores extent metadata. The stream managers are associated with streams that store associations with extents. The distributed metadata management system can also utilize a bootstrap layer that leverages components of a legacy distributed storage system to facilitate distributed management of extent and stream metadata.Type: GrantFiled: March 6, 2020Date of Patent: April 26, 2022Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Cheng Huang, Andrew James Edwards, Shane K. Mainali, Aaron William Ogus, Ioan Oltean, Huseyin Simitci, Ju Wang, Bradley Gene Calder, Yikang Xu
-
Publication number: 20220066811Abstract: A system including a data plane including a first virtual machine designated as a primary node and a second virtual machine designated as a secondary node, and a lock service configured to control changes in designation of the primary node and the secondary node. The first virtual machine repeatedly issues requests to the second virtual machine or lock service extending designation as the primary node for a first duration. The request is repeatedly issued within a duration shorter than the first duration. The second virtual machine receives an indication of the designation of the first virtual machine as the primary node being extended, issues a request to the lock service to change the designation of the primary node after passage the first duration of time without further indication of first virtual machine being extended as primary node, and receives confirmation from the lock service of the change in designation.Type: ApplicationFiled: August 31, 2021Publication date: March 3, 2022Inventors: Zhenyu Zhao, Zachary Fewtrell, Srishti Srivastava, Prajakta Joshi, Nikhil Kothari, Nayer Naguib, Lawrence E. Greenfield, Huseyin Simitci, Gopal Ashok, Cristopher Whitton Shumate
-
Publication number: 20200326859Abstract: In various embodiments, methods and systems for implementing a distributed metadata management system in distributed storage systems are provided. A distributed storage system operates based on data storage resources (e.g., extents and streams). The distributed metadata management system is implemented for extent and stream metadata to facilitate the scalability of metadata processing. The distributed storage system implements extent managers and stream managers that independently manage extent and stream metadata, respectively. The extent managers are associated with an extent table that stores extent metadata. The stream managers are associated with streams that store associations with extents. The distributed metadata management system can also utilize a bootstrap layer that leverages components of a legacy distributed storage system to facilitate distributed management of extent and stream metadata.Type: ApplicationFiled: March 6, 2020Publication date: October 15, 2020Inventors: CHENG HUANG, ANDREW JAMES EDWARDS, SHANE K. MAINALI, AARON WILLIAM OGUS, IOAN OLTEAN, HUSEYIN SIMITCI, JU WANG, BRADLEY GENE CALDER, YIKANG XU
-
Patent number: 10789223Abstract: In various embodiments, methods and systems for implementing garbage collection in distributed storage systems are provided. The distributed storage system operates based on independent management of metadata of extent and stream data storage resources. A hybrid garbage collection system based on reference counting garbage collection operations and mark-and-sweep garbage collection operations is implemented. An extent lifetime table that tracks reference weights and mark sequences for extents is initialized and updated based on indications from extent managers and stream managers, respectively. Upon determining that an extent is to be handed-off from weighted reference counting garbage collection operations to mark-and-sweep garbage collection operations, a reference weight field for the extent is voided and a mark sequence field of the extent is updated. The mark sequence field is updated with a latest global sequence number.Type: GrantFiled: March 24, 2016Date of Patent: September 29, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Cheng Huang, Andrew James Edwards, Shane K Mainali, Aaron William Ogus, Ioan Oltean, Huseyin Simitci, Ju Wang, Bradley Gene Calder, Yikang Xu
-
Patent number: 10585627Abstract: In various embodiments, methods and systems for implementing a distributed metadata management system in distributed storage systems are provided. A distributed storage system operates based on data storage resources (e.g., extents and streams). The distributed metadata management system is implemented for extent and stream metadata to facilitate the scalability of metadata processing. The distributed storage system implements extent managers and stream managers that independently manage extent and stream metadata, respectively. The extent managers are associated with an extent table that stores extent metadata. The stream managers are associated with streams that store associations with extents. The distributed metadata management system can also utilize a bootstrap layer that leverages components of a legacy distributed storage system to facilitate distributed management of extent and stream metadata.Type: GrantFiled: March 24, 2016Date of Patent: March 10, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Cheng Huang, Andrew James Edwards, Shane K. Mainali, Aaron William Ogus, Ioan Oltean, Huseyin Simitci, Ju Wang, Bradley Gene Calder, Yikang Xu
-
Patent number: 10187083Abstract: In various embodiments, methods and systems for erasure coding with enhanced local protection groups are provided. An erasure coding scheme can be defined based on a Vertical Local Reconstruction Code (VLRC) that achieves high storage efficiency by combining the Local Reconstruction Code and conventional erasure coding, where the local reconstruction code (LRC) is carefully laid out across zones. Thus, when a zone is down, remaining fragments form an appropriate LRC. Further, an inter-zone erasure coding scheme—Zone Local Reconstruction Code (ZZG-2 code)—is provided having both local reconstruction within every zone and a-of-b recovery property across zones. An inter-zone adaptive erasure coding (uber code) scheme is provided, the uber code is configurable to produce near optimal performance in different environments characterized by intra and inter-zone bandwidth and machine failure rates.Type: GrantFiled: June 26, 2015Date of Patent: January 22, 2019Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Bradley G. Calder, Parikshit Santhan Gopalan, Cheng Huang, Aaron W. Ogus, Huseyin Simitci, Sergey M. Yekhanin
-
Publication number: 20170277453Abstract: In various embodiments, methods and systems for implementing a distributed metadata management system in distributed storage systems are provided. A distributed storage system operates based on data storage resources (e.g., extents and streams). The distributed metadata management system is implemented for extent and stream metadata to facilitate the scalability of metadata processing. The distributed storage system implements extent managers and stream managers that independently manage extent and stream metadata, respectively. The extent managers are associated with an extent table that stores extent metadata. The stream managers are associated with streams that store associations with extents. The distributed metadata management system can also utilize a bootstrap layer that leverages components of a legacy distributed storage system to facilitate distributed management of extent and stream metadata.Type: ApplicationFiled: March 24, 2016Publication date: September 28, 2017Inventors: CHENG HUANG, ANDREW JAMES EDWARDS, SHANE K. MAINALI, AARON WILLIAM OGUS, IOAN OLTEAN, HUSEYIN SIMITCI, JU WANG, BRADLEY GENE CALDER, YIKANG XU
-
Publication number: 20170277726Abstract: In various embodiments, methods and systems for implementing garbage collection in distributed storage systems are provided. The distributed storage system operates based on independent management of metadata of extent and stream data storage resources. A hybrid garbage collection system based on reference counting garbage collection operations and mark-and-sweep garbage collection operations is implemented. An extent lifetime table that tracks reference weights and mark sequences for extents is initialized and updated based on indications from extent managers and stream managers, respectively. Upon determining that an extent is to be handed-off from weighted reference counting garbage collection operations to mark-and-sweep garbage collection operations, a reference weight field for the extent is voided and a mark sequence field of the extent is updated. The mark sequence field is updated with a latest global sequence number.Type: ApplicationFiled: March 24, 2016Publication date: September 28, 2017Inventors: CHENG HUANG, ANDREW JAMES EDWARDS, SHANE K MAINALI, AARON WILLIAM OGUS, IOAN OLTEAN, HUSEYIN SIMITCI, JU WANG, BRADLEY GENE CALDER, YIKANG XU
-
Publication number: 20160380650Abstract: In various embodiments, methods and systems for erasure coding with enhanced local protection groups are provided. An erasure coding scheme can be defined based on a Vertical Local Reconstruction Code (VLRC) that achieves high storage efficiency by combining the Local Reconstruction Code and conventional erasure coding, where the local reconstruction code (LRC) is carefully laid out across zones. Thus, when a zone is down, remaining fragments form an appropriate LRC. Further, an inter-zone erasure coding scheme—Zone Local Reconstruction Code (ZZG-2 code)—is provided having both local reconstruction within every zone and a-of-b recovery property across zones. An inter-zone adaptive erasure coding (uber code) scheme is provided, the uber code is configurable to produce near optimal performance in different environments characterized by intra and inter-zone bandwidth and machine failure rates.Type: ApplicationFiled: June 26, 2015Publication date: December 29, 2016Inventors: BRADLEY G. CALDER, PARIKSHIT SANTHAN GOPALAN, CHENG HUANG, AARON W. OGUS, HUSEYIN SIMITCI, SERGEY M. YEKHANIN
-
Patent number: 9378084Abstract: In various embodiments, methods and systems for erasure coding data across multiple storage zones are provided. This may be accomplished by dividing a data chunk into a plurality of sub-fragments. Each of the plurality of sub-fragments is associated with a zone. Zones comprise buildings, data centers, and geographic regions providing a storage service. A plurality of reconstruction parities is computed. Each of the plurality of reconstruction parities computed using at least one sub-fragment from the plurality of sub-fragments. The plurality of reconstruction parities comprises at least one cross-zone parity. The at least one cross-zone parity is assigned to a parity zone. The cross-zone parity provides cross-zone reconstruction of a portion of the data chunk.Type: GrantFiled: June 25, 2013Date of Patent: June 28, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Bradley G. Calder, Parikshit Santhana Gopalan, Cheng Huang, Jin Li, Aaron W. Ogus, Huseyin Simitci, Sergey Yekhanin
-
Patent number: 9244761Abstract: In various embodiments, methods and systems for erasure coding data across multiple storage zones are provided. This may be accomplished by dividing a data chunk into a plurality of sub-fragments. Each of the plurality of sub-fragments is associated with a zone. Zones comprise buildings, data centers, and geographic regions providing a storage service. A plurality of reconstruction parities is computed. Each of the plurality of reconstruction parities computed using at least one sub-fragment from the plurality of sub-fragments. The plurality of reconstruction parities comprises at least one cross-zone parity. The at least one cross-zone parity is assigned to a parity zone. The cross-zone parity provides cross-zone reconstruction of a portion of the data chunk.Type: GrantFiled: March 24, 2014Date of Patent: January 26, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Sergey Yekhanin, Huseyin Simitci, Aaron W. Ogus, Jin Li, Cheng Huang, Parikshit Santhan Gopalan, Bradley G. Calder
-
Patent number: 9141679Abstract: Cloud data storage systems, methods, and techniques partition system data symbols into predefined-sized groups and then encode each group to form corresponding parity symbols, encode all data symbols into global redundant symbols, and store each symbol (data, parity, and redundant) in different failure domains in a manner that ensures independence of failures. In several implementations, the resultant cloud-encoded data features both data locality and ability to recover up to a predefined threshold tolerance of simultaneous erasures (unavailable data symbols) without any information loss. In addition, certain implementations also feature the placement of cloud-encoded data in domains (nodes or node groups) to provide similar locality and redundancy features simultaneous with the recovery of an entire domain of data that is unavailable due to software or hardware upgrades or failures.Type: GrantFiled: August 31, 2011Date of Patent: September 22, 2015Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Parikshit Gopalan, Cheng Huang, Huseyin Simitci, Sergey Yekhanin
-
Publication number: 20140380125Abstract: In various embodiments, methods and systems for erasure coding data across multiple storage zones are provided. This may be accomplished by dividing a data chunk into a plurality of sub-fragments. Each of the plurality of sub-fragments is associated with a zone. Zones comprise buildings, data centers, and geographic regions providing a storage service. A plurality of reconstruction parities is computed. Each of the plurality of reconstruction parities computed using at least one sub-fragment from the plurality of sub-fragments. The plurality of reconstruction parities comprises at least one cross-zone parity. The at least one cross-zone parity is assigned to a parity zone. The cross-zone parity provides cross-zone reconstruction of a portion of the data chunk.Type: ApplicationFiled: June 25, 2013Publication date: December 25, 2014Applicant: MICROSOFT CORPORATIONInventors: BRADLEY G. CALDER, PARIKSHIT SANTHANA GOPALAN, CHENG HUANG, JIN LI, AARON W. OGUS, HUSEYIN SIMITCI, SERGEY YEKHANIN
-
Publication number: 20140380126Abstract: In various embodiments, methods and systems for erasure coding data across multiple storage zones are provided. This may be accomplished by dividing a data chunk into a plurality of sub-fragments. Each of the plurality of sub-fragments is associated with a zone. Zones comprise buildings, data centers, and geographic regions providing a storage service. A plurality of reconstruction parities is computed. Each of the plurality of reconstruction parities computed using at least one sub-fragment from the plurality of sub-fragments. The plurality of reconstruction parities comprises at least one cross-zone parity. The at least one cross-zone parity is assigned to a parity zone. The cross-zone parity provides cross-zone reconstruction of a portion of the data chunk.Type: ApplicationFiled: March 24, 2014Publication date: December 25, 2014Applicant: MICROSOFT CORPORATIONInventors: SERGEY YEKHANIN, HUSEYIN SIMITCI, AARON W. OGUS, JIN LI, CHENG HUANG, PARIKSHIT SANTHAN GOPALAN, BRADLEY G. CALDER
-
Patent number: 8473778Abstract: Embodiments of the present invention relate to systems, methods and computer storage media for erasure coding data in a distributed computing environment. A sealed extent is identified that is comprised of two or more data blocks and two or more index blocks. The sealed extent is optimized for erasure coding by grouping the two or more data blocks within the optimized sealed extent together and grouping the two or more index blocks within the optimized sealed extent together. The optimized extent may also be erasure coded, which includes creating data fragments and coding fragments. The data fragments and the coding fragments may also be stored in the distributed computing environment. Additional embodiments include monitoring statistical information to determine if replication, erasure coding or a hybrid storage plan should be utilized.Type: GrantFiled: September 8, 2010Date of Patent: June 25, 2013Assignee: Microsoft CorporationInventors: Huseyin Simitci, Yikang Xu, Haiyong Wang, Aaron William Ogus, Bradley Gene Calder
-
Publication number: 20130054549Abstract: Cloud data storage systems, methods, and techniques partition system data symbols into predefined-sized groups and then encode each group to form corresponding parity symbols, encode all data symbols into global redundant symbols, and store each symbol (data, parity, and redundant) in different failure domains in a manner that ensures independence of failures. In several implementations, the resultant cloud-encoded data features both data locality and ability to recover up to a predefined threshold tolerance of simultaneous erasures (unavailable data symbols) without any information loss. In addition, certain implementations also feature the placement of cloud-encoded data in domains (nodes or node groups) to provide similar locality and redundancy features simultaneous with the recovery of an entire domain of data that is unavailable due to software or hardware upgrades or failures.Type: ApplicationFiled: August 31, 2011Publication date: February 28, 2013Applicant: Microsoft CorporationInventors: Parikshit Gopalan, Cheng Huang, Huseyin Simitci, Sergey Yekhanin
-
Publication number: 20120060072Abstract: Embodiments of the present invention relate to systems, methods and computer storage media for erasure coding data in a distributed computing environment. A sealed extent is identified that is comprised of two or more data blocks and two or more index blocks. The sealed extent is optimized for erasure coding by grouping the two or more data blocks within the optimized sealed extent together and grouping the two or more index blocks within the optimized sealed extent together. The optimized extent may also be erasure coded, which includes creating data fragments and coding fragments. The data fragments and the coding fragments may also be stored in the distributed computing environment. Additional embodiments include monitoring statistical information to determine if replication, erasure coding or a hybrid storage plan should be utilized.Type: ApplicationFiled: September 8, 2010Publication date: March 8, 2012Applicant: MICROSOFT CORPORATIONInventors: HUSEYIN SIMITCI, YIKANG XU, HAIYONG WANG, AARON WILLIAM OGUS, BRADLEY GENE CALDER
-
Patent number: 7970861Abstract: Systems, methods, and computer storage media for load balancing at a client device in a distributed computing environment based on a dynamic validity duration and utilization metrics of one or more data stores are provided. The client device selects a data store from a plurality of data stores that each maintains a copy of a datum. The selection of data stores by a client is based on utilization metrics of the data stores. The utilization metrics are stored at the client. A data store determines if a request for a particular datum may be fulfilled within a validity period associated with a request from the client. The validity period is dynamically changed by the client across multiple requests to aid in the load balancing process. Additionally, a gossip protocol may be used to propagate utilization metrics of a plurality of data stores across the system.Type: GrantFiled: November 18, 2009Date of Patent: June 28, 2011Assignee: Microsoft CorporationInventors: Huseyin Simitci, Aaron W. Ogus, Ramesh Shankar
-
Publication number: 20110119328Abstract: Systems, methods, and computer storage media for load balancing at a client device in a distributed computing environment based on a dynamic validity duration and utilization metrics of one or more data stores are provided. The client device selects a data store from a plurality of data stores that each maintains a copy of a datum. The selection of data stores by a client is based on utilization metrics of the data stores. The utilization metrics are stored at the client. A data store determines if a request for a particular datum may be fulfilled within a validity period associated with a request from the client. The validity period is dynamically changed by the client across multiple requests to aid in the load balancing process. Additionally, a gossip protocol may be used to propagate utilization metrics of a plurality of data stores across the system.Type: ApplicationFiled: November 18, 2009Publication date: May 19, 2011Applicant: MICROSOFT CORPORATIONInventors: Huseyin Simitci, Aaron W. Ogus, Ramesh Shankar