[go: up one dir, main page]

CN102255962B - Distributive storage method, device and system - Google Patents

Distributive storage method, device and system Download PDF

Info

Publication number
CN102255962B
CN102255962B CN201110183316.5A CN201110183316A CN102255962B CN 102255962 B CN102255962 B CN 102255962B CN 201110183316 A CN201110183316 A CN 201110183316A CN 102255962 B CN102255962 B CN 102255962B
Authority
CN
China
Prior art keywords
storage
resource pool
physical
logical
blocks
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.)
Active
Application number
CN201110183316.5A
Other languages
Chinese (zh)
Other versions
CN102255962A (en
Inventor
张国彬
刘卯银
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Symantec Technologies Co Ltd
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
Application filed by Huawei Symantec Technologies Co Ltd filed Critical Huawei Symantec Technologies Co Ltd
Priority to CN201110183316.5A priority Critical patent/CN102255962B/en
Publication of CN102255962A publication Critical patent/CN102255962A/en
Priority to PCT/CN2012/077584 priority patent/WO2013004136A1/en
Application granted granted Critical
Publication of CN102255962B publication Critical patent/CN102255962B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0662Virtualisation aspects
    • G06F3/0664Virtualisation aspects at device level, e.g. emulation of a storage device or system
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention provides a distributive storage method, and furthermore, provides a distributive storage device and a distributive storage system. In the distributive storage method provided by the invention, objects are stored in a resource storage pool, physical storage spaces are distributed to the resource storage pool only in the process of storing the objects, so that the physical storage spaces can be dynamically flexibly distributed according to the physical storage spaces needed by a user, and the utility ratio of the physical storage spaces is further increased.

Description

Distributed storage method, device and system
Technical Field
The invention relates to the technical field of disk storage, in particular to a distributed storage method, a distributed storage device and a distributed storage system.
Background
Cloud storage is a new concept extended and developed from a cloud computing concept, and a distributed cloud storage system (hereinafter referred to as a storage system) refers to a storage system which integrates a large number of storage devices (storage devices are also referred to as storage nodes) of different types in a network through application software or application interfaces to cooperatively work through functions of cluster application, a grid technology, a distributed storage file system and the like, and provides data storage and service access functions to the outside.
At present, a storage method of a storage system is as follows: logical volumes are created, and when created, each logical volume is allocated physical storage space, which may be the disk composition of a certain storage device or of several storage devices. The client stores data on a certain logical volume, that is, the data is stored on a file system, the file system divides the data into a plurality of parts, each part is an object, the object not only contains the data but also contains additional information such as data Identification (ID), the file system writes each object into a physical storage space of the logical volume, and the file system records storage location information of each object, so that when the client requests to access the data, the file system can allow the client to access the data according to the storage location information of each object.
The process of allocating physical storage space for the logical volume by the storage system specifically includes: physical storage space is divided in advance into stripes according to a group of capacity measures of objects stored in a logical volume (the measures often have a large margin with respect to the capacity of the actual objects to be stored) and Redundant Array of Independent Disks (RAID), and one logical volume can be understood as one stripe, thereby allocating physical storage space to the logical volume.
However, after the physical storage space is allocated to the logical volume, the allocated physical storage space cannot be changed, but since the capacity of the actual storage object is likely to be smaller than the allocated physical storage space, a large part of the allocated physical storage space is left unused for a long time in the later use process, and the free physical storage space cannot be used by other logical volumes, so that the utilization rate of the physical storage space is low. For example, with RAID5 group of 7+1, and the capacity of the object stored in the logical volume is estimated to be 448KB, the storage system sets 7 stripes, each stripe is allocated 64KB of physical storage space, and the allocated physical storage space of each stripe cannot be changed, so as long as the capacity of the object actually stored is less than 448KB, a part of the allocated physical storage space is in an idle state, which causes waste of physical storage space and results in low utilization of physical storage space.
Disclosure of Invention
The embodiment of the invention provides a distributed storage method, a distributed storage device and a distributed storage system.
A distributed storage method, comprising:
cutting the physical storage space of all storage nodes into at least two physical blocks, and mapping the set of all the physical blocks into a logical storage resource pool;
establishing a virtual volume on the storage resource pool;
when a client stores data on the virtual volume, dividing the data into at least two objects, storing each object into the storage resource pool, creating a mapping relation with a logical block of the storage resource pool for each object, and allocating the physical block to the logical block having the mapping relation with each object according to the capacity of each object;
and storing the mapping relation which is created for each object and is relative to the logic blocks of the storage resource pool.
A distributed storage apparatus, comprising:
constructing a storage resource pool unit, which is used for cutting the physical storage space of all storage nodes into at least two physical blocks and mapping the set of all the physical blocks into a logical storage resource pool;
a virtual volume establishing unit, configured to establish a virtual volume on the storage resource pool;
a unit for allocating physical storage space, configured to, when a client stores data on a virtual volume, divide the data into at least two objects, write each of the objects into the storage resource pool, create a mapping relationship with a logical block of the storage resource pool for each of the objects, and allocate the physical block to a logical block having a mapping relationship with each of the objects according to a capacity of each of the objects;
and the storage mapping relation unit is used for storing the mapping relation which is created for each object and is relative to the logic blocks of the storage resource pool.
A distributed storage system, comprising: at least one client, at least one storage node and the distributed storage device.
In the embodiment of the invention, the object is stored in the resource storage pool, and the physical storage space is allocated to the resource storage pool only when the object is stored, so that the physical storage space can be dynamically and flexibly allocated according to the physical storage space required by a user, and the utilization rate of the physical storage space is improved.
Drawings
FIG. 1 is a schematic flow chart diagram illustrating one embodiment of a distributed storage method in an embodiment of the present invention;
FIG. 2 is a schematic logical structure diagram of an embodiment of a distributed storage apparatus according to the present invention;
FIG. 3 is a logical structure diagram of an embodiment of a distributed storage system according to an embodiment of the present invention.
Detailed Description
The embodiment of the invention provides a distributed storage method, and also provides a corresponding distributed storage device and a distributed storage system. The following are detailed below.
Referring to fig. 1, an embodiment of the present invention provides a distributed storage method, which specifically includes:
101. cutting the physical storage space of all storage nodes into at least two physical blocks, and mapping the set of all the physical blocks into a logical storage resource pool;
at present, the process of allocating physical storage space for logical volumes by a storage system is static, when a logical volume is created, physical storage space is allocated for each logical volume, and if the physical storage space can be allocated as required by adopting a dynamic method, the utilization rate of the physical storage space will be greatly improved, so that the capacity of the storage system is increased without increasing the cost. The storage system must be virtualized to use a dynamic, on-demand allocation approach.
The first step of the storage virtualization performed by the embodiment of the present invention is: the physical storage space of all the storage nodes is cut into at least two physical blocks, and the set of all the physical blocks is mapped into a logical storage resource pool, so that the difference between the storage nodes is shielded, and a uniform storage resource pool is constructed.
It should be noted that the aforementioned "physical storage space of all storage nodes" refers to a total physical storage space formed by the physical storage space of each storage node in a unified manner.
The specific process of constructing the storage resource pool may be as follows: the physical storage space of all storage nodes is divided into at least two physical blocks, the physical blocks are mapped into logical blocks, and the logical blocks are organized by a data structure, so that a logical storage resource pool can be constructed. The storage system divides the physical storage space of all the storage nodes into at least two physical blocks, which may specifically be: dividing physical storage spaces of all storage nodes into at least two physical blocks with different sizes; or in order to increase the processing speed of building the storage resource pool, the physical storage space of all the storage nodes is divided into at least two equal-sized physical blocks, for example, the physical storage space of 1TB is divided into 1000 physical blocks of 1GB, 1000 logical blocks are in the built storage resource pool, and when resources need to be used, the logical blocks are selected from the storage resource pool to be used.
102. Establishing a virtual volume on a storage resource pool, and establishing a mapping relation between each virtual block in the virtual volume and a logic block in the storage resource pool;
the second step of the storage virtualization performed by the embodiment of the present invention is: virtual volumes of the storage system are established on the storage resource pool, and each virtual block in the virtual volume has a mapping relation with the logic block in the storage resource pool.
A mapping table between a virtual volume and a logical volume is established, the mapping table represents the mapping relation from virtual blocks to logical blocks (blocks in a storage pool), but physical storage space is not allocated, the virtual volume is established so that the storage system does not provide physical storage space for each client in advance when the storage system is not stored, and the physical storage space provided by the storage system seen by each client is actually a virtual disk established on the virtual volume.
103. Storing each object into a storage resource pool, creating a mapping relation between each object and a logical block of the storage resource pool, and distributing a physical block to each logical block having the mapping relation with the object according to the capacity of each object;
when one client of a plurality of clients stores data on a virtual volume, the data is divided into at least two objects, each object is stored in a storage resource pool, a mapping relation between each object and a logical block of the storage resource pool is established, and a physical block is distributed to each logical block which has the mapping relation with the object according to the capacity of each object.
The mode of allocating the physical blocks to the logical blocks enables the physical storage space to be allocated only when the physical storage space is used, the storage system can dynamically and flexibly allocate the physical storage space according to the physical storage space required by a user, the allocated physical storage space is not fixed and constant, the utilization rate of the physical storage space is improved, and the mode of allocating the physical blocks to the logical blocks also enables the user to avoid purchasing temporarily-unnecessary storage equipment, so that the budget expenditure spent by the user for purchasing the temporarily-unnecessary space and the management expenditure for managing the temporarily-unnecessary space are greatly saved; meanwhile, the reduction of the number of the storage devices also enables the storage system to be more environment-friendly.
In this step, creating a mapping relationship between each object and a logical block of the storage resource pool may specifically be: dividing the object into equal granularity, such as 8KB, establishing a mapping table, wherein each 8KB corresponds to an entry of the mapping table, and recording the mapping of the 8KB to a certain 8KB of data on a certain logical block of the storage resource pool, for example, data of the object 1 from 8K to 16KB is stored on the 3 rd 8KB of the logical block 2 of the storage resource pool.
104. The mapping relationship created for each object to the logical blocks of the storage resource pool is stored.
The storage system stores the mapping relationship with the logical blocks of the storage resource pool created for each object in step 103, and each operation on data needs to acquire the mapping relationship with the logical blocks of the storage resource pool created for each object.
Alternatively, the storage system may store the mapping created for each object with the logical blocks of the storage resource pool in the storage resource pool, that is, store the mapping created for each object with the logical blocks of the storage resource pool with each object.
Or, optionally, the storage system may further store the mapping relationship created for each object with the logical blocks of the storage resource pool, where the storing independently refers to storing the mapping relationship created for each object with the logical blocks of the storage resource pool and the data in different physical storage spaces, so as to cause the logical view and the physical view of the data to be separated, and when the storage system stores the mapping relationship created for each object with the logical blocks of the storage resource pool and each object together, each operation on the data needs to obtain the mapping relationship created for each object with the logical blocks of the storage resource pool. When the operation frequently occurs, the operation becomes a bottleneck of the whole storage system, the expansibility of the storage system is limited, the storage system independently stores the mapping relationship with the logical blocks of the storage resource pool created for each object, and the expandability of the storage system can be solved by increasing the storage space for independently storing the mapping relationship with the logical blocks of the storage resource pool created for each object, and the specific implementation mode can be as follows: and storing the mapping relation with the logical blocks of the storage resource pool created for each object in another storage system or a logical volume of the same storage system independent from the storage resource pool.
In this embodiment, the object is stored in the resource storage pool, and the physical storage space is allocated to the resource storage pool only when the object is stored, so that the physical storage space can be dynamically and flexibly allocated according to the physical storage space required by the user, and the utilization rate of the physical storage space is improved.
In the above embodiment, when the client accesses data, the operating system in the storage system may obtain, according to the mapping relationship created for each object of the data and the logical block of the storage resource pool, that each object of the data is located at a specific position of the storage resource pool, so as to read the data.
In the above embodiment, the Storage node may be a Storage Device in a Storage Area Network (SAN) array, where the Storage Device in the SAN array is an intelligent Device, and may also be referred to as an Object-based Storage Device (OSD), each OSD has its own Storage medium, processor, memory, and network system, and provides an OSD Object interface, so that in a process of reading and writing data, the Storage node may directly communicate with a client through the OSD Object interface, and independently store a mapping relationship created for each Object and a logical block of a Storage resource pool in a Metadata Server (MDS). The mapping relation between each object and the logical block of the storage resource pool is metadata, and the metadata server provides a logical view of data for the client, including directory composition, OSD corresponding to each data, and the like. In a conventional SAN array, metadata is maintained by a file server in the SAN array, and each operation on the data acquires the metadata. When operations occur frequently, metadata operations become a bottleneck in the overall storage system, limiting performance expansion. However, when the storage device in the SAN array is OSD and an OSD object interface is provided for the outside, since each operation only has one access to the metadata, and the specific data transmission is performed by the direct connection between the OSD and the client, the operation of the metadata is greatly reduced, the burden of the metadata server is reduced, and the problem of the extensibility of the SAN array is solved by adding the metadata server.
It should be noted that the storage node may also be a Network Attached Storage (NAS).
Referring to fig. 2, an embodiment of a distributed storage apparatus is further provided, and the distributed storage apparatus 20 in this embodiment can be applied to the above embodiment, and executes the method in the above embodiment.
The distributed storage apparatus 20 in the present embodiment includes:
a storage resource pool unit 201 is constructed, configured to cut the physical storage space of all the storage nodes into at least two physical blocks, and map a set of all the physical blocks into a logical storage resource pool;
a virtual volume establishing unit 202, configured to establish a virtual volume on a storage resource pool;
a physical storage space allocation unit 203, configured to, when a client stores data on a virtual volume, divide the data into at least two objects, write each object into a storage resource pool, create a mapping relationship with a logical block of the storage resource pool for each object, and allocate a physical block to the logical block having a mapping relationship with each object according to a capacity of each object;
a storage mapping unit 204, configured to store the mapping relationship created for each object with the logical blocks of the storage resource pool.
Optionally, the storage mapping relationship unit 204 is specifically configured to store mapping relationships created for each object and logical blocks of the storage resource pool independently.
Optionally, the storage mapping relationship unit 204 is specifically configured to store the mapping relationship created for each object with the logical block of the storage resource pool in another storage system or a logical volume of the storage system that is independent from the storage resource pool.
Optionally, the storage resource pool building unit 201 is specifically configured to cut the physical storage space of all the storage nodes into at least two physical blocks with equal size, map each physical block into a logical block, and organize all the logical blocks by using a data structure to build a logical storage resource pool.
In this embodiment, the storage node may be a storage device in a storage area network SAN array, and the storage device in the SAN array is an Object-based storage device (OSD) and provides an OSD Object interface to the outside.
In this embodiment, the unit 203 for allocating physical storage space stores the object in the resource storage pool, and the physical storage space is allocated to the resource storage pool only when the object is stored, so that the physical storage space can be dynamically and flexibly allocated according to the physical storage space required by the user, thereby improving the utilization rate of the physical storage space.
Referring to fig. 3, an embodiment of a distributed storage system is further provided, and the distributed storage system in this embodiment may be applied to the above embodiment, and execute the method in the above embodiment.
The distributed storage system in the present embodiment includes: at least one client 301, at least one storage node 302, and distributed storage 303;
the distributed storage apparatus 303 in the present embodiment is the same as the distributed storage apparatus 20 in the above-described embodiment.
Optionally, the distributed storage system further includes a metadata server 304, and the metadata server 304 is configured to independently store the mapping relationship, created by the distributed storage apparatus 304 for each object, with the logical blocks of the storage resource pool.
In the distributed storage system provided in this embodiment, the number of the metadata servers 304 may be at least one, so that the problem of scalability of the distributed storage system can be solved. The metadata server 304 and the storage nodes in the distributed storage 303 are independent of each other.
Optionally, the storage node 302 is specifically a storage device in a storage area network SAN array, and the storage device in the SAN array is an object-based storage device OSD and provides an OSD object interface to the outside, in this application scenario, the metadata server 304 provides a logical view of data for the client, including a directory structure, an OSD corresponding to each data, and the like, when the client 301 accesses an object, first sends a request to the metadata server 304, and the metadata server 304 sends information, such as a specific position where the object is located in the storage resource pool, to the client 301 according to metadata reflecting a mapping relationship between the object and a logical block; thereafter, according to the specific location of the object in the storage resource pool, the client 301 directly sends a request for reading and writing data to the storage node 302 storing the object without interaction with the metadata server 304.
Network connections are an important component of storage systems. It connects client 301, metadata server 304, and storage node 302. The continuous progress of network technology has made more choices for the way network connections are made. The gigabit Ethernet has the advantages of high performance, high cost performance, easy management and the like, thereby being the first choice for constructing the storage system. With the maturity of the fiber channel technology and the reduction of the cost, the application is more and more extensive. In addition, various new network technologies are continuously emerging, such as Myrinet, Infiniband, etc., which have high performance. In particular, Infiniband, has been increasingly competitive due to its extended capabilities.
In this embodiment, the distributed storage apparatus 303 may store the object in the resource storage pool, and the physical storage space is allocated to the resource storage pool only when the object is stored, so that the physical storage space can be dynamically and flexibly allocated according to the physical storage space required by the user, thereby improving the utilization rate of the physical storage space.
Those skilled in the art will appreciate that all or part of the steps in the methods of the above embodiments may be implemented by associated hardware instructed by a program, which may be stored in a computer-readable storage medium, and the storage medium may include: ROM, RAM, magnetic or optical disks, and the like.
The distributed storage method, the distributed storage apparatus, and the distributed storage system provided in the embodiments of the present invention are described in detail above, and a specific example is applied in this document to explain the principle and the implementation of the present invention, and the description of the above embodiments is only used to help understanding the method and the core idea of the present invention; meanwhile, for a person skilled in the art, according to the idea of the present invention, there may be variations in the specific embodiments and the application scope, and in summary, the content of the present specification should not be construed as a limitation to the present invention.

Claims (12)

1. A distributed storage method, comprising:
cutting the physical storage space of all storage nodes into at least two physical blocks, and mapping the set of all the physical blocks into a logical storage resource pool;
establishing a virtual volume on the storage resource pool, establishing a mapping relation between each virtual block in the virtual volume and a logic block in the storage resource pool, but not allocating a physical storage space;
when a client stores data on the virtual volume, dividing the data into at least two objects, storing each object into the storage resource pool, creating a mapping relation with a logical block of the storage resource pool for each object, and allocating the physical block to the logical block having the mapping relation with each object according to the capacity of each object;
and storing the mapping relation which is created for each object and is relative to the logic blocks of the storage resource pool.
2. The method according to claim 1, wherein the step of storing the mapping relationship created for each object with the logical blocks of the storage resource pool specifically comprises:
and independently storing the mapping relation which is created for each object and is relative to the logic blocks of the storage resource pool.
3. The method of claim 2,
the step of independently storing the mapping relationship created for each object and the logical block of the storage resource pool specifically includes:
storing the mapping relation with the logic blocks of the storage resource pool, which is created for each object, in another storage system; or,
and storing the mapping relation with the logical blocks of the storage resource pool, which is created for each object, in a logical volume of the storage system independent from the storage resource pool.
4. The method according to any one of claims 2 or 3,
the storage nodes are storage devices in a Storage Area Network (SAN) array, and the storage devices in the SAN array are object-based storage devices (OSD), and an OSD object interface is provided for the outside;
the step of storing each object into the storage resource pool specifically includes:
and storing each object into the storage resource pool through the OSD object interface.
5. The method of claim 4,
the step of cutting the physical storage space of all the storage nodes into at least two physical blocks and mapping the set of all the physical blocks into a logical storage resource pool specifically includes:
the method comprises the steps of cutting physical storage spaces of all storage nodes into at least two physical blocks, mapping the physical blocks into logical blocks, and organizing the logical blocks by using a data structure to construct a logical storage resource pool.
6. A distributed storage apparatus, comprising:
constructing a storage resource pool unit, which is used for cutting the physical storage space of all storage nodes into at least two physical blocks and mapping the set of all the physical blocks into a logical storage resource pool;
the virtual volume establishing unit is used for establishing a virtual volume on the storage resource pool, establishing a mapping relation between each virtual block in the virtual volume and a logic block in the storage resource pool, and not allocating a physical storage space;
a unit for allocating physical storage space, configured to, when a client stores data on a virtual volume, divide the data into at least two objects, write each of the objects into the storage resource pool, create a mapping relationship with a logical block of the storage resource pool for each of the objects, and allocate the physical block to a logical block having a mapping relationship with each of the objects according to a capacity of each of the objects;
and the storage mapping relation unit is used for storing the mapping relation which is created for each object and is relative to the logic blocks of the storage resource pool.
7. The distributed storage apparatus of claim 6,
the storage mapping relationship unit is specifically configured to store mapping relationships created for each object with the logical blocks of the storage resource pool independently.
8. The distributed storage apparatus of claim 7,
the storage mapping relationship unit is specifically configured to store, in another storage system, a mapping relationship created for each object with a logical block of the storage resource pool; or,
the storage mapping relationship unit is specifically configured to store, in a logical volume of the storage system that is independent from the storage resource pool, a mapping relationship with a logical block of the storage resource pool that is created for each object.
9. The distributed storage apparatus of claim 7 or 8,
the storage nodes are storage devices in a Storage Area Network (SAN) array, and the storage devices in the SAN array are object-based storage devices (OSD), and an OSD object interface is provided for the outside.
10. The distributed storage apparatus of claim 9,
the unit for constructing the storage resource pool is specifically configured to cut physical storage spaces of all storage nodes into at least two physical blocks of equal size, map the physical blocks into logical blocks, and organize the logical blocks by using a data structure to construct a logical storage resource pool.
11. A distributed storage system, comprising:
at least one client, at least one storage node, a distributed storage apparatus according to one of claims 6 to 10.
12. The system of claim 11,
the storage nodes are storage devices in a Storage Area Network (SAN) array, and the storage devices in the SAN array are object-based storage devices (OSD), and an OSD object interface is provided for the outside.
CN201110183316.5A 2011-07-01 2011-07-01 Distributive storage method, device and system Active CN102255962B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201110183316.5A CN102255962B (en) 2011-07-01 2011-07-01 Distributive storage method, device and system
PCT/CN2012/077584 WO2013004136A1 (en) 2011-07-01 2012-06-27 Distributed storage method, device and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110183316.5A CN102255962B (en) 2011-07-01 2011-07-01 Distributive storage method, device and system

Publications (2)

Publication Number Publication Date
CN102255962A CN102255962A (en) 2011-11-23
CN102255962B true CN102255962B (en) 2013-11-06

Family

ID=44982952

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110183316.5A Active CN102255962B (en) 2011-07-01 2011-07-01 Distributive storage method, device and system

Country Status (2)

Country Link
CN (1) CN102255962B (en)
WO (1) WO2013004136A1 (en)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102255962B (en) * 2011-07-01 2013-11-06 华为数字技术(成都)有限公司 Distributive storage method, device and system
CN102546830B (en) * 2012-02-27 2015-06-24 辛旻 Method and system for realizing storage in server
US10067940B2 (en) * 2012-03-02 2018-09-04 International Business Machines Corporation Enhanced storage quota management for cloud computing systems
CN103516755B (en) * 2012-06-27 2017-07-14 华为技术有限公司 Virtual memory method and equipment
CN103870202B (en) * 2012-12-10 2018-08-21 上海优刻得信息科技有限公司 A kind of distributed storage method and system of block device
CN103634379B (en) * 2013-11-13 2017-02-01 华为技术有限公司 Management method for distributed storage space and distributed storage system
CN105095290B (en) * 2014-05-15 2019-02-15 中国银联股份有限公司 A data layout method for distributed storage system
EP3905054B1 (en) * 2014-08-12 2023-12-20 Huawei Technologies Co., Ltd. File management method, distributed storage system, and management node
CN105808157A (en) * 2014-12-31 2016-07-27 中兴通讯股份有限公司 Storage architecture creating method, storage access method and storage system
CN106302587B (en) * 2015-05-26 2019-07-30 阿里巴巴集团控股有限公司 A kind of dispatching method and device of internet information resource
US10129357B2 (en) 2015-08-21 2018-11-13 International Business Machines Corporation Managing data storage in distributed virtual environment
CN105426125B (en) * 2015-11-09 2019-06-14 深圳市迪菲特科技股份有限公司 A kind of date storage method and device
CN108027801A (en) 2015-12-31 2018-05-11 华为技术有限公司 Data processing method, device and system
CN107894913B (en) * 2016-09-30 2022-05-13 超聚变数字技术有限公司 A computer system and storage access device
CN107566405B (en) * 2017-10-18 2021-07-27 成都索贝数码科技股份有限公司 A storage resource pooling method for fast access and copying
CN107741832B (en) * 2017-10-18 2021-01-08 成都索贝数码科技股份有限公司 Method for isolating storage directory based on pooling
CN110096220B (en) 2018-01-31 2020-06-26 华为技术有限公司 Distributed storage system, data processing method and storage node
CN108717632A (en) * 2018-05-29 2018-10-30 广东通莞科技股份有限公司 A mobile payment storage protection and recovery system
US11061609B2 (en) * 2018-08-02 2021-07-13 MemVerge, Inc Distributed memory object method and system enabling memory-speed data access in a distributed environment
CN112783419B (en) * 2019-11-06 2024-05-24 阿里巴巴集团控股有限公司 Distributed storage method and device, electronic equipment and storage medium
CN112799584B (en) * 2019-11-13 2023-04-07 杭州海康威视数字技术股份有限公司 Data storage method and device
CN113312663B (en) * 2021-05-31 2024-05-28 尧领有限公司 Distributed data storage method and system, and computer readable storage medium
CN118567546A (en) * 2023-02-22 2024-08-30 华为云计算技术有限公司 Method, device and computer readable storage medium for data storage
CN116540949B (en) * 2023-07-04 2024-01-12 苏州浪潮智能科技有限公司 A method and device for dynamic allocation of independent redundant disk array storage space

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2469624A1 (en) * 2001-12-10 2003-06-19 Monosphere Limited Managing storage resources attached to a data network
CN1258713C (en) * 2003-11-14 2006-06-07 清华大学 Data distribution dynamic mapping method based on magnetic disc characteristic
JP5221756B2 (en) * 2009-01-30 2013-06-26 株式会社日立製作所 Storage system and storage control method for compressing and storing data elements
EP2396717A1 (en) * 2009-02-11 2011-12-21 Infinidat Ltd Virtualized storage system and method of operating it
CN102255962B (en) * 2011-07-01 2013-11-06 华为数字技术(成都)有限公司 Distributive storage method, device and system

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
分布式存储系统中用户磁盘空间分配策略;谭子军 等;《计算机工程》;20101031;第36 卷(第9 期);44-46 *
刘镇涛.存储虚拟化原理分析及其实现.《中国优秀硕士学位论文全文数据库信息科技辑》.2008,I138-11.
存储虚拟化原理分析及其实现;刘镇涛;《中国优秀硕士学位论文全文数据库信息科技辑》;20080115;I138-11 *
谭子军 等.分布式存储系统中用户磁盘空间分配策略.《计算机工程》.2010,第36 卷(第9 期),44-46.

Also Published As

Publication number Publication date
CN102255962A (en) 2011-11-23
WO2013004136A1 (en) 2013-01-10

Similar Documents

Publication Publication Date Title
CN102255962B (en) Distributive storage method, device and system
US11042311B2 (en) Cluster system with calculation and storage converged
CN103797770B (en) A kind of method and system of shared storage resources
US10628043B1 (en) Systems and methods for implementing a horizontally federated heterogeneous cluster
KR101930117B1 (en) Volatile memory representation of nonvolatile storage device set
US12204496B2 (en) Metadata control in a load-balanced distributed storage system
US7562200B1 (en) Method, system, apparatus, and computer-readable medium for locking and synchronizing input/output operations in a data storage system
CN109144406B (en) Metadata storage method, system and storage medium in distributed storage system
CN110663019A (en) File system for Shingled Magnetic Recording (SMR)
US20170177224A1 (en) Dynamic storage transitions employing tiered range volumes
JP7467593B2 (en) Resource allocation method, storage device, and storage system - Patents.com
CN104536903B (en) A kind of mixing storage method and system stored classifiedly by data attribute
CN102123176B (en) Space distribution and management method and device for network storage system
CN103577345A (en) Methods and structure for improved flexibility in shared storage caching by multiple systems
WO2017107015A1 (en) Storage space allocation method, and storage device
WO2020134143A1 (en) Stripe reconstruction method in storage system and striping server
CN102945275B (en) File defragmentation method, device and equipment
US10496278B1 (en) Inline compression support using discrete sized containers for backing store
US9069471B2 (en) Passing hint of page allocation of thin provisioning with multiple virtual volumes fit to parallel data access
CN113986117A (en) File storage method, system, computing device and storage medium
US9715460B1 (en) Enabling a first virtual storage director running in a container maintained by a hypervisor to achieve direct memory access to memory of a second virtual storage director running in a different container
US11144445B1 (en) Use of compression domains that are more granular than storage allocation units
US11947803B2 (en) Effective utilization of different drive capacities
CN107851062A (en) A cache management method and host in a host cluster
US7836271B1 (en) Using a single allocator to coordinate volume transformations across virtualization layers

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent of invention or patent application
CB02 Change of applicant information

Address after: 611731 Chengdu high tech Zone, Sichuan, West Park, Qingshui River

Applicant after: HUAWEI DIGITAL TECHNOLOGIES (CHENG DU) Co.,Ltd.

Address before: 611731 Chengdu high tech Zone, Sichuan, West Park, Qingshui River

Applicant before: CHENGDU HUAWEI SYMANTEC TECHNOLOGIES Co.,Ltd.

COR Change of bibliographic data

Free format text: CORRECT: APPLICANT; FROM: CHENGDU HUAWEI SYMANTEC TECHNOLOGY CO., LTD. TO: HUAWEI DIGITAL TECHNOLOGY (CHENGDU) CO., LTD.

C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20220824

Address after: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee after: HUAWEI TECHNOLOGIES Co.,Ltd.

Address before: 611731 Qingshui River District, Chengdu hi tech Zone, Sichuan, China

Patentee before: HUAWEI DIGITAL TECHNOLOGIES (CHENG DU) Co.,Ltd.

TR01 Transfer of patent right