Patents by Inventor Karl A. Nielsen

Karl A. Nielsen 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).

  • Publication number: 20200393983
    Abstract: A method for converting a redundant array of independent disks (RAID) to a more robust RAID level is disclosed. Such a method identifies, in a data storage environment, higher risk storage drives having a failure risk above a first threshold. The method determines a number of the higher risk storage drives that are contained within a RAID array of the data storage environment. The method determines whether the number exceeds a second threshold. The method also determines whether a destage rate associated with the RAID array is below a third threshold. In the event the number exceeds the second threshold and the destage rate is below the third threshold, the method converts the RAID array to a more robust RAID level. A corresponding system and computer program product are also disclosed.
    Type: Application
    Filed: June 15, 2019
    Publication date: December 17, 2020
    Applicant: International Business Machines Corporation
    Inventors: Lokesh M. Gupta, Matthew G. Borlick, Karl A. Nielsen, Clint A. Hardy, Brian A. Rinaldi
  • Publication number: 20200394112
    Abstract: A method for reducing incidents of data loss in RAIDs of differing RAID levels is disclosed. Such a method identifies, in a data storage environment, first and second sets of RAIDs. The first set contains RAIDs providing more robust data protection (e.g., RAID-6 arrays), and the second set contains RAIDs providing less robust data protection (e.g., RAID-5 arrays). The method identifies, in the data storage environment, higher risk storage drives having a failure risk above a threshold and lower risk storage drives having a failure risk below the threshold. The method swaps higher risk storage drives from RAIDs of the second set with lower risk storage drives from RAIDs of the first set. In certain embodiments, the swapping may be performed such that no RAID of the second set includes more than a selected number of higher risk storage drives. A corresponding system and computer program product are also disclosed.
    Type: Application
    Filed: June 15, 2019
    Publication date: December 17, 2020
    Applicant: International Business Machines Corporation
    Inventors: Lokesh M. Gupta, Matthew G. Borlick, Karl A. Nielsen, Clint A. Hardy, Brian A. Rinaldi
  • Patent number: 10866752
    Abstract: A method for reclaiming storage space in RAID arrays made up of heterogeneous storage drives is disclosed. In one embodiment, such a method includes determining a most common storage capacity for a set of storage drives utilized in a storage system. The method further identifies physical storage drives from the set that contain unused storage space. The method pools the unused storage space of the physical storage drives to create virtual storage drives with storage capacities substantially equal to the most common storage capacity. The method then utilizes the virtual storage drives in existing or new RAID arrays. A corresponding system and computer program product are also disclosed.
    Type: Grant
    Filed: October 17, 2018
    Date of Patent: December 15, 2020
    Assignee: International Business Machines Corporation
    Inventors: Lokesh M. Gupta, Matthew G. Borlick, Kevin J. Ash, Karl A. Nielsen
  • Patent number: 10838625
    Abstract: A method for improving I/O response times in a data replication environment is disclosed. In one embodiment, such a method includes receiving, at a primary storage system, a request to read data on the primary storage system. The method starts a timer upon receiving the request. In the event the data cannot be retrieved from the primary storage system by the time the timer expires, the method requests the data from a secondary storage system. In the event the primary storage system returns the data before the secondary storage system, the method returns data retrieved from the primary storage system to a host system. In the event the secondary storage system returns the data before the primary storage system, the method returns the data retrieved from the secondary storage system to the host system. A corresponding system and computer program product are also disclosed.
    Type: Grant
    Filed: October 6, 2018
    Date of Patent: November 17, 2020
    Assignee: International Business Machines Corporation
    Inventors: Todd C. Sorenson, Karl A. Nielsen, Jacob L. Sheppard, Sean P. Riley, Larry Juarez
  • Patent number: 10783049
    Abstract: In one embodiment, virtual storage drives are allocated to RAID arrays so that no two virtual storage drives of a RAID array are mapped to the same physical storage drive. In another aspect, error handling routines are limited to virtual storage drives impacted by an error in a physical storage drive so that virtual storage drives of the physical storage drive not impacted by the error are bypassed. In yet another aspect, cache operations to a target virtual storage drive may be throttled as a function of both a limit imposed on cache operations directed to the RAID array to which the virtual storage drive is allocated, and a separate limit on cache operations directed to a group of virtual storage drives which are mapped to the same physical storage drive as the target virtual storage drive. Other features and aspects may be realized, depending upon the particular application.
    Type: Grant
    Filed: February 26, 2018
    Date of Patent: September 22, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Matthew G. Borlick, Lokesh M. Gupta, Kevin J. Ash, Karl A. Nielsen
  • Patent number: 10768822
    Abstract: A method for increasing effective storage capacity in a heterogeneous storage array is disclosed. In one embodiment, such a method determines a number of smaller-capacity storage drives and a number of larger-capacity storage drives in a storage array. The method further determines which RAID arrays in the storage array may be composed exclusively of the larger-capacity storage drives. Using this information, the method establishes a first set of RAID arrays in the storage array that will be composed exclusively of the larger-capacity storage drives and a second set of RAID arrays that may contain the smaller-capacity storage drives. The method then initiates a process to swap the smaller-capacity storage drives in the first set with the larger-capacity storage drives in the second set until the first set of RAID arrays is composed exclusively of the larger-capacity storage drives. A corresponding system and computer program product are also disclosed.
    Type: Grant
    Filed: January 29, 2019
    Date of Patent: September 8, 2020
    Assignee: International Business Machines Corporation
    Inventors: Lokesh M. Gupta, Karl A. Nielsen, Matthew G. Borlick, Kevin J. Ash
  • Patent number: 10740203
    Abstract: A plurality of tracks that are to be copied to a backup volume are aggregated in a container data structure. The plurality of tracks are stored physically contiguously in a single Redundant Array of Independent Disks (RAID) stride. Mapping metadata is updated in the backup volume to indicate how logical tracks of the backup volume correspond to physical tracks stored in the RAID stride.
    Type: Grant
    Filed: September 6, 2018
    Date of Patent: August 11, 2020
    Assignee: International Business Machines Corporation
    Inventors: Theresa M. Brown, Kevin Lin, Dave Fei, Gail Spear, Clint A. Hardy, Karl A. Nielsen
  • Patent number: 10732884
    Abstract: A computer-implemented method for implementing a RAID array, according to one approach, includes: predicting a compression ratio of data to be stored in the RAID array, and using the predicted compression ratio and a physical storage capacity of the RAID array to calculate a maximum virtual storage capacity of the RAID array. The maximum virtual storage capacity is used to establish an effective storage capacity of the RAID array. One or more instructions to store compressed data in the RAID array are also sent. In response to occurrence of a predetermined event, a current compression ratio of the compressed data stored in the RAID array and the physical storage capacity of the RAID array are used to calculate a current virtual storage capacity of the RAID array. Furthermore, the effective storage capacity of the RAID array is scaled based on the current virtual storage capacity.
    Type: Grant
    Filed: March 28, 2019
    Date of Patent: August 4, 2020
    Assignee: International Business Machines Corporation
    Inventors: Lokesh M. Gupta, Clint A. Hardy, Karl A. Nielsen, Brian A. Rinaldi, Matthew G. Borlick, Matthew J. Kalos
  • Patent number: 10735510
    Abstract: A storage and application controller that is coupled to a plurality of storage and application execution clouds is maintained. The storage and application controller transmits, via a first communications protocol, an application to a first storage and application execution cloud. The storage and application controller transmits, via a second communications protocol, a copy of the application to a second storage and application execution cloud. In response to a compromise of the first communications protocol, execution of the application is stopped and replaced via execution of the copy of the application.
    Type: Grant
    Filed: July 20, 2018
    Date of Patent: August 4, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Matthew G. Borlick, Lokesh M. Gupta, Roger G. Hathorn, Karl A. Nielsen
  • Publication number: 20200241762
    Abstract: A method for increasing effective storage capacity in a heterogeneous storage array is disclosed. In one embodiment, such a method determines a number of smaller-capacity storage drives and a number of larger-capacity storage drives in a storage array. The method further determines which RAID arrays in the storage array may be composed exclusively of the larger-capacity storage drives. Using this information, the method establishes a first set of RAID arrays in the storage array that will be composed exclusively of the larger-capacity storage drives and a second set of RAID arrays that may contain the smaller-capacity storage drives. The method then initiates a process to swap the smaller-capacity storage drives in the first set with the larger-capacity storage drives in the second set until the first set of RAID arrays is composed exclusively of the larger-capacity storage drives. A corresponding system and computer program product are also disclosed.
    Type: Application
    Filed: January 29, 2019
    Publication date: July 30, 2020
    Applicant: International Business Machines Corporation
    Inventors: Lokesh M. Gupta, Karl A. Nielsen, Matthew G. Borlick, Kevin J. Ash
  • Publication number: 20200241787
    Abstract: A computer-implemented method according to one embodiment includes identifying a request to migrate data associated with a volume from a source storage pool having a first rank extent size to a destination storage pool having a second rank extent size smaller than the first rank extent size, creating a correspondence between logical volume extents of the volume and physical offset locations within rank extents of the source storage pool, and migrating data from one or more ranks of the source storage pool to one or more ranks of the destination storage pool, utilizing the correspondence between the logical volume extents of the volume and the physical offset locations within the rank extents of the source storage pool.
    Type: Application
    Filed: January 25, 2019
    Publication date: July 30, 2020
    Inventors: Hui Zhang, Clint A. Hardy, Karl A. Nielsen, Matthew J. Kalos, Qiang Xie
  • Patent number: 10719118
    Abstract: In one embodiment, power level management in accordance with the present description, is provided in a storage unit having both a disk storage drive, and another non-volatile, non-disk memory or storage such as a solid state drive, for storing metadata. The metadata storage provides direct access to the metadata stored in the non-disk storage even though the disk storage drive may be in a low power mode in which the data storage media disk of the disk storage drive is stopped or spinning at a reduced rate of rotation. As a result, power consumption and cooling requirements associated with disk storage drives, may be reduced in a low power level mode of storage unit operation for input/output operations limited to metadata stored in the metadata storage. Other features and aspects may be realized, depending upon the particular application.
    Type: Grant
    Filed: May 11, 2018
    Date of Patent: July 21, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Hans-Joachim Tannenberger, Richard Hutzler, William K. Morse, Bradley Bernhardt, Mitchell Montanez, Karl A. Nielsen, Thomas J. Fleischman
  • Patent number: 10701134
    Abstract: Provided is a method, computer program product, and system for transferring data between block and file storage systems. A remote server may receive, from a host device, a request to restore data to the host device. The remote server may store the data as one or more objects, with each object corresponding to an extent of a logical volume on the host device. A set of strides on the host device that correspond to the one or more objects may be determined using metadata for the one or more objects. Each of the one or more objects may be split into a set of data pieces using the metadata. Each data piece may then be transmitted from the remote server to the host device.
    Type: Grant
    Filed: October 17, 2018
    Date of Patent: June 30, 2020
    Assignee: International Business Machines Corporation
    Inventors: Xue Dong Gao, Karl A. Nielsen, Yao Peng, Brian A. Rinaldi, Tang Ren Yao
  • Patent number: 10691609
    Abstract: A method for concurrently erasing data on a processor and preparing the processor for removal from a computing system is disclosed. In one embodiment, such a method includes determining tasks queued to be executed on a processor and reassigning the tasks to a different processor, such as to a different processor in the same cluster as the processor. The method further prevents new tasks from being assigned to the processor. The method waits for currently executing tasks on the processor to complete. Once the currently executing tasks are complete, the method initiates a cache-hostile job on the processor to evict entries in cache of the processor. Once the cache-hostile job is complete, the method enables the processor to be removed from a computing system such as a storage system controller. A corresponding system and computer program product are also disclosed.
    Type: Grant
    Filed: July 24, 2017
    Date of Patent: June 23, 2020
    Assignee: International Business Machines Corporation
    Inventors: Matthew G. Borlick, Lokesh M. Gupta, Clint A. Hardy, Karl A. Nielsen
  • Publication number: 20200142846
    Abstract: Provided are a computer program product, system, and method for using at least one machine learning module to select a priority queue from which to process an Input/Output (I/O) request. Input I/O statistics are provided on processing of I/O requests at the queues to at least one machine learning module. Output is received from the at least one machine learning module for each of the queues. The output for each queue indicates a likelihood that selection of an I/O request from the queue will maintain desired response time ratios between the queues. The received output for each of the queues is used to select a queue of the queues. An I/O request from the selected queue is processed.
    Type: Application
    Filed: January 6, 2020
    Publication date: May 7, 2020
    Inventors: Karl A. Nielsen, Clint A. Hardy, Lokesh M. Gupta, Matthew G. Borlick
  • Patent number: 10635537
    Abstract: A method for preventing data loss in a RAID includes monitoring storage drives making up a RAID. The method individually tests a storage drive of the RAID by subjecting the storage drive to a stress workload test. This stress workload test may be designed to place additional stress on the storage drive while refraining from adding stress to other storage drives in the RAID. In the event the storage drive fails the stress workload test (e.g., the storage drive cannot adequately handle the additional workload or generates errors in response to the additional workload), the method replaces the storage drive with a spare storage drive and rebuilds the RAID. In certain embodiments, the method tests the storage drive with greater frequency as the age of the storage drive increases. A corresponding system and computer program product are also disclosed.
    Type: Grant
    Filed: November 13, 2017
    Date of Patent: April 28, 2020
    Assignee: International Business Machines Corporation
    Inventors: Matthew G. Borlick, Lokesh M. Gupta, Clint A. Hardy, Karl A. Nielsen, Brian A. Rinaldi
  • Publication number: 20200125284
    Abstract: A method for reclaiming storage space in RAID arrays made up of heterogeneous storage drives is disclosed. In one embodiment, such a method includes determining a most common storage capacity for a set of storage drives utilized in a storage system. The method further identifies physical storage drives from the set that contain unused storage space. The method pools the unused storage space of the physical storage drives to create virtual storage drives with storage capacities substantially equal to the most common storage capacity. The method then utilizes the virtual storage drives in existing or new RAID arrays. A corresponding system and computer program product are also disclosed.
    Type: Application
    Filed: October 17, 2018
    Publication date: April 23, 2020
    Applicant: International Business Machines Corporation
    Inventors: Lokesh M. Gupta, Matthew G. Borlick, Kevin J. Ash, Karl A. Nielsen
  • Patent number: 10628089
    Abstract: A determination is made that data stored in an extent of a first storage resource is to be moved to an extent of a second storage resource. Operations that are still awaiting to start execution in the first storage resource after the data stored in the extent of the first storage resource has been moved to the extent of the second storage resource, are configured for execution in the second storage resource.
    Type: Grant
    Filed: January 22, 2019
    Date of Patent: April 21, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Matthew G. Borlick, Clint A. Hardy, Matthew J. Kalos, Karl A. Nielsen, Richard B. Stelmach, Hui Zhang
  • Patent number: 10620880
    Abstract: Provided are a computer program product, system, and method for using a delay timer to delay code load operations to process queued write requests. A code load is performed to a selected storage device in a storage array comprised of a plurality of the storage devices. Writes are queued to the storage array in a non-volatile storage while performing the code load. A determination is made as to whether the queued writes to the storage array exceed a threshold. A delay timer is started in response to determining that the queued writes to the storage array exceed the threshold. An additional code load is initiated to an additional selected storage device in the storage array in response to determining that the delay timer has expired. The additional code load is initiated to the additional selected storage device in response to determining that the queued writes are less than the threshold.
    Type: Grant
    Filed: February 20, 2018
    Date of Patent: April 14, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Brian A. Rinaldi, Clint A. Hardy, Samantha A. Utter, Kevin J. Ash, Karl A. Nielsen, Matthew J. Kalos
  • Publication number: 20200110541
    Abstract: A method for improving I/O response times in a data replication environment is disclosed. In one embodiment, such a method includes receiving, at a primary storage system, a request to read data on the primary storage system. The method starts a timer upon receiving the request. In the event the data cannot be retrieved from the primary storage system by the time the timer expires, the method requests the data from a secondary storage system. In the event the primary storage system returns the data before the secondary storage system, the method returns data retrieved from the primary storage system to a host system. In the event the secondary storage system returns the data before the primary storage system, the method returns the data retrieved from the secondary storage system to the host system. A corresponding system and computer program product are also disclosed.
    Type: Application
    Filed: October 6, 2018
    Publication date: April 9, 2020
    Applicant: International Business Machines Corporation
    Inventors: Todd C. Sorenson, Karl A. Nielsen, Jacob L. Sheppard, Sean P. Riley, Larry Juarez