Object storage method and device, electronic equipment and storage medium

By using flash storage media in object storage systems, the problems of throughput bottlenecks and cache layer cost of mechanical hard disk systems are solved, efficient read and write bandwidth and flexibility are achieved, and the complexity and cost of cache layer are avoided.

CN119322586APending Publication Date: 2025-01-17BEIJING KINGSOFT CLOUD NETWORK TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411336998.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-24
Publication Date
2025-01-17

AI Technical Summary

Technical Problem

The object storage system based on mechanical hard disks has serious throughput bottlenecks, and adding an additional cache layer can ensure read and write bandwidth, resulting in cost and operation and maintenance problems.

Method used

Flash storage media is used to realize object storage. By obtaining target domain names and object data, it is stored in a flash storage bucket when it meets the requirements of fast storage, providing high read and write bandwidth and avoiding the cost and complexity introduced by the cache layer.

Benefits of technology

Without introducing the cache layer, high read and write bandwidth is achieved, throughput bottlenecks of mechanical hard disk systems are overcome, workflow costs are reduced, and the flexibility advantage of the storage and computing separation structure is released.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119322586A_ABST
    Figure CN119322586A_ABST
Patent Text Reader

Abstract

The invention provides an object storage method and device, electronic equipment and a storage medium, and the method comprises the steps: obtaining a target domain name which needs to be accessed by a target user and to-be-stored target object data; and when it is determined that the target domain name meets the top-speed storage requirement, storing the target object data to a target storage bucket indicated by the target domain name and based on a flash storage medium. By means of the method and device, the technical problems that in the prior art, a serious throughput bottleneck exists in an object storage system based on a mechanical hard disk, and the read-write bandwidth can be guaranteed only by adding an additional cache layer are solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of cloud storage technology, and in particular to an object storage method and device, an electronic device, and a storage medium. Background Art

[0002] At present, object storage systems are created to meet the storage needs of large amounts of unstructured data. They have good horizontal expansion capabilities in terms of capacity and performance, and can access and manage large amounts of unstructured data in a simple and low-cost manner. They are the most widely known usage method in the field of cloud storage. AWS S3 (Amazon Simple Storage Service, a distributed object storage service provided by Amazon Web Services) has become the most widely compatible object storage interface protocol due to its extremely high reliability and availability, excellent elasticity, support for multi-tenancy, data security compliance and circulation, etc. It is a common standard in the practice of object storage interface protocols and is defined to support cloud storage.

[0003] In the related technologies, standard object storage uses HDD disks (mechanical hard disks) as the main storage carrier. When facing scenarios such as data cleaning and AIGC (Artificial Intelligence Generated Content), the read and write bandwidth is limited by the throughput capacity of the HDD disk. The bandwidth capacity provided by the unit storage space is very limited. Therefore, the server built-in cache layer solution is often used, such as JuiceFS (an open source distributed file system) and Alluxio (an open source distributed virtual storage system). Object storage systems based on mechanical hard disks have serious throughput bottlenecks. Although the read and write capabilities can be increased on the storage side through the design of hybrid flash and the server built-in cache layer, for continuous writing and reading scenarios, the efficiency and capacity of the cache will become a bottleneck, and eventually penetrate the bottleneck of the mechanical hard disk. In addition, adding an additional cache layer requires additional adaptation for the customer's business, and the cache layer will also introduce a series of problems, such as the long wait for the initial load, the cache hit rate, the cost and operation and maintenance cost caused by the cache space, etc.

[0004] Therefore, the object storage system based on mechanical hard disk in the related technology has a serious throughput bottleneck, and it is a technical problem to add an additional cache layer to ensure the read and write bandwidth. Summary of the invention

[0005] The present application provides an object storage method and device, an electronic device and a storage medium, so as to at least solve the technical problem in the related art that an object storage system based on a mechanical hard disk has a serious throughput bottleneck and an additional cache layer is required to ensure the read and write bandwidth.

[0006] According to one aspect of an embodiment of the present application, there is provided an object storage method, including:

