US20040153606A1 - Storage systems having differentiated storage pools - Google Patents

Storage systems having differentiated storage pools Download PDF

Info

Publication number
US20040153606A1
US20040153606A1 US10/761,884 US76188404A US2004153606A1 US 20040153606 A1 US20040153606 A1 US 20040153606A1 US 76188404 A US76188404 A US 76188404A US 2004153606 A1 US2004153606 A1 US 2004153606A1
Authority
US
United States
Prior art keywords
storage
performance
different
storage locations
logical block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
US10/761,884
Other versions
US7937551B2 (en
Inventor
Eric Schott
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dell Products LP
Original Assignee
EqualLogic Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Assigned to EQUALLOGIC INC. reassignment EQUALLOGIC INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: SCHOTT, ERIC R.
Priority to US10/761,884 priority Critical patent/US7937551B2/en
Application filed by EqualLogic Inc filed Critical EqualLogic Inc
Priority to EP10182851.5A priority patent/EP2282276B1/en
Priority to AT04704089T priority patent/ATE405882T1/en
Priority to PCT/US2004/001632 priority patent/WO2004066278A2/en
Priority to EP08013072.7A priority patent/EP2159718B1/en
Priority to JP2006501087A priority patent/JP4581095B2/en
Priority to DE602004015935T priority patent/DE602004015935D1/en
Priority to EP04704089A priority patent/EP1588357B1/en
Publication of US20040153606A1 publication Critical patent/US20040153606A1/en
Priority to JP2010005548A priority patent/JP5369007B2/en
Assigned to DELL PRODUCTS L.P. reassignment DELL PRODUCTS L.P. MERGER (SEE DOCUMENT FOR DETAILS). Assignors: EQUALLOGIC INC.
Priority to US13/099,057 priority patent/US8209515B2/en
Publication of US7937551B2 publication Critical patent/US7937551B2/en
Application granted granted Critical
Assigned to BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS FIRST LIEN COLLATERAL AGENT reassignment BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS FIRST LIEN COLLATERAL AGENT PATENT SECURITY AGREEMENT (NOTES) Assignors: APPASSURE SOFTWARE, INC., ASAP SOFTWARE EXPRESS, INC., BOOMI, INC., COMPELLENT TECHNOLOGIES, INC., CREDANT TECHNOLOGIES, INC., DELL INC., DELL MARKETING L.P., DELL PRODUCTS L.P., DELL SOFTWARE INC., DELL USA L.P., FORCE10 NETWORKS, INC., GALE TECHNOLOGIES, INC., PEROT SYSTEMS CORPORATION, SECUREWORKS, INC., WYSE TECHNOLOGY L.L.C.
Assigned to BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT reassignment BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT PATENT SECURITY AGREEMENT (ABL) Assignors: APPASSURE SOFTWARE, INC., ASAP SOFTWARE EXPRESS, INC., BOOMI, INC., COMPELLENT TECHNOLOGIES, INC., CREDANT TECHNOLOGIES, INC., DELL INC., DELL MARKETING L.P., DELL PRODUCTS L.P., DELL SOFTWARE INC., DELL USA L.P., FORCE10 NETWORKS, INC., GALE TECHNOLOGIES, INC., PEROT SYSTEMS CORPORATION, SECUREWORKS, INC., WYSE TECHNOLOGY L.L.C.
Assigned to BANK OF AMERICA, N.A., AS COLLATERAL AGENT reassignment BANK OF AMERICA, N.A., AS COLLATERAL AGENT PATENT SECURITY AGREEMENT (TERM LOAN) Assignors: APPASSURE SOFTWARE, INC., ASAP SOFTWARE EXPRESS, INC., BOOMI, INC., COMPELLENT TECHNOLOGIES, INC., CREDANT TECHNOLOGIES, INC., DELL INC., DELL MARKETING L.P., DELL PRODUCTS L.P., DELL SOFTWARE INC., DELL USA L.P., FORCE10 NETWORKS, INC., GALE TECHNOLOGIES, INC., PEROT SYSTEMS CORPORATION, SECUREWORKS, INC., WYSE TECHNOLOGY L.L.C.
Assigned to COMPELLANT TECHNOLOGIES, INC., PEROT SYSTEMS CORPORATION, CREDANT TECHNOLOGIES, INC., ASAP SOFTWARE EXPRESS, INC., DELL SOFTWARE INC., SECUREWORKS, INC., FORCE10 NETWORKS, INC., WYSE TECHNOLOGY L.L.C., APPASSURE SOFTWARE, INC., DELL INC., DELL MARKETING L.P., DELL USA L.P., DELL PRODUCTS L.P. reassignment COMPELLANT TECHNOLOGIES, INC. RELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS). Assignors: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Assigned to DELL SOFTWARE INC., DELL USA L.P., ASAP SOFTWARE EXPRESS, INC., DELL PRODUCTS L.P., COMPELLENT TECHNOLOGIES, INC., DELL MARKETING L.P., DELL INC., PEROT SYSTEMS CORPORATION, WYSE TECHNOLOGY L.L.C., FORCE10 NETWORKS, INC., SECUREWORKS, INC., APPASSURE SOFTWARE, INC., CREDANT TECHNOLOGIES, INC. reassignment DELL SOFTWARE INC. RELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS). Assignors: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Assigned to DELL PRODUCTS L.P., DELL INC., ASAP SOFTWARE EXPRESS, INC., DELL USA L.P., FORCE10 NETWORKS, INC., DELL SOFTWARE INC., PEROT SYSTEMS CORPORATION, COMPELLENT TECHNOLOGIES, INC., WYSE TECHNOLOGY L.L.C., SECUREWORKS, INC., DELL MARKETING L.P., APPASSURE SOFTWARE, INC., CREDANT TECHNOLOGIES, INC. reassignment DELL PRODUCTS L.P. RELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS). Assignors: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Assigned to CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT reassignment CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT SECURITY AGREEMENT Assignors: ASAP SOFTWARE EXPRESS, INC., AVENTAIL LLC, CREDANT TECHNOLOGIES, INC., DELL INTERNATIONAL L.L.C., DELL MARKETING L.P., DELL PRODUCTS L.P., DELL SOFTWARE INC., DELL SYSTEMS CORPORATION, DELL USA L.P., EMC CORPORATION, EMC IP Holding Company LLC, FORCE10 NETWORKS, INC., MAGINATICS LLC, MOZY, INC., SCALEIO LLC, SPANNING CLOUD APPS LLC, WYSE TECHNOLOGY L.L.C.
Assigned to THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT reassignment THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT SECURITY AGREEMENT Assignors: ASAP SOFTWARE EXPRESS, INC., AVENTAIL LLC, CREDANT TECHNOLOGIES, INC., DELL INTERNATIONAL L.L.C., DELL MARKETING L.P., DELL PRODUCTS L.P., DELL SOFTWARE INC., DELL SYSTEMS CORPORATION, DELL USA L.P., EMC CORPORATION, EMC IP Holding Company LLC, FORCE10 NETWORKS, INC., MAGINATICS LLC, MOZY, INC., SCALEIO LLC, SPANNING CLOUD APPS LLC, WYSE TECHNOLOGY L.L.C.
Assigned to THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A. reassignment THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A. SECURITY AGREEMENT Assignors: CREDANT TECHNOLOGIES, INC., DELL INTERNATIONAL L.L.C., DELL MARKETING L.P., DELL PRODUCTS L.P., DELL USA L.P., EMC CORPORATION, EMC IP Holding Company LLC, FORCE10 NETWORKS, INC., WYSE TECHNOLOGY L.L.C.
Assigned to THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A. reassignment THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A. SECURITY AGREEMENT Assignors: CREDANT TECHNOLOGIES INC., DELL INTERNATIONAL L.L.C., DELL MARKETING L.P., DELL PRODUCTS L.P., DELL USA L.P., EMC CORPORATION, EMC IP Holding Company LLC, FORCE10 NETWORKS, INC., WYSE TECHNOLOGY L.L.C.
Assigned to ASAP SOFTWARE EXPRESS, INC., MOZY, INC., DELL MARKETING L.P., DELL SYSTEMS CORPORATION, DELL SOFTWARE INC., WYSE TECHNOLOGY L.L.C., MAGINATICS LLC, SCALEIO LLC, CREDANT TECHNOLOGIES, INC., DELL PRODUCTS L.P., AVENTAIL LLC, DELL USA L.P., EMC IP Holding Company LLC, DELL INTERNATIONAL, L.L.C., EMC CORPORATION, FORCE10 NETWORKS, INC. reassignment ASAP SOFTWARE EXPRESS, INC. RELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS). Assignors: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Assigned to DELL PRODUCTS L.P., DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.), DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.), SCALEIO LLC, EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC), DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.), DELL USA L.P., EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.), DELL INTERNATIONAL L.L.C. reassignment DELL PRODUCTS L.P. RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Assignors: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Assigned to DELL PRODUCTS L.P., DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.), DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.), EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.), DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.), DELL INTERNATIONAL L.L.C., DELL USA L.P., SCALEIO LLC, EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC) reassignment DELL PRODUCTS L.P. RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Assignors: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • G06F16/1824Distributed file systems implemented using Network-attached Storage [NAS] architecture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/101Server selection for load balancing based on network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1017Server selection for load balancing based on a round robin mechanism
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1029Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1034Reaction to server failures by a load balancer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/2895Intermediate processing functionally located close to the data provider application, e.g. reverse proxies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1466Management of the backup or restore process to make the backup process non-disruptive
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/84Using snapshots, i.e. a logical point-in-time copy of the data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2206/00Indexing scheme related to dedicated interfaces for computers
    • G06F2206/10Indexing scheme related to storage interfaces for computers, indexing schema related to group G06F3/06
    • G06F2206/1012Load balancing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes

