CN111212111B - Object storage service management method and electronic equipment - Google Patents

Object storage service management method and electronic equipment Download PDF

Info

Publication number
CN111212111B
CN111212111B CN201911302676.5A CN201911302676A CN111212111B CN 111212111 B CN111212111 B CN 111212111B CN 201911302676 A CN201911302676 A CN 201911302676A CN 111212111 B CN111212111 B CN 111212111B
Authority
CN
China
Prior art keywords
cluster
object storage
information
storage service
request
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
CN201911302676.5A
Other languages
Chinese (zh)
Other versions
CN111212111A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201911302676.5A priority Critical patent/CN111212111B/en
Publication of CN111212111A publication Critical patent/CN111212111A/en
Application granted granted Critical
Publication of CN111212111B publication Critical patent/CN111212111B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The present disclosure relates to the field of cloud storage technologies, and in particular, to an object storage service management method, an object storage service management apparatus, a computer-readable medium, and an electronic device. The method comprises the following steps: receiving an object storage service request, and analyzing the object storage service request to obtain object metadata; determining a target cluster in a cluster group comprising at least two clusters of object storage servers according to the object metadata; redirecting the object storage service request to the target cluster to obtain return data corresponding to the object storage service request from the target cluster; and sending the return data to a sender of the object storage service request. The method not only improves the storage performance of the object storage service, but also reduces the calculation consumption of the object storage service.

Description