[0007] Obtain the target domain name that the target user needs to access and the target object data to be stored;

[0008] When it is determined that the target domain name meets the ultra-fast storage requirement, the target object data is stored in a target storage bucket indicated by the target domain name and based on a flash storage medium.

[0009] Optionally, as in the aforementioned method, the method further comprises:

[0010] Obtaining a storage bucket opening request from a target user, wherein the storage bucket opening request is used to request opening a storage bucket that meets the target storage requirement;

[0011] When the target storage requirement meets the ultra-fast storage requirement, the target storage bucket based on the flash storage medium is opened and obtained.

[0012] Optionally, as in the aforementioned method, when the target storage requirement meets the ultra-fast storage requirement, opening and obtaining the target storage bucket based on the flash storage medium includes:

[0013] Acquire a target domain name corresponding to the target storage bucket, wherein the target domain name is a domain name used to achieve storage performance according to the extreme speed storage requirement;

[0014] Obtaining object storage quota information of the target user, wherein the object storage quota information includes a read and write bandwidth speed corresponding to the target user;

[0015] A correspondence between the target domain name and the read / write bandwidth of the target user is established according to the object storage quota information, and the target storage bucket is enabled based on the correspondence.

[0016] Optionally, in the aforementioned method, the extremely fast storage requirement includes at least one of the following:

[0017] The performance required by the storage service is higher than the preset storage performance;

[0018] The required bucket type is a directory bucket.

[0019] Optionally, as in the aforementioned method, storing the target object data in a target storage bucket indicated by the target domain name and based on a flash storage medium includes:

[0020] The target object data is stored in a target data storage cluster located in a target availability zone, wherein the target data storage cluster is a data storage cluster corresponding to the target storage bucket.

[0021] Optionally, as in the aforementioned method, the method further comprises:

[0022] Creating a copy corresponding to the target object data;

[0023] The replica and a target client that needs to use the target object data are also stored in the target availability zone.

[0024] Optionally, as in the aforementioned method, the method further comprises:

[0025] Determine in real time the latest storage category corresponding to the target object data, wherein the storage category includes: an extreme-speed storage category corresponding to extreme-speed storage requirements, a standard storage category, a low-frequency storage category, and an archive storage category;

[0026] According to the latest storage category, the target object data is migrated to a designated cluster corresponding to the latest storage category.

[0027] According to another aspect of an embodiment of the present application, there is also provided an object storage device, including:

[0028] An acquisition module is used to acquire a target domain name that a target user needs to access and target object data to be stored;

[0029] The storage module is used to store the target object data in a target storage bucket indicated by the target domain name and based on a flash storage medium when it is determined that the target domain name meets the ultra-fast storage requirement.

[0030] According to another aspect of the embodiments of the present application, there is also provided an electronic device, including a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other via the communication bus; wherein the memory is used to store a computer program; and the processor is used to execute the method steps in any of the above embodiments by running the computer program stored in the memory.

[0031] According to another aspect of the embodiments of the present application, a computer-readable storage medium is provided, in which a computer program is stored, wherein the computer program is configured to execute the method steps in any of the above embodiments when executed.

[0032] In the embodiment of the present application, the object storage is implemented by flash memory storage medium, by obtaining the target domain name that the target user needs to access and the target object data to be stored; when it is determined that the target domain name meets the ultra-fast storage requirements, the target object data is stored in the target storage bucket indicated by the target domain name and based on the flash memory storage medium. Since object storage is implemented by flash memory storage medium, it can provide read and write bandwidths similar to or even higher than the cache layer, and will not introduce additional workflow costs due to the cache layer, it can better release the flexibility advantages of the storage and computing separation structure, so that the purpose of overcoming the serious throughput bottleneck of the object storage system of the mechanical hard disk can be achieved without introducing a cache layer, and the technical effect of ensuring high read and write bandwidth without introducing a cache layer is achieved, thereby solving the technical problem that the object storage system based on the mechanical hard disk has a serious throughput bottleneck in the related technology, and the read and write bandwidth can only be guaranteed by adding an additional cache layer. BRIEF DESCRIPTION OF THE DRAWINGS