Definitions

  • More sophisticated storage technologies such as RAID, provide differentiated classes of storage. These storage classes may differ in regard to performance, reliability, error detection and other factors.
  • the different storage classes allow the system administrator to store different types of data with different classes of storage.
  • the systems and methods described herein include among other things, systems for providing a block level data storage service. More particularly, the systems and methods of the invention provide, among other things, a block level data storage service that provides differentiated pools of storage on a single storage device. To this end, the systems and methods described herein leverage the different performance characteristics across the logical block name (LBN) space of the storage device (or devices). These different performance characteristics may be exploited to support two or more classes of storage on a single device.
  • LBN logical block name
  • systems and methods described herein include, in one aspect, systems for providing differentiated classes of storage.
  • Such systems may comprise a storage device having a plurality of storage locations and a logical block name space for organizing the storage locations.
  • a performance process may partition the storage locations into a plurality of regions that provide different levels of performance, and a mapping process may map the partitioned portions of the storage locations to a selected section of the logical block name space.
  • the performance process separates the plurality of storage locations into a plurality of categories being associated with a different level of service, which for example may be associated with a different RAID level of performance.
  • a different level of service which for example may be associated with a different RAID level of performance.
  • RAID Red-Green-Redge
  • the underlying storage device is a single storage medium, although optionally, the mapping process may create multiple storage volumes at a selected level of performance, and the multiple storage volumes may be associated with one or more storage devices.
  • the system may further comprise a load balancing mover process for moving data between different portions of the logical block name space.
  • the load balancing mover process may include an adaptive data placement process for moving data between storage pools to thereby improve system performance.
  • an admin process may allow an administrator to move data between different storage pools.
  • These systems may move, store and access data blocks and to this end may move data blocks that are organized as files, including files having a directory structure and hierarchy to provide a file system service.
  • the systems may include a process for providing a storage volume service.
  • the systems provide storage systems supporting differentiated classes of storage.
  • Such systems can include a storage device having a plurality of storage locations, a logical block name space for organizing the storage locations, and performance parameters of the storage locations that vary across the storage device.
  • the system may further include a partitioning process for partitioning those storage locations into regions as a function variations in performance parameters.
  • the partitioning process may select a fixed set of partitions as a function of a selected configuration of system components.
  • a performance process may associate partitions with different levels of performance, and a mapping process may map the identified partitions of the storage locations to a selected section of the logical block name space.
  • system may be realized in many different forms, including as part of a RAID controller, device driver, operating system, application program, or network service.
  • system is realized as a storage area network, that includes one or more servers executing computer code that configures the server, at least in part, to carry out the processes that provide storage systems supporting differentiated classes of storage.
  • the invention provides a process for providing differentiated classes of storage.
  • Such methods may comprise the steps of providing one or more storage devices having a plurality of storage locations and a logical block name space for organizing the storage locations.
  • the process may partition the storage locations into a plurality of regions providing different levels of performance, and may map the partitioned portions of the storage locations to a selected section of the logical block name space.
  • the process may include the step of separating the plurality of storage locations into a plurality of categories associated with a different level of service, and optionally separating the plurality of storage locations into a plurality of categories being associated with a different RAID level of performance.
  • the mapping process associates different portions of the logical block name space to different respective levels of RAID.
  • the process may include the step of load balancing by moving data between different portions of the logical block name space.
  • Load balancing may include moving data between storage pools, including storage pools that have different levels of performance, to thereby improve overall system performance, or the performance of certain aspects of the system, such as the overall performance of one class of storage, or to provide better service for one class of data.
  • the process may allow an administrator to move data between different storage pools. This can be done through a user interface that provides the administrator with the ability to set parameters, including operating parameters, which will move data between different storage pools.
  • the mapping step may create multiple storage volumes at a selected level of performance.
  • FIG. 1 depicts an individual storage device that has different performance characteristics based on a list of LBNs
  • FIG. 2 illustrates RAID differentiated storage pools sharing the same storage devices
  • FIG. 3 depicts differentiated storage pools by combining individual storage device performance and RAID performance characteristics
  • FIG. 4 illustrates extent based and page based allocation of a storage service across differentiated storage pools
  • FIG. 5 depicts in more detail and as a functional block diagram one embodiment of a system according to the invention.
  • the systems and methods described herein include systems for storing, organizing and managing resources.
  • the systems and methods described below may employ a software architecture that builds certain of the processes described below into an operating system, into a device driver, or into a software process that operates on a peripheral device, such as a tape library, a RAID storage system or some other device.
  • a peripheral device such as a tape library, a RAID storage system or some other device.
  • FIG. 1 depicts a storage device 10 and graphically portrays that different sections of the logical block name (LBN) can have different kinds of performance characteristics. Specifically, in the example depicted by FIG. 1, the LBN of the device 10 is divided into three different performance classes, which are shown respectively as Section 12 , 14 and 16 . Thus, FIG. 1 is an abstract representation of the entire name space on the disc 10 . Although the use of these terms can vary somewhat, it is generally understood that the logical block name space is the full compliment of the addresssable locations on the disc and it will be understood that a logical block will be understood as the smallest addressable space on a disc, such as the disc 10 .
  • Each logical block may be identified by a unique logical block name (or number), typically assigned in order starting from 0 at the beginning of the disc.
  • logical block name typically assigned in order starting from 0 at the beginning of the disc.
  • all data on a CD is addressed in terms of logical block numbers.
  • the device depicted in FIG. 1 is generally understood to be a storage disc, such as a hard disk drive.
  • the invention is not so limited.
  • the systems and methods described herein may also be applied to compact discs, floppy disks, tape drive systems, and other similar kinds of data storage devices.
  • the logical block name space can be subdivided into different sections where each of these sections has different kinds of performance characteristics.
  • the performance characteristics of interest might include the rate in which data can be accessed from that portion of the disc, the reliability of that portion of the disc, and how long it can take to access that portion of the memory device (which can be particularly relevant to digital linear tape storage).
  • the systems and methods described herein include a performance measurement system that is capable of scanning an individual device, such as the depicted storage device 10 , and measuring certain characteristics to determine how the device should be subdivided into different performance classes.
  • the performance measurement system makes experimental read and write operations across portions of the LBN and uses the collected experimental data to determine the performance characteristics of different logical block areas within the LBN space. The measuring process may then determine from these measured characteristics whether or not a collection of logical blocks can be aggregated into a section, such as one of the depicted sections 12 , 14 , or 16 wherein the aggregate logical blocks have common performance characteristics of interest and thereby provide a subspace within the LBN space that may be associated with a particular level of performance.
  • partitioning into performance regions will be determined and done at system design time, and fixed for a particular system design. That design process may involve experiment and measurement, but the product that results from the design process typically will not itself incorporate a performance measurement component. The embodiment and practice selected can turn on the application being addressed and the specifics of the product design.
  • Doing measurement at “run time” may be useful if there will be widely varying configurations of the product, not all of which have been seen or analyzed in advance during the product design phase. Conversely, if product configurations are rigorously controlled and analyzed prior to approval, then the performance analysis may be done at that time and no measurement component is needed in the operational or delivered product.
  • FIG. 2 depicts a RAID storage system 20 that includes a pool A 22 and a pool B 24 .
  • pool A 22 is set up as a RAID 10 storage pool
  • pool B 24 is set up as a RAID 50 storage pool.
  • RAID is a term commonly employed for the acronym redundant ray of inexpensive (or independent) disks.
  • a RAID array is a collection of drives which collectively act as a single storage system, which can tolerate a failure of a drive without losing data and which can operate independently of each other.
  • RAID Red Node
  • RAID level 1 is commonly referred to as mirroring with two hard drives.
  • RAID level 10 such as the depicted pool A 22 employs, is a dual level array that employs multiple RAID 1 (mirrored) sets into a single array. Data is striped across all mirrored sets. RAID 1 utilizes several drives, provides better performance, and each drive is typically duplicated or mirrored.
  • RAID 50 as employed by pool B 24 , is a dual level array that employs multiple RAID 5 levels into a single array. This will be understood that the RAID system 20 depicted in FIG. 2 employs the four storage devices 25 A through 25 D to support two different classes of storage, each of which has different performance characteristics and different performance levels.
  • FIG. 3 depicts a system 30 that comprises four storage devices 35 A through 35 D. Other storage devices may be added as needed. Similar to FIG. 1, the LBN space of the devices 35 A through 35 D is depicted abstractly as extending over the surface of the device and, as shown in FIG. 1, the devices 35 A through 35 D are subdivided into three subspaces, each LBN subspace being associated with a different performance level. Simultaneously, the system depicted in FIG. 3 associates different RAID levels with different performance subspaces. For example, the performance A LBN subspace is used to support a RAID 10 storage level, the performance B LBN subspace is employed to support a RAID 5 service level, and the performance C LBN subspace is employed to provide a RAID 50 performance level.
  • the performance A LBN subspace is used to support a RAID 10 storage level
  • the performance B LBN subspace is employed to support a RAID 5 service level
  • the performance C LBN subspace is employed to provide a RAID 50 performance level.
  • the storage system administrator can determine which of the performance LBN subspaces should be used to support a particular one of the RAID levels. Any suitable technique may be employed for choosing among the different subspaces. For example, if Region A is the region of the drives that has particularly good random access I/O performance, it will often be appropriate to allocate it to a RAID-10 set since RAID-10 is also characterized by good random access performance, especially random write performance; the characteristics of the two layers thus reinforce each other resulting in a “Pool A” that has excellent random write performance.
  • FIG. 4 depicts one example of an extent based or page based allocation operation of a storage service across the differentiated storage pools of the type depicted in FIG. 3.
  • the system 30 provides a Pool A that can store data that is frequently accessed.
  • the Pool A subspace of the LBN is employed to support a RAID Level 10, which provides a certain amount of fault tolerance and provides respectable data throughput.
  • RAID Level 10 provides a certain amount of fault tolerance and provides respectable data throughput.
  • FIG. 5 depicts an optional embodiment wherein the system employs an adaptive storage block data distribution process for distributing blocks of data across the different partitions of the data volume.
  • an adaptive storage block data distribution process for distributing blocks of data across the different partitions of the data volume.
  • One such suitable adaptive storage system is described in US Patent Application entitled ADAPTIVE STORAGE BLOCK DATA DISTRIBUTION U.S. Ser. No. 10/347,898 and naming G. Paul Koning et al. as inventor, the contents of which are herein incorporated by reference.
  • each server 22 A, 22 B in the system 50 includes a routing table 52 , a data mover process 54 and a request monitor process 58 .
  • the request monitor process 58 is capable of monitoring requests made to one of the servers 22 A or 22 B from the one or more clients 12 that are accessing the system 50 .
  • the request may be associated with data blocks stored on a partition or somewhere on the volume of the storage device 30 .
  • the request monitor 58 can monitor the different requests that clients 12 make to the associated server or servers 22 . Additionally, the request monitor 58 may communicate with other request monitor processes 58 running on the different equivalent servers 22 on the system 50 . In this way, the request monitor 58 can generate a global view of the requests being forwarded by clients 12 to the partitioned block data storage system 50 . By sharing this information, each server 22 may, through its associated request monitor process 58 , develop a global understanding of the requests being serviced by the block data storage system 50 .
  • the data mover process 54 employs the information stored within the routing table 52 for the purpose of determining whether a more efficient or reliable arrangement of data blocks may be achieved.
  • the data mover process 54 comprises a computer program that applies an algorithm to the data collected by the request monitors 58 .
  • the data mover process 54 applies an algorithm that reviews the current distribution of data blocks and considers the current client 12 demand for these data blocks when determining whether a more efficient allocation of data blocks is available. In the embodiment depicted, this algorithm can determine whether a particular data block is more suited for a storage class that is different from the class presently used.
  • the adaptive process can move data blocks between and among the different storage classes available on the system, such as on the system 30 .
  • the system 50 can achieve the optimal or substantially optimal storage performance for the data.
  • the storage performance achieved may be realized with systems that employ a single server, wherein the data mover process moves the data between different regions in the system.
  • the systems and methods described herein may be employed with Storage Area Networks, including Storage Area Networks described in the above-referenced US Patent Application entitled Adaptive Storage Block Data Distribution.
  • FIGS. 1 - 5 depict exemplary systems as assemblies of functional block elements, it will be apparent to one of ordinary skill in the art that the systems and methods of the invention may be realized as computer programs or portions of computer programs that are capable of running on the servers to thereby configure the servers as systems according to the invention.
  • the systems of the invention may be realized as software components operating on a conventional data processing system such as a Unix workstation.
  • the system can be implemented as a C language computer program, or a computer program written in any high level language including C++, Fortran, Java or Basic. General techniques for such high level programming are known, and set forth in, for example, Stephen G. Kochan, Programming in C , Hayden Publishing (1983).

Abstract

The systems and methods described herein include among other things, systems for providing a block level data storage service. More particularly, the systems and methods of the invention provide a block level data storage service that provides differentiated pools of storage on a single storage device. To this end, the systems and methods described herein leverage the different performance characteristics across the logical block name (LBN) space of the storage device (or devices). These different performance characteristics may be exploited to support two or more classes of storage on a single device.

Description

    RELATED APPLICATIONS
  • This application claims priority to earlier filed U.S. Provisional Application No. 60/441,810, naming Eric R. Schott as an inventor, and having a filing date of 21 Jan. 2003, the contents of which are incorporated by reference in their entirety.[0001]
  • BACKGROUND OF THE INVENTION
  • The systems and methods described herein relate to data storage. [0002]
  • More sophisticated storage technologies, such as RAID, provide differentiated classes of storage. These storage classes may differ in regard to performance, reliability, error detection and other factors. The different storage classes allow the system administrator to store different types of data with different classes of storage. [0003]
  • Although existing systems can work quite well, they generally employ separate storage devices for each class of service. Thus, one storage device can be set to a certain level of performance, such as RAID Level 0, and this device (or devices) can store the appropriate data, such as Photoshop temporary files. Thus, these systems require dedicated devices for the different classes of storage. [0004]
  • Accordingly, there is a need in the art for storage systems that provide differentiated classes of storage without requiring class-dedicated storage devices. [0005]
  • SUMMARY OF THE INVENTION
  • The systems and methods described herein include among other things, systems for providing a block level data storage service. More particularly, the systems and methods of the invention provide, among other things, a block level data storage service that provides differentiated pools of storage on a single storage device. To this end, the systems and methods described herein leverage the different performance characteristics across the logical block name (LBN) space of the storage device (or devices). These different performance characteristics may be exploited to support two or more classes of storage on a single device. [0006]
  • More particularly, the systems and methods described herein include, in one aspect, systems for providing differentiated classes of storage. Such systems may comprise a storage device having a plurality of storage locations and a logical block name space for organizing the storage locations. A performance process may partition the storage locations into a plurality of regions that provide different levels of performance, and a mapping process may map the partitioned portions of the storage locations to a selected section of the logical block name space. [0007]
  • In certain embodiments, the performance process separates the plurality of storage locations into a plurality of categories being associated with a different level of service, which for example may be associated with a different RAID level of performance. However, those of skill in the art will know that other types of differentiated storage, other than RAID, may be employed, including storage systems that distinguish between media employed, cost and other features or parameters. Moreover, in some embodiments the underlying storage device is a single storage medium, although optionally, the mapping process may create multiple storage volumes at a selected level of performance, and the multiple storage volumes may be associated with one or more storage devices. [0008]
  • Optionally, the system may further comprise a load balancing mover process for moving data between different portions of the logical block name space. The load balancing mover process may include an adaptive data placement process for moving data between storage pools to thereby improve system performance. Further, an admin process may allow an administrator to move data between different storage pools. These systems may move, store and access data blocks and to this end may move data blocks that are organized as files, including files having a directory structure and hierarchy to provide a file system service. In alternate embodiments, the systems may include a process for providing a storage volume service. [0009]
  • In another embodiment, the systems provide storage systems supporting differentiated classes of storage. Such systems can include a storage device having a plurality of storage locations, a logical block name space for organizing the storage locations, and performance parameters of the storage locations that vary across the storage device. The system may further include a partitioning process for partitioning those storage locations into regions as a function variations in performance parameters. The partitioning process may select a fixed set of partitions as a function of a selected configuration of system components. Further, a performance process may associate partitions with different levels of performance, and a mapping process may map the identified partitions of the storage locations to a selected section of the logical block name space. [0010]
  • The systems and methods described herein may be realized in many different forms, including as part of a RAID controller, device driver, operating system, application program, or network service. In one particular embodiment the system is realized as a storage area network, that includes one or more servers executing computer code that configures the server, at least in part, to carry out the processes that provide storage systems supporting differentiated classes of storage. [0011]
  • In another aspect, the invention provides a process for providing differentiated classes of storage. Such methods may comprise the steps of providing one or more storage devices having a plurality of storage locations and a logical block name space for organizing the storage locations. The process may partition the storage locations into a plurality of regions providing different levels of performance, and may map the partitioned portions of the storage locations to a selected section of the logical block name space. Optionally, the process may include the step of separating the plurality of storage locations into a plurality of categories associated with a different level of service, and optionally separating the plurality of storage locations into a plurality of categories being associated with a different RAID level of performance. In one practice the mapping process associates different portions of the logical block name space to different respective levels of RAID. [0012]
  • Optionally, the process may include the step of load balancing by moving data between different portions of the logical block name space. Load balancing may include moving data between storage pools, including storage pools that have different levels of performance, to thereby improve overall system performance, or the performance of certain aspects of the system, such as the overall performance of one class of storage, or to provide better service for one class of data. [0013]
  • To this end, the process may allow an administrator to move data between different storage pools. This can be done through a user interface that provides the administrator with the ability to set parameters, including operating parameters, which will move data between different storage pools. [0014]
  • The mapping step may create multiple storage volumes at a selected level of performance.[0015]
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The following figures depict certain illustrative embodiments of the invention in which like reference numerals refer to like elements. These depicted embodiments are to be understood as illustrative of the invention and not as limiting in any way. [0016]
  • FIG. 1 depicts an individual storage device that has different performance characteristics based on a list of LBNs; [0017]
  • FIG. 2 illustrates RAID differentiated storage pools sharing the same storage devices; [0018]
  • FIG. 3 depicts differentiated storage pools by combining individual storage device performance and RAID performance characteristics; [0019]
  • FIG. 4 illustrates extent based and page based allocation of a storage service across differentiated storage pools; and [0020]
  • FIG. 5 depicts in more detail and as a functional block diagram one embodiment of a system according to the invention.[0021]
  • DESCRIPTION OF CERTAIN ILLUSTRATED EMBODIMENTS
  • The systems and methods described herein include systems for storing, organizing and managing resources. The systems and methods described below may employ a software architecture that builds certain of the processes described below into an operating system, into a device driver, or into a software process that operates on a peripheral device, such as a tape library, a RAID storage system or some other device. In any case, it will be understood by those of ordinary skill in the art that the systems and methods described herein may be realized through many different embodiments, and practices, and that the particular embodiment and practice employed will vary as a function of the application of interest and all these embodiments and practices fall within the scope hereof. Moreover, it will be understood by those of ordinary skill in the art that the systems and methods described herein are merely exemplary of the kinds of systems and methods that may be achieved through the invention and that these exemplary embodiments may be modified, supplemented and amended as appropriate for the application at hand. [0022]
  • FIG. 1 depicts a [0023] storage device 10 and graphically portrays that different sections of the logical block name (LBN) can have different kinds of performance characteristics. Specifically, in the example depicted by FIG. 1, the LBN of the device 10 is divided into three different performance classes, which are shown respectively as Section 12, 14 and 16. Thus, FIG. 1 is an abstract representation of the entire name space on the disc 10. Although the use of these terms can vary somewhat, it is generally understood that the logical block name space is the full compliment of the adressable locations on the disc and it will be understood that a logical block will be understood as the smallest addressable space on a disc, such as the disc 10. Each logical block may be identified by a unique logical block name (or number), typically assigned in order starting from 0 at the beginning of the disc. Under the ISO 9660 standard, all data on a CD is addressed in terms of logical block numbers. Thus, the device depicted in FIG. 1 is generally understood to be a storage disc, such as a hard disk drive. However, the invention is not so limited. The systems and methods described herein may also be applied to compact discs, floppy disks, tape drive systems, and other similar kinds of data storage devices.
  • In any case, it can generally be understood that the logical block name space can be subdivided into different sections where each of these sections has different kinds of performance characteristics. The performance characteristics of interest might include the rate in which data can be accessed from that portion of the disc, the reliability of that portion of the disc, and how long it can take to access that portion of the memory device (which can be particularly relevant to digital linear tape storage). [0024]
  • In one practice, the systems and methods described herein include a performance measurement system that is capable of scanning an individual device, such as the depicted [0025] storage device 10, and measuring certain characteristics to determine how the device should be subdivided into different performance classes. In one embodiment, the performance measurement system makes experimental read and write operations across portions of the LBN and uses the collected experimental data to determine the performance characteristics of different logical block areas within the LBN space. The measuring process may then determine from these measured characteristics whether or not a collection of logical blocks can be aggregated into a section, such as one of the depicted sections 12, 14, or 16 wherein the aggregate logical blocks have common performance characteristics of interest and thereby provide a subspace within the LBN space that may be associated with a particular level of performance. Obviously, those of skill in the art can select the granularity over which the LBN space is subdivided into different sections and the granularity selected will depend largely on the application at hand and the number of storage classes desired or needed for the application of interest. In other practices and embodiments, partitioning into performance regions will be determined and done at system design time, and fixed for a particular system design. That design process may involve experiment and measurement, but the product that results from the design process typically will not itself incorporate a performance measurement component. The embodiment and practice selected can turn on the application being addressed and the specifics of the product design.
  • Doing measurement at “run time” may be useful if there will be widely varying configurations of the product, not all of which have been seen or analyzed in advance during the product design phase. Conversely, if product configurations are rigorously controlled and analyzed prior to approval, then the performance analysis may be done at that time and no measurement component is needed in the operational or delivered product. [0026]
  • Turning now to FIG. 2, one [0027] RAID system 20 is depicted wherein the RAID system 20 provides differentiated storage pools sharing the same storage devices depicted as devices 25A through 25D. Specifically, FIG. 2 depicts a RAID storage system 20 that includes a pool A 22 and a pool B 24. As shown in this embodiment, pool A 22 is set up as a RAID 10 storage pool and pool B 24 is set up as a RAID 50 storage pool. As known to those of skill in the art, RAID is a term commonly employed for the acronym redundant ray of inexpensive (or independent) disks. A RAID array is a collection of drives which collectively act as a single storage system, which can tolerate a failure of a drive without losing data and which can operate independently of each other. Although there are different types of RAID systems, in general, the UC Berkeley term “RAID” defined six RAID levels. Each level is a different way to spread data across the multiple drives in the system, such as the multiple systems 25A through 25D. This technique provides a compromise between cost and speed. The different levels have different meanings and each level is typically optimized for a different use or application. For example, RAID level 0 is not redundant and splits data across the different drives 25A through 25D resulting in higher data through-put. Since no redundant information is stored, the performance is very good, but the failure of any disk in the array results in data loss. This level is commonly referred to as striping. RAID level 1 is commonly referred to as mirroring with two hard drives. This level provides redundancy by duplicating all the data from one drive onto another drive. The performance of level 1 array is slightly better than a single drive, but if either drive fails, no data is lost. RAID level 10, such as the depicted pool A 22 employs, is a dual level array that employs multiple RAID 1 (mirrored) sets into a single array. Data is striped across all mirrored sets. RAID 1 utilizes several drives, provides better performance, and each drive is typically duplicated or mirrored. RAID 50, as employed by pool B 24, is a dual level array that employs multiple RAID 5 levels into a single array. This will be understood that the RAID system 20 depicted in FIG. 2 employs the four storage devices 25A through 25D to support two different classes of storage, each of which has different performance characteristics and different performance levels.
  • In one example system according to the invention, such as that depicted in FIG. 3, differentiated pools are created by combining the RAID levels depicted in FIG. 2 with the device performance variations depicted in FIG. 1. Specifically, FIG. 3 depicts a [0028] system 30 that comprises four storage devices 35A through 35D. Other storage devices may be added as needed. Similar to FIG. 1, the LBN space of the devices 35A through 35D is depicted abstractly as extending over the surface of the device and, as shown in FIG. 1, the devices 35A through 35D are subdivided into three subspaces, each LBN subspace being associated with a different performance level. Simultaneously, the system depicted in FIG. 3 associates different RAID levels with different performance subspaces. For example, the performance A LBN subspace is used to support a RAID 10 storage level, the performance B LBN subspace is employed to support a RAID 5 service level, and the performance C LBN subspace is employed to provide a RAID 50 performance level.
  • In the process of setting up the [0029] system 30, the storage system administrator can determine which of the performance LBN subspaces should be used to support a particular one of the RAID levels. Any suitable technique may be employed for choosing among the different subspaces. For example, if Region A is the region of the drives that has particularly good random access I/O performance, it will often be appropriate to allocate it to a RAID-10 set since RAID-10 is also characterized by good random access performance, especially random write performance; the characteristics of the two layers thus reinforce each other resulting in a “Pool A” that has excellent random write performance.
  • FIG. 4, depicts one example of an extent based or page based allocation operation of a storage service across the differentiated storage pools of the type depicted in FIG. 3. As depicted, the [0030] system 30 provides a Pool A that can store data that is frequently accessed. To this end, the Pool A subspace of the LBN is employed to support a RAID Level 10, which provides a certain amount of fault tolerance and provides respectable data throughput. By virtualizing the storage service across different classes of storage, while utilizing the same set of devices, as illustrated here, both optimal or substantially optimal performance and least physical device consumption may be obtained simultaneously. Multiple instances of the block storage service (“logical volumes”) may be created, all sharing the same set of underlying differentiated storage pools. Each is allocated portions of the pools according to its performance requirements. FIG. 5 depicts an optional embodiment wherein the system employs an adaptive storage block data distribution process for distributing blocks of data across the different partitions of the data volume. One such suitable adaptive storage system is described in US Patent Application entitled ADAPTIVE STORAGE BLOCK DATA DISTRIBUTION U.S. Ser. No. 10/347,898 and naming G. Paul Koning et al. as inventor, the contents of which are herein incorporated by reference.
  • As described therein, each [0031] server 22 A, 22 B in the system 50 includes a routing table 52, a data mover process 54 and a request monitor process 58. The request monitor process 58 is capable of monitoring requests made to one of the servers 22 A or 22 B from the one or more clients 12 that are accessing the system 50.
  • The request may be associated with data blocks stored on a partition or somewhere on the volume of the [0032] storage device 30. The request monitor 58 can monitor the different requests that clients 12 make to the associated server or servers 22. Additionally, the request monitor 58 may communicate with other request monitor processes 58 running on the different equivalent servers 22 on the system 50. In this way, the request monitor 58 can generate a global view of the requests being forwarded by clients 12 to the partitioned block data storage system 50. By sharing this information, each server 22 may, through its associated request monitor process 58, develop a global understanding of the requests being serviced by the block data storage system 50.
  • As further shown in FIG. 5, the [0033] data mover process 54 employs the information stored within the routing table 52 for the purpose of determining whether a more efficient or reliable arrangement of data blocks may be achieved. To this end, the data mover process 54 comprises a computer program that applies an algorithm to the data collected by the request monitors 58. The data mover process 54 applies an algorithm that reviews the current distribution of data blocks and considers the current client 12 demand for these data blocks when determining whether a more efficient allocation of data blocks is available. In the embodiment depicted, this algorithm can determine whether a particular data block is more suited for a storage class that is different from the class presently used. Thus the adaptive process can move data blocks between and among the different storage classes available on the system, such as on the system 30. In this way, the system 50 can achieve the optimal or substantially optimal storage performance for the data. The storage performance achieved may be realized with systems that employ a single server, wherein the data mover process moves the data between different regions in the system. Thus, the systems and methods described herein may be employed with Storage Area Networks, including Storage Area Networks described in the above-referenced US Patent Application entitled Adaptive Storage Block Data Distribution.
  • Although FIGS. [0034] 1-5 depict exemplary systems as assemblies of functional block elements, it will be apparent to one of ordinary skill in the art that the systems and methods of the invention may be realized as computer programs or portions of computer programs that are capable of running on the servers to thereby configure the servers as systems according to the invention. Moreover, as discussed above, in certain embodiments, the systems of the invention may be realized as software components operating on a conventional data processing system such as a Unix workstation. In such embodiments, the system can be implemented as a C language computer program, or a computer program written in any high level language including C++, Fortran, Java or Basic. General techniques for such high level programming are known, and set forth in, for example, Stephen G. Kochan, Programming in C, Hayden Publishing (1983).
  • While the invention has been disclosed in connection with the preferred embodiments shown and described in detail, various modifications and improvements thereon will become readily apparent to those skilled in the art. For example, although the systems and methods of the invention may be employed with RAID differentiated storage, other differentiated storage systems and methods may also be used without departing from the scope hereof. Accordingly, the spirit and scope of the present invention is to be limited only by the following claims. [0035]

Claims (21)

What is claimed is:
1. A system for providing differentiated classes of storage, comprising
a storage device having a plurality of storage locations and a logical block name space for organizing the storage locations,
a performance process for partitioning storage locations into a plurality of regions providing different levels of performance, and
a mapping process for mapping the partitioned portions of the storage locations to a selected section of the logical block name space.
2. A system according to claim 1, wherein:
the performance process separates the plurality of storage locations into a plurality of categories being associated with a different level of service.
3. A system according to claim 2, wherein:
the performance process separates the plurality of storage locations into a plurality of categories being associated with a different RAID level of performance.
4. A system according to claim 1, wherein the mapping process associates different portions of the logical block name space to different respective levels of RAID.
5. A system according to claim 1, further comprising:
a load balancing mover process for moving data between different portions of the logical block name space.
6. A system according to claim 5, wherein:
the load balancing mover process includes an adaptive data placement process for moving data between storage pools to thereby improve system performance.
7. A system according to claim 5, wherein
the load balancing process comprises an admin process for allowing an administrator to move data between different storage pools.
8. A system according to claim 1, further comprising:
a process for employing the storage to provide a file system service.
9. A system according to claim 1, further comprising:
a process for providing a storage volume service.
10. A system according to claim 1, wherein
the mapping process creates multiple storage volumes at a selected level of performance.
11. A process for providing differentiated classes of storage, comprising the steps of
providing a storage device having a plurality of storage locations and a logical block name space for organizing the storage locations,
partitioning storage locations into a plurality of regions providing different levels of performance, and
mapping the partitioned portions of the storage locations to a selected section of the logical block name space.
12. A process according to claim 11, further including the step of
separating the plurality of storage locations into a plurality of categories associated with a different level of service.
13. A process according to claim 11, further including the step of
separating the plurality of storage locations into a plurality of categories being associated with a different RAID level of performance.
14. A process according to claim 11, wherein
the mapping process associates different portions of the logical block name space to different respective levels of RAID.
15. A process according to claim 11, comprising the further step of
load balancing by moving data between different portions of the logical block name space.
16. A process according to claim 15, wherein
load balancing process includes moving data between storage pools to thereby improve system performance.
17. A process according to claim 15, wherein
load balancing comprises allowing an administrator to move data between different storage pools.
18. A process according to claim 11, wherein
mapping creates multiple storage volumes at a selected level of performance.
19. A system for providing differentiated classes of storage, comprising
a storage device having a plurality of storage locations, a logical block name space for organizing the storage locations, and performance parameters of the storage locations that vary across the storage device, and
a partitioning process for partitioning those storage locations into regions as a function variations in performance parameters.
20. A system according to claim 19, wherein
the partitioning process selected a fixed set of partitions as a function of a selected configuration of system components.
21. A system according to claim 19, further including
a performance process for associating partitions with different levels of performance, and
a mapping process for mapping the identified partitions of the storage locations to a selected section of the logical block name space.
US10/761,884 2003-01-21 2004-01-20 Storage systems having differentiated storage pools Expired - Lifetime US7937551B2 (en)

Priority Applications (10)

Application Number Priority Date Filing Date Title
US10/761,884 US7937551B2 (en) 2003-01-21 2004-01-20 Storage systems having differentiated storage pools
EP10182851.5A EP2282276B1 (en) 2003-01-21 2004-01-21 System for client connection distribution according to system load
AT04704089T ATE405882T1 (en) 2003-01-21 2004-01-21 APPARATUS, METHOD AND SYSTEM FOR MANAGING DISTRIBUTED AND PARTITIONED STORAGE
PCT/US2004/001632 WO2004066278A2 (en) 2003-01-21 2004-01-21 Systems for managing data storage
EP08013072.7A EP2159718B1 (en) 2003-01-21 2004-01-21 Systems for managing data storage
JP2006501087A JP4581095B2 (en) 2003-01-21 2004-01-21 Data storage management system
DE602004015935T DE602004015935D1 (en) 2003-01-21 2004-01-21 Device, method and system for managing distributed and partitioned memory
EP04704089A EP1588357B1 (en) 2003-01-21 2004-01-21 Apparatus, method and system for managing partitioned distributed storage
JP2010005548A JP5369007B2 (en) 2003-01-21 2010-01-14 Data storage management system
US13/099,057 US8209515B2 (en) 2003-01-21 2011-05-02 Storage systems having differentiated storage pools

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US44181003P 2003-01-21 2003-01-21
US10/761,884 US7937551B2 (en) 2003-01-21 2004-01-20 Storage systems having differentiated storage pools

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/099,057 Continuation US8209515B2 (en) 2003-01-21 2011-05-02 Storage systems having differentiated storage pools

Publications (2)

Publication Number Publication Date
US20040153606A1 true US20040153606A1 (en) 2004-08-05
US7937551B2 US7937551B2 (en) 2011-05-03

Family

ID=32776086

Family Applications (2)

Application Number Title Priority Date Filing Date
US10/761,884 Expired - Lifetime US7937551B2 (en) 2003-01-21 2004-01-20 Storage systems having differentiated storage pools
US13/099,057 Expired - Lifetime US8209515B2 (en) 2003-01-21 2011-05-02 Storage systems having differentiated storage pools

Family Applications After (1)

Application Number Title Priority Date Filing Date
US13/099,057 Expired - Lifetime US8209515B2 (en) 2003-01-21 2011-05-02 Storage systems having differentiated storage pools

Country Status (6)

Country Link
US (2) US7937551B2 (en)
EP (3) EP2282276B1 (en)
JP (2) JP4581095B2 (en)
AT (1) ATE405882T1 (en)
DE (1) DE602004015935D1 (en)
WO (1) WO2004066278A2 (en)

Cited By (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040143637A1 (en) * 2003-01-20 2004-07-22 Koning G. Paul Adaptive storage block data distribution
US20060069683A1 (en) * 2004-09-30 2006-03-30 Braddy Ricky G Method and apparatus for assigning access control levels in providing access to networked content files
US20070101083A1 (en) * 2005-10-28 2007-05-03 Fujitsu Limited Virtual storage system control apparatus, virtual storage system control program and virtual storage system control method
US20080126789A1 (en) * 2006-08-28 2008-05-29 Jones Carl E Method and Apparatus for Generating an Optimal Number of Spare Devices Within a RAID Storage System Having Multiple Storage Device Technology Classes
US20080209253A1 (en) * 2007-02-26 2008-08-28 International Business Machines Corporation Selection of data arrays
US20090228651A1 (en) * 2001-12-26 2009-09-10 Cisco Technology, Inc. Mirroring Mechanisms For Storage Area Networks and Network Based Virtualization
US20090259816A1 (en) * 2001-12-26 2009-10-15 Cisco Technology, Inc. Techniques for Improving Mirroring Operations Implemented In Storage Area Networks and Network Based Virtualization
US20090259817A1 (en) * 2001-12-26 2009-10-15 Cisco Technology, Inc. Mirror Consistency Checking Techniques For Storage Area Networks And Network Based Virtualization
US7627650B2 (en) 2003-01-20 2009-12-01 Equallogic, Inc. Short-cut response for distributed services
US7779034B2 (en) 2005-10-07 2010-08-17 Citrix Systems, Inc. Method and system for accessing a remote file in a directory structure associated with an application program executing locally
US7870153B2 (en) 2006-01-24 2011-01-11 Citrix Systems, Inc. Methods and systems for executing, by a virtual machine, an application program requested by a client machine
US8024568B2 (en) 2005-01-28 2011-09-20 Citrix Systems, Inc. Method and system for verification of an endpoint security scan
US8037264B2 (en) 2003-01-21 2011-10-11 Dell Products, L.P. Distributed snapshot process
US8042120B2 (en) 2004-09-30 2011-10-18 Citrix Systems, Inc. Method and apparatus for moving processes between isolation environments
US8090797B2 (en) 2009-05-02 2012-01-03 Citrix Systems, Inc. Methods and systems for launching applications into existing isolation environments
US8095940B2 (en) 2005-09-19 2012-01-10 Citrix Systems, Inc. Method and system for locating and accessing resources
US20120011337A1 (en) * 2010-07-07 2012-01-12 Nexenta Systems, Inc. Heterogeneous redundant storage array
US20120017043A1 (en) * 2010-07-07 2012-01-19 Nexenta Systems, Inc. Method and system for heterogeneous data volume
US8131825B2 (en) 2005-10-07 2012-03-06 Citrix Systems, Inc. Method and a system for responding locally to requests for file metadata associated with files stored remotely
US8171479B2 (en) 2004-09-30 2012-05-01 Citrix Systems, Inc. Method and apparatus for providing an aggregate view of enumerated system resources from various isolation layers
US8171483B2 (en) 2007-10-20 2012-05-01 Citrix Systems, Inc. Method and system for communicating between isolation environments
US20120173822A1 (en) * 2010-01-06 2012-07-05 Richard Testardi System and method for storing data off site
US8286230B2 (en) 2004-09-30 2012-10-09 Citrix Systems, Inc. Method and apparatus for associating tickets in a ticket hierarchy
US20120272038A1 (en) * 2011-04-20 2012-10-25 Seagate Technology Llc Logical block address mapping
US8365023B2 (en) 2011-04-29 2013-01-29 International Business Machines Corporation Runtime dynamic performance skew elimination
US20130073702A1 (en) * 2011-09-21 2013-03-21 Os Nexus, Inc. Global management of tiered storage resources
US8407445B1 (en) 2010-03-31 2013-03-26 Emc Corporation Systems, methods, and computer readable media for triggering and coordinating pool storage reclamation
US8443369B1 (en) 2008-06-30 2013-05-14 Emc Corporation Method and system for dynamically selecting a best resource from each resource collection based on resources dependencies, prior selections and statistics to implement an allocation policy
US8443163B1 (en) 2010-06-28 2013-05-14 Emc Corporation Methods, systems, and computer readable medium for tier-based data storage resource allocation and data relocation in a data storage array
US8533846B2 (en) 2006-11-08 2013-09-10 Citrix Systems, Inc. Method and system for dynamically associating access rights with a resource
US8539172B1 (en) 2010-11-08 2013-09-17 Infinidat Ltd. System and method for accessing data in an external virtual memory
US8645659B1 (en) 2010-12-01 2014-02-04 Infinidat Ltd. Method for managing volumes/snapshots in pools of external virtual memory
EP2573679A3 (en) * 2011-09-21 2014-02-26 Nexenta Systems, Inc. Methods and systems for heterogeneous data volume
US20140136886A1 (en) * 2012-11-12 2014-05-15 Greenbytes, Inc. Method for the optimization of performance, capacity and redundancy in digital data storage systems
US8745327B1 (en) 2011-06-24 2014-06-03 Emc Corporation Methods, systems, and computer readable medium for controlling prioritization of tiering and spin down features in a data storage system
US8782363B2 (en) 2011-07-22 2014-07-15 Hitachi, Ltd. Information processing system and method for controlling the same
JP2014526729A (en) * 2011-09-11 2014-10-06 マイクロソフト コーポレーション Pooled partition layout and representation
US8886909B1 (en) 2008-03-31 2014-11-11 Emc Corporation Methods, systems, and computer readable medium for allocating portions of physical storage in a storage array based on current or anticipated utilization of storage array resources
US8924681B1 (en) * 2010-03-31 2014-12-30 Emc Corporation Systems, methods, and computer readable media for an adaptative block allocation mechanism
US9311002B1 (en) 2010-06-29 2016-04-12 Emc Corporation Systems, methods, and computer readable media for compressing data at a virtually provisioned storage entity
US9401906B2 (en) 2004-09-30 2016-07-26 Citrix Systems, Inc. Method and apparatus for providing authorized remote access to application sessions
US11061787B2 (en) * 2019-04-23 2021-07-13 Micron Technology, Inc. Custom error recovery in selected regions of a data storage device

Families Citing this family (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8499086B2 (en) 2003-01-21 2013-07-30 Dell Products L.P. Client load distribution
US20040210724A1 (en) * 2003-01-21 2004-10-21 Equallogic Inc. Block data migration
US7937551B2 (en) 2003-01-21 2011-05-03 Dell Products L.P. Storage systems having differentiated storage pools
JP4728667B2 (en) * 2005-03-08 2011-07-20 日本電気株式会社 Disk management apparatus and disk load information acquisition method
US7937618B2 (en) * 2007-04-26 2011-05-03 International Business Machines Corporation Distributed, fault-tolerant and highly available computing system
JP2009043016A (en) * 2007-08-08 2009-02-26 Hitachi Ltd Storage system and access equalization method of storage system
US7984254B2 (en) * 2008-04-04 2011-07-19 Vmware, Inc. Method and system for generating consistent snapshots for a group of data objects
US8108575B2 (en) * 2009-02-03 2012-01-31 International Business Machines Corporation Methods of multi-server application synchronization without stopping I/O
US9430367B1 (en) * 2011-04-18 2016-08-30 American Megatrends, Inc. Systems and methods for active raid
US9246994B2 (en) 2011-06-23 2016-01-26 Telefonaktiebolaget L M Ericsson (Publ) Method and system for distributing a network application among a plurality of network sites on a shared network
US8930330B1 (en) 2011-06-27 2015-01-06 Amazon Technologies, Inc. Validation of log formats
US8751641B2 (en) * 2011-09-15 2014-06-10 International Business Machines Corporation Optimizing clustered network attached storage (NAS) usage
US9069617B2 (en) * 2011-09-27 2015-06-30 Oracle International Corporation System and method for intelligent GUI navigation and property sheets in a traffic director environment
US9087201B2 (en) 2012-01-05 2015-07-21 Infinidat Ltd. System and methods for host enabled management in a storage system
US9501501B2 (en) 2013-03-15 2016-11-22 Amazon Technologies, Inc. Log record management
US9514007B2 (en) 2013-03-15 2016-12-06 Amazon Technologies, Inc. Database system with database engine and separate distributed storage service
US11030055B2 (en) 2013-03-15 2021-06-08 Amazon Technologies, Inc. Fast crash recovery for distributed database systems
US10180951B2 (en) 2013-03-15 2019-01-15 Amazon Technologies, Inc. Place snapshots
US9672237B2 (en) 2013-03-15 2017-06-06 Amazon Technologies, Inc. System-wide checkpoint avoidance for distributed database systems
US9619404B2 (en) 2013-04-16 2017-04-11 International Business Machines Corporation Backup cache with immediate availability
US9329938B2 (en) 2013-04-16 2016-05-03 International Business Machines Corporation Essential metadata replication
US9104332B2 (en) 2013-04-16 2015-08-11 International Business Machines Corporation Managing metadata and data for a logical volume in a distributed and declustered system
US9298617B2 (en) 2013-04-16 2016-03-29 International Business Machines Corporation Parallel destaging with replicated cache pinning
US9298398B2 (en) 2013-04-16 2016-03-29 International Business Machines Corporation Fine-grained control of data placement
US9423981B2 (en) 2013-04-16 2016-08-23 International Business Machines Corporation Logical region allocation with immediate availability
US9104597B2 (en) 2013-04-16 2015-08-11 International Business Machines Corporation Destaging cache data using a distributed freezer
US9323771B2 (en) 2013-04-24 2016-04-26 Dell Products, Lp Efficient rename in a lock-coupled traversal of B+tree
US10747746B2 (en) 2013-04-30 2020-08-18 Amazon Technologies, Inc. Efficient read replicas
US9317213B1 (en) 2013-05-10 2016-04-19 Amazon Technologies, Inc. Efficient storage of variably-sized data objects in a data store
US9760596B2 (en) 2013-05-13 2017-09-12 Amazon Technologies, Inc. Transaction ordering
US9208032B1 (en) 2013-05-15 2015-12-08 Amazon Technologies, Inc. Managing contingency capacity of pooled resources in multiple availability zones
US10303564B1 (en) 2013-05-23 2019-05-28 Amazon Technologies, Inc. Reduced transaction I/O for log-structured storage systems
US9305056B1 (en) 2013-05-24 2016-04-05 Amazon Technologies, Inc. Results cache invalidation
US9047189B1 (en) 2013-05-28 2015-06-02 Amazon Technologies, Inc. Self-describing data blocks of a minimum atomic write size for a data store
US9400819B2 (en) 2013-06-07 2016-07-26 Dell Products, Lp Updating object attributes in a lock-coupled namespace traversal
US9311019B2 (en) 2013-07-29 2016-04-12 Infinidat Ltd. Storage system and method for accessing logical volumes
WO2015019538A1 (en) 2013-08-05 2015-02-12 日本電気株式会社 Virtual resource control system and virtual resource control method
US9280591B1 (en) 2013-09-20 2016-03-08 Amazon Technologies, Inc. Efficient replication of system transactions for read-only nodes of a distributed database
US9519664B1 (en) 2013-09-20 2016-12-13 Amazon Technologies, Inc. Index structure navigation using page versions for read-only nodes
US9507843B1 (en) 2013-09-20 2016-11-29 Amazon Technologies, Inc. Efficient replication of distributed storage changes for read-only nodes of a distributed database
US10216949B1 (en) 2013-09-20 2019-02-26 Amazon Technologies, Inc. Dynamic quorum membership changes
US9460008B1 (en) 2013-09-20 2016-10-04 Amazon Technologies, Inc. Efficient garbage collection for a log-structured data store
US10223184B1 (en) 2013-09-25 2019-03-05 Amazon Technologies, Inc. Individual write quorums for a log-structured distributed storage system
US9552242B1 (en) 2013-09-25 2017-01-24 Amazon Technologies, Inc. Log-structured distributed storage using a single log sequence number space
US9699017B1 (en) 2013-09-25 2017-07-04 Amazon Technologies, Inc. Dynamic utilization of bandwidth for a quorum-based distributed storage system
US10387399B1 (en) 2013-11-01 2019-08-20 Amazon Technologies, Inc. Efficient database journaling using non-volatile system memory
US9760480B1 (en) 2013-11-01 2017-09-12 Amazon Technologies, Inc. Enhanced logging using non-volatile system memory
US9880933B1 (en) 2013-11-20 2018-01-30 Amazon Technologies, Inc. Distributed in-memory buffer cache system using buffer cache nodes
US9223843B1 (en) 2013-12-02 2015-12-29 Amazon Technologies, Inc. Optimized log storage for asynchronous log updates
US9274722B2 (en) 2013-12-06 2016-03-01 Concurrent Ventures, LLP System, method and article of manufacture for monitoring, controlling and improving storage media system performance
US9436404B2 (en) 2013-12-06 2016-09-06 Concurrent Ventures, LLC System and method for dynamically load balancing across storage media devices having fast access rates
US10048895B2 (en) 2013-12-06 2018-08-14 Concurrent Ventures, LLC System and method for dynamically load balancing storage media devices based on a mid-range performance level
EP3078184A4 (en) * 2013-12-06 2017-07-26 Concurrent Ventures LLC System and method for dynamically load balancing storage media devices based on a mid-range performance level
US10235096B2 (en) 2013-12-06 2019-03-19 Concurrent Ventures, LLC System and method for dynamically load balancing storage media devices based on an average or discounted average sustained performance level
US10303663B1 (en) 2014-06-12 2019-05-28 Amazon Technologies, Inc. Remote durable logging for journaling file systems
JP6375849B2 (en) * 2014-10-09 2018-08-22 富士通株式会社 FILE SYSTEM, MANAGEMENT DEVICE CONTROL PROGRAM, AND FILE SYSTEM CONTROL METHOD
US20170371782A1 (en) * 2015-01-21 2017-12-28 Hewlett Packard Enterprise Development Lp Virtual storage
CN107589992A (en) * 2017-08-02 2018-01-16 北京大学(天津滨海)新代信息技术研究院 A kind of containerization application load dispatching method based on swarm intelligence
US11914571B1 (en) 2017-11-22 2024-02-27 Amazon Technologies, Inc. Optimistic concurrency for a multi-writer database
CN108737573A (en) * 2018-06-28 2018-11-02 郑州云海信息技术有限公司 A kind of distributed storage cluster and its service response control method, device and equipment
US11030106B2 (en) * 2019-06-18 2021-06-08 Western Digital Technologies, Inc. Storage system and method for enabling host-driven regional performance in memory
US11341163B1 (en) 2020-03-30 2022-05-24 Amazon Technologies, Inc. Multi-level replication filtering for a distributed database
US11954344B2 (en) * 2021-06-16 2024-04-09 EMC IP Holding Company LLC Host device comprising layered software architecture with automated tiering of logical storage devices

Citations (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5392244A (en) * 1993-08-19 1995-02-21 Hewlett-Packard Company Memory systems with data storage redundancy management
US5774660A (en) * 1996-08-05 1998-06-30 Resonate, Inc. World-wide-web server with delayed resource-binding for resource-based load balancing on a distributed resource multi-node network
US5774668A (en) * 1995-06-07 1998-06-30 Microsoft Corporation System for on-line service in which gateway computer uses service map which includes loading condition of servers broadcasted by application servers for load balancing
US5978844A (en) * 1995-09-08 1999-11-02 Hitachi, Ltd. Internetworking apparatus for load balancing plural networks
US6108727A (en) * 1995-10-16 2000-08-22 Packard Bell Nec System having wireless interface device for storing compressed predetermined program files received from a remote host and communicating with the remote host via wireless link
US6128279A (en) * 1997-10-06 2000-10-03 Web Balance, Inc. System for balancing loads among network servers
US6141688A (en) * 1995-10-16 2000-10-31 Nec Corporation Broadcast search for available host
US6144848A (en) * 1995-06-07 2000-11-07 Weiss Jensen Ellis & Howard Handheld remote computer control and methods for secured interactive real-time telecommunications
US6148414A (en) * 1998-09-24 2000-11-14 Seek Systems, Inc. Methods and systems for implementing shared disk array management functions
US6189079B1 (en) * 1998-05-22 2001-02-13 International Business Machines Corporation Data copy between peer-to-peer controllers
US6195682B1 (en) * 1998-10-27 2001-02-27 International Business Machines Corporation Concurrent server and method of operation having client-server affinity using exchanged client and server keys
US6199112B1 (en) * 1998-09-23 2001-03-06 Crossroads Systems, Inc. System and method for resolving fibre channel device addresses on a network using the device's fully qualified domain name
US6212565B1 (en) * 1998-08-26 2001-04-03 Sun Microsystems, Inc. Apparatus and method for improving performance of proxy server arrays that use persistent connections
US6212606B1 (en) * 1998-10-13 2001-04-03 Compaq Computer Corporation Computer system and method for establishing a standardized shared level for each storage unit
US6226684B1 (en) * 1998-10-26 2001-05-01 Pointcast, Inc. Method and apparatus for reestablishing network connections in a multi-router network
US6292181B1 (en) * 1994-09-02 2001-09-18 Nec Corporation Structure and method for controlling a host computer using a remote hand-held interface device
US6341311B1 (en) * 1998-05-29 2002-01-22 Microsoft Corporation Directing data object access requests in a distributed cache
US20020009079A1 (en) * 2000-06-23 2002-01-24 Jungck Peder J. Edge adapter apparatus and method
US6360262B1 (en) * 1997-11-24 2002-03-19 International Business Machines Corporation Mapping web server objects to TCP/IP ports
US20020035667A1 (en) * 1999-04-05 2002-03-21 Theodore E. Bruning Apparatus and method for providing very large virtual storage volumes using redundant arrays of disks
US20020059451A1 (en) * 2000-08-24 2002-05-16 Yaron Haviv System and method for highly scalable high-speed content-based filtering and load balancing in interconnected fabrics
US20020065799A1 (en) * 2000-11-30 2002-05-30 Storage Technology Corporation Method and system of storing a main data file and deltas in a storage device for determining new data files from the main data file and the deltas
US6421723B1 (en) * 1999-06-11 2002-07-16 Dell Products L.P. Method and system for establishing a storage area network configuration
US6434683B1 (en) * 2000-11-07 2002-08-13 Storage Technology Corporation Method and system for transferring delta difference data to a storage device
US20020138551A1 (en) * 2001-02-13 2002-09-26 Aventail Corporation Distributed cache for state transfer operations
US6460083B1 (en) * 1997-11-04 2002-10-01 Nec Corporation Communication system for selectively connecting a server to numerous terminal units over a public network
US20020194324A1 (en) * 2001-04-26 2002-12-19 Aloke Guha System for global and local data resource management for service guarantees
US20030005119A1 (en) * 2001-06-28 2003-01-02 Intersan, Inc., A Delaware Corporation Automated creation of application data paths in storage area networks
US6598134B2 (en) * 1995-09-01 2003-07-22 Emc Corporation System and method for on-line, real time, data migration
US6687731B1 (en) * 1997-06-12 2004-02-03 Telia Ab Arrangement for load sharing in computer networks
US20040030755A1 (en) * 2002-08-12 2004-02-12 Koning G. Paul Transparent request routing for a partitioned application service
US20040049564A1 (en) * 2002-09-09 2004-03-11 Chan Ng Method and apparatus for network storage flow control
US6718436B2 (en) * 2001-07-27 2004-04-06 Electronics And Telecommunications Research Institute Method for managing logical volume in order to support dynamic online resizing and software raid and to minimize metadata and computer readable medium storing the same
US6725253B1 (en) * 1999-10-14 2004-04-20 Fujitsu Limited Load balancing system
US20040080558A1 (en) * 2002-10-28 2004-04-29 Blumenau Steven M. Method and apparatus for monitoring the storage of data in a computer system
US6742059B1 (en) * 2000-02-04 2004-05-25 Emc Corporation Primary and secondary management commands for a peripheral connected to multiple agents
US20040128442A1 (en) * 2002-09-18 2004-07-01 Netezza Corporation Disk mirror architecture for database appliance
US6766348B1 (en) * 1999-08-03 2004-07-20 Worldcom, Inc. Method and system for load-balanced data exchange in distributed network-based resource allocation
US20040143637A1 (en) * 2003-01-20 2004-07-22 Koning G. Paul Adaptive storage block data distribution
US20040143648A1 (en) * 2003-01-20 2004-07-22 Koning G. P. Short-cut response for distributed services
US20040210724A1 (en) * 2003-01-21 2004-10-21 Equallogic Inc. Block data migration
US6813635B1 (en) * 2000-10-13 2004-11-02 Hewlett-Packard Development Company, L.P. System and method for distributing load among redundant independent stateful world wide web server sites
US6839802B2 (en) * 2000-12-08 2005-01-04 International Business Machines Corporation Method, system, and program for writing files to zone formatted storage media to improve data transfer rates
US6850982B1 (en) * 2000-12-19 2005-02-01 Cisco Technology, Inc. Methods and apparatus for directing a flow of data between a client and multiple servers
US6859834B1 (en) * 1999-08-13 2005-02-22 Sun Microsystems, Inc. System and method for enabling application server request failover
US6886035B2 (en) * 1996-08-02 2005-04-26 Hewlett-Packard Development Company, L.P. Dynamic load balancing of a network of client and server computer
US6910150B2 (en) * 2001-10-15 2005-06-21 Dell Products L.P. System and method for state preservation in a stretch cluster
US6944777B1 (en) * 1998-05-15 2005-09-13 E.Piphany, Inc. System and method for controlling access to resources in a distributed environment
US6950848B1 (en) * 2000-05-05 2005-09-27 Yousefi Zadeh Homayoun Database load balancing for multi-tier computer systems
US6957433B2 (en) * 2001-01-08 2005-10-18 Hewlett-Packard Development Company, L.P. System and method for adaptive performance optimization of data processing systems
US6985956B2 (en) * 2000-11-02 2006-01-10 Sun Microsystems, Inc. Switching system
US7043864B1 (en) * 2004-10-08 2006-05-16 Reed Mark A Spear gun sight assembly
US7076655B2 (en) * 2001-06-19 2006-07-11 Hewlett-Packard Development Company, L.P. Multiple trusted computing environments with verifiable environment identities
US7085829B2 (en) * 2001-12-31 2006-08-01 Innomedia, Pte Ltd. Method and system for an intelligent proxy server for workload balancing by workload shifting
US7089293B2 (en) * 2000-11-02 2006-08-08 Sun Microsystems, Inc. Switching system method for discovering and accessing SCSI devices in response to query
US7127577B2 (en) * 2003-01-21 2006-10-24 Equallogic Inc. Distributed snapshot process
US20070106857A1 (en) * 2003-01-21 2007-05-10 Equallogic Inc. Distributed snapshot process

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5944804A (en) 1995-09-11 1999-08-31 Intel Corporation Super pipelined architecture for transmit flow in a network controller
WO1997024668A1 (en) 1995-12-28 1997-07-10 Ipl Systems, Inc. Dasd storage back up including back up synchronization across multiple dasd
US6070191A (en) 1997-10-17 2000-05-30 Lucent Technologies Inc. Data distribution techniques for load-balanced fault-tolerant web access
US6230246B1 (en) * 1998-01-30 2001-05-08 Compaq Computer Corporation Non-intrusive crash consistent copying in distributed storage systems without client cooperation
US6498791B2 (en) 1998-04-03 2002-12-24 Vertical Networks, Inc. Systems and methods for multiple mode voice and data communications using intelligently bridged TDM and packet buses and methods for performing telephony and data functions using the same
AU3861399A (en) 1998-04-15 1999-11-01 Hewlett-Packard Company Distributed processing over a network
US6473791B1 (en) 1998-08-17 2002-10-29 Microsoft Corporation Object load balancing
US6275898B1 (en) * 1999-05-13 2001-08-14 Lsi Logic Corporation Methods and structure for RAID level migration within a logical unit
US7395282B1 (en) 1999-07-15 2008-07-01 Commvault Systems, Inc. Hierarchical backup and retrieval system
WO2001013579A1 (en) 1999-08-18 2001-02-22 Fujitsu Limited Distributed network load system and method, and recording medium for program thereof
WO2001038983A2 (en) 1999-11-22 2001-05-31 Utstarcom, Inc. Distributed cache synchronization protocol
US6938256B2 (en) 2000-01-18 2005-08-30 Galactic Computing Corporation System for balance distribution of requests across multiple servers using dynamic metrics
US6708227B1 (en) * 2000-04-24 2004-03-16 Microsoft Corporation Method and system for providing common coordination and administration of multiple snapshot providers
KR20030094214A (en) 2000-10-20 2003-12-11 웨벡스프레스 인코포레이티드 Synchronous control of media in a peer to peer network
WO2002056182A2 (en) 2001-01-12 2002-07-18 Epicrealm Operating Inc Method and system for community data caching
JP2002278823A (en) * 2001-03-21 2002-09-27 Toshiba Corp Load distributing method for contents distributing system and server computer for the same system
EP1331766A1 (en) 2001-12-20 2003-07-30 Alcatel A telecommunications system employing virtual service network architecture
US6732171B2 (en) 2002-05-31 2004-05-04 Lefthand Networks, Inc. Distributed network storage system with virtualization
KR100439675B1 (en) 2002-10-24 2004-07-14 한국전자통신연구원 An efficient snapshot technique for shated large storage
JP4199993B2 (en) 2002-11-27 2008-12-24 株式会社日立製作所 How to get a snapshot
US7937551B2 (en) 2003-01-21 2011-05-03 Dell Products L.P. Storage systems having differentiated storage pools

Patent Citations (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5392244A (en) * 1993-08-19 1995-02-21 Hewlett-Packard Company Memory systems with data storage redundancy management
US6292181B1 (en) * 1994-09-02 2001-09-18 Nec Corporation Structure and method for controlling a host computer using a remote hand-held interface device
US20020008693A1 (en) * 1994-09-02 2002-01-24 Nec Corporation Structure and method for controlling a host computer using a remote hand-held interface device
US5774668A (en) * 1995-06-07 1998-06-30 Microsoft Corporation System for on-line service in which gateway computer uses service map which includes loading condition of servers broadcasted by application servers for load balancing
US6144848A (en) * 1995-06-07 2000-11-07 Weiss Jensen Ellis & Howard Handheld remote computer control and methods for secured interactive real-time telecommunications
US6598134B2 (en) * 1995-09-01 2003-07-22 Emc Corporation System and method for on-line, real time, data migration
US5978844A (en) * 1995-09-08 1999-11-02 Hitachi, Ltd. Internetworking apparatus for load balancing plural networks
US6108727A (en) * 1995-10-16 2000-08-22 Packard Bell Nec System having wireless interface device for storing compressed predetermined program files received from a remote host and communicating with the remote host via wireless link
US6141688A (en) * 1995-10-16 2000-10-31 Nec Corporation Broadcast search for available host
US6886035B2 (en) * 1996-08-02 2005-04-26 Hewlett-Packard Development Company, L.P. Dynamic load balancing of a network of client and server computer
US5774660A (en) * 1996-08-05 1998-06-30 Resonate, Inc. World-wide-web server with delayed resource-binding for resource-based load balancing on a distributed resource multi-node network
US6687731B1 (en) * 1997-06-12 2004-02-03 Telia Ab Arrangement for load sharing in computer networks
US6128279A (en) * 1997-10-06 2000-10-03 Web Balance, Inc. System for balancing loads among network servers
US6460083B1 (en) * 1997-11-04 2002-10-01 Nec Corporation Communication system for selectively connecting a server to numerous terminal units over a public network
US6360262B1 (en) * 1997-11-24 2002-03-19 International Business Machines Corporation Mapping web server objects to TCP/IP ports
US6944777B1 (en) * 1998-05-15 2005-09-13 E.Piphany, Inc. System and method for controlling access to resources in a distributed environment
US6189079B1 (en) * 1998-05-22 2001-02-13 International Business Machines Corporation Data copy between peer-to-peer controllers
US6341311B1 (en) * 1998-05-29 2002-01-22 Microsoft Corporation Directing data object access requests in a distributed cache
US6212565B1 (en) * 1998-08-26 2001-04-03 Sun Microsystems, Inc. Apparatus and method for improving performance of proxy server arrays that use persistent connections
US6199112B1 (en) * 1998-09-23 2001-03-06 Crossroads Systems, Inc. System and method for resolving fibre channel device addresses on a network using the device's fully qualified domain name
US6148414A (en) * 1998-09-24 2000-11-14 Seek Systems, Inc. Methods and systems for implementing shared disk array management functions
US6212606B1 (en) * 1998-10-13 2001-04-03 Compaq Computer Corporation Computer system and method for establishing a standardized shared level for each storage unit
US6226684B1 (en) * 1998-10-26 2001-05-01 Pointcast, Inc. Method and apparatus for reestablishing network connections in a multi-router network
US6195682B1 (en) * 1998-10-27 2001-02-27 International Business Machines Corporation Concurrent server and method of operation having client-server affinity using exchanged client and server keys
US20020035667A1 (en) * 1999-04-05 2002-03-21 Theodore E. Bruning Apparatus and method for providing very large virtual storage volumes using redundant arrays of disks
US6421723B1 (en) * 1999-06-11 2002-07-16 Dell Products L.P. Method and system for establishing a storage area network configuration
US6766348B1 (en) * 1999-08-03 2004-07-20 Worldcom, Inc. Method and system for load-balanced data exchange in distributed network-based resource allocation
US6859834B1 (en) * 1999-08-13 2005-02-22 Sun Microsystems, Inc. System and method for enabling application server request failover
US6725253B1 (en) * 1999-10-14 2004-04-20 Fujitsu Limited Load balancing system
US6742059B1 (en) * 2000-02-04 2004-05-25 Emc Corporation Primary and secondary management commands for a peripheral connected to multiple agents
US6950848B1 (en) * 2000-05-05 2005-09-27 Yousefi Zadeh Homayoun Database load balancing for multi-tier computer systems
US20020009079A1 (en) * 2000-06-23 2002-01-24 Jungck Peder J. Edge adapter apparatus and method
US20020059451A1 (en) * 2000-08-24 2002-05-16 Yaron Haviv System and method for highly scalable high-speed content-based filtering and load balancing in interconnected fabrics
US6813635B1 (en) * 2000-10-13 2004-11-02 Hewlett-Packard Development Company, L.P. System and method for distributing load among redundant independent stateful world wide web server sites
US6985956B2 (en) * 2000-11-02 2006-01-10 Sun Microsystems, Inc. Switching system
US7089293B2 (en) * 2000-11-02 2006-08-08 Sun Microsystems, Inc. Switching system method for discovering and accessing SCSI devices in response to query
US6434683B1 (en) * 2000-11-07 2002-08-13 Storage Technology Corporation Method and system for transferring delta difference data to a storage device
US20020065799A1 (en) * 2000-11-30 2002-05-30 Storage Technology Corporation Method and system of storing a main data file and deltas in a storage device for determining new data files from the main data file and the deltas
US6839802B2 (en) * 2000-12-08 2005-01-04 International Business Machines Corporation Method, system, and program for writing files to zone formatted storage media to improve data transfer rates
US6850982B1 (en) * 2000-12-19 2005-02-01 Cisco Technology, Inc. Methods and apparatus for directing a flow of data between a client and multiple servers
US6957433B2 (en) * 2001-01-08 2005-10-18 Hewlett-Packard Development Company, L.P. System and method for adaptive performance optimization of data processing systems
US20020138551A1 (en) * 2001-02-13 2002-09-26 Aventail Corporation Distributed cache for state transfer operations
US20020194324A1 (en) * 2001-04-26 2002-12-19 Aloke Guha System for global and local data resource management for service guarantees
US7076655B2 (en) * 2001-06-19 2006-07-11 Hewlett-Packard Development Company, L.P. Multiple trusted computing environments with verifiable environment identities
US20030005119A1 (en) * 2001-06-28 2003-01-02 Intersan, Inc., A Delaware Corporation Automated creation of application data paths in storage area networks
US6718436B2 (en) * 2001-07-27 2004-04-06 Electronics And Telecommunications Research Institute Method for managing logical volume in order to support dynamic online resizing and software raid and to minimize metadata and computer readable medium storing the same
US6910150B2 (en) * 2001-10-15 2005-06-21 Dell Products L.P. System and method for state preservation in a stretch cluster
US7085829B2 (en) * 2001-12-31 2006-08-01 Innomedia, Pte Ltd. Method and system for an intelligent proxy server for workload balancing by workload shifting
US20040030755A1 (en) * 2002-08-12 2004-02-12 Koning G. Paul Transparent request routing for a partitioned application service
US20040049564A1 (en) * 2002-09-09 2004-03-11 Chan Ng Method and apparatus for network storage flow control
US20040128442A1 (en) * 2002-09-18 2004-07-01 Netezza Corporation Disk mirror architecture for database appliance
US20040080558A1 (en) * 2002-10-28 2004-04-29 Blumenau Steven M. Method and apparatus for monitoring the storage of data in a computer system
US20040143637A1 (en) * 2003-01-20 2004-07-22 Koning G. Paul Adaptive storage block data distribution
US20040143648A1 (en) * 2003-01-20 2004-07-22 Koning G. P. Short-cut response for distributed services
US20040210724A1 (en) * 2003-01-21 2004-10-21 Equallogic Inc. Block data migration
US7127577B2 (en) * 2003-01-21 2006-10-24 Equallogic Inc. Distributed snapshot process
US20070106857A1 (en) * 2003-01-21 2007-05-10 Equallogic Inc. Distributed snapshot process
US7043864B1 (en) * 2004-10-08 2006-05-16 Reed Mark A Spear gun sight assembly

Cited By (91)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9009427B2 (en) 2001-12-26 2015-04-14 Cisco Technology, Inc. Mirroring mechanisms for storage area networks and network based virtualization
US20090228651A1 (en) * 2001-12-26 2009-09-10 Cisco Technology, Inc. Mirroring Mechanisms For Storage Area Networks and Network Based Virtualization
US20090259816A1 (en) * 2001-12-26 2009-10-15 Cisco Technology, Inc. Techniques for Improving Mirroring Operations Implemented In Storage Area Networks and Network Based Virtualization
US20090259817A1 (en) * 2001-12-26 2009-10-15 Cisco Technology, Inc. Mirror Consistency Checking Techniques For Storage Area Networks And Network Based Virtualization
US7962609B2 (en) 2003-01-20 2011-06-14 Dell Products, L.P. Adaptive storage block data distribution
US20040143637A1 (en) * 2003-01-20 2004-07-22 Koning G. Paul Adaptive storage block data distribution
US7461146B2 (en) * 2003-01-20 2008-12-02 Equallogic, Inc. Adaptive storage block data distribution
US7627650B2 (en) 2003-01-20 2009-12-01 Equallogic, Inc. Short-cut response for distributed services
US8966197B2 (en) 2003-01-21 2015-02-24 Dell Products L.P. Distributed snapshot process
US8037264B2 (en) 2003-01-21 2011-10-11 Dell Products, L.P. Distributed snapshot process
US8352964B2 (en) 2004-09-30 2013-01-08 Citrix Systems, Inc. Method and apparatus for moving processes between isolation environments
US20060069683A1 (en) * 2004-09-30 2006-03-30 Braddy Ricky G Method and apparatus for assigning access control levels in providing access to networked content files
US9401906B2 (en) 2004-09-30 2016-07-26 Citrix Systems, Inc. Method and apparatus for providing authorized remote access to application sessions
US7865603B2 (en) 2004-09-30 2011-01-04 Citrix Systems, Inc. Method and apparatus for assigning access control levels in providing access to networked content files
US7870294B2 (en) 2004-09-30 2011-01-11 Citrix Systems, Inc. Method and apparatus for providing policy-based document control
US9311502B2 (en) 2004-09-30 2016-04-12 Citrix Systems, Inc. Method and system for assigning access control levels in providing access to networked content files
US8171479B2 (en) 2004-09-30 2012-05-01 Citrix Systems, Inc. Method and apparatus for providing an aggregate view of enumerated system resources from various isolation layers
US8352606B2 (en) 2004-09-30 2013-01-08 Citrix Systems, Inc. Method and system for assigning access control levels in providing access to networked content files
US8286230B2 (en) 2004-09-30 2012-10-09 Citrix Systems, Inc. Method and apparatus for associating tickets in a ticket hierarchy
US7711835B2 (en) 2004-09-30 2010-05-04 Citrix Systems, Inc. Method and apparatus for reducing disclosure of proprietary data in a networked environment
US8065423B2 (en) 2004-09-30 2011-11-22 Citrix Systems, Inc. Method and system for assigning access control levels in providing access to networked content files
US8132176B2 (en) 2004-09-30 2012-03-06 Citrix Systems, Inc. Method for accessing, by application programs, resources residing inside an application isolation scope
US8302101B2 (en) 2004-09-30 2012-10-30 Citrix Systems, Inc. Methods and systems for accessing, by application programs, resources provided by an operating system
US8042120B2 (en) 2004-09-30 2011-10-18 Citrix Systems, Inc. Method and apparatus for moving processes between isolation environments
US8024568B2 (en) 2005-01-28 2011-09-20 Citrix Systems, Inc. Method and system for verification of an endpoint security scan
US8312261B2 (en) 2005-01-28 2012-11-13 Citrix Systems, Inc. Method and system for verification of an endpoint security scan
US8095940B2 (en) 2005-09-19 2012-01-10 Citrix Systems, Inc. Method and system for locating and accessing resources
US7779034B2 (en) 2005-10-07 2010-08-17 Citrix Systems, Inc. Method and system for accessing a remote file in a directory structure associated with an application program executing locally
US8131825B2 (en) 2005-10-07 2012-03-06 Citrix Systems, Inc. Method and a system for responding locally to requests for file metadata associated with files stored remotely
US20070101083A1 (en) * 2005-10-28 2007-05-03 Fujitsu Limited Virtual storage system control apparatus, virtual storage system control program and virtual storage system control method
US7913042B2 (en) 2005-10-28 2011-03-22 Fujitsu Limited Virtual storage system control apparatus, virtual storage system control program and virtual storage system control method
US8341270B2 (en) 2006-01-24 2012-12-25 Citrix Systems, Inc. Methods and systems for providing access to a computing environment
US8341732B2 (en) 2006-01-24 2012-12-25 Citrix Systems, Inc. Methods and systems for selecting a method for execution, by a virtual machine, of an application program
US8010679B2 (en) 2006-01-24 2011-08-30 Citrix Systems, Inc. Methods and systems for providing access to a computing environment provided by a virtual machine executing in a hypervisor executing in a terminal services session
US8051180B2 (en) 2006-01-24 2011-11-01 Citrix Systems, Inc. Methods and servers for establishing a connection between a client system and a virtual machine executing in a terminal services session and hosting a requested computing environment
US7949677B2 (en) 2006-01-24 2011-05-24 Citrix Systems, Inc. Methods and systems for providing authorized remote access to a computing environment provided by a virtual machine
US7954150B2 (en) 2006-01-24 2011-05-31 Citrix Systems, Inc. Methods and systems for assigning access control levels in providing access to resources via virtual machines
US7870153B2 (en) 2006-01-24 2011-01-11 Citrix Systems, Inc. Methods and systems for executing, by a virtual machine, an application program requested by a client machine
US8355407B2 (en) 2006-01-24 2013-01-15 Citrix Systems, Inc. Methods and systems for interacting, via a hypermedium page, with a virtual machine executing in a terminal services session
US8117314B2 (en) 2006-01-24 2012-02-14 Citrix Systems, Inc. Methods and systems for providing remote access to a computing environment provided by a virtual machine
US20080126789A1 (en) * 2006-08-28 2008-05-29 Jones Carl E Method and Apparatus for Generating an Optimal Number of Spare Devices Within a RAID Storage System Having Multiple Storage Device Technology Classes
US8533846B2 (en) 2006-11-08 2013-09-10 Citrix Systems, Inc. Method and system for dynamically associating access rights with a resource
US9401931B2 (en) 2006-11-08 2016-07-26 Citrix Systems, Inc. Method and system for dynamically associating access rights with a resource
US7783917B2 (en) * 2007-02-26 2010-08-24 International Business Machines Corporation Selection of data arrays
US20080209253A1 (en) * 2007-02-26 2008-08-28 International Business Machines Corporation Selection of data arrays
US9021494B2 (en) 2007-10-20 2015-04-28 Citrix Systems, Inc. Method and system for communicating between isolation environments
US9009721B2 (en) 2007-10-20 2015-04-14 Citrix Systems, Inc. Method and system for communicating between isolation environments
US8171483B2 (en) 2007-10-20 2012-05-01 Citrix Systems, Inc. Method and system for communicating between isolation environments
US9009720B2 (en) 2007-10-20 2015-04-14 Citrix Systems, Inc. Method and system for communicating between isolation environments
US8886909B1 (en) 2008-03-31 2014-11-11 Emc Corporation Methods, systems, and computer readable medium for allocating portions of physical storage in a storage array based on current or anticipated utilization of storage array resources
US8443369B1 (en) 2008-06-30 2013-05-14 Emc Corporation Method and system for dynamically selecting a best resource from each resource collection based on resources dependencies, prior selections and statistics to implement an allocation policy
US8326943B2 (en) 2009-05-02 2012-12-04 Citrix Systems, Inc. Methods and systems for launching applications into existing isolation environments
US8090797B2 (en) 2009-05-02 2012-01-03 Citrix Systems, Inc. Methods and systems for launching applications into existing isolation environments
US9189421B2 (en) 2010-01-06 2015-11-17 Storsimple, Inc. System and method for implementing a hierarchical data storage system
US9110837B2 (en) 2010-01-06 2015-08-18 Storsimple, Inc. System and method for creating and maintaining secondary server sites
US9372809B2 (en) * 2010-01-06 2016-06-21 Storsimple, Inc. System and method for storing data off site
US20120173822A1 (en) * 2010-01-06 2012-07-05 Richard Testardi System and method for storing data off site
US8924681B1 (en) * 2010-03-31 2014-12-30 Emc Corporation Systems, methods, and computer readable media for an adaptative block allocation mechanism
US8407445B1 (en) 2010-03-31 2013-03-26 Emc Corporation Systems, methods, and computer readable media for triggering and coordinating pool storage reclamation
US8443163B1 (en) 2010-06-28 2013-05-14 Emc Corporation Methods, systems, and computer readable medium for tier-based data storage resource allocation and data relocation in a data storage array
US9311002B1 (en) 2010-06-29 2016-04-12 Emc Corporation Systems, methods, and computer readable media for compressing data at a virtually provisioned storage entity
US9268489B2 (en) 2010-07-07 2016-02-23 Nexenta Systems, Inc. Method and system for heterogeneous data volume
US8954669B2 (en) * 2010-07-07 2015-02-10 Nexenta System, Inc Method and system for heterogeneous data volume
US20120011337A1 (en) * 2010-07-07 2012-01-12 Nexenta Systems, Inc. Heterogeneous redundant storage array
US8984241B2 (en) * 2010-07-07 2015-03-17 Nexenta Systems, Inc. Heterogeneous redundant storage array
US8990496B2 (en) 2010-07-07 2015-03-24 Nexenta Systems, Inc. Method and system for the heterogeneous data volume
US20120017043A1 (en) * 2010-07-07 2012-01-19 Nexenta Systems, Inc. Method and system for heterogeneous data volume
US8539172B1 (en) 2010-11-08 2013-09-17 Infinidat Ltd. System and method for accessing data in an external virtual memory
US8645659B1 (en) 2010-12-01 2014-02-04 Infinidat Ltd. Method for managing volumes/snapshots in pools of external virtual memory
US9146683B2 (en) * 2011-04-20 2015-09-29 Seagate Technology Llc Logical block address mapping
US20120272038A1 (en) * 2011-04-20 2012-10-25 Seagate Technology Llc Logical block address mapping
US8365023B2 (en) 2011-04-29 2013-01-29 International Business Machines Corporation Runtime dynamic performance skew elimination
US9104316B2 (en) 2011-04-29 2015-08-11 International Business Machines Corporation Runtime dynamic performance skew elimination
US8443241B2 (en) 2011-04-29 2013-05-14 International Business Machines Corporation Runtime dynamic performance skew elimination
US8719645B2 (en) 2011-04-29 2014-05-06 International Business Machines Corporation Runtime dynamic performance skew elimination
US8738975B2 (en) 2011-04-29 2014-05-27 International Business Machines Corporation Runtime dynamic performance skew elimination
US8745327B1 (en) 2011-06-24 2014-06-03 Emc Corporation Methods, systems, and computer readable medium for controlling prioritization of tiering and spin down features in a data storage system
US9311315B2 (en) 2011-07-22 2016-04-12 Hitachi, Ltd. Information processing system and method for controlling the same
US8782363B2 (en) 2011-07-22 2014-07-15 Hitachi, Ltd. Information processing system and method for controlling the same
KR101915830B1 (en) 2011-09-11 2018-11-06 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 Pooled partition layout and representation
JP2014526729A (en) * 2011-09-11 2014-10-06 マイクロソフト コーポレーション Pooled partition layout and representation
US9158458B2 (en) * 2011-09-21 2015-10-13 Os Nexus, Inc. Global management of tiered storage resources
EP2793131A1 (en) 2011-09-21 2014-10-22 Nexenta Systems, Inc. Methods and systems for heterogeneous data volume
EP2933725A1 (en) 2011-09-21 2015-10-21 Nexenta Systems, Inc. Methods and systems for heterogeneous data volume
EP2573679A3 (en) * 2011-09-21 2014-02-26 Nexenta Systems, Inc. Methods and systems for heterogeneous data volume
US20130073702A1 (en) * 2011-09-21 2013-03-21 Os Nexus, Inc. Global management of tiered storage resources
US9578100B2 (en) 2011-09-21 2017-02-21 Os Nexus, Inc. Global management of tiered storage resources
US20140136886A1 (en) * 2012-11-12 2014-05-15 Greenbytes, Inc. Method for the optimization of performance, capacity and redundancy in digital data storage systems
US9632889B2 (en) * 2012-11-12 2017-04-25 Oracle International Corporation Method for the optimization of performance, capacity and redundancy in digital data storage systems
US11061787B2 (en) * 2019-04-23 2021-07-13 Micron Technology, Inc. Custom error recovery in selected regions of a data storage device
US11704210B2 (en) 2019-04-23 2023-07-18 Micron Technology, Inc. Custom error recovery in selected regions of a data storage device

Also Published As

Publication number Publication date
JP4581095B2 (en) 2010-11-17
JP2006522961A (en) 2006-10-05
EP2282276A1 (en) 2011-02-09
ATE405882T1 (en) 2008-09-15
US20110208943A1 (en) 2011-08-25
US8209515B2 (en) 2012-06-26
EP2159718A1 (en) 2010-03-03
US7937551B2 (en) 2011-05-03
JP2010134948A (en) 2010-06-17
EP2282276B1 (en) 2019-03-20
WO2004066278A3 (en) 2006-03-02
EP1588357B1 (en) 2008-08-20
EP2159718B1 (en) 2018-07-11
JP5369007B2 (en) 2013-12-18
EP1588357A2 (en) 2005-10-26
WO2004066278A2 (en) 2004-08-05
DE602004015935D1 (en) 2008-10-02

Similar Documents

Publication Publication Date Title
US7937551B2 (en) Storage systems having differentiated storage pools
US7395370B2 (en) Computer system, data management method, and program for determining a migration method based on prediction of a migration influence
US9529545B1 (en) Managing data deduplication in storage systems based on storage space characteristics
KR100490723B1 (en) Apparatus and method for file-level striping
US9395937B1 (en) Managing storage space in storage systems
US9817766B1 (en) Managing relocation of slices in storage systems
US7032070B2 (en) Method for partial data reallocation in a storage system
EP1272931B1 (en) Multi-device storage system with differing fault tolerant methodologies
US10353616B1 (en) Managing data relocation in storage systems
US20100235597A1 (en) Method and apparatus for conversion between conventional volumes and thin provisioning with automated tier management
US20120239815A1 (en) Distributed differential store with non-distributed objects and compression-enhancing data-object routing
KR20040071187A (en) Managing storage resources attached to a data network
US8621176B2 (en) Method and system for allocating data objects for efficient reads in a mass storage subsystem
JP2004013547A (en) Data allocation method and information processing system
US20100049931A1 (en) Copying Logical Disk Mappings Between Arrays
JP6511795B2 (en) STORAGE MANAGEMENT DEVICE, STORAGE MANAGEMENT METHOD, STORAGE MANAGEMENT PROGRAM, AND STORAGE SYSTEM
US8516070B2 (en) Computer program and method for balancing processing load in storage system, and apparatus for managing storage devices
US10481820B1 (en) Managing data in storage systems
JP2005512232A (en) Managing storage resources attached to a data network
US20050033913A1 (en) Method and system for controlling a robotic arm in a storage device
US7996447B2 (en) Method and system for optimal file system performance
EP2302529B1 (en) System and method for distributed block level storage
JP5129269B2 (en) Symmetric storage access in intelligent digital disk recorder
US7636830B1 (en) Simultaneous allocation of storage for multiple logical volumes
Brinkmann et al. Storage management as means to cope with exponential information growth

Legal Events

Date Code Title Description
AS Assignment

Owner name: EQUALLOGIC INC., NEW HAMPSHIRE

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:SCHOTT, ERIC R.;REEL/FRAME:014924/0004

Effective date: 20040119

AS Assignment

Owner name: DELL PRODUCTS L.P., TEXAS

Free format text: MERGER;ASSIGNOR:EQUALLOGIC INC.;REEL/FRAME:023828/0438

Effective date: 20100114

Owner name: DELL PRODUCTS L.P.,TEXAS

Free format text: MERGER;ASSIGNOR:EQUALLOGIC INC.;REEL/FRAME:023828/0438

Effective date: 20100114

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCF Information on status: patent grant

Free format text: PATENTED CASE

AS Assignment

Owner name: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS FIRST LIEN COLLATERAL AGENT, TEXAS

Free format text: PATENT SECURITY AGREEMENT (NOTES);ASSIGNORS:APPASSURE SOFTWARE, INC.;ASAP SOFTWARE EXPRESS, INC.;BOOMI, INC.;AND OTHERS;REEL/FRAME:031897/0348

Effective date: 20131029

Owner name: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT, TEXAS

Free format text: PATENT SECURITY AGREEMENT (ABL);ASSIGNORS:DELL INC.;APPASSURE SOFTWARE, INC.;ASAP SOFTWARE EXPRESS, INC.;AND OTHERS;REEL/FRAME:031898/0001

Effective date: 20131029

Owner name: BANK OF AMERICA, N.A., AS COLLATERAL AGENT, NORTH CAROLINA

Free format text: PATENT SECURITY AGREEMENT (TERM LOAN);ASSIGNORS:DELL INC.;APPASSURE SOFTWARE, INC.;ASAP SOFTWARE EXPRESS, INC.;AND OTHERS;REEL/FRAME:031899/0261

Effective date: 20131029

Owner name: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS FI

Free format text: PATENT SECURITY AGREEMENT (NOTES);ASSIGNORS:APPASSURE SOFTWARE, INC.;ASAP SOFTWARE EXPRESS, INC.;BOOMI, INC.;AND OTHERS;REEL/FRAME:031897/0348

Effective date: 20131029

Owner name: BANK OF AMERICA, N.A., AS COLLATERAL AGENT, NORTH

Free format text: PATENT SECURITY AGREEMENT (TERM LOAN);ASSIGNORS:DELL INC.;APPASSURE SOFTWARE, INC.;ASAP SOFTWARE EXPRESS, INC.;AND OTHERS;REEL/FRAME:031899/0261

Effective date: 20131029

Owner name: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT, TE

Free format text: PATENT SECURITY AGREEMENT (ABL);ASSIGNORS:DELL INC.;APPASSURE SOFTWARE, INC.;ASAP SOFTWARE EXPRESS, INC.;AND OTHERS;REEL/FRAME:031898/0001

Effective date: 20131029

FPAY Fee payment

Year of fee payment: 4

AS Assignment

Owner name: FORCE10 NETWORKS, INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: PEROT SYSTEMS CORPORATION, TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: ASAP SOFTWARE EXPRESS, INC., ILLINOIS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: DELL MARKETING L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: DELL INC., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: WYSE TECHNOLOGY L.L.C., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: SECUREWORKS, INC., GEORGIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: DELL SOFTWARE INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: CREDANT TECHNOLOGIES, INC., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: DELL USA L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: DELL PRODUCTS L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: COMPELLANT TECHNOLOGIES, INC., MINNESOTA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

Owner name: APPASSURE SOFTWARE, INC., VIRGINIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:040065/0216

Effective date: 20160907

AS Assignment

Owner name: PEROT SYSTEMS CORPORATION, TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: FORCE10 NETWORKS, INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: DELL USA L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: CREDANT TECHNOLOGIES, INC., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: DELL PRODUCTS L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: DELL INC., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: DELL MARKETING L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: DELL SOFTWARE INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: APPASSURE SOFTWARE, INC., VIRGINIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: COMPELLENT TECHNOLOGIES, INC., MINNESOTA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: SECUREWORKS, INC., GEORGIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: ASAP SOFTWARE EXPRESS, INC., ILLINOIS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: WYSE TECHNOLOGY L.L.C., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:040040/0001

Effective date: 20160907

Owner name: COMPELLENT TECHNOLOGIES, INC., MINNESOTA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: CREDANT TECHNOLOGIES, INC., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: DELL SOFTWARE INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: APPASSURE SOFTWARE, INC., VIRGINIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: SECUREWORKS, INC., GEORGIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: DELL INC., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: WYSE TECHNOLOGY L.L.C., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: PEROT SYSTEMS CORPORATION, TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: DELL MARKETING L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: DELL PRODUCTS L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: FORCE10 NETWORKS, INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: DELL USA L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

Owner name: ASAP SOFTWARE EXPRESS, INC., ILLINOIS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT;REEL/FRAME:040065/0618

Effective date: 20160907

AS Assignment

Owner name: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT, NORTH CAROLINA

Free format text: SECURITY AGREEMENT;ASSIGNORS:ASAP SOFTWARE EXPRESS, INC.;AVENTAIL LLC;CREDANT TECHNOLOGIES, INC.;AND OTHERS;REEL/FRAME:040134/0001

Effective date: 20160907

Owner name: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT, TEXAS

Free format text: SECURITY AGREEMENT;ASSIGNORS:ASAP SOFTWARE EXPRESS, INC.;AVENTAIL LLC;CREDANT TECHNOLOGIES, INC.;AND OTHERS;REEL/FRAME:040136/0001

Effective date: 20160907

Owner name: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLAT

Free format text: SECURITY AGREEMENT;ASSIGNORS:ASAP SOFTWARE EXPRESS, INC.;AVENTAIL LLC;CREDANT TECHNOLOGIES, INC.;AND OTHERS;REEL/FRAME:040134/0001

Effective date: 20160907

Owner name: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., A

Free format text: SECURITY AGREEMENT;ASSIGNORS:ASAP SOFTWARE EXPRESS, INC.;AVENTAIL LLC;CREDANT TECHNOLOGIES, INC.;AND OTHERS;REEL/FRAME:040136/0001

Effective date: 20160907

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 8

AS Assignment

Owner name: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., T

Free format text: SECURITY AGREEMENT;ASSIGNORS:CREDANT TECHNOLOGIES, INC.;DELL INTERNATIONAL L.L.C.;DELL MARKETING L.P.;AND OTHERS;REEL/FRAME:049452/0223

Effective date: 20190320

Owner name: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., TEXAS

Free format text: SECURITY AGREEMENT;ASSIGNORS:CREDANT TECHNOLOGIES, INC.;DELL INTERNATIONAL L.L.C.;DELL MARKETING L.P.;AND OTHERS;REEL/FRAME:049452/0223

Effective date: 20190320

AS Assignment

Owner name: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., TEXAS

Free format text: SECURITY AGREEMENT;ASSIGNORS:CREDANT TECHNOLOGIES INC.;DELL INTERNATIONAL L.L.C.;DELL MARKETING L.P.;AND OTHERS;REEL/FRAME:053546/0001

Effective date: 20200409

AS Assignment

Owner name: WYSE TECHNOLOGY L.L.C., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: SCALEIO LLC, MASSACHUSETTS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: MOZY, INC., WASHINGTON

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: MAGINATICS LLC, CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: FORCE10 NETWORKS, INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: EMC IP HOLDING COMPANY LLC, TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: EMC CORPORATION, MASSACHUSETTS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: DELL SYSTEMS CORPORATION, TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: DELL SOFTWARE INC., CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: DELL PRODUCTS L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: DELL MARKETING L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: DELL INTERNATIONAL, L.L.C., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: DELL USA L.P., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: CREDANT TECHNOLOGIES, INC., TEXAS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: AVENTAIL LLC, CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

Owner name: ASAP SOFTWARE EXPRESS, INC., ILLINOIS

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH;REEL/FRAME:058216/0001

Effective date: 20211101

AS Assignment

Owner name: SCALEIO LLC, MASSACHUSETTS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061324/0001

Effective date: 20220329

Owner name: EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.), TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061324/0001

Effective date: 20220329

Owner name: EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC), MASSACHUSETTS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061324/0001

Effective date: 20220329

Owner name: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.), TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061324/0001

Effective date: 20220329

Owner name: DELL PRODUCTS L.P., TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061324/0001

Effective date: 20220329

Owner name: DELL INTERNATIONAL L.L.C., TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061324/0001

Effective date: 20220329

Owner name: DELL USA L.P., TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061324/0001

Effective date: 20220329

Owner name: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.), TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061324/0001

Effective date: 20220329

Owner name: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.), TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061324/0001

Effective date: 20220329

AS Assignment

Owner name: SCALEIO LLC, MASSACHUSETTS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061753/0001

Effective date: 20220329

Owner name: EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.), TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061753/0001

Effective date: 20220329

Owner name: EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC), MASSACHUSETTS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061753/0001

Effective date: 20220329

Owner name: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.), TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061753/0001

Effective date: 20220329

Owner name: DELL PRODUCTS L.P., TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061753/0001

Effective date: 20220329

Owner name: DELL INTERNATIONAL L.L.C., TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061753/0001

Effective date: 20220329

Owner name: DELL USA L.P., TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061753/0001

Effective date: 20220329

Owner name: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.), TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061753/0001

Effective date: 20220329

Owner name: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.), TEXAS

Free format text: RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001);ASSIGNOR:THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT;REEL/FRAME:061753/0001

Effective date: 20220329

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 12