Object storage service management method and electronic equipment
Technical Field
The present disclosure relates to the field of cloud storage technologies, and in particular, to an object storage service management method, an object storage service management apparatus, a computer-readable medium, and an electronic device.
Background
In a distributed storage system composed of a plurality of object storage nodes, as undifferentiated service management is adopted for storage services of storage objects, the storage performance of the system depends on the node with the lowest performance, and thus the storage performance of the whole system is poor.
Disclosure of Invention
The present disclosure is directed to an object storage service management method, an object storage service management apparatus, a computer-readable medium, and an electronic device, so as to overcome at least some technical problems of poor storage performance in the related art.
Additional features and advantages of the disclosure will be set forth in the detailed description which follows, or in part will be obvious from the description, or may be learned by practice of the disclosure.
According to an aspect of an embodiment of the present disclosure, there is provided an object storage service management method, including: receiving an object storage service request, and analyzing the object storage service request to obtain object metadata; determining a target cluster in a cluster group comprising at least two clusters of object storage servers according to the object metadata; redirecting the object storage service request to the target cluster to obtain return data corresponding to the object storage service request from the target cluster; and sending the return data to a sender of the object storage service request.
According to an aspect of an embodiment of the present disclosure, there is provided an object storage service management apparatus, including: a request parsing module configured to receive an object storage service request and parse the object storage service request to obtain object metadata; a target cluster determination module configured to determine a target cluster in a cluster group comprising at least two clusters of object storage servers according to the object metadata; a request redirection module configured to redirect the object storage service request to the target cluster to obtain return data corresponding to the object storage service request from the target cluster; a data return module configured to send the return data to a sender of the object storage service request.
In some embodiments of the present disclosure, based on the above technical solutions, the target cluster determining module includes: an information acquisition unit configured to acquire object attribute information and object identification information in the object metadata; a candidate cluster screening unit configured to screen at least one candidate cluster corresponding to the object attribute information from a cluster group including at least two object storage server clusters; a first target cluster determining unit configured to perform hash processing on the object identification information to determine a target cluster from the at least one candidate cluster according to a hash processing result.
In some embodiments of the present disclosure, based on the above technical solutions, the candidate cluster screening unit includes: a performance category obtaining unit configured to obtain performance category information of each object storage server cluster in the cluster group; a candidate cluster determining unit configured to filter the object storage server cluster according to the performance category information to obtain at least one candidate cluster corresponding to the object attribute information.
In some embodiments of the present disclosure, based on the above technical solutions, the candidate cluster determining unit includes: a first candidate cluster screening unit configured to screen, as a candidate cluster, at least one object storage server cluster whose performance class information is a high performance cluster, if the object attribute information is hot data; and the second candidate cluster screening unit is configured to screen out at least one object storage server cluster of which the performance type information is a common cluster as a candidate cluster if the object attribute information is cold data.
In some embodiments of the present disclosure, based on the above technical solutions, the apparatus further includes: a cluster information obtaining module configured to obtain cluster information of the target cluster; and the cluster information writing module is configured to associate the cluster information with the object metadata and write the associated cluster information and the associated object metadata into the object search server cluster.
In some embodiments of the present disclosure, based on the above technical solutions, the target cluster determining module includes: a cluster information acquisition unit configured to acquire cluster information associated with the object metadata from an object search server cluster; a second target cluster determining unit configured to determine a target cluster in a cluster group including at least two object storage server clusters according to the cluster information.
In some embodiments of the present disclosure, based on the above technical solutions, the apparatus further includes: the cluster authority information acquisition module is configured to respond to the storage space creation request and acquire cluster authority information of each object storage server cluster; the authority information screening module is configured to screen an object storage server cluster with storage space operation authority according to the cluster authority information; a request forwarding module configured to forward the storage space creation request to the object storage server cluster having the storage space operation authority.
In some embodiments of the present disclosure, based on the above technical solutions, the apparatus further includes: a retrieval request module configured to send a retrieval request to the object search server cluster in response to the object enumeration request; an object list data receiving module configured to receive object enumeration data corresponding to the retrieval request returned by the object search server cluster; and the object list data sending module is configured to send the object enumeration data to a sender of the object enumeration request.
In some embodiments of the present disclosure, based on the above technical solutions, the apparatus further includes: the network address information receiving module is configured to receive the network address information of the newly added object storage gateway sent by the newly added object storage server cluster through the currently running current object storage service process; the object storage testing module is configured to perform object storage testing on the newly-added object storage gateway based on the network address information; and the cluster adding module is configured to add the newly added object storage server into the cluster group if the test result of the object storage test is that the test is passed.
In some embodiments of the present disclosure, based on the above technical solutions, the object storage testing module includes: a network connection testing unit configured to perform a network connection test on the newly-added object storage gateway based on the network address information; and the test data writing unit is configured to write test data into the newly added object storage server cluster to perform object storage test on the newly added object storage server cluster if the test result of the network connection test is that the test passes.
In some embodiments of the present disclosure, based on the above technical solutions, the cluster adding module includes: a cluster joining unit configured to join the newly added object storage server cluster to a cluster group managed by the current object storage service process, and update service state information of the current object storage service process; and the service state pushing unit is configured to push the updated service state information to other object storage service processes parallel to the current object storage service process.
In some embodiments of the present disclosure, based on the above technical solutions, the cluster joining unit includes: a storage space information obtaining unit, configured to obtain user information and storage space information of any object storage server cluster from the cluster group managed by the current object storage service process; and the storage space information synchronization unit is configured to synchronize the acquired user information and the acquired storage space information to the newly added object storage server cluster so as to join the newly added object storage server cluster into the cluster group.
In some embodiments of the present disclosure, based on the above technical solutions, the apparatus further includes: the process and cluster information acquisition module is configured to acquire service process information and cluster management information from a currently running current object storage service process through a newly added object storage service process; the cluster information configuration module is configured to configure the cluster information of the object storage server cluster managed by the newly-added object storage service process according to the cluster management information; and the service registration module is configured to perform network connection test on the object storage service process related to the service process information, and send a join request to the object storage service process when the test is passed so as to complete service registration of the newly-added object storage service process.
In some embodiments of the present disclosure, based on the above technical solutions, the apparatus further includes: the heartbeat detection module is configured to acquire the health state of each object storage server cluster in the cluster group through heartbeat detection; the permission limiting module is configured to limit service permission of the abnormal cluster when the abnormal cluster with abnormal health state exists in the cluster group, and send a state recovery instruction to the abnormal cluster; and the authority recovery module is configured to recover the service authority of the abnormal cluster after detecting that the health state of the abnormal cluster is recovered to be normal.
According to an aspect of the embodiments of the present disclosure, there is provided a computer readable medium, on which a computer program is stored, which when executed by a processor implements an object storage service management method as in the above technical solutions.
According to an aspect of an embodiment of the present disclosure, there is provided an electronic apparatus including: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to execute the object storage service management method as in the above technical solution via executing the executable instructions.
In the technical scheme provided by the embodiment of the disclosure, two functions of object data storage and object metadata index of the object storage server cluster are separated, so that the object metadata can be used for positioning a target cluster in a cluster group formed by the object storage server cluster, and the data read-write effect same as that of direct connection is achieved through redirection of an object storage service request, thereby not only improving the storage performance of the object storage service, but also reducing the calculation consumption of the object storage service.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and together with the description, serve to explain the principles of the disclosure. It is to be understood that the drawings in the following description are merely exemplary of the disclosure, and that other drawings may be derived from those drawings by one of ordinary skill in the art without the exercise of inventive faculty.
In the drawings:
fig. 1 schematically shows an exemplary system architecture diagram to which the disclosed solution is applied.
FIG. 2 schematically illustrates a flow chart of steps of a method of object storage service management in some embodiments of the present disclosure.
FIG. 3 schematically illustrates a flow chart of steps for determining a target cluster based on a hash process in some embodiments of the present disclosure.
Fig. 4 schematically illustrates a processing procedure diagram of the present disclosure for an object upload request in an application scenario.
Fig. 5 schematically shows a processing procedure of the present disclosure for an object download request in an application scenario.
Fig. 6 schematically shows a processing procedure of the present disclosure for a storage space creation request in an application scenario.
Fig. 7 schematically shows a processing procedure of the present disclosure for an object enumeration request in an application scenario.
Fig. 8 schematically illustrates a flow chart of steps for cluster expansion in some embodiments of the present disclosure.
Fig. 9 schematically shows a process diagram of cluster expansion in an application scenario according to the present disclosure.
FIG. 10 is a flowchart that schematically illustrates steps in expanding a process, in some embodiments of the present disclosure.
FIG. 11 is a schematic diagram illustrating a process of expanding a capacity of a process in an application scenario according to the present disclosure.
Fig. 12 schematically shows a process diagram of fault repair in an application scenario according to the present disclosure.
FIG. 13 illustrates a random write pressure comparison graph of an object storage service architecture and a direct Ceph architecture.
FIG. 14 illustrates a comparison graph of simulated cluster fault pressure measurements for an object storage service architecture versus a direct Ceph architecture.
Fig. 15 schematically shows a block diagram of an object storage service management apparatus in some embodiments of the present disclosure.
FIG. 16 illustrates a schematic structural diagram of a computer system suitable for use in implementing the electronic device of an embodiment of the present disclosure.
Detailed Description
Example embodiments will now be described more fully with reference to the accompanying drawings. Example embodiments may, however, be embodied in many different forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of example embodiments to those skilled in the art.
Furthermore, the described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided to give a thorough understanding of embodiments of the disclosure. One skilled in the relevant art will recognize, however, that the subject matter of the present disclosure can be practiced without one or more of the specific details, or with other methods, components, devices, steps, and so forth. In other instances, well-known methods, devices, implementations, or operations have not been shown or described in detail to avoid obscuring aspects of the disclosure.
The block diagrams shown in the figures are functional entities only and do not necessarily correspond to physically separate entities. I.e. these functional entities may be implemented in the form of software, or in one or more hardware modules or integrated circuits, or in different networks and/or processor means and/or microcontroller means.
The flow charts shown in the drawings are merely illustrative and do not necessarily include all of the contents and operations/steps, nor do they necessarily have to be performed in the order described. For example, some operations/steps may be decomposed, and some operations/steps may be combined or partially combined, so that the actual execution sequence may be changed according to the actual situation.
Cloud technology refers to a hosting technology for unifying serial resources such as hardware, software, network and the like in a wide area network or a local area network to realize calculation, storage, processing and sharing of data. The cloud technology is a general term of network technology, information technology, integration technology, management platform technology, application technology and the like applied based on a cloud computing business model, can form a resource pool, is used as required, and is flexible and convenient. Background services of the technical network system require a large amount of computing and storage resources, such as video websites, picture-like websites and more web portals. With the high development and application of the internet industry, each article may have its own identification mark and needs to be transmitted to a background system for logic processing, data of different levels are processed separately, and various industry data need strong system background support, so the cloud computing technology becomes an important support for network and computer technologies.
A distributed cloud storage system (hereinafter, referred to as a storage system) refers to a storage system that 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 by using functions such as cluster application, grid technology, and a distributed storage file system, and provides a data storage function and a service access function 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, ID entry), 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.
There are various storage system architectures in the related art of the present disclosure, such as the distributed file system Ceph. In the design of Ceph object storage, an index pool (index pool) is used for storing object metadata, if the index pool adopts SATA hard disks (serial hard disks), IO performance of partial SATA hard disks can be consumed, jitter drop and continuous IO blocking occur in large concurrency, and when the number of objects is too large, indexing is too slow, and cluster performance is poor. If the index pool adopts an SSD (solid state disk), capacity is wasted, and the index pool needs to coexist with logs. When the hard disk needs to be replaced due to bad disk of the object storage capacity expansion or cluster, the Ceph cluster can perform data migration, the data recovery time is long, and the performance influence is large. The Ceph native architecture stores files with different types and sizes, and can not utilize bottom SSD/SATA shunting, so that the overall storage performance depends on a node with the lowest performance, and a high-performance storage disk can not be fully utilized. In addition, the target storage gateway RGW of the Ceph cluster does not perform load balancing, and it is difficult to break through the bandwidth upper limit of the data transmission rate from the architecture.
In view of the above problems in the related art, the present disclosure provides a technical solution for object storage service management based on a cloud storage technology. Fig. 1 schematically shows an exemplary system architecture diagram to which the disclosed solution is applied.
As shown in fig. 1, the system architecture 100 may generally include a user layer 110, a gateway layer 120, and a storage layer 130. Wherein, the user layer 110 can be applied on the terminal, and the gateway layer 120 and the storage layer 130 can be applied on the server. The server may be an independent physical server, a server cluster or a distributed system formed by a plurality of physical servers, or a cloud server providing basic cloud computing services such as cloud service, a cloud database, cloud computing, a cloud function, cloud storage, network service, cloud communication, middleware service, domain name service, security service, CDN, and a big data and artificial intelligence platform. The terminal may be, but is not limited to, a smart phone, a tablet computer, a laptop computer, a desktop computer, a smart speaker, a smart watch, and the like. The terminal and the server may be directly or indirectly connected through wired or wireless communication, and the disclosure is not limited thereto.
The storage tier 130 may group a number of object storage server nodes into one object storage server cluster 131, for example, 3 object storage server nodes may be grouped into one object storage server cluster. The object storage Server cluster in the storage layer 130 adopts a deployment mode of removing a Linux Virtual Server (LVS) and removing an index pool, and the object storage gateway RGW corresponding to each object storage Server cluster 131 does not adopt the LVS, but realizes routing through heartbeat detection. In addition, the storage layer 130 may perform performance and authority classification on each object storage server cluster 131, for example, the object storage server cluster is divided into two types, i.e., a normal cluster and a high-performance cluster according to cluster hardware devices; the object storage server cluster can be divided into three levels in authority: the primary cluster has the rights of readable and writable objects, operable users, operable storage spaces (buckets) and the like; the secondary cluster has the authorities of operable users, operable storage space and the like; the tertiary cluster has rights to only readable objects.
Gateway layer 120 is mainly composed of three parts, object storage service process 121, object storage management process 122 and object search server cluster 123. The object storage service process 121 provides an object storage related service to the outside and simultaneously provides a process management related service. The object storage management process 122 implements heartbeat detection between the components, and is configured to check the health status of each object storage server cluster 131, synchronize the service status diagrams of each object storage service process 121, and push the latest service status to the client driver 111. The object search server cluster 123 is configured to store object metadata information and a corresponding stored object storage server cluster, and can read and index object metadata.
The user layer 110 uses the client 111 to implement a soft DNS, ensures load balancing for the object storage service invocation, and supports applications in a private cloud, public cloud, or hybrid cloud system.
According to the technical scheme, by adding the gateway layer 120, the architecture of the object storage server cluster for indexing can be reasonably managed in a layered mode, the object storage read-write performance is improved, unlimited capacity expansion is supported, the storage bandwidth is unlimited, and the problem of Ceph in the operation and maintenance of commercial application is solved. And an S3 API standard interface is adopted to ensure that the service is not migrated senslessly. The Ceph RGW layer is retained and the underlying support storage layer is smoothly upgraded.
The object storage service management method, the object storage service management apparatus, the computer-readable medium, and the electronic device provided by the present disclosure are described in detail below with reference to specific embodiments.
FIG. 2 schematically illustrates a flow chart of steps of a method of object storage service management in some embodiments of the present disclosure. As shown in fig. 2, the method may mainly include the following steps:
step S210, receiving the object storage service request, and analyzing the object storage service request to obtain object metadata.
The object storage service request may be various types of object processing requests sent by the user to the gateway layer through the client driver of the user layer, for example, an object upload request or an object download request, and the like. The object metadata carried in the request can be obtained by analyzing the object storage service request, for example, the object metadata can be obtained by analyzing a request header of a request packet based on a four-layer protocol model, and meanwhile, the request type can also be obtained. The object metadata may include, for example, specific business information, object size, object heat, and the like.
Step S220, determining a target cluster in a cluster group comprising at least two object storage server clusters according to the object metadata.
In a storage tier managed by a gateway tier, a cluster group consisting of at least two object storage server clusters is included. The object metadata obtained by parsing can be used for screening and filtering each object storage server cluster in the storage layer cluster group, so as to determine a target cluster meeting the performance requirement or other requirements of the object storage service request.
Step S230, redirecting the object storage service request to the target cluster so as to obtain the return data corresponding to the object storage service request from the target cluster.
After determining the target cluster, this step may Redirect (Redirect) the object storage service request received in step S210 to be responded to by the target cluster. When the target cluster receives the redirected object storage service request, return data can be provided to the gateway layer according to the content of the request. For example, when the object storage service request is an object upload request, the returned data may be an object storage address in the target cluster; when the object storage service request is an object download request, the returned data may be object data downloaded from a target storage address of the target cluster.
And S240, sending the return data to a sender of the object storage service request.
The gateway layer sends the return data corresponding to the object storage service request acquired from the target cluster to a sender of the object storage service request, wherein the sender can be various terminal devices which are provided with client drivers in the user layer, and relevant operation results can be presented to a user by using the terminal devices.
In the object storage service management method provided by the embodiment of the present disclosure, two functions of object data storage and object metadata index of an object storage server cluster are separated, so that object metadata can be used to locate a target cluster in a cluster group formed by the object storage server cluster, and a data read-write effect identical to that of direct connection is achieved by redirecting an object storage service request, which not only improves the storage performance of the object storage service, but also reduces the calculation consumption of the object storage service.
The accurate positioning of the target cluster in the cluster group is one of the keys for improving the storage performance, and the specific scheme for determining the target cluster is different for different types of object storage service requests. FIG. 3 schematically illustrates a flow chart of steps for determining a target cluster based on a hash process in some embodiments of the present disclosure. As shown in fig. 3, on the basis of the above embodiment, step s220. determining a target cluster in a cluster group including at least two object storage server clusters according to object metadata may include the following steps:
and S310, acquiring object attribute information and object identification information in the object metadata.
Taking the object uploading request as an example, after the object metadata is obtained by parsing in the object uploading request, the object attribute information and the object identification information of the object to be uploaded may be obtained from the object metadata, and the object attribute information may include, for example, one or more of data amount information, heat information, or other related information of the object. The data size information is used to represent the data size of the object data, and the file object may be divided into a large file and a small file according to a preset data size threshold, for example. The heat information is used to characterize the access frequency of the object data, and the object data may be divided into hot data and cold data according to a preset heat threshold, for example. The object identification information may be, for example, a key of the object data or an identification ID of the user, or the like.
Step S320, at least one candidate cluster corresponding to the object attribute information is obtained by screening in a cluster group comprising at least two object storage server clusters.
In a cluster group including at least two object storage server clusters, each object storage server cluster may be classified according to a preset classification standard, for example, the object storage server cluster may be classified into two types, i.e., a high performance cluster and a normal cluster, according to the performance of a server device. The performance category information of each object storage server cluster in the cluster group is obtained, and then the object storage server clusters are screened according to the performance category information to obtain at least one candidate cluster corresponding to the object attribute information. For example, if the object attribute information is hot data (or a small file), screening out at least one object storage server cluster with performance class information of a high-performance cluster as a candidate cluster; and if the object attribute information is cold data (or a large file), screening at least one object storage server cluster with the performance category information of the common cluster as a candidate cluster.
And S330, performing hash processing on the object identification information to determine a target cluster from at least one candidate cluster according to a hash processing result.
After the candidate clusters meeting the relevant conditions are obtained through screening, the hash processing can be continuously carried out on the object identification information in the step, so that the target cluster can be accurately positioned according to the hash processing result. The hash processing in this step may be performed by using consistent hash, distributed hash, a CRUSH algorithm based on a Ceph architecture, or any other hash algorithm capable of locating a storage node.
The reading and indexing of object metadata in the gateway layer is by means of an object search server cluster, which may be, for example, a server cluster based on an ElasticSearch, Apache Solr or other data search and analysis engine. In some optional embodiments of the present disclosure, in step s220, after determining a target cluster in a cluster group including at least two object storage server clusters according to the object metadata, cluster information of the target cluster may also be obtained, and then the cluster information and the object metadata are associated and written into the object search server cluster. The step of writing data into the object search server cluster may be asynchronously processed, and based on indexing the object metadata by using the object search server cluster, the step s220. determining a target cluster in a cluster group including at least two object storage server clusters according to the object metadata may further include the steps of: acquiring cluster information associated with the object metadata from the object search server cluster; and determining a target cluster in a cluster group comprising at least two object storage server clusters according to the cluster information.
Fig. 4 is a schematic diagram illustrating a processing procedure of the present disclosure for an object upload request in an application scenario. As shown in fig. 4, the processing procedure for the object upload request may include the following steps:
s410, the user layer sends an object uploading request to the gateway layer through the client;
s420, after analyzing the object uploading request through the object storage service process, the gateway layer redirects the object uploading request to a target cluster in the storage layer so as to write the object in the target cluster;
and S430, asynchronously writing the object metadata and the cluster information of the target cluster into the object search server cluster.
Fig. 5 schematically shows a processing procedure of the present disclosure for an object download request in an application scenario. As shown in fig. 5, the process for object download request may include the following steps:
step S510, the user layer sends an object downloading request to the gateway layer through the client;
step S520, after analyzing the object uploading request through the object storage service process, the gateway layer pulls a target cluster (which can be a certain target host) corresponding to the object to be downloaded from the object search server cluster;
step S530, the object downloading request is redirected to the target cluster so as to obtain a data packet of the object to be downloaded from the target cluster, and finally the data packet is returned to the client side of the user layer.
The object storage service management method provided in the embodiments of the present disclosure may also relate to other request types such as a storage space creation request, an object enumeration request, and the like, in addition to an object upload request and an object download request.
As a complete object storage service system, it is necessary to ensure that each object storage server cluster contains completely consistent user information and storage space information for resources such as users and storage space. In response to a storage space creation request, firstly, cluster authority information of each object storage server cluster can be obtained; then, screening according to the cluster authority information to obtain an object storage server cluster with storage space operation authority; and then forwarding the storage space creation request to the object storage server cluster with the storage space operation authority. Fig. 6 schematically shows a processing procedure of the present disclosure for a storage space creation request in an application scenario. As shown in fig. 6, the process for the storage space creation request may include the following steps:
s610, the user layer sends a storage space creating request to the gateway layer through the client;
and S620, after analyzing the storage space creation request through the object storage service process, the gateway layer forwards the storage space creation request to each object storage cluster with more than two levels of authority (allowing operation on the storage space and users) in the storage layer, so that the consistency of the bucket and the user information is highly ensured.
Step S630, when a new object storage server cluster is to be added into the cluster group, the authority of the new object storage server cluster is set to be in the second level, and then all user information and bucket information of any original object storage server cluster are pulled through the object storage service process. And carrying out information synchronization in the newly added object storage server cluster, and setting the authority of the newly added object storage server cluster as a first level after the synchronization is completed so as to carry out object read-write operation.
The object metadata is stored in the object search server cluster, so that when objects in the storage space are enumerated in response to an object enumeration request, a retrieval request can be sent to the object search server cluster; then receiving object enumeration data corresponding to the retrieval request returned by the object search server cluster; and then the object enumeration data is sent to the sender of the object enumeration request.
Fig. 7 schematically shows a processing procedure of the present disclosure for an object enumeration request in an application scenario. As shown in fig. 7, the process for object enumeration request may include the steps of:
step S710, the user layer sends an object enumeration request to the gateway layer through the client;
s720, after analyzing the object listing request through the object storage service process, the gateway layer directly sends a retrieval request to the object search server cluster;
step 730, receiving object enumeration data corresponding to the retrieval request returned by the object search server cluster;
and step S740, the gateway layer returns the retrieval result to the client of the user layer through the object storage service process.
Because the object metadata is stored in the object search server cluster of the gateway layer, the gateway layer architecture supports the retrieval request with the object metadata, and the retrieval process does not pass through the object search server cluster of the storage layer, so that the retrieval speed is high.
The object storage service management method provided by the disclosure can be used for carrying out capacity expansion processing on the object storage server cluster and has the characteristic of no upper limit of storage. Fig. 8 is a flowchart schematically illustrating steps of performing cluster expansion in some embodiments of the present disclosure, and as shown in fig. 8, a method for expanding a cluster of object storage servers includes the following steps:
step 810, receiving the network address information of the newly added object storage gateway sent by the newly added object storage server cluster through the currently running current object storage service process.
This step may specify a current object storage service process among a plurality of currently running object storage service processes. And then the newly added object storage server cluster sends the network address information of the newly added object storage gateway to the current object storage service process. Generally, the newly added object storage server cluster has a plurality of newly added object storage gateways. On this basis, the network address information received by the current object storage service process in this step may be an IP list composed of IP addresses (network protocol addresses) of each newly added object storage gateway.
And S820, carrying out object storage test on the newly-added object storage gateway based on the network address information.
In some alternative embodiments, the object storage test may include both a network connection test and a data write test. Firstly, performing network connection test on a newly-added object storage gateway based on network address information; and if the test result of the network connection test is that the test is passed, writing test data into the newly added object storage server cluster to perform object storage test on the newly added object storage server cluster.
And S830, if the test result of the object storage test is that the test is passed, adding the newly-added object storage server cluster into the cluster group.
After passing the object storage test, this step may add the newly added object storage server cluster to the cluster group managed by the current object storage service process. The processing mode of joining the cluster group may be to acquire user information and storage space information of any object storage server cluster from the cluster group managed by the current object storage service process, and then synchronize the acquired user information and storage space information to the newly added object storage server cluster, thereby achieving joining the newly added object storage server cluster to the cluster group. Meanwhile, the step can update the service state information of the current object storage service process, and can push the updated service state information to other object storage service processes parallel to the current object storage service process.
Fig. 9 schematically illustrates a process diagram of cluster expansion in an application scenario according to the present disclosure. The cluster expansion in the storage layer does not perform disk expansion operation on a single object storage server cluster, but directly adds a new object storage server cluster. As shown in fig. 9, the process of performing cluster expansion may include the following steps:
step S910, when the newly added object storage server cluster is started, the IP address of the running current object storage service process is appointed, and the IP addresses of all newly added object storage gateways RGW of the newly added object storage server cluster are pushed to the running current object storage service process;
step S920, after receiving the IP list, the current object storage service process sends a network connection test request (Ping request) to each newly-added object storage gateway RGW;
step S930, after the network connection test is passed, writing test data into each newly-added object storage gateway RGW;
s940, after the writing is successful, adding the newly added object storage server cluster into the cluster group, and pushing a new state diagram to other object storage service processes parallel to the current object storage service process through the current object storage service process; and the other object storage service processes verify after receiving the new state diagram and add the new state diagram into the self state diagram after the verification is passed, thereby finishing the cluster expansion.
The object storage service management method provided by the disclosure can be used for carrying out capacity expansion processing on the object storage service process and has the characteristic of no upper limit of bandwidth. Fig. 10 is a flowchart schematically illustrating steps of expanding a process according to some embodiments of the present disclosure, and as shown in fig. 10, a method for expanding an object storage server cluster includes the following steps:
and S1010, acquiring service process information and cluster management information from the current running current object storage service process through the newly-added object storage service process.
This step may specify a current object storage service process among a plurality of currently running object storage service processes. The service process information acquired by the current object storage service process may include process information of other object storage service processes in parallel with the current object storage service process, and the cluster management information acquired by the current object storage service process may include cluster information of each object storage server cluster under management of the current object storage service process.
And S1020, configuring the cluster information of the object storage server cluster managed by the newly-added object storage service process according to the cluster management information.
The cluster management information of the object storage server cluster managed by the newly added object storage service process can be configured based on the cluster management information of the current object storage service process, so that the synchronization of the management cluster is realized.
Step S1030, performing network connection test on the object storage service process related to the service process information, and sending a join request to the object storage service process when the test is passed so as to complete service registration of the newly added object storage service process.
And if the test is passed, the adding request of the newly added object storage service process can be continuously sent to all the object storage service processes, so that the service registration of the newly added object storage service process is completed, and the newly added object storage service process can provide the same object storage service function as the original object storage service process.
The gateway layer provides storage service to the upper part, and all client request data streams are redirected downwards through the gateway layer, so that a plurality of object storage service processes are supported in the gateway layer to provide service to the outside simultaneously, and high availability is ensured while the bandwidth is ensured to be on-line.
FIG. 11 is a schematic diagram illustrating a process of expanding a capacity of a process in an application scenario according to the present disclosure. As shown in fig. 11, the process of process capacity expansion may include the following steps:
step S1110, when a newly added object storage service process is added, sending a pull request to an IP address of a certain specified running current object storage service process;
step S1120, acquiring service process information and cluster management information related to the object storage service from the current object storage service process;
step S1130, the newly added object storage service process carries out network connection test on all running object storage service processes, and sends join (join) requests to all the object storage service processes after the test is passed, and at this time, service registration is finished.
Step S1140, when the client of the user layer sends a request to the original object storage service process, the change of the object storage service process component is found through heartbeat detection;
step S1150, the newly added object storage service process pushes the latest state diagram to the client of the user layer, the client sends a network connection test to the newly added object storage service process after receiving the new state diagram, and the test is added into a self polling list after passing, so that the process capacity expansion is completed, and the bandwidth bearing threshold is increased.
The object storage service management method provided by the disclosure can automatically repair the performance fault of the object storage server cluster so as to reduce the influence of the related fault on the overall storage performance.
Fig. 12 schematically shows a process diagram of fault repair in an application scenario according to the present disclosure. As shown in fig. 12, the process of performing fault repair may include the steps of:
s1210, acquiring the health state of each object storage server cluster in the cluster group through heartbeat detection;
step 1220, when an abnormal cluster with abnormal health state exists in the cluster group, performing service authority limitation on the abnormal cluster, and sending a state recovery instruction to the abnormal cluster;
and when the health state of the abnormal cluster is detected to be recovered to be normal, performing service authority recovery on the abnormal cluster.
As shown in fig. 12, when a cluster a has a failure such as a bad disk, a serious performance degradation of the cluster is detected by heartbeat, the authority of the cluster a is degraded to three levels (only providing a read object service), a full-speed recovery instruction is sent to the cluster a, and after the data recovery of the cluster a is detected, the authority is set to one level, so that the cluster a can normally provide a read-write service.
In order to verify the improvement effect of the object storage service management method on the storage performance, the object storage service architecture with a gateway layer based on the technical scheme of the disclosure and the traditional Ceph architecture based on a direct connection structure are subjected to a comparison test.
FIG. 13 is a diagram illustrating a random pressure measurement comparison of an object storage service architecture and a direct Ceph architecture, wherein it can be seen that the number of times per second iops of writing and reading an object by the direct Ceph architecture is about 2000 at first and is reduced to about 1000 after a period of time; and the object storage service architecture based on the technical scheme of the disclosure can be stably maintained at about 6000.
FIG. 14 illustrates a comparison graph of simulated cluster fault pressure measurements for an object storage service architecture versus a direct Ceph architecture. The comparison graph simulates the fault situation that 1 disk is broken, wherein the storage performance of the direct connection Ceph framework is rapidly reduced, the external service cannot be provided basically, and the external service can be recovered after a long period of time. The object storage service architecture based on the technical scheme of the disclosure divides 9 storage nodes into 3 object storage server clusters, when a bad disk occurs, the performance is reduced 1/3, and after the object storage server cluster with the bad disk is repaired, the overall performance is rapidly recovered. Similarly, in a real application scene, if there are 3n storage nodes, that is, n object storage server clusters, if a certain object storage server cluster fails, the overall performance is only reduced by 1/n, and the availability and stability of the object storage service are greatly improved.
It should be noted that although the various steps of the methods of the present disclosure are depicted in the drawings in a particular order, this does not require or imply that these steps must be performed in this particular order, or that all of the depicted steps must be performed, to achieve desirable results. Additionally or alternatively, certain steps may be omitted, multiple steps combined into one step execution, and/or one step broken down into multiple step executions, etc.
The following describes an embodiment of an apparatus of the present disclosure, which may be used to execute the object storage service management method in the foregoing embodiment of the present disclosure. For details not disclosed in the embodiments of the apparatus of the present disclosure, please refer to the embodiments of the object storage service management method described above in the present disclosure.
Fig. 15 schematically shows a block diagram of an object storage service management apparatus in some embodiments of the present disclosure. As shown in fig. 15, the object storage service management apparatus 1500 may include:
a request parsing module 1510 configured to receive the object storage service request and parse the object storage service request for object metadata; a target cluster determination module 1520 configured to determine a target cluster in a cluster group including at least two clusters of object storage servers according to the object metadata; a request redirection module 1530 configured to redirect the object storage service request to the target cluster to obtain return data corresponding to the object storage service request from the target cluster; a data return module 1540 configured to send the return data to the sender of the object storage service request.
In some embodiments of the present disclosure, based on the above embodiments, the target cluster determining module includes: an information acquisition unit configured to acquire object attribute information and object identification information in object metadata; the candidate cluster screening unit is configured to screen at least one candidate cluster corresponding to the object attribute information in a cluster group comprising at least two object storage server clusters; a first target cluster determining unit configured to perform hash processing on the object identification information to determine a target cluster from the at least one candidate cluster according to a hash processing result.
In some embodiments of the present disclosure, based on the above embodiments, the candidate cluster screening unit includes: the performance category acquisition unit is configured to acquire performance category information of each object storage server cluster in the cluster group; and the candidate cluster determining unit is configured to filter the object storage server clusters according to the performance category information to obtain at least one candidate cluster corresponding to the object attribute information.
In some embodiments of the present disclosure, based on the above embodiments, the candidate cluster determining unit includes: the first candidate cluster screening unit is configured to screen out at least one object storage server cluster with performance type information of a high-performance cluster as a candidate cluster if the object attribute information is hot data; and the second candidate cluster screening unit is configured to screen out at least one object storage server cluster of which the performance type information is a common cluster as a candidate cluster if the object attribute information is cold data.
In some embodiments of the present disclosure, based on the above embodiments, the apparatus further comprises: the cluster information acquisition module is configured to acquire cluster information of a target cluster; and the cluster information writing module is configured to associate the cluster information with the object metadata and write the associated cluster information into the object search server cluster.
In some embodiments of the present disclosure, based on the above embodiments, the target cluster determining module includes: a cluster information acquisition unit configured to acquire cluster information associated with the object metadata from the object search server cluster; a second target cluster determining unit configured to determine a target cluster in a cluster group including at least two clusters of object storage servers according to the cluster information.
In some embodiments of the present disclosure, based on the above embodiments, the apparatus further comprises: the cluster authority information acquisition module is configured to respond to the storage space creation request and acquire the cluster authority information of each object storage server cluster; the authority information screening module is configured to screen an object storage server cluster with storage space operation authority according to the cluster authority information; and the request forwarding module is configured to forward the storage space creation request to the object storage server cluster with the storage space operation authority.
In some embodiments of the present disclosure, based on the above embodiments, the apparatus further comprises: a retrieval request module configured to send a retrieval request to the object search server cluster in response to the object enumeration request; an object list data receiving module configured to receive object enumeration data corresponding to the retrieval request returned by the object search server cluster; and the object list data sending module is configured to send the object enumeration data to a sender of the object enumeration request.
In some embodiments of the present disclosure, based on the above embodiments, the apparatus further comprises: the network address information receiving module is configured to receive the network address information of the newly added object storage gateway sent by the newly added object storage server cluster through the currently running current object storage service process; the object storage testing module is configured to perform object storage testing on the newly-added object storage gateway based on the network address information; and the cluster adding module is configured to add the newly-added object storage server cluster into the cluster group if the test result of the object storage test is that the test passes.
In some embodiments of the present disclosure, based on the above embodiments, the object storage testing module includes: the network connection testing unit is configured to perform network connection testing on the newly-added object storage gateway based on the network address information; and the test data writing unit is configured to write test data into the newly added object storage server cluster to perform object storage test on the newly added object storage server cluster if the test result of the network connection test is that the test is passed.
In some embodiments of the disclosure, based on the above embodiments, the cluster joining module includes: the cluster adding unit is configured to add the newly added object storage server cluster into a cluster group managed by the current object storage service process and update the service state information of the current object storage service process; and the service state pushing unit is configured to push the updated service state information to other object storage service processes parallel to the current object storage service process.
In some embodiments of the present disclosure, based on the above embodiments, the cluster joining unit includes: the storage space information acquisition unit is configured to acquire user information and storage space information of any object storage server cluster from a cluster group managed by a current object storage service process; and the storage space information synchronization unit is configured to synchronize the acquired user information and the acquired storage space information to the newly added object storage server cluster so as to join the newly added object storage server cluster into the cluster group.
In some embodiments of the present disclosure, based on the above embodiments, the apparatus further comprises: the process and cluster information acquisition module is configured to acquire service process information and cluster management information from a currently running current object storage service process through a newly added object storage service process; the cluster information configuration module is configured to configure cluster information of the object storage server cluster managed by the newly-added object storage service process according to the cluster management information; and the service registration module is configured to perform network connection test on the object storage service process related to the service process information, and send a join request to the object storage service process when the test is passed so as to complete service registration of the newly added object storage service process.
In some embodiments of the present disclosure, based on the above embodiments, the apparatus further comprises: the heartbeat detection module is configured to acquire the health state of each object storage server cluster in the cluster group through heartbeat detection; the authority limit module is configured to limit service authority of an abnormal cluster when the abnormal cluster with abnormal health state exists in the cluster group, and send a state recovery instruction to the abnormal cluster; and the permission recovery module is configured to recover the service permission of the abnormal cluster after detecting that the health state of the abnormal cluster is recovered to be normal.
The specific details of the object storage service management apparatus provided in each embodiment of the present disclosure have been described in detail in the corresponding method embodiment, and therefore are not described herein again.
FIG. 16 illustrates a schematic structural diagram of a computer system suitable for use in implementing the electronic device of an embodiment of the present disclosure.
It should be noted that the computer system 1600 of the electronic device shown in fig. 16 is only an example, and should not bring any limitation to the functions and the scope of the application of the embodiments of the present disclosure.
As shown in fig. 16, computer system 1600 includes a Central Processing Unit (CPU)1601 which can perform various appropriate actions and processes in accordance with a program stored in a Read-Only Memory (ROM) 1602 or a program loaded from a storage portion 1608 into a Random Access Memory (RAM) 1603. In the RAM 1603, various programs and data necessary for system operation are also stored. The CPU 1601, ROM 1602, and RAM 1603 are connected to each other via a bus 1604. An Input/Output (I/O) interface 1605 is also connected to the bus 1604.
The following components are connected to the I/O interface 1605: an input portion 1606 including a keyboard, a mouse, and the like; an output section 1607 including a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and the like, a speaker, and the like; a storage portion 1608 including a hard disk and the like; and a communication section 1609 including a Network interface card such as a LAN (Local Area Network) card, a modem, or the like. The communication section 1609 performs communication processing via a network such as the internet. The driver 1610 is also connected to the I/O interface 1605 as needed. A removable medium 1611 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is mounted on the drive 1610 as necessary, so that a computer program read out therefrom is mounted in the storage portion 1608 as necessary.
In particular, the processes described in the various method flowcharts may be implemented as computer software programs, according to embodiments of the present disclosure. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for performing the method illustrated in the flow chart. In such embodiments, the computer program may be downloaded and installed from a network via the communication portion 1609, and/or installed from the removable media 1611. When the computer program is executed by a Central Processing Unit (CPU)1601, various functions defined in the system of the present application are executed.
It should be noted that the computer readable medium shown in the embodiments of the present disclosure may be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a Read-Only Memory (ROM), an Erasable Programmable Read-Only Memory (EPROM), a flash Memory, an optical fiber, a portable Compact Disc Read-Only Memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present disclosure, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In contrast, in the present disclosure, a computer-readable signal medium may include a propagated data signal with computer-readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wired, etc., or any suitable combination of the foregoing.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams or flowchart illustration, and combinations of blocks in the block diagrams or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
It should be noted that although in the above detailed description several modules or units of the device for action execution are mentioned, such a division is not mandatory. Indeed, the features and functionality of two or more modules or units described above may be embodied in one module or unit, according to embodiments of the present disclosure. Conversely, the features and functions of one module or unit described above may be further divided into embodiments by a plurality of modules or units.
Through the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein may be implemented by software, or by software in combination with necessary hardware. Therefore, the technical solution according to the embodiments of the present disclosure may be embodied in the form of a software product, which may be stored in a non-volatile storage medium (which may be a CD-ROM, a usb disk, a removable hard disk, etc.) or on a network, and includes several instructions to enable a computing device (which may be a personal computer, a server, a touch terminal, or a network device, etc.) to execute the method according to the embodiments of the present disclosure.
Other embodiments of the disclosure will be apparent to those skilled in the art from consideration of the specification and practice of the disclosure disclosed herein. This application is intended to cover any variations, uses, or adaptations of the disclosure following, in general, the principles of the disclosure and including such departures from the present disclosure as come within known or customary practice within the art to which the disclosure pertains.
It will be understood that the present disclosure is not limited to the precise arrangements described above and shown in the drawings and that various modifications and changes may be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.

Claims (17)

1. An object storage service management method, comprising:
receiving an object storage service request, and analyzing the object storage service request to obtain object metadata;
determining a target cluster in a cluster group comprising at least two object storage server clusters according to the object metadata, wherein each object storage server cluster contains completely consistent user information and storage space information and has different performance and authority grades;
redirecting the object storage service request to the target cluster to obtain return data corresponding to the object storage service request from the target cluster;
and sending the return data to a sender of the object storage service request.
2. The object storage service management method according to claim 1, wherein the determining a target cluster in a cluster group including at least two object storage server clusters according to the object metadata comprises:
acquiring object attribute information and object identification information in the object metadata;
screening at least one candidate cluster corresponding to the object attribute information in a cluster group comprising at least two object storage server clusters;
and performing hash processing on the object identification information to determine a target cluster from the at least one candidate cluster according to a hash processing result.
3. The object storage service management method according to claim 2, wherein the screening of the at least one candidate cluster corresponding to the object attribute information from the cluster group including at least two object storage server clusters comprises:
acquiring performance category information of each object storage server cluster in the cluster group;
and screening the object storage server cluster according to the performance category information to obtain at least one candidate cluster corresponding to the object attribute information.
4. The object storage service management method according to claim 3, wherein the screening the object storage server cluster according to the performance category information to obtain at least one candidate cluster corresponding to the object attribute information includes:
if the object attribute information is hot data, screening out at least one object storage server cluster with performance class information of a high-performance cluster as a candidate cluster;
and if the object attribute information is cold data, screening out at least one object storage server cluster with performance class information of a common cluster as a candidate cluster.
5. The object storage service management method of claim 1, wherein after determining a target cluster in a cluster group comprising at least two object storage server clusters from the object metadata, the method further comprises:
acquiring cluster information of the target cluster;
and associating the cluster information with the object metadata and writing the cluster information and the object metadata into an object search server cluster.
6. The object storage service management method according to claim 1, wherein the determining a target cluster in a cluster group including at least two object storage server clusters according to the object metadata comprises:
obtaining cluster information associated with the object metadata from an object search server cluster;
and determining a target cluster in a cluster group comprising at least two object storage server clusters according to the cluster information.
7. The object storage service management method according to claim 1, wherein the method further comprises:
responding to a storage space creating request, and acquiring cluster authority information of each object storage server cluster;
screening to obtain an object storage server cluster with storage space operation authority according to the cluster authority information;
and forwarding the storage space creation request to the object storage server cluster with the storage space operation authority.
8. The object storage service management method according to claim 1, wherein the method further comprises:
responding to the object enumeration request, and sending a retrieval request to the object search server cluster;
receiving object enumeration data corresponding to the retrieval request returned by the cluster of object search servers;
and sending the object enumeration data to a sender of the object enumeration request.
9. The object storage service management method according to claim 1, wherein the method further comprises:
receiving network address information of a newly added object storage gateway sent by a newly added object storage server cluster through a currently running current object storage service process;
performing object storage test on the newly-added object storage gateway based on the network address information;
and if the test result of the object storage test is that the test is passed, adding the newly added object storage server cluster into the cluster group.
10. The object storage service management method according to claim 9, wherein the performing an object storage test on the newly added object storage gateway based on the network address information includes:
performing a network connection test on the newly added object storage gateway based on the network address information;
and if the test result of the network connection test is that the test is passed, writing test data into the newly added object storage server cluster to perform object storage test on the newly added object storage server cluster.
11. The object storage service management method according to claim 9, wherein the adding the new object storage server cluster to the cluster group comprises:
adding the newly added object storage server cluster into a cluster group managed by the current object storage service process, and updating the service state information of the current object storage service process;
and pushing the updated service state information to other object storage service processes parallel to the current object storage service process.
12. The object storage service management method according to claim 11, wherein the adding the new object storage server cluster to the cluster group managed by the current object storage service process comprises:
acquiring user information and storage space information of any object storage server cluster from the cluster group managed by the current object storage service process;
and synchronizing the acquired user information and the acquired storage space information to the newly added object storage server cluster so as to add the newly added object storage server cluster into the cluster group.
13. The object storage service management method according to claim 1, wherein the method further comprises:
acquiring service process information and cluster management information from a currently running current object storage service process through a newly-added object storage service process;
configuring cluster information of the object storage server cluster managed by the newly-added object storage service process according to the cluster management information;
and performing network connection test on the object storage service process related to the service process information, and sending a joining request to the object storage service process when the test is passed so as to complete service registration of the newly added object storage service process.
14. The object storage service management method according to claim 1, wherein the method further comprises:
acquiring the health state of each object storage server cluster in the cluster group through heartbeat detection;
when an abnormal cluster with abnormal health state exists in the cluster group, performing service authority limitation on the abnormal cluster, and sending a state recovery instruction to the abnormal cluster;
and when the health state of the abnormal cluster is detected to be recovered to be normal, performing service authority recovery on the abnormal cluster.
15. An object storage service management apparatus, the apparatus comprising:
the request analysis module is configured to receive an object storage service request and analyze the object storage service request to obtain object metadata;
a target cluster determination module configured to determine target clusters in a cluster group including at least two object storage server clusters according to the object metadata, each object storage server cluster containing completely consistent user information and storage space information, and each object storage server cluster having different performance and permission ratings;
a request redirection module configured to redirect the object storage service request to the target cluster to obtain return data corresponding to the object storage service request from the target cluster;
a data return module configured to send the return data to a sender of the object storage service request.
16. A computer-readable medium, on which a computer program is stored, which, when being executed by a processor, carries out the object storage service management method of any one of claims 1 to 14.
17. An electronic device, comprising:
a processor; and
a memory for storing executable instructions of the processor;
wherein the processor is configured to perform the object storage service management method of any of claims 1 to 14 via execution of the executable instructions.
CN201911302676.5A 2019-12-17 2019-12-17 Object storage service management method and electronic equipment Active CN111212111B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911302676.5A CN111212111B (en) 2019-12-17 2019-12-17 Object storage service management method and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911302676.5A CN111212111B (en) 2019-12-17 2019-12-17 Object storage service management method and electronic equipment

Publications (2)

Publication Number Publication Date
CN111212111A CN111212111A (en) 2020-05-29
CN111212111B true CN111212111B (en) 2022-05-13

Family

ID=70789236

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911302676.5A Active CN111212111B (en) 2019-12-17 2019-12-17 Object storage service management method and electronic equipment

Country Status (1)

Country Link
CN (1) CN111212111B (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113422789B (en) * 2020-03-26 2022-11-25 山东管理学院 Service deployment method and system in network computing environment
CN111736775B (en) * 2020-06-22 2023-02-03 深圳平安医疗健康科技服务有限公司 Multi-source storage method, device, computer system and storage medium
CN112187918B (en) * 2020-09-27 2023-06-02 北京浪潮数据技术有限公司 Cloud computing platform system and data downloading and uploading method based on object storage
CN112733892A (en) * 2020-12-28 2021-04-30 北京聚云科技有限公司 Data interaction method and device for model training
CN113067853A (en) * 2021-03-12 2021-07-02 北京金山云网络技术有限公司 Data pushing method and device, electronic equipment and storage medium
CN113162980B (en) * 2021-03-18 2022-08-05 苏州云图健康科技有限公司 Data processing method and related device
CN115174687A (en) * 2022-07-21 2022-10-11 亚信科技(中国)有限公司 Service calling method and device, electronic equipment and storage medium
CN115150419B (en) * 2022-09-05 2022-12-06 杭州华卓信息科技有限公司 Configuration and access method and system for hybrid cloud object storage

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104731516A (en) * 2013-12-18 2015-06-24 腾讯科技(深圳)有限公司 Method and device for accessing files and distributed storage system
US9288077B1 (en) * 2012-09-28 2016-03-15 Emc Corporation Cluster file system with server block cache
CN106790434A (en) * 2016-12-05 2017-05-31 上海爱数信息技术股份有限公司 The management method of network data, network attached storage gateway and storage service system
CN108875042A (en) * 2018-06-27 2018-11-23 中国农业银行股份有限公司 A kind of mixing on-line analysing processing system and data query method
CN109343801A (en) * 2018-10-23 2019-02-15 深圳前海微众银行股份有限公司 Date storage method, equipment and computer readable storage medium
US10318491B1 (en) * 2015-03-31 2019-06-11 EMC IP Holding Company LLC Object metadata query with distributed processing systems
CN110196680A (en) * 2018-03-27 2019-09-03 腾讯科技(深圳)有限公司 Data processing method, device and storage medium
CN110262901A (en) * 2019-06-27 2019-09-20 深圳前海微众银行股份有限公司 A kind of data processing method and data processing system

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130179481A1 (en) * 2012-01-11 2013-07-11 Tonian Inc. Managing objects stored in storage devices having a concurrent retrieval configuration
US8799746B2 (en) * 2012-06-13 2014-08-05 Caringo, Inc. Erasure coding and replication in storage clusters
CN103150394B (en) * 2013-03-25 2014-07-23 中国人民解放军国防科学技术大学 Distributed file system metadata management method facing to high-performance calculation
US9697213B1 (en) * 2013-06-12 2017-07-04 EMC IP Holding Company LLC Cluster file system comprising object storage server tier and scale-out network attached storage tier
US9639555B1 (en) * 2013-06-21 2017-05-02 EMC IP Holding Company LLC Object storage server based gateway to network file system cluster
CN104320401B (en) * 2014-10-31 2018-06-22 北京思特奇信息技术股份有限公司 A kind of big data storage based on distributed file system accesses system and method
US10248174B2 (en) * 2016-05-24 2019-04-02 Hedvig, Inc. Persistent reservations for virtual disk using multiple targets
CN106156289A (en) * 2016-06-28 2016-11-23 北京百迈客云科技有限公司 The method of the data in a kind of read-write object storage system and device
CN110134324A (en) * 2018-02-02 2019-08-16 北京京东尚科信息技术有限公司 Data processing method, system, server cluster and electronic equipment
CN108763436A (en) * 2018-05-25 2018-11-06 福州大学 A kind of distributed data-storage system based on ElasticSearch and HBase
CN108881412B (en) * 2018-05-31 2020-09-04 郑州云海信息技术有限公司 Unified management method, system, equipment and storage medium for distributed storage cluster
CN109218100A (en) * 2018-09-21 2019-01-15 郑州云海信息技术有限公司 Distributed objects storage cluster and its request responding method, system and storage medium
CN109327539A (en) * 2018-11-15 2019-02-12 上海天玑数据技术有限公司 A kind of distributed block storage system and its data routing method
CN109840166B (en) * 2019-01-14 2021-03-30 京东数字科技控股有限公司 Cross-cluster object storage asynchronous backup method, device and system

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9288077B1 (en) * 2012-09-28 2016-03-15 Emc Corporation Cluster file system with server block cache
CN104731516A (en) * 2013-12-18 2015-06-24 腾讯科技(深圳)有限公司 Method and device for accessing files and distributed storage system
US10318491B1 (en) * 2015-03-31 2019-06-11 EMC IP Holding Company LLC Object metadata query with distributed processing systems
CN106790434A (en) * 2016-12-05 2017-05-31 上海爱数信息技术股份有限公司 The management method of network data, network attached storage gateway and storage service system
CN110196680A (en) * 2018-03-27 2019-09-03 腾讯科技(深圳)有限公司 Data processing method, device and storage medium
CN108875042A (en) * 2018-06-27 2018-11-23 中国农业银行股份有限公司 A kind of mixing on-line analysing processing system and data query method
CN109343801A (en) * 2018-10-23 2019-02-15 深圳前海微众银行股份有限公司 Date storage method, equipment and computer readable storage medium
CN110262901A (en) * 2019-06-27 2019-09-20 深圳前海微众银行股份有限公司 A kind of data processing method and data processing system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于Ceph的对象存储服务系统的研究与实现;苏进;《中国优秀硕士学位论文全文数据库 信息科技辑》;20190115(第12期);全文 *

Also Published As

Publication number Publication date
CN111212111A (en) 2020-05-29

Similar Documents

Publication Publication Date Title
CN111212111B (en) Object storage service management method and electronic equipment
US9276959B2 (en) Client-configurable security options for data streams
US9858322B2 (en) Data stream ingestion and persistence techniques
US9794135B2 (en) Managed service for acquisition, storage and consumption of large-scale data streams
US9020802B1 (en) Worldwide distributed architecture model and management
US9253055B2 (en) Transparently enforcing policies in hadoop-style processing infrastructures
US11296940B2 (en) Centralized configuration data in a distributed file system
US20190050421A1 (en) Fast Recovery Using Self-Describing Replica Files In A Distributed Storage System
CN111475483B (en) Database migration method and device and computing equipment
CN106331075B (en) Method for storing file, metadata server and manager
US10528374B2 (en) Volume management by virtual machine affiliation auto-detection
US10656869B1 (en) Performance-based volume replica migration
US11409711B2 (en) Barriers for dependent operations among sharded data stores
Kim et al. Human-centric storage resource mechanism for big data on cloud service architecture
CN105095103A (en) Storage device management method and device used for cloud environment
US10474696B2 (en) Replication groups for content libraries
CN110633046A (en) Storage method and device of distributed system, storage equipment and storage medium
US11157456B2 (en) Replication of data in a distributed file system using an arbiter
US9648103B2 (en) Non-uniform file access in a distributed file system
EP3349416B1 (en) Relationship chain processing method and system, and storage medium
US11625192B2 (en) Peer storage compute sharing using memory buffer
CN113032356A (en) Cabin distributed file storage system and implementation method
CN108573049B (en) Data processing method and distributed storage device
CN116107801A (en) Transaction processing method and related product
CN111274004B (en) Process instance management method and device and computer storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant