EP0769744A2

System and method for sharing multiple storage arrays by multiple host computer systems

Abstract

A system is provided for storing data for a plurality of host computers (20) on a plurality of storage arrays so that data on each storage array can be accessed by any host computer. A plurality of adapter cards (22) are used. Each adapter has controller functions for a designated storage array. There is an adapter communication interface (23) (interconnect) between all of the adapters in the system. There is also a host application interface between an application program running in the host computer and an adapter. When a data request is made by an application program to a first adapter through a host application interface for data that is stored in a storage array not primarily controlled by the first adapter, the data request is communicated through the adapter communication interface to the adapter primarily controlling the storage array in which the requested data is stored.

EP0769744A2, drawing sheet 1
Sheet 1 of 9

Term

Term ended

Projected expiry passed 19 September 2016, 10 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

15 claims: 5 independent, 10 dependent

  1. 1
    A system for storing data for a plurality of host computers on a plurality of arrays of storage devices, so that data on any storage device can be accessed by any host computer, comprising:a plurality of adapters, each adapter being associated with a host computer and each adapter having primary control of a designated array;and an adapter communication interconnect means between the adapters for peer to peer communication, wherein a data access request from a host computer to an associated adapter for an array not primarily controlled by the adapter is communicated through the adapter communication interface to the adapter having primary control of the array.
  2. 4
    A system according to any one of claims 1 to 3, wherein each adapter resides in a host computer.
  3. 5
    A system according to any one of the preceding claims, further comprising:a plurality of secondary adapters, each secondary adapter being associated with a host computer and each secondary adapter having secondary control of a designated array, wherein a secondary adapter controls a designated array when an adapter primarily controlling the designated array is unavailable.
  4. 8
    A system according to any one of claims 5 to 7, wherein a first adapter has primary control of a first array and secondary control of a second array;and a second adapter has primary control of the second array and secondary control of the first array.
  5. 10
    A system according to any one of the preceding claims further comprising:RAID controller functions included in the adapter for distributing data stored in an array according to a RAID scheme.
  6. 12
    A method for accessing data for a plurality of host computers from a plurality of storage arrays, comprising the steps of:a) associating at least one adapter with each host computer;b) associating an adapter as a primary controller for a storage array;c) associating a communication interconnect means between said adapters;d) sending a data access request to an adapter associated with the host;e) identifying whether requested data is stored in the storage array primarily controlled by said associated adapter;and f) sending a data access request, through the communication interconnect, for data not stored in an array primary controlled by said associated adapter to an adapter primarily controlling the storage array having the requested data.
  7. 14
    In a networked computer system comprising a plurality of host computers and a plurality of storage arrays, wherein each host computer has an adapter card therein, each adapter card primarily controlling a storage array and having a communication interconnect between all of the adapter cards in the system, a computer program product for use with the adapter cards, comprising:a computer usable medium having computer readable program code means embodied in said medium for providing access for all of the host computers to data stored on the plurality of storage arrays, said computer program product having: computer readable program code means for an adapter card associated with a host computer receiving a data access request;computer readable program code means for identifying whether requested data is stored in the storage array primarily controlled by an adapter;and computer readable program code means for sending a data access request, through the communication interconnect, for data not stored in a storage array primary controlled by an adapter and to the adapter card primarily controlling the storage array having the requested data, through the communication interconnect.