Using deterministic logical unit numbers to dynamically map data volumes
First Claim
1. A method, comprising:
- storing a first multiple of data volumes on a storage device, each of the first multiple of data volumes having a respective logical unit number (LUN) internally generated using attributes of each respective first multiple of data volumes including each one of at least a creation date of a given data volume, a size of the given data volume, an identifier assigned externally by an administrator for the given data volume, and an internally generated unique volume identifier;
wherein each one of the attributes are used as an input to a hash function used to internally generate the LUN;
defining, in a memory, a data structure comprising a second multiple of entries, the second multiple being greater than the first multiple;
associating, by a processor, each of the data volumes of the storage device with a unique entry in the data structure so as to generate respective unique entries for the data volumes;
receiving a request to store a value to one or more of the respective unique entries in the data structure; and
storing the value to the one or more respective unique entries, thereby performing a mapping operation between a host computer networked to the storage system and the one or more of the data volumes associated with the one or more respective unique entries.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods, apparatus and computer program products implement embodiments of the present invention that include storing one or more data volumes to a small computer system interface storage device, and receiving a request to map a given data volume to a host computer. One or more attributes of the given data volume are identified, and using the identified one or more attributes, a unique logical unit number (LUN) for the given data volume is generated. The given data volume is mapped to the host computer via the unique LUN. In some embodiments, the generated LUN includes one of the one or more attributes. In additional embodiments, the generated LUN includes a result of a hash function using the one or more attributes. In storage virtualization environments, the data volume may include secondary logical units, and mapping the given data volume to the host may include binding the SLU to the host.
64 Citations
20 Claims
-
1. A method, comprising:
-
storing a first multiple of data volumes on a storage device, each of the first multiple of data volumes having a respective logical unit number (LUN) internally generated using attributes of each respective first multiple of data volumes including each one of at least a creation date of a given data volume, a size of the given data volume, an identifier assigned externally by an administrator for the given data volume, and an internally generated unique volume identifier;
wherein each one of the attributes are used as an input to a hash function used to internally generate the LUN;defining, in a memory, a data structure comprising a second multiple of entries, the second multiple being greater than the first multiple; associating, by a processor, each of the data volumes of the storage device with a unique entry in the data structure so as to generate respective unique entries for the data volumes; receiving a request to store a value to one or more of the respective unique entries in the data structure; and storing the value to the one or more respective unique entries, thereby performing a mapping operation between a host computer networked to the storage system and the one or more of the data volumes associated with the one or more respective unique entries. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A storage system, comprising:
-
a storage device configured to store a first multiple of data volumes, each of the first multiple of data volumes having a respective logical unit number (LUN) internally generated using attributes of each respective first multiple of data volumes including each one of at least a creation date of a given data volume, a size of the given data volume, an identifier assigned externally by an administrator for the given data volume, and an internally generated unique volume identifier;
wherein each one of the attributes are used as an input to a hash function used to internally generate the LUN;a memory; and a processor configured; to define, in the memory, a data structure comprising a second multiple of entries, the second multiple being greater than the first multiple, to associate each of the data volumes of the storage device with a unique entry in the data structure so as to generate respective unique entries for the data volumes, to receive a request to store a value to one or more of the respective unique entries in the data structure, and to store the value to the one or more respective unique entries, thereby performing a mapping operation between a host computer networked to the storage system and the one or more of the data volumes associated with the one or more respective unique entries. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computer program product, the computer program product comprising:
-
a non-transitory computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising; computer readable program code configured to store a first multiple of data volumes on a storage device, each of the first multiple of data volumes having a respective logical unit number (LUN) internally generated using attributes of each respective first multiple of data volumes including each one of at least a creation date of a given data volume, a size of the given data volume, an identifier assigned externally by an administrator for the given data volume, and an internally generated unique volume identifier;
wherein each one of the attributes are used as an input to a hash function used to internally generate the LUN;computer readable program code configured to define, in a memory, a data structure comprising a second multiple of entries, the second multiple being greater than the first multiple; computer readable program code configured to associate each of the data volumes of the storage device with a unique entry in the data structure so as to generate respective unique entries for the data volumes; computer readable program code configured to receive a request to store a value to one or more of the respective unique entries in the data structure; and computer readable program code configured to store the value to the one or more respective unique entries, thereby performing a mapping operation between a host computer networked to the storage system and the one or more of the data volumes associated with the one or more respective unique entries. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification