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: 10684927
    Abstract: 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: Grant
    Filed: July 29, 2014
    Date of Patent: June 16, 2020
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: Anil Nanduri, Chunqi Han, Murali Krishna Vishnumolakala
  • Patent number: 10496481
    Abstract: 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: Grant
    Filed: December 22, 2016
    Date of Patent: December 3, 2019
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: Chunqi Han, Anil Nanduri, Murali Krishna Vishnumolakala
  • Publication number: 20170161146
    Abstract: 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: Application
    Filed: December 22, 2016
    Publication date: June 8, 2017
    Inventors: Chunqi Han, Anil Nanduri, Murali Krishna Vishnumolakala
  • Publication number: 20170123915
    Abstract: 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: Application
    Filed: October 29, 2015
    Publication date: May 4, 2017
    Inventors: Hiep Nguyen, Anil Nanduri, Chunqi Han
  • Patent number: 9588919
    Abstract: 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: Grant
    Filed: November 28, 2014
    Date of Patent: March 7, 2017
    Assignee: NIMBLE STORAGE, INC.
    Inventors: Anil Nanduri, Chunqi Han, Murali Krishna Vishnumolakala
  • Patent number: 9563509
    Abstract: 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: Grant
    Filed: July 15, 2014
    Date of Patent: February 7, 2017
    Assignee: NIMBLE STORAGE, INC.
    Inventors: Chunqi Han, Anil Nanduri, Murali Krishna Vishnumolakala
  • Publication number: 20160034209
    Abstract: 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: Application
    Filed: July 29, 2014
    Publication date: February 4, 2016
    Inventors: Anil Nanduri, Chunqi Han, Murali Krishna Vishnumolakala
  • Publication number: 20160034370
    Abstract: 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: Application
    Filed: August 19, 2014
    Publication date: February 4, 2016
    Inventors: Anil Nanduri, Chunqi Han, Murali Krishna Vishnumolakala
  • Publication number: 20160019114
    Abstract: 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: Application
    Filed: July 15, 2014
    Publication date: January 21, 2016
    Inventors: Chunqi Han, Anil Nanduri, Murali Krishna Vishnumolakala
  • Publication number: 20150100709
    Abstract: 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: Application
    Filed: November 28, 2014
    Publication date: April 9, 2015
    Inventors: Anil Nanduri, Chunqi Han, Murali Krishna Vishnumolakala
  • Patent number: 8924607
    Abstract: 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: Grant
    Filed: October 7, 2013
    Date of Patent: December 30, 2014
    Assignee: Nimble Storage, Inc.
    Inventors: Anil Nanduri, Chunqi Han, Murali Krishna Vishnumolakala
  • Patent number: 8006047
    Abstract: 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: Grant
    Filed: June 27, 2007
    Date of Patent: August 23, 2011
    Assignee: 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: 7853822
    Abstract: 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: Grant
    Filed: December 5, 2006
    Date of Patent: December 14, 2010
    Assignee: 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: 7774540
    Abstract: 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: Grant
    Filed: December 26, 2007
    Date of Patent: August 10, 2010
    Assignee: Hitachi Global Storage Technologies Netherlands B.V.
    Inventors: Chunqi Han, Anand Krishnamurthi Kulkarni, Richard M. H. New, Marco Sanvido
  • Publication number: 20090172324
    Abstract: 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: Application
    Filed: December 26, 2007
    Publication date: July 2, 2009
    Inventors: Chunqi Han, Anand Krishnamurthi Kulkarni, Richard M.H. New, Marco Sanvido
  • Publication number: 20090100216
    Abstract: 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: Application
    Filed: October 12, 2007
    Publication date: April 16, 2009
    Inventors: Chunqi Han, Donald J. Molaro
  • Publication number: 20090006787
    Abstract: 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: Application
    Filed: June 27, 2007
    Publication date: January 1, 2009
    Inventors: Jorge Campello De Souza, Frank R. Chu, Chunqi Han, Anand Krishnamurthi Kulkarni, Donald Joseph Molaro, Richard M.H. New, Marco Sanvido
  • Publication number: 20080133448
    Abstract: 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: Application
    Filed: December 5, 2006
    Publication date: June 5, 2008
    Applicant: 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: 20070063017
    Abstract: 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: Application
    Filed: September 21, 2005
    Publication date: March 22, 2007
    Inventors: Yaofei Chen, Chunqi Han