Patents Assigned to Compellent Technologies
  • Patent number: 8819334
    Abstract: The present disclosure relates to a data storage system and method that includes at least two solid state devices that can be classified in at least two different efficiency levels, wherein data progression is used to allocate data to the most cost-appropriate device according to the nature of the data.
    Type: Grant
    Filed: June 17, 2013
    Date of Patent: August 26, 2014
    Assignee: Compellent Technologies
    Inventors: Lawrence E. Aszmann, Michael J. Klemm, Michael H. Pittelko
  • Publication number: 20140237201
    Abstract: A method for replicating data between two or more network connected data storage devices, the method including dynamically determining whether to compress data prior to transmitting across the network based, at least in part, on bandwidth throughput between the network connected data storage devices. If it has been determined to compress the data, the method involves compressing the data and transmitting the compressed data over the network. If it has been determined not to compress the data, the method involves transmitting the data, uncompressed, over the network. Dynamically determining whether to compress data may include comparing bandwidth measurements with a predetermined policy defining when compression should be utilized. In some embodiments, the policy may define that compression should be utilized when an estimated time for compressing the data and transmitting the compressed data is less than an estimated time for transmitting the data uncompressed.
    Type: Application
    Filed: February 15, 2013
    Publication date: August 21, 2014
    Applicant: Compellent Technologies
    Inventor: Jeremy Dean Swift
  • Publication number: 20140236898
    Abstract: A method for facilitating discovery of electronic data stored in a data storage system. The method includes generating a snapshot of the electronic data, wherein the snapshot permits read access to the data, and a copy-on-write technique is used to perform modifications to the data, such that the snapshot is immutable but ongoing user operations with respect to the data can be performed substantially without interruption. The method also includes transmitting data of the snapshot over a network to a data cache server to which an analysis computer system is communicatively coupled. In some embodiments, the data cache server may store a local copy of the transmitted data of the snapshot. In this regard, the data cache server may determine whether data requested by the analysis computer system is stored locally, and if so, the data cache server may transmit the data requested directly to the analysis computer system.
    Type: Application
    Filed: February 18, 2013
    Publication date: August 21, 2014
    Applicant: Compellent Technologies
    Inventor: Ryan Hankins
  • Publication number: 20140164849
    Abstract: A method for surveying a data storage subsystem for latent errors before a failing disk drive of the data storage subsystem fails and recovering unreadable data usable to reconstruct data of the failing disk drive. The method includes determining that a disk drive of a plurality of disk drives of the data storage subsystem meets a threshold for being identified as a failing disk drive, and prior to failure of the failing disk drive, surveying at least a portion of the data on the remaining plurality of disk drives to identify data storage areas with latent errors. The identified data storage areas may be reconstructed utilizing, at least in part, data stored on the failing disk drive.
    Type: Application
    Filed: December 6, 2012
    Publication date: June 12, 2014
    Applicant: Compellent Technologies
    Inventors: Anthony J. Floeder, Derek J. Anderson
  • Publication number: 20140164835
    Abstract: A method for error simulation in a data storage subsystem providing abstractions of one or more storage devices. The method includes dividing the data storage subsystem into two or more hierarchically organized subsystems, wherein the subsystems interact using IO Request Packets (IORPs), such that relatively higher level subsystems create and populate IORPs and pass them to relatively lower level subsystems for corresponding processing. The method further includes defining an IORP modifier configured to attach to matching IORPs based on one or more attributes of the IORP modifier and to modify at least one of the processing and one or more attributes of the IORP in order to simulate errors in the data storage subsystem.
    Type: Application
    Filed: December 6, 2012
    Publication date: June 12, 2014
    Applicant: Compellent Technologies
    Inventors: Anthony J. Floeder, Lawrence A. Dean
  • Publication number: 20140143206
    Abstract: A method for confirming replicated data at a data site, including utilizing a hash function, computing a first hash value based on first data at a first data site and utilizing the same hash function, computing a second hash value based on second data at a second data site, wherein the first data had previously been replicated from the first data site to the second data site as the second data. The method also includes comparing the first and second hash values to determine whether the second data is a valid replication of the first data. In additional embodiments, the first data may be modified based on seed data prior to computing the first hash value and the second data may be modified based on the same seed data prior to computing the second hash value. The process can be repeated to increase reliability of the results.
    Type: Application
    Filed: November 19, 2012
    Publication date: May 22, 2014
    Applicant: Compellent Technologies
    Inventor: Michael H. Pittelko
  • Publication number: 20140108858
    Abstract: A disk drive system and method capable of dynamically allocating data is provided. The disk drive system may include a RAID subsystem having a pool of storage, for example a page pool of storage that maintains a free list of RAIDs, or a matrix of disk storage blocks that maintain a null list of RAIDs, and a disk manager having at least one disk storage system controller. The RAID subsystem and disk manager dynamically allocate data across the pool of storage and a plurality of disk drives based on RAID-to-disk mapping. The RAID subsystem and disk manager determine whether additional disk drives are required, and a notification is sent if the additional disk drives are required. Dynamic data allocation and data progression allow a user to acquire a disk drive later in time when it is needed. Dynamic data allocation also allows efficient data storage of snapshots/point-in-time copies of virtual volume pool of storage, instant data replay and data instant fusion for data backup, recovery etc.
    Type: Application
    Filed: October 14, 2013
    Publication date: April 17, 2014
    Applicant: Compellent Technologies
    Inventors: Philip E. Soran, John P. Guider, Lawrence E. Aszmann, Michael J. Klemm
  • Publication number: 20140089628
    Abstract: A process of determining explicitly free data space in computer data storage systems with implicitly allocated data space through the use of information provided by a hosting computer system with knowledge of what space allocated is currently being used at the time of a query, is provided. In one embodiment, a File System (“FS”) is asked to identify clusters no longer in use which is then mapped to physical disks as visible to an Operating System (“OS”). The physical disks are mapped to simulated/virtualized volumes presented by a storage subsystem. By using server information regarding the FS, for those pages that are no longer in use, point in time copy (“PITC”) pages are marked for future PITC and will not be coalesced forward, thereby saving significant storage.
    Type: Application
    Filed: December 3, 2013
    Publication date: March 27, 2014
    Applicant: Compellent Technologies
    Inventors: Lawrence E. Aszmann, Michael J. Klemm, Michael H. Pittelko, Mark D. Olson
  • Publication number: 20140040546
    Abstract: A disk drive system and method capable of dynamically allocating data is provided. The disk drive system may include a RAID subsystem having a pool of storage, for example a page pool of storage that maintains a free list of RAIDs, or a matrix of disk storage blocks that maintain a null list of RAIDs, and a disk manager having at least one disk storage system controller. The RAID subsystem and disk manager dynamically allocate data across the pool of storage and a plurality of disk drives based on RAID-to-disk mapping. The RAID subsystem and disk manager determine whether additional disk drives are required, and a notification is sent if the additional disk drives are required. Dynamic data allocation and data progression allow a user to acquire a disk drive later in time when it is needed. Dynamic data allocation also allows efficient data storage of snapshots/point-in-time copies of virtual volume pool of storage, instant data replay and data instant fusion for data backup, recovery etc.
    Type: Application
    Filed: October 7, 2013
    Publication date: February 6, 2014
    Applicant: Compellent Technologies
    Inventors: Philip E. Soran, John P. Guider, Lawrence E. Aszmann, Michael J. Klemm
  • Publication number: 20140019573
    Abstract: A method of data replication from a first data storage device to a second data storage device. According to the method, prior to replicating data from the first data storage device to the second data storage device, metadata relating to data to be replicated may be transmitted to the second data storage device, the metadata including information about the data to be replicated and a path identifier identifying a path through which the second data storage device can remotely access the data at the first data storage device until the data to be replicated is copied to the second data storage device.
    Type: Application
    Filed: July 16, 2012
    Publication date: January 16, 2014
    Applicant: Compellent Technologies
    Inventor: Jeremy Dean Swift
  • Publication number: 20140019698
    Abstract: A method of data replication from a first data storage device to a second data storage device. The method may include generating, at the first data storage device, at spaced time intervals, a plurality of snapshots for a logical data volume of the first data storage device, the logical data volume being an abstraction of data blocks from one or more physical storage devices, each snapshot identifying changes of data for at least a portion of the logical data volume since a most previous snapshot. Also at the first data storage device, the method includes generating a delta volume, the delta volume indicating changes in the data of at least a portion of the logical data volume between two non-consecutive snapshots. The method further involves replicating the delta volume to the second data storage device, and replicating the changes to the data indicated therein at the second data storage device.
    Type: Application
    Filed: July 16, 2012
    Publication date: January 16, 2014
    Applicant: Compellent Technologies
    Inventors: Michael H. Pittelko, Mark David Olson
  • Publication number: 20140019769
    Abstract: A method for managing access to encrypted data of a data storage system storing snapshot data, a snapshot providing a previous point-in-time copy of data in a volume of the data storage system, wherein the data storage system utilizes changing encryption keys for write data. For each snapshot, the method stores at least one decryption key identifier for each decryption key corresponding to an encryption key utilized to encrypt data written to a volume since a previous snapshot was committed to disk, and associates the at least one decryption key identifier with the snapshot. A key table associating decryption key identifiers with corresponding decryption keys is provided, and based on the key table and the at least one decryption key identifier associated with the snapshot, one or more decryption keys required for accessing encrypted data associated with the snapshot are determined. Decryption key identifiers may be stored in snapshot metadata.
    Type: Application
    Filed: July 16, 2012
    Publication date: January 16, 2014
    Applicant: COMPELLENT TECHNOLOGIES
    Inventor: Michael H. Pittelko
  • Publication number: 20130326171
    Abstract: The present disclosure relates generally to a method and system for creating, replicating, and providing access to virtual snapshots of a disk storage block of a disk storage system or subsystem. In one embodiment, the present disclosure relates to a virtual snapshot accessible to local users of a local data storage device. The virtual snapshot may direct local users to a snapshot stored on computer-readable storage medium at a remote data storage site, but give the appearance as if data of the corresponding snapshot is stored locally. The virtual snapshot is replaced by replication of the snapshot from the remote data storage site to the local data storage device. Each snapshot may relate to data of a logical data volume, the logical data volume being an abstraction of data blocks from one or more physical storage devices.
    Type: Application
    Filed: May 29, 2012
    Publication date: December 5, 2013
    Applicant: Compellent Technologies
    Inventor: Michael H. Pittelko
  • Patent number: 8601035
    Abstract: A process of determining explicitly free data space in computer data storage systems with implicitly allocated data space through the use of information provided by a hosting computer system with knowledge of what space allocated is currently being used at the time of a query, is provided. In one embodiment, a File System (“FS”) is asked to identify clusters no longer in use which is then mapped to physical disks as visible to an Operating System (“OS”). The physical disks are mapped to simulated/virtualized volumes presented by a storage subsystem. By using server information regarding the FS, for those pages that are no longer in use, point in time copy (“PITC”) pages are marked for future PITC and will not be coalesced forward, thereby saving significant storage.
    Type: Grant
    Filed: June 22, 2007
    Date of Patent: December 3, 2013
    Assignee: Compellent Technologies
    Inventors: Lawrence E. Aszmann, Michael J. Klemm, Michael H. Pittelko, Mark D. Olson
  • Patent number: 8560880
    Abstract: A disk drive system and method capable of dynamically allocating data is provided. The disk drive system may include a RAID subsystem having a pool of storage, for example a page pool of storage that maintains a free list of RAIDs, or a matrix of disk storage blocks that maintain a null list of RAIDs, and a disk manager having at least one disk storage system controller. The RAID subsystem and disk manager dynamically allocate data across the pool of storage and a plurality of disk drives based on RAID-to-disk mapping. The RAID subsystem and disk manager determine whether additional disk drives are required, and a notification is sent if the additional disk drives are required. Dynamic data allocation and data progression allow a user to acquire a disk drive later in time when it is needed. Dynamic data allocation also allows efficient data storage of snapshots/point-in-time copies of virtual volume pool of storage, instant data replay and data instant fusion for data backup, recovery etc.
    Type: Grant
    Filed: June 29, 2011
    Date of Patent: October 15, 2013
    Assignee: Compellent Technologies
    Inventors: Philip E. Soran, John P. Guider, Lawrence E. Aszmann, Michael J. Klemm
  • Patent number: 8555108
    Abstract: A disk drive system and method capable of dynamically allocating data is provided. The disk drive system may include a RAID subsystem having a pool of storage, for example a page pool of storage that maintains a free list of RAIDs, or a matrix of disk storage blocks that maintain a null list of RAIDs, and a disk manager having at least one disk storage system controller. The RAID subsystem and disk manager dynamically allocate data across the pool of storage and a plurality of disk drives based on RAID-to-disk mapping. The RAID subsystem and disk manager determine whether additional disk drives are required, and a notification is sent if the additional disk drives are required. Dynamic data allocation and data progression allow a user to acquire a disk drive later in time when it is needed. Dynamic data allocation also allows efficient data storage of snapshots/point-in-time copies of virtual volume pool of storage, instant data replay and data instant fusion for data backup, recovery etc.
    Type: Grant
    Filed: May 10, 2011
    Date of Patent: October 8, 2013
    Assignee: Compellent Technologies
    Inventors: Philip E. Soran, John P. Guider, Lawrence E. Aszmann, Michael J. Klemm
  • Patent number: 8473776
    Abstract: A disk drive system and method capable of dynamically allocating data is provided. The disk drive system may include a RAID subsystem having a pool of storage, for example a page pool of storage that maintains a free list of RAIDs, or a matrix of disk storage blocks that maintain a null list of RAIDs, and a disk manager having at least one disk storage system controller. The RAID subsystem and disk manager dynamically allocate data across the pool of storage and a plurality of disk drives based on RAID-to-disk mapping. The RAID subsystem and disk manager determine whether additional disk drives are required, and a notification is sent if the additional disk drives are required. Dynamic data allocation and data progression allow a user to acquire a disk drive later in time when it is needed. Dynamic data allocation also allows efficient data storage of snapshots/point-in-time copies of virtual volume pool of storage, instant data replay and data instant fusion for data backup, recovery etc.
    Type: Grant
    Filed: December 6, 2010
    Date of Patent: June 25, 2013
    Assignee: Compellent Technologies
    Inventors: Philip E. Soran, John P. Guider, Lawrence E. Aszmann, Michael J. Klemm
  • Patent number: 8468292
    Abstract: The present disclosure relates to a data storage system and method that includes at least two solid state devices that can be classified in at least two different efficiency levels, wherein data progression is used to allocate data to the most cost-appropriate device according to the nature of the data.
    Type: Grant
    Filed: July 13, 2009
    Date of Patent: June 18, 2013
    Assignee: Compellent Technologies
    Inventors: Lawrence E. Aszmann, Michael J. Klemm, Michael H. Pittelko
  • Publication number: 20130124798
    Abstract: The present disclosure relates to a data storage system including a RAID subsystem having a first and second type of RAID storage. A virtual volume configured to accept I/O is stored on the first type of RAID storage, and snapshots of the virtual volume are stored on the second type of RAID storage. A method of the present disclosure includes providing an active volume that accepts I/O and generating read-only snapshots of the volume. In certain embodiments, the active volume is converted to a snapshot. The active volume includes a first type of RAID storage, and the snapshots include a second type of RAID storage. The first type of RAID storage has a lower write penalty than the second type of RAID storage. In typical embodiments, the first type of RAID storage includes RAID 10 storage and the second type of RAID storage includes RAID 5 and/or RAID 6 storage.
    Type: Application
    Filed: May 7, 2012
    Publication date: May 16, 2013
    Applicant: Compellent Technologies
    Inventors: Lawrence E. Aszmann, Michael J. Klemm
  • Patent number: 8321721
    Abstract: A disk drive system and method capable of dynamically allocating data is provided. The disk drive system may include a RAID subsystem having a pool of storage, for example a page pool of storage that maintains a free list of RAIDs, or a matrix of disk storage blocks that maintain a null list of RAIDs, and a disk manager having at least one disk storage system controller. The RAID subsystem and disk manager dynamically allocate data across the pool of storage and a plurality of disk drives based on RAID-to-disk mapping. The RAID subsystem and disk manager determine whether additional disk drives are required, and a notification is sent if the additional disk drives are required. Dynamic data allocation and data progression allow a user to acquire a disk drive later in time when it is needed. Dynamic data allocation also allows efficient data storage of snapshots/point-in-time copies of virtual volume pool of storage, instant data replay and data instant fusion for data backup, recovery etc.
    Type: Grant
    Filed: May 10, 2011
    Date of Patent: November 27, 2012
    Assignee: Compellent Technologies
    Inventors: Philip E. Soran, John P. Guider, Lawrence E. Aszmann, Michael J. Klemm