Patents by Inventor Chunqi Han
Chunqi Han 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: 10684927Abstract: The failure of a storage unit in a storage array of a storage system may render the storage unit unresponsive to any requests. Any writes to the storage system that occur during the failure of the storage unit will not be reflected on the failed unit, rendering some of the failed unit's data stale. Assuming the failed unit's data is not corrupted but is just stale, a partial rebuild may be performed on the failed unit, selectively reconstructing only data that is needed to replace the stale data. Described herein are techniques for storing information that identifies the data that needs to be rebuilt. When the storage unit fails, the segment identifier associated with the last data segment written to the storage system may be stored. Upon the storage unit recovering, the storage system can rebuild only those data segments whose identifier is greater than the stored segment identifier.Type: GrantFiled: July 29, 2014Date of Patent: June 16, 2020Assignee: Hewlett Packard Enterprise Development LPInventors: Anil Nanduri, Chunqi Han, Murali Krishna Vishnumolakala
-
Patent number: 10496481Abstract: Described herein are techniques for storing data in a redundant manner on a plurality of storage units of a storage system. While all of the storage units are operating without failure, only error-correction blocks are stored on a first one of the storage units, while a combination of data blocks and error-correction blocks are stored on a second one of the storage units. Upon failure of the second storage unit, one or more data blocks and one or more error-correction blocks formerly stored on the second storage unit are reconstructed, and the one or more reconstructed data blocks and the one or more reconstructed error-correction blocks are stored on the first storage unit.Type: GrantFiled: December 22, 2016Date of Patent: December 3, 2019Assignee: Hewlett Packard Enterprise Development LPInventors: Chunqi Han, Anil Nanduri, Murali Krishna Vishnumolakala
-
Publication number: 20170161146Abstract: Described herein are techniques for storing data in a redundant manner on a plurality of storage units of a storage system. While all of the storage units are operating without failure, only error-correction blocks are stored on a first one of the storage units, while a combination of data blocks and error-correction blocks are stored on a second one of the storage units. Upon failure of the second storage unit, one or more data blocks and one or more error-correction blocks formerly stored on the second storage unit are reconstructed, and the one or more reconstructed data blocks and the one or more reconstructed error-correction blocks are stored on the first storage unit.Type: ApplicationFiled: December 22, 2016Publication date: June 8, 2017Inventors: Chunqi Han, Anil Nanduri, Murali Krishna Vishnumolakala
-
Publication number: 20170123915Abstract: Described herein are techniques for rebuilding the contents of a failed storage unit in a storage system having a plurality of storage units. Rather than rebuilding the contents on a dedicated spare which may be costly, the contents are rebuilt on system-level over provisioned (OP) space of the non-failed storage units. Such system-level OP space is ordinarily used to perform garbage collection, but in the event of a storage unit failure, a fraction of the system-level OP space is repurposed into a temporary hot spare for storing the rebuilt contents. Upon recovery of the failed storage unit, the storage space allocated to the temporary hot spare is returned to the system-level OP space.Type: ApplicationFiled: October 29, 2015Publication date: May 4, 2017Inventors: Hiep Nguyen, Anil Nanduri, Chunqi Han
-
Patent number: 9588919Abstract: Described herein are techniques for cancelling I/O requests. Initially, virtual memory of an application is assigned to a first portion of memory. The application may issue a read request to an external device. The external device is instructed to record any response to the read request in the first portion of memory. The read request may be cancelled as follows. The virtual memory of the application may be re-assigned to a second portion of the memory. If and when the external device finishes processing the read request, the external device's response to the read request may still be saved in the first portion of memory, even though the read request has been cancelled. Such action of the external device would ordinarily corrupt the virtual memory of the application, but due to the memory re-assignment, no corruption of the virtual memory occurs. Similar techniques may be applied to cancel write requests.Type: GrantFiled: November 28, 2014Date of Patent: March 7, 2017Assignee: NIMBLE STORAGE, INC.Inventors: Anil Nanduri, Chunqi Han, Murali Krishna Vishnumolakala
-
Patent number: 9563509Abstract: Described herein are techniques for storing data in a redundant manner on a plurality of storage units of a storage system. While all of the storage units are operating without failure, only error-correction blocks are stored on a first one of the storage units, while a combination of data blocks and error-correction blocks are stored on a second one of the storage units. Upon failure of the second storage unit, one or more data blocks and one or more error-correction blocks formerly stored on the second storage unit are reconstructed, and the one or more reconstructed data blocks and the one or more reconstructed error-correction blocks are stored on the first storage unit.Type: GrantFiled: July 15, 2014Date of Patent: February 7, 2017Assignee: NIMBLE STORAGE, INC.Inventors: Chunqi Han, Anil Nanduri, Murali Krishna Vishnumolakala
-
Publication number: 20160034209Abstract: The failure of a storage unit in a storage array of a storage system may render the storage unit unresponsive to any requests. Any writes to the storage system that occur during the failure of the storage unit will not be reflected on the failed unit, rendering some of the failed unit's data stale. Assuming the failed unit's data is not corrupted but is just stale, a partial rebuild may be performed on the failed unit, selectively reconstructing only data that is needed to replace the stale data. Described herein are techniques for storing information that identifies the data that needs to be rebuilt. When the storage unit fails, the segment identifier associated with the last data segment written to the storage system may be stored. Upon the storage unit recovering, the storage system can rebuild only those data segments whose identifier is greater than the stored segment identifier.Type: ApplicationFiled: July 29, 2014Publication date: February 4, 2016Inventors: Anil Nanduri, Chunqi Han, Murali Krishna Vishnumolakala
-
Publication number: 20160034370Abstract: The failure of a storage unit in a storage array of a storage system may render the storage unit unresponsive to any requests. Any writes to the storage system that occur during the failure of the storage unit will not be reflected on the failed unit, rendering some of the failed unit's data stale. Assuming the failed unit's data is not corrupted but is just stale, a partial rebuild may be performed on the failed unit, selectively reconstructing only data that is needed to replace the stale data. Described herein are techniques for storing information that identifies the data that needs to be rebuilt. When the storage unit fails, the segment identifier associated with the last data segment written to the storage system may be stored. Upon the storage unit recovering, the storage system can rebuild only those data segments whose identifier is greater than the stored segment identifier.Type: ApplicationFiled: August 19, 2014Publication date: February 4, 2016Inventors: Anil Nanduri, Chunqi Han, Murali Krishna Vishnumolakala
-
Publication number: 20160019114Abstract: Described herein are techniques for storing data in a redundant manner on a plurality of storage units of a storage system. While all of the storage units are operating without failure, only error-correction blocks are stored on a first one of the storage units, while a combination of data blocks and error-correction blocks are stored on a second one of the storage units. Upon failure of the second storage unit, one or more data blocks and one or more error-correction blocks formerly stored on the second storage unit are reconstructed, and the one or more reconstructed data blocks and the one or more reconstructed error-correction blocks are stored on the first storage unit.Type: ApplicationFiled: July 15, 2014Publication date: January 21, 2016Inventors: Chunqi Han, Anil Nanduri, Murali Krishna Vishnumolakala
-
Publication number: 20150100709Abstract: Described herein are techniques for cancelling I/O requests. Initially, virtual memory of an application is assigned to a first portion of memory. The application may issue a read request to an external device. The external device is instructed to record any response to the read request in the first portion of memory. The read request may be cancelled as follows. The virtual memory of the application may be re-assigned to a second portion of the memory. If and when the external device finishes processing the read request, the external device's response to the read request may still be saved in the first portion of memory, even though the read request has been cancelled. Such action of the external device would ordinarily corrupt the virtual memory of the application, but due to the memory re-assignment, no corruption of the virtual memory occurs. Similar techniques may be applied to cancel write requests.Type: ApplicationFiled: November 28, 2014Publication date: April 9, 2015Inventors: Anil Nanduri, Chunqi Han, Murali Krishna Vishnumolakala
-
Patent number: 8924607Abstract: Described herein are techniques for cancelling I/O requests. Initially, virtual memory of an application is assigned to a first portion of memory. The application may issue a read request to an external device. The external device is instructed to record any response to the read request in the first portion of memory. The read request may be cancelled as follows. The virtual memory of the application may be re-assigned to a second portion of the memory. If and when the external device finishes processing the read request, the external device's response to the read request may still be saved in the first portion of memory, even though the read request has been cancelled. Such action of the external device would ordinarily corrupt the virtual memory of the application, but due to the memory re-assignment, no corruption of the virtual memory occurs. Similar techniques may be applied to cancel write requests.Type: GrantFiled: October 7, 2013Date of Patent: December 30, 2014Assignee: Nimble Storage, Inc.Inventors: Anil Nanduri, Chunqi Han, Murali Krishna Vishnumolakala
-
Patent number: 8006047Abstract: The invention is a storage device which implements a write barrier command and provides means for a host to designate other write commands as being sensitive or insensitive to the existence of write barrier commands. The device can optimize the execution of commands by changing the order of execution of write commands that are insensitive to write barrier command. In an embodiment of the invention a flag associated with the write command indicates whether the command is sensitive or insensitive to the existence of write barrier commands. In an embodiment of the invention the write barrier command can be implemented as a write command with a flag that indicates whether the command is a write barrier command. In one embodiment of the invention the queue of commands and data to be written to the media is stored in a non-volatile cache.Type: GrantFiled: June 27, 2007Date of Patent: August 23, 2011Assignee: Hitachi Global Storage Technologies Netherlands B.V.Inventors: Jorge Campello De Souza, Frank R. Chu, Chunqi Han, Anand Krishnamurthi Kulkarni, Donald Joseph Molaro, Richard M. H. New, Marco Sanvido
-
Patent number: 7853822Abstract: Enhancements to the functionality of a file system are provided. A file system can provide an additional level of error correction, in addition to the error correction provided by a data storage device. An extension to the metadata area in a file system can store index information about data files that the file system can use to reduce the time it takes to access the files. A file system can use extended metadata to store conditional access information for data files stored in the file system. A data storage device can also examine and characterize the data being stored in order to categorize a user's files automatically. Modules can be loaded into a file system to provide new functionality to the file system. The modules can load additional modules to extend their functionality.Type: GrantFiled: December 5, 2006Date of Patent: December 14, 2010Assignee: Hitachi Global Storage Technologies Netherlands, B.V.Inventors: Donald Joseph Molaro, Jorge Campello De Souza, Richard M. H. New, Chunqi Han, Damien C. D. Le Moal
-
Patent number: 7774540Abstract: A storage system that stores verify commands for all the write commands requiring verification in a verify-list that will be processed as a background task is described. The verify-list can include coded data fields that flexibly designate selected alternative states or possibilities for how and where the user data is actually stored. Alternatives for the verify-list include storing the actual raw data, no data, the data in compressed form, a CRC type signature of the data and/or a pointer to a backup copy of the data that is stored either in non-volatile memory such as flash memory or on the disk media in a temporary area. In case of a verification error in various alternative embodiments the user data can be recovered using the backup copy in the verify-list in the write cache, the backup copy in flash memory or on the disk, or from the host.Type: GrantFiled: December 26, 2007Date of Patent: August 10, 2010Assignee: Hitachi Global Storage Technologies Netherlands B.V.Inventors: Chunqi Han, Anand Krishnamurthi Kulkarni, Richard M. H. New, Marco Sanvido
-
Publication number: 20090172324Abstract: A storage system that stores verify commands for all the write commands requiring verification in a verify-list that will be processed as a background task is described. The verify-list can include coded data fields that flexibly designate selected alternative states or possibilities for how and where the user data is actually stored. Alternatives for the verify-list include storing the actual raw data, no data, the data in compressed form, a CRC type signature of the data and/or a pointer to a backup copy of the data that is stored either in non-volatile memory such as flash memory or on the disk media in a temporary area. In case of a verification error in various alternative embodiments the user data can be recovered using the backup copy in the verify-list in the write cache, the backup copy in flash memory or on the disk, or from the host.Type: ApplicationFiled: December 26, 2007Publication date: July 2, 2009Inventors: Chunqi Han, Anand Krishnamurthi Kulkarni, Richard M.H. New, Marco Sanvido
-
Publication number: 20090100216Abstract: A power conservation system implementable in a computer system. The system includes a non-volatile cache memory (NVCM) device for storing information. The NVCM device is operationally coupled to the computer system. The system also includes a data storage device coupled to the NVCM device. The data storage device is for storing said information. The system further includes a controller coupled to the NVCM device. The controller initiates an occurrence of writing the information in the NVCM device to the data storage device. The occurrence of writing causes powering up of the data storage device to which the data is to be written or from which data is to be retrieved.Type: ApplicationFiled: October 12, 2007Publication date: April 16, 2009Inventors: Chunqi Han, Donald J. Molaro
-
Publication number: 20090006787Abstract: The invention is a storage device which implements a write barrier command and provides means for a host to designate other write commands as being sensitive or insensitive to the existence of write barrier commands. The device can optimize the execution of commands by changing the order of execution of write commands that are insensitive to write barrier command. In an embodiment of the invention a flag associated with the write command indicates whether the command is sensitive or insensitive to the existence of write barrier commands. In an embodiment of the invention the write barrier command can be implemented as a write command with a flag that indicates whether the command is a write barrier command. In one embodiment of the invention the queue of commands and data to be written to the media is stored in a non-volatile cache.Type: ApplicationFiled: June 27, 2007Publication date: January 1, 2009Inventors: Jorge Campello De Souza, Frank R. Chu, Chunqi Han, Anand Krishnamurthi Kulkarni, Donald Joseph Molaro, Richard M.H. New, Marco Sanvido
-
Publication number: 20080133448Abstract: Enhancements to the functionality of a file system are provided. A file system can provide an additional level of error correction, in addition to the error correction provided by a data storage device. An extension to the metadata area in a file system can store index information about data files that the file system can use to reduce the time it takes to access the files. A file system can use extended metadata to store conditional access information for data files stored in the file system. A data storage device can also examine and characterize the data being stored in order to categorize a user's files automatically. Modules can be loaded into a file system to provide new functionality to the file system. The modules can load additional modules to extend their functionality.Type: ApplicationFiled: December 5, 2006Publication date: June 5, 2008Applicant: Hitachi Global Technologies Netherlands, B.V.Inventors: Donald Joseph Molaro, Jorge Campello de Souza, Richard M.H. New, Chunqi Han, Damien C.D. Le Moal
-
Publication number: 20070063017Abstract: A system and method for securely making payments and deposits is disclosed. A method for securely and synchronously making a payment includes the steps of submitting a transaction request to a transaction center, the transaction request including details of a transaction between a customer and a third party, confirming the transaction request with the customer by communicating with a customer securely identifiable device, submitting the transaction request for approval, and paying the third party. A method of securely and synchronously making a deposit includes the steps of submitting a deposit request from a depositor to a transaction center, confirming an authorization request with the depositor by communicating with a customer securely identifiable device, receiving an authorization from the depositor, and depositing a deposit amount in a third party receiver account. Secure and asynchronous systems and methods are also disclosed.Type: ApplicationFiled: September 21, 2005Publication date: March 22, 2007Inventors: Yaofei Chen, Chunqi Han