[0033] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.

[0034] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.

[0035] Figure 1 is a schematic diagram of a hardware environment of an optional object storage method according to an embodiment of the present application;

[0036] Figure 2 is a flowchart of an optional object storage method according to an embodiment of the present application;

[0037] Figure 3 is a flowchart of another optional object storage method according to an embodiment of the present application;

[0038] Figure 4 is a flowchart of another optional object storage method according to an embodiment of the present application;

[0039] Figure 5 is a flowchart of another optional object storage method according to an embodiment of the present application;

[0040] Figure 6 is a structural block diagram of an optional object storage device according to an embodiment of the present application;

[0041] Figure 7 It is a structural block diagram of an optional electronic device according to an embodiment of the present application. DETAILED DESCRIPTION

[0042] In order to enable those skilled in the art to better understand the solution of the present application, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present application.

[0043] It should be noted that the terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device comprising a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0044] First, some nouns or terms that appear in the description of the embodiments of the present application are subject to the following interpretation:

[0045] Object Storage is a distributed storage system mainly used to store unstructured data, such as documents, pictures, videos, audio files, etc. Compared with traditional file systems, object storage has higher scalability, flexibility and cost-effectiveness.

[0046] According to one aspect of an embodiment of the present application, a method for storing an object is provided. Optionally, in this embodiment, the object storage method can be applied to Figure 1 In the hardware environment composed of terminal 1402 and server 1404 shown in FIG. Figure 1 As shown, server 1404 is connected to terminal 1402 via a network, and can be used to provide services (such as game services, application services, etc.) for the terminal or a client installed on the terminal. A database can be set up on the server or independently of the server to provide data storage services for server 1404.

[0047] The above network may include but is not limited to at least one of the following: wired network, wireless network. The above wired network may include but is not limited to at least one of the following: wide area network, metropolitan area network, local area network, and the above wireless network may include but is not limited to at least one of the following: WIFI (Wireless Fidelity), Bluetooth. The terminal may not be limited to a PC, a mobile phone, a tablet computer, etc.

[0048] The object storage method of the embodiment of the present application can be executed by a server, a terminal, or a server and a terminal together. The terminal can also execute the object storage method of the embodiment of the present application by a client installed thereon.

[0049] Taking the object storage method in this embodiment executed by the server as an example, Figure 2 An object storage method provided in an embodiment of the present application includes the following steps:

[0050] Step S202: obtaining a target domain name to be accessed by a target user and target object data to be stored.

[0051] The object storage method in this embodiment can be applied to the scenario of storing object data in an object storage system, for example, storing documents in an object storage system, storing videos in an object storage system, storing audio in an object storage system, etc. It can also be applied to the scenario of storing other types of object data in an object storage system. For other types of media resources, the above object storage method is also applicable if there is no contradiction.

[0052] The target user may be a user with read and write permissions on the object storage system that implements the method of this embodiment. The target user may store the target object data to be stored in the object storage system. The target object data may be object data of the type of document, picture, video, audio file, etc. In order to store the target object data in the object storage system, it is necessary to access the target domain name to access the target storage bucket (Bucket) pointed to by the target domain name, so that the target object data can be stored in the target storage bucket later.

[0053] Step S204: When it is determined that the target domain name meets the ultra-fast storage requirement, the target object data is stored in a target storage bucket indicated by the target domain name and based on a flash storage medium.

[0054] After obtaining the target domain name, it can be determined whether the target domain name meets the ultra-fast storage requirement. For example, a first domain name format corresponding to the ultra-fast storage requirement (for example, containing a corresponding character string) and a second domain name format corresponding to the standard storage requirement can be pre-set. Therefore, it can be determined whether the target domain name complies with the first domain name format. When it is determined that it complies with the first domain name format, the target domain name is determined to meet the ultra-fast storage requirement; otherwise, it is determined to meet the standard storage requirement.

[0055] When it is determined that the target domain name meets the ultra-fast storage requirements, the target object data is stored in the target bucket indicated by the target domain name. In other words, the target domain name is a custom domain name pointing to the default domain name of the target bucket. For example, when the target domain name is my-storage.example.com, the target domain name can point to the default domain name of the target bucket, my-bucket.pl2.ksc.com. In addition, the target bucket is a bucket based on flash storage media, that is, the data in the target bucket is stored on one or more nodes of a data storage cluster based on flash storage media, so that the target object data is stored in the flash storage media.

[0056] As an optional implementation, the target object data in the target storage bucket indicated by the target domain name and based on the flash storage medium in the aforementioned step S204 can be stored in the following method: the target object data is stored in the target data storage cluster located in the target availability zone, wherein the target data storage cluster is the data storage cluster corresponding to the target storage bucket. Specifically, the target data storage cluster corresponding to the target storage bucket can be determined, and after the target data storage cluster is determined, the availability zone where the target data storage cluster is deployed can be confirmed and recorded as within the target availability zone.

[0057] As an optional implementation, as in the aforementioned method, the method further includes the following steps: creating a copy corresponding to the target object data; storing the copy and the target client that needs to use the target object data in the target availability zone. That is to say, in order to achieve data reliability, a copy corresponding to the target object data is also created. Optionally, a multi-copy mechanism can be started to create at least one copy, and the copy and the target client that needs to use the target object data are also stored in the target availability zone. By storing the target object data, the copy and the target client in the same target availability zone, it can be ensured that the data is efficiently stored in the target availability zone, and high-performance access can be achieved according to demand.

[0058] In the embodiment of the present application, the object storage is implemented by flash memory storage medium, by obtaining the target domain name that the target user needs to access and the target object data to be stored; when it is determined that the target domain name meets the ultra-fast storage requirements, the target object data is stored in the target storage bucket indicated by the target domain name and based on the flash memory storage medium. Since object storage is implemented by flash memory storage medium, it can provide read and write bandwidths similar to or even higher than the cache layer, and will not introduce additional workflow costs due to the cache layer, it can better release the flexibility advantages of the storage and computing separation structure, so that the purpose of overcoming the serious throughput bottleneck of the object storage system of the mechanical hard disk can be achieved without introducing a cache layer, and the technical effect of ensuring high read and write bandwidth without introducing a cache layer is achieved, thereby solving the technical problem that the object storage system based on the mechanical hard disk has a serious throughput bottleneck in the related technology, and the read and write bandwidth can only be guaranteed by adding an additional cache layer.

[0059] like Figure 3 As shown, as an optional implementation, as the above method, the method further includes the following steps:

[0060] Step S302: Obtain a bucket activation request from a target user, wherein the bucket activation request is used to request activation of a bucket that meets target storage requirements.

[0061] Specifically, before storing the object data to be stored through the flash storage medium, it is necessary to apply for opening a target storage bucket based on the flash storage medium. Therefore, the object storage system can obtain a storage bucket opening request from the target user, and the storage bucket opening request can carry the target storage requirements required by the target user, such as storage media, read and write bandwidth, etc.

[0062] Step S304: when the target storage requirement meets the ultra-fast storage requirement, a target storage bucket based on the flash storage medium is opened.

[0063] Specifically, after obtaining the storage bucket activation request, the above-mentioned target storage requirements can be obtained based on the storage bucket activation request, and then the target storage requirements can be compared with the ultra-speed storage requirements to determine whether the ultra-speed storage requirements are met. For example, the various field information in the target storage requirements can be matched with the field information corresponding to the ultra-speed storage requirements. When they match, it is determined that the target storage requirements meet the ultra-speed storage requirements, and then the target storage bucket based on flash storage media can be activated.

[0064] As an optional implementation, as in the aforementioned method, the ultra-fast storage requirement includes at least one of the following: the performance required by the storage service is higher than the preset storage performance; the type of the required storage bucket is a directory bucket. Optionally, the preset storage performance can be a storage performance that cannot be met by a mechanical hard disk but can be met by a flash storage medium, which is suitable for frequently accessed data. A directory bucket is a storage bucket that satisfies the "list (i.e., listing objects) priority mode". List priority means that when the metadata capability is limited as a whole, the list capability is prioritized. In the "list priority mode", the user hopes to simulate the directory structure of the file system in the object storage service, and can efficiently list the objects in the bucket and their directory structure. This mode is suitable for scenarios where frequent queries and management of objects are required. This mode may be useful in certain specific situations, such as: 1. Batch operation: when you need to view all objects in the bucket and then perform batch operations (such as deletion, copying, etc.). 2. Data management: when you need to manage or audit objects in a bucket, list all objects before performing operations.

[0065] like Figure 4 As shown, as an optional implementation, the aforementioned step S304 can be implemented by the method described in steps S402 to S406 as follows, when the target storage requirement meets the ultra-fast storage requirement, to open and obtain a target storage bucket based on a flash storage medium:

[0066] Step S402, obtaining a target domain name corresponding to the target storage bucket, wherein the target domain name is a domain name used to achieve storage performance in accordance with the ultra-fast storage requirement.

[0067] Specifically, you can first open a bucket according to the bucket opening request, then determine the bucket that needs to be configured, such as my-bucket. Finally, obtain a custom target domain name configured by the target user for binding to the target bucket, such as my-storage.example.com, and point the custom target domain name to the default domain name of the bucket my-bucket.

[0068] Step S404: Obtain object storage quota information of the target user, wherein the object storage quota information includes the read and write bandwidth speed corresponding to the target user.

[0069] Obtain the object storage quota information of the target user (or account), which usually includes but is not limited to: read and write bandwidth speed, storage capacity, etc. Record the object storage quota information of the target user, especially the read and write bandwidth speed.

[0070] Furthermore, when the target user's object storage capacity is insufficient to meet its needs, the throughput can be increased by purchasing additional traffic packages, and then the object storage system can obtain a request from the target user for purchasing a separate traffic package. After completing the separate purchase of the traffic package in response to the request, the target user can achieve higher throughput under limited storage capacity. This method is suitable for scenarios where storage capacity is limited but high throughput is required, such as: 1. Short-term high load: For example, customers may need to process a large amount of data within a specific time period, such as e-commerce platforms during holiday promotions. 2. Burst traffic: For example, applications may encounter sudden traffic peaks, such as popular live broadcast periods on live broadcast platforms. 3. Data processing tasks: For example, customers may need to process a large amount of data in a short period of time, such as big data analysis jobs, model training, etc.

[0071] Step S406: establish a correspondence between the target domain name and the read / write bandwidth of the target user according to the object storage quota information, and activate the target storage bucket based on the correspondence.

[0072] Specifically, after obtaining the object storage quota information and the target domain name according to the target user, the object storage quota information can be applied to the target domain name in advance. For example, if the read and write bandwidth of the target user is 100Mbps, this bandwidth limit is applied to the target domain name. After establishing the object relationship, you can configure the Nginx speed limit: use Nginx as a reverse proxy server and configure the speed limit rules. Specifically, add the speed limit rules in the Nginx configuration file to control the bandwidth usage when accessing the bucket through the custom domain name. After ensuring that the bucket to be opened has been configured according to the above requirements, the target bucket is obtained.

[0073] like Figure 5 As shown, as an optional implementation, as the above method, the method further includes the following steps:

[0074] Step S502, determining in real time the latest storage category corresponding to the target object data, wherein the storage categories include: an ultra-fast storage category corresponding to an ultra-fast storage requirement, a standard storage category, a low-frequency storage category, and an archive storage category.

[0075] That is to say, the target user can adjust the storage category of the target object data. Optionally, the latest storage category can be the target user setting the life cycle and transferring the target object data from the above-mentioned target data storage cluster data flow to the standard storage category, low-frequency storage category or archive storage category cluster according to specific rules, or it can be determined by the target user manually modifying the storage category of the target object data. Among them, the extreme storage category is suitable for data that requires high-frequency access, provides the lowest latency and the highest throughput, and has a higher storage cost; the standard storage category is suitable for frequently accessed data, provides lower latency and higher throughput, and has a relatively high cost, but is lower than the extreme storage category; the low-frequency storage category is suitable for data that is not frequently accessed (for example, the access frequency is lower than the preset frequency lower limit) but needs to be accessed quickly, and the storage cost is lower than the standard storage, and additional fees may be required when accessing the data; the archive storage category is suitable for rarely accessed data, has the lowest cost, and requires a longer recovery time when accessing the data.

[0076] Step S504: according to the latest storage category, migrate the target object data to a designated cluster corresponding to the latest storage category.

[0077] After determining the latest storage category corresponding to the target object data, the target object data can be migrated to the specified cluster corresponding to the latest storage category to maximize the performance of different clusters.

[0078] In addition, target users can also use tools to load existing object data from the standard storage class, low-frequency storage class, and archive storage class to the cluster corresponding to the ultra-fast storage class to achieve high-throughput and low-latency access to existing object data.

[0079] It should be noted that, for the aforementioned method embodiments, for the sake of simplicity, they are all expressed as a series of action combinations, but those skilled in the art should be aware that the present application is not limited by the described order of actions, because according to the present application, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required by the present application.

[0080] Through the description of the above implementation methods, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course it can also be implemented by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of the present application, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as ROM (Read-Only Memory) / RAM (Random Access Memory), a magnetic disk, or an optical disk), and includes a number of instructions for a terminal device (which can be a mobile phone, a computer, a server, or a network device, etc.) to execute the methods of each embodiment of the present application.

[0081] According to another aspect of an embodiment of the present application, an object storage device for implementing the above-mentioned object storage method is also provided. Figure 6 is a structural block diagram of an optional object storage device according to an embodiment of the present application, such as Figure 6 As shown, the device may include:

[0082] An acquisition module 61 is used to acquire a target domain name that a target user needs to access and target object data to be stored;

[0083] The storage module 62 is used to store the target object data in a target storage bucket indicated by the target domain name and based on the flash storage medium when it is determined that the target domain name meets the ultra-fast storage requirement.

[0084] It should be noted that the acquisition module 61 in this embodiment can be used to execute the above step S202, and the storage module 62 in this embodiment can be used to execute the above step S204.

[0085] Through the above module, the object storage is realized by flash storage medium, by obtaining the target domain name that the target user needs to access and the target object data to be stored; when it is determined that the target domain name meets the ultra-fast storage requirements, the target object data is stored in the target storage bucket indicated by the target domain name and based on the flash storage medium. Since object storage is realized by flash storage medium, it can provide read and write bandwidths similar to or even higher than the cache layer, and will not introduce additional workflow costs due to the cache layer, it can better release the flexibility advantages of the storage and computing separation structure, so as to achieve the purpose of overcoming the serious throughput bottleneck of the object storage system of the mechanical hard disk without introducing a cache layer, and achieve the technical effect of ensuring high read and write bandwidth without introducing a cache layer, thereby solving the technical problem that the object storage system based on the mechanical hard disk has a serious throughput bottleneck in the related technology, and the read and write bandwidth can only be guaranteed by adding an additional cache layer.

[0086] As an optional embodiment, the aforementioned device further includes:

[0087] A request acquisition module, used to acquire a storage bucket activation request from a target user, wherein the storage bucket activation request is used to request the activation of a storage bucket that meets the target storage requirements;

[0088] The activation module is used to activate a target storage bucket based on a flash storage medium when the target storage requirement meets the ultra-fast storage requirement.

[0089] As an optional implementation, in the aforementioned device, the activation module is configured as follows:

[0090] Obtain a target domain name corresponding to a target storage bucket, wherein the target domain name is a domain name used to achieve storage performance according to an extreme-speed storage requirement;

[0091] Obtaining the object storage quota information of the target user, wherein the object storage quota information includes the read and write bandwidth speed corresponding to the target user;

[0092] A correspondence between the target domain name and the read / write bandwidth of the target user is established according to the object storage quota information, and the target storage bucket is opened based on the correspondence.

[0093] As an optional implementation, in the aforementioned device, the ultra-fast storage requirement includes at least one of the following:

[0094] The performance required by the storage service is higher than the preset storage performance;

[0095] The required bucket type is a directory bucket.

[0096] As an optional implementation, as in the aforementioned device, the storage module 62 is configured as follows:

[0097] The target object data is stored in the target data storage cluster located in the target availability zone, where the target data storage cluster is the data storage cluster corresponding to the target storage bucket.

[0098] As an optional implementation, the aforementioned device further includes:

[0099] A copy creation unit, used to create a copy corresponding to the target object data;

[0100] The storage unit is used to store the replica and the target client that needs to use the target object data in the target availability zone.

[0101] As an optional implementation manner, the aforementioned apparatus further includes a migration module configured to:

[0102] Determine in real time the latest storage category corresponding to the target object data, where the storage categories include: an extreme storage category corresponding to extreme storage requirements, a standard storage category, a low-frequency storage category, and an archive storage category;

[0103] According to the latest storage category, migrate the target object data to the specified cluster corresponding to the latest storage category.

[0104] The device in this embodiment, in addition to the above modules, may also include a module for executing any method in any of the above-mentioned object storage method embodiments.

[0105] It should be noted that the examples and application scenarios implemented by the above modules and corresponding steps are the same, but are not limited to the contents disclosed in the above embodiments. It should be noted that the above modules as part of the device can be run in Figure 1 In the hardware environment shown, it can be implemented by software or by hardware, wherein the hardware environment includes a network environment.

[0106] According to another aspect of an embodiment of the present application, an electronic device for implementing the above-mentioned object storage method is also provided. The electronic device may be a server, a terminal, or a combination thereof.

[0107] According to another embodiment of the present application, there is also provided an electronic device, including: Figure 7 As shown, the electronic device may include: a processor 1501 , a communication interface 1502 , a memory 1503 and a communication bus 1504 , wherein the processor 1501 , the communication interface 1502 , and the memory 1503 communicate with each other via the communication bus 1504 .

[0108] Memory 1503, used for storing computer programs;

[0109] The processor 1501 is used to implement the following steps when executing the program stored in the memory 1503:

[0110] Step S202, obtaining a target domain name that a target user needs to access and target object data to be stored;

[0111] Step S204: When it is determined that the target domain name meets the ultra-fast storage requirement, the target object data is stored in a target storage bucket indicated by the target domain name and based on a flash storage medium.

[0112] Optionally, in this embodiment, the above-mentioned communication bus can be a PCI (Peripheral Component Interconnect) bus, or an EISA (Extended Industry Standard Architecture) bus, etc. The communication bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one thick line is used in the figure, but it does not mean that there is only one bus or one type of bus. The communication interface is used for communication between the above-mentioned electronic device and other devices.

[0113] The memory may include a random access memory (RAM) or a non-volatile memory (NVM), such as at least one disk memory. Optionally, the memory may also be at least one storage device located away from the aforementioned processor.

[0114] As an example, the memory 1503 may include, but is not limited to, the acquisition module 61 and the storage module 62 in the object storage device. In addition, it may also include, but is not limited to, other module units in the object storage device, which will not be described in detail in this example.

[0115] The above-mentioned processor can be a general-purpose processor, which can include but not be limited to: CPU (Central Processing Unit), NP (Network Processor), etc.; it can also be DSP (Digital Signal Processor), ASIC (Application Specific Integrated Circuit), FPGA (Field-Programmable Gate Array) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.

[0116] An embodiment of the present application further provides a computer-readable storage medium, the storage medium including a stored program, wherein the method steps of the above method embodiment are executed when the program is run.

[0117] Optionally, in this embodiment, the storage medium may include, but is not limited to, various media that can store program codes, such as a USB flash drive, a ROM, a RAM, a mobile hard disk, a magnetic disk, or an optical disk.

[0118] The serial numbers of the above-mentioned embodiments of the present application are for description only and do not represent the advantages or disadvantages of the embodiments.

[0119] If the integrated units in the above embodiments are implemented in the form of software functional units and sold or used as independent products, they can be stored in the above computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for enabling one or more computer devices (which may be personal computers, servers, or network devices, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present application.

[0120] In the above embodiments of the present application, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, please refer to the relevant description of other embodiments.

[0121] In the several embodiments provided in the present application, it should be understood that the disclosed client can be implemented in other ways. Among them, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of units or modules, which can be electrical or other forms.

[0122] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution provided in this embodiment.

[0123] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0124] The above is only a preferred implementation of the present application. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present application. These improvements and modifications should also be regarded as the scope of protection of the present application.

Claims

1. An object storage method, characterized in that: include: Obtain the target domain name that the target user needs to access and the target object data to be stored; When it is determined that the target domain name meets the ultra-fast storage requirement, the target object data is stored in a target storage bucket indicated by the target domain name and based on a flash storage medium.

2. The method according to claim 1, characterized in that The method further comprises: Obtaining a storage bucket opening request from a target user, wherein the storage bucket opening request is used to request opening a storage bucket that meets the target storage requirement; When the target storage requirement meets the ultra-fast storage requirement, the target storage bucket based on the flash storage medium is opened and obtained.

3. The method according to claim 2, characterized in that When the target storage requirement meets the ultra-fast storage requirement, the target storage bucket based on the flash storage medium is opened and obtained, including: Acquire a target domain name corresponding to the target storage bucket, wherein the target domain name is a domain name used to achieve storage performance according to the extreme speed storage requirement; Obtaining object storage quota information of the target user, wherein the object storage quota information includes a read and write bandwidth speed corresponding to the target user; A correspondence between the target domain name and the read / write bandwidth of the target user is established according to the object storage quota information, and the target storage bucket is enabled based on the correspondence.

4. The method according to claim 1, characterized in that: The ultra-fast storage requirement includes at least one of the following: The performance required by the storage service is higher than the preset storage performance; The required bucket type is a directory bucket.

5. The method according to claim 1, characterized in that The storing the target object data in a target storage bucket indicated by the target domain name and based on a flash storage medium includes: The target object data is stored in a target data storage cluster located in a target availability zone, wherein the target data storage cluster is a data storage cluster corresponding to the target storage bucket.

6. The method according to claim 5, characterized in that The method further comprises: Creating a copy corresponding to the target object data; The replica and a target client that needs to use the target object data are also stored in the target availability zone.

7. The method according to any one of claims 1 to 6, characterized in that The method further comprises: Determine in real time the latest storage category corresponding to the target object data, wherein the storage category includes: an extreme-speed storage category corresponding to extreme-speed storage requirements, a standard storage category, a low-frequency storage category, and an archive storage category; According to the latest storage category, the target object data is migrated to a designated cluster corresponding to the latest storage category.

8. An object storage device, characterized in that: include: An acquisition module is used to acquire a target domain name that a target user needs to access and target object data to be stored; The storage module is used to store the target object data in a target storage bucket indicated by the target domain name and based on a flash memory storage medium when it is determined that the target domain name meets the ultra-fast storage requirement.

9. An electronic device comprising a processor, a communication interface, a memory and a communication bus, wherein: The processor, the communication interface and the memory communicate with each other via the communication bus, wherein: The memory is used to store computer programs; The processor is configured to execute the method according to any one of claims 1 to 7 by running the computer program stored in the memory.

10. A computer-readable storage medium, characterized in that: The storage medium stores a computer program, wherein the computer program is configured to execute the method according to any one of claims 1 to 7 when executed.