Object data access method, device, system, apparatus, medium and product

CN119561983BActive Publication Date: 2026-09-08CHINA TELECOM CLOUD TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202411760981.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-03
Publication Date
2026-09-08
Estimated Expiration
2044-12-03

AI Technical Summary

Technical Problem

[0002]在对象存储系统中,客户端向对象存储池请求规模较大的对象数据时,直接将整个请求发送到对象存储池可能会造成网络带宽和存储资源的压力,在客户端读取对象数据时,因为客户端实现或者网络异常的原因,原本期望读取的内容长度,未发送完即过早断开连接;但因为对象存储网关存在缓存,预读了大量的数据,此时数据在对象存储网关上缓存,不仅占用系统资源,也影响对象存储系统整体性能

Benefits of technology

[0032] The aforementioned object data access methods, apparatus, systems, devices, media, and products, in one aspect, provide an object data access method that receives an initial request sent by a client; if the initial request meets preset segmentation conditions, segments the initial request to obtain segmented requests; based on the segmented requests, requests data from an object storage pool, receives the first target object data returned by the object storage pool based on the segmented requests, and sends the first target object data to the client. In this way, when the object storage gateway receives a large initial request from the client, segmenting the initial request effectively reduces the bandwidth consumption of a single request, avoids excessive network bandwidth usage by a single request, reduces the time required for each request, lowers the probability of timeouts, improves the overall network performance and stability, and thus improves the efficiency of the object data access method.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119561983B_ABST
    Figure CN119561983B_ABST
Patent Text Reader

Abstract

The application relates to an object data access method, device, system, equipment, medium and product. In one aspect, the object data access method comprises the following steps: receiving an initial request sent by a client; performing segmentation processing on the initial request to obtain a segmented request in the case that the initial request meets preset segmentation conditions; requesting data from an object storage pool according to the segmented request, receiving first target object data returned by the object storage pool based on the segmented request, and sending the first target object data to the client. The method can improve the efficiency of object data access.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of data processing technology, and in particular to an object data access method, apparatus, system, device, medium and product. Background Technology

[0002] In an object storage system, when a client requests a large amount of object data from the object storage pool, sending the entire request directly to the object storage pool may put pressure on network bandwidth and storage resources. When the client reads the object data, due to client implementation issues or network anomalies, the expected length of content to be read may be prematurely disconnected before the entire request is sent. However, because the object storage gateway has a cache, it pre-reads a large amount of data. At this point, the data is cached on the object storage gateway, which not only consumes system resources but also affects the overall performance of the object storage system.

[0003] In related technologies, all requests are sharded at the object storage gateway, which can save resources from excessive consumption caused by requesting complete data. However, the industry-standard request sharding function is enabled uniformly. A large number of normal requests also execute sharded requests, which will lead to a significant increase in the number of backend requests and load, resulting in low efficiency of object data access. Summary of the Invention

[0004] Therefore, it is necessary to provide an object data access method, apparatus, system, device, medium, and product that can improve the efficiency of object data access in order to address the above-mentioned technical problems.

[0005] Firstly, this application provides an object data access method, the method comprising:

[0006] Receive the initial request sent by the client;

[0007] If the initial request meets the preset segmentation conditions, the initial request is segmented to obtain a segmented request.

[0008] Based on the segmented request, request data from the object storage pool, receive the first target object data returned by the object storage pool based on the segmented request, and send the first target object data to the client.

[0009] In one embodiment, if the initial request meets preset segmentation conditions, the initial request is segmented to obtain a segmented request, including:

[0010] The initial request is analyzed and processed to obtain segmented information, which includes: request header time, client version, and network bandwidth jitter.

[0011] Based on the segmentation conditions, the segmented information is matched to obtain the matching results;

[0012] If the matching result is successful, the initial request is segmented to obtain segmented requests.

[0013] In one embodiment, the segmented information is matched based on segmentation conditions to obtain matching results, including:

[0014] For each segment information, the segment conditions corresponding to the segment information are compared and processed to obtain the sub-matching results corresponding to the segment information.

[0015] The matching result is determined based on the number of successful matches in the sub-matching results.

[0016] In one embodiment, the initial request is analyzed to obtain segmentation information, including:

[0017] Perform permission authentication on the initial request to obtain the permission authentication result;

[0018] If the authentication result is successful, the initial request is parsed to obtain segmentation information.

[0019] In one embodiment, the method further includes:

[0020] If the initial request does not meet the segmentation conditions, data is requested from the object storage pool according to the initial request, and the second target object data returned by the object storage pool based on the initial request is received and sent to the client.

[0021] Secondly, this application also provides an object data access device, comprising:

[0022] The request receiving module is used to receive initial requests sent by clients;

[0023] The segmentation processing module is used to segment the initial request into segments if the initial request meets the preset segmentation conditions, so as to obtain segmented requests.

[0024] The data request module is used to request data from the object storage pool according to the segmented request, receive the first target object data returned by the object storage pool based on the segmented request, and send the first target object data to the client.

[0025] Thirdly, this application also provides an object storage system, the system comprising:

[0026] Client;

[0027] Object storage pool; and

[0028] The object storage gateway is used to execute the methods of the first aspect.

[0029] Fourthly, this application also provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the method of the first aspect.

[0030] Fifthly, this application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the method of the first aspect.

[0031] Sixthly, this application also provides a computer program product, including a computer program that, when executed by a processor, implements the method of the first aspect.

[0032] The aforementioned object data access methods, apparatus, systems, devices, media, and products, in one aspect, provide an object data access method that receives an initial request sent by a client; if the initial request meets preset segmentation conditions, segments the initial request to obtain segmented requests; based on the segmented requests, requests data from an object storage pool, receives the first target object data returned by the object storage pool based on the segmented requests, and sends the first target object data to the client. In this way, when the object storage gateway receives a large initial request from the client, segmenting the initial request effectively reduces the bandwidth consumption of a single request, avoids excessive network bandwidth usage by a single request, reduces the time required for each request, lowers the probability of timeouts, improves the overall network performance and stability, and thus improves the efficiency of the object data access method. Attached Figure Description

[0033] To more clearly illustrate the technical solutions in the embodiments or related technologies of this application, the accompanying drawings used in the description of the embodiments or related technologies will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0034] Figure 1 This is an application environment diagram of an object data access method in one embodiment;

[0035] Figure 2 This is a flowchart illustrating an object data access method in one embodiment;

[0036] Figure 3 This is a flowchart illustrating an object data access method in another embodiment;

[0037] Figure 4 This is a structural block diagram of an object data access device in one embodiment;

[0038] Figure 5This is a block diagram of an object storage system in one embodiment;

[0039] Figure 6 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation

[0040] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.

[0041] The object data access method provided in this application embodiment can be applied to, for example, Figure 1 The object storage system shown includes a client 102, an object storage gateway 104, and an object storage pool 106. The client 102 communicates with the object storage pool 106 through the object storage gateway 104. The object storage pool 106 is a collection of physical or logical storage used to store object data, consisting of multiple storage nodes, such as solid-state drives, providing elastic, scalable, and highly reliable storage services. The client may use traditional file system protocols, such as NFS (Network File System) or SMB (Server Message Block), while the object storage pool 106 typically provides services through object storage protocols. The object storage gateway 104 is responsible for converting traditional protocols to object storage protocols, enabling applications to seamlessly access storage. The client 102 can be, but is not limited to, various personal computers, laptops, smartphones, tablets, IoT devices, and portable wearable devices. IoT devices can include smart speakers, smart TVs, smart air conditioners, smart in-vehicle devices, etc. Portable wearable devices can include smartwatches, smart bracelets, head-mounted devices, etc.

[0042] In one exemplary embodiment, such as Figure 2 As shown, an object data access method is provided, which is applied to... Figure 1 Taking the object storage gateway 104 as an example, the explanation includes the following steps 202 to 206. Wherein:

[0043] Step 202: Receive the initial request sent by the client.

[0044] The initial request may include an access request for one or more object data in the object storage pool.

[0045] Step 204: If the initial request meets the preset segmentation conditions, the initial request is segmented to obtain a segmented request.

[0046] In one possible implementation, step 204 may further include: analyzing and processing the initial request to obtain segmentation information, which includes: request header time, client version, and network bandwidth jitter; performing matching processing on the segmentation information based on the segmentation conditions to obtain a matching result; and, if the matching result is successful, performing segmentation processing on the initial request to obtain segmented requests.

[0047] The preset segmentation conditions can be range-based judgment conditions based on quantitative data such as client version identifier, request header time, and network latency jitter. The matching process refers to comparing the segmentation information corresponding to the initial request with the range in the segmentation conditions. If the segmentation information falls within the range, the matching result is a successful match; if the segmentation information does not fall within the range, the matching result is a failed match.

[0048] For client version identifiers, older clients may lack optimized segmentation support or have lower bandwidth utilization, thus requiring segmentation to ensure efficient data transmission. Newer clients typically support more efficient data transmission methods, parallel processing, and better error recovery mechanisms; therefore, for these clients, segmentation can be determined based on network conditions and the nature of the request. The segmentation condition corresponding to the client version identifier can be higher than a pre-set condition version identifier. If the client version identifier corresponding to the initial request is lower than the condition version identifier, the initial request needs to be segmented; if the client version identifier corresponding to the initial request is higher than the condition version identifier, no segmentation is required, and the initial request can be directly sent to the object storage pool.

[0049] The request header timeout reflects the time required from the client sending the initial request header to the object storage gateway receiving the response. Segmenting the initial request in this case prevents a single request from slowing down the overall system response time during transmission. A long request header timeout may indicate high network latency or heavy storage pool load, potentially leading to timeouts. A short request header timeout indicates good network and object storage pool conditions, allowing the initial request to be sent directly to the object storage pool without segmentation. Segmentation conditions based on request header timeout can be as follows: if the request header timeout exceeds a preset time threshold (e.g., 2 seconds), segmentation is required; if the request header timeout is less than or equal to the time threshold, segmentation is unnecessary. The time threshold setting needs to be adjusted based on actual conditions to ensure a reasonable response time.

[0050] For network latency jitter, high network latency (e.g., exceeding 300ms) or significant latency fluctuations can lead to inefficient initial request processing or even timeout failures. In such cases, segmenting the initial request can distribute the data transmission pressure, reduce the risk of single transmissions, thereby improving the success rate and overall throughput, and enhancing the stability and reliability of data transmission. Conversely, if low and stable network latency is detected (e.g., latency below 100ms with minimal fluctuations), segmentation can be omitted. The segmentation conditions for network latency jitter are as follows: if the real-time network latency jitter exceeds a latency jitter threshold (e.g., latency exceeding 200ms or jitter greater than 50ms), segmentation of the initial request is required; if the real-time network latency jitter is less than or equal to the latency jitter threshold, segmentation is unnecessary. The latency jitter threshold can be flexibly adjusted based on the specific network environment and usage scenario.

[0051] Furthermore, the segmentation criteria for initial requests can be determined based on the load of the object storage pool. Load can be represented by CPU utilization, memory usage, or disk I / O (input / output). If the object storage pool is heavily loaded, processing a single request may overload the pool, slowing down system performance and impacting overall throughput. One segmentation criterion based on CPU utilization is: if CPU utilization exceeds a threshold (e.g., 80%), initial requests need to be segmented; if CPU utilization is less than or equal to the threshold, initial requests do not need to be segmented.

[0052] The process of segmenting the initial request may include: determining the segment size corresponding to each segmented request based on the request object of the initial request; and segmenting the initial request according to the segment size to obtain segmented requests.

[0053] For example, the maximum size of each segment request is preset to 10MB or 50MB to avoid performance impact from excessively large individual sub-requests. The initial request can be segmented based on byte ranges or logical units. For instance, if a client requests a 100MB object, it can be divided into 10 10MB segment requests. Each segment request includes the start and end byte positions of the data, serving as a query condition for the object storage system.

[0054] Step 206: Request data from the object storage pool according to the segmentation request, receive the first target object data returned by the object storage pool based on the segmentation request, and send the first target object data to the client.

[0055] The process can be accelerated by sending segmented requests to the object storage pool sequentially or simultaneously in parallel. The object storage pool responds to each segmented request, returning the corresponding segmented object data. This segmented object data includes data block content and metadata. The data block content is the main data component, typically a fragment that makes up the target object data. The metadata includes the target object data's checksum, timestamp, and data integrity checks to ensure data correctness during transmission. Upon receiving the segmented object data for each request, the data is merged according to the order of the requests to obtain the first target object data. The specific order can be determined based on the byte range of each segmented request. The merged data undergoes integrity verification. If data loss or corruption occurs during transmission, the object storage pool can be requested to resend the lost data. Finally, the first target object data is sent to the client.

[0056] In one possible implementation, if the initial request does not meet the segmentation conditions, data is requested from the object storage pool according to the initial request, and the second target object data returned by the object storage pool based on the initial request is received, and the second target object data is sent to the client.

[0057] In the aforementioned object data access method, an initial request is received from the client. If the initial request meets preset segmentation conditions, it is segmented to obtain segmented requests. Based on the segmented requests, data is requested from the object storage pool, and the first target object data returned by the object storage pool based on the segmented requests is received and sent to the client. In this way, when the object storage gateway receives a large initial request from the client, segmenting the initial request effectively reduces the bandwidth consumption of a single request, avoids excessive network bandwidth usage by a single request, reduces the time required for each request, lowers the probability of timeouts, improves the overall network performance and stability, and thus enhances the efficiency of the object data access method.

[0058] In an exemplary embodiment, the method provided includes the following steps: for each segment of information, performing matching processing on segmented information based on segmentation conditions to obtain matching results: comparing and processing the segmented information using the segmentation conditions corresponding to the segmented information to obtain sub-matching results corresponding to the segmented information; and determining the matching result based on the number of successful matches in the sub-matching results.

[0059] In conjunction with the aforementioned embodiments, the segmentation conditions corresponding to each segment information can be quantified data intervals. If the segment information conforms to the quantified data interval, the sub-matching result corresponding to the segment information is determined to be a successful match; if the segment information does not conform to the quantified data interval, the sub-matching result corresponding to the segment information is determined to be a failed match.

[0060] In one possible implementation, if the number of successful sub-matches is greater than a preset segmentation threshold, the matching result is determined to be a successful match, and the initial request is segmented to obtain a segmented request; if the number of successful sub-matches is less than or equal to the preset segmentation threshold, the matching result is determined to be a failed match, and there is no need to segment the initial request. Data can be directly requested from the object storage pool based on the initial request.

[0061] In one possible implementation, different weights are assigned to each segment of information, and the sub-matching results corresponding to each segment are weighted to obtain the segment weight corresponding to the initial request. If the segment weight is greater than a preset segment threshold, the matching result is determined to be a successful match, and the initial request is segmented to obtain segmented requests. If the segment weight is less than or equal to the segment threshold, the matching result is determined to be a failed match, and there is no need to segment the initial request. Data can be directly requested from the object storage pool based on the initial request.

[0062] For example, for each segment information, if the request header time is greater than the time threshold, this feature is recorded as 1; otherwise, it is recorded as 0. If the client version identifier is higher than the condition version identifier, this feature is recorded as 1; otherwise, it is recorded as 0. If the network bandwidth jitter of the client receiving data is greater than the jitter threshold, this feature is recorded as 1; otherwise, it is recorded as 0. The jitter is calculated by subtracting the past average value from the current bandwidth value and taking the absolute value. The sum of the feature values ​​is calculated. If the sum of the feature values ​​is greater than the segmentation threshold 2, the matching result is determined to be a successful match, and the initial request is segmented to obtain segmented requests. If the sum of the feature values ​​is less than or equal to the segmentation threshold 2, the matching result is determined to be a failed match, and there is no need to segment the initial request. Data can be directly requested from the object storage pool based on the initial request.

[0063] In this embodiment, determining whether to segment the initial request based on segmentation information enables dynamic adjustment of the segmentation strategy according to different client requests, real-time traffic, and load conditions, allowing for optimized processing based on actual circumstances and enhancing adaptability to different loads and requests.

[0064] In an exemplary embodiment, the provided method analyzes and processes an initial request to obtain segmentation information, including: performing permission authentication processing on the initial request to obtain a permission authentication result; and if the permission authentication result is successful, performing protocol parsing processing on the initial request to obtain segmentation information.

[0065] The initial request header or body includes authentication information, which may include: an API key (Application Programming Interface Key), a token, a signature, or an Open Authentication Protocol (OAuth). The authentication information is processed to determine the authorization result. This process may include: verifying the validity of the API key or token by accessing an authentication server; for tokens, verifying their expiration time; if the authentication information includes a signature, verifying the signature match between the initial request content and the key; and verifying the authentication information using access control lists, role-based permissions, and other authentication strategies to determine if the client corresponding to the initial request has permission to access the specified object or perform read, write, or delete operations. If the authorization failure indicates a problem with the initial request—such as an invalid API key, expired token, insufficient permissions, or content tampering—an error response is generated and returned to the client, and processing of the initial request is stopped.

[0066] Protocol parsing refers to the process of parsing the request content corresponding to the initial request according to the protocol used in the initial request and extracting segment information. Specifically, it may include: determining the protocol type used by the client based on the content type (Content-Type) or URL (Uniform Resource Locator) path information in the request header; and determining the segment information corresponding to the initial request from the initial request based on the protocol type.

[0067] In one exemplary embodiment, such as Figure 3 As shown, an object data access method is provided, which is applied to... Figure 1 Taking the object storage gateway 104 as an example, the explanation includes the following steps 301 to 3. Wherein:

[0068] Step 301: Receive the initial request sent by the client.

[0069] Step 302: Perform permission authentication processing on the initial request to obtain the permission authentication result.

[0070] Step 303: If the authorization authentication result is successful, perform protocol parsing on the initial request to obtain segmentation information.

[0071] Step 304: For each segment information, compare and process it using the segment conditions corresponding to the segment information to obtain the sub-matching result corresponding to the segment information.

[0072] Step 305: Determine the matching result based on the number of successful sub-matches.

[0073] Step 306: If the matching result is successful, the initial request is segmented to obtain a segmented request.

[0074] Step 307: Request data from the object storage pool according to the segmentation request, receive the first target object data returned by the object storage pool based on the segmentation request, and send the first target object data to the client.

[0075] Step 308: If the initial request does not meet the segmentation conditions, request data from the object storage pool according to the initial request, receive the second target object data returned by the object storage pool based on the initial request, and send the second target object data to the client.

[0076] It should be understood that although the steps in the flowcharts of the above embodiments are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the above embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.

[0077] Based on the same inventive concept, this application also provides an object data access apparatus for implementing the object data access method described above. The solution provided by this apparatus is similar to the implementation scheme described in the above method; therefore, the specific limitations in one or more object data access apparatus embodiments provided below can be found in the limitations of the object data access method described above, and will not be repeated here.

[0078] In one exemplary embodiment, such as Figure 4 As shown, an object data access device is provided, including: a request receiving module 402, a segmentation processing module 404, and a data request module 406, wherein:

[0079] The request receiving module 402 is used to receive the initial request sent by the client;

[0080] The segmentation processing module 404 is used to segment the initial request to obtain a segmented request if the initial request meets the preset segmentation conditions.

[0081] The data request module 406 is used to request data from the object storage pool according to the segmented request, receive the first target object data returned by the object storage pool based on the segmented request, and send the first target object data to the client.

[0082] In one embodiment, the segmentation processing module 404 is further configured to analyze and process the initial request to obtain segmentation information, which includes: request header time, client version, and network bandwidth jitter; based on the segmentation conditions, perform matching processing on the segmentation information to obtain matching results; if the matching result is successful, perform segmentation processing on the initial request to obtain segmented requests.

[0083] In one embodiment, the segmentation processing module 404 is further configured to perform comparative processing on each segment information using the segmentation conditions corresponding to the segment information to obtain the sub-matching result corresponding to the segment information; and determine the matching result based on the number of successful matches in the sub-matching result.

[0084] In one embodiment, the segmentation processing module 404 is further configured to perform permission authentication processing on the initial request to obtain the permission authentication result; if the permission authentication result is successful, the initial request is processed by protocol parsing to obtain segmentation information.

[0085] In one embodiment, the data request module 406 is further configured to request data from the object storage pool according to the initial request if the initial request does not meet the segmentation conditions, and receive the second target object data returned by the object storage pool based on the initial request, and send the second target object data to the client.

[0086] Each module in the aforementioned object data access device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device in hardware form, or stored in the memory of a computer device in software form, so that the processor can call and execute the operations corresponding to each module.

[0087] In one exemplary embodiment, an object storage system is provided, comprising: a client; an object storage pool; and an object storage gateway for executing the object data access method provided in the above embodiment.

[0088] In one embodiment, such as Figure 5As shown, the object storage system also includes an intelligent segmentation module and a network element module. In the object storage system, the client communicates with the object storage gateway through the network element module. The object storage gateway receives the initial request sent by the client, generates corresponding sub-requests based on the initial request, and sends the sub-requests to the intelligent segmentation module. The intelligent segmentation module determines whether the sub-request meets preset segmentation conditions. If the sub-request meets the preset segmentation conditions, it segments the sub-request to obtain a segmented request, such as... Figure 5 The system comprises segmented requests 1 to N. Based on the segmented requests, it requests data from the object storage pool and receives the first target object data returned by the object storage pool based on the segmented requests. The first target object data is then sent to the client through the object storage gateway. Optionally, if a sub-request does not meet the segmentation conditions, it requests data from the object storage pool based on the sub-request and receives the second target object data returned by the object storage pool based on the sub-request. The second target object data is then sent to the client through the object storage gateway.

[0089] In one embodiment, the intelligent segmentation module can be integrated into the object storage gateway or it can be a standalone device.

[0090] In one exemplary embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as follows: Figure 6 As shown, this computer device includes a processor, memory, input / output (I / O) interfaces, and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is also connected to the system bus via the I / O interfaces. The processor provides computational and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system, computer programs, and a database. The internal memory provides the environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The database stores initial requests, segmented requests, and first target object data. The I / O interfaces are used for exchanging information between the processor and external devices. The communication interface is used for communicating with external clients via a network connection. When executed by the processor, the computer program implements an object data access method.

[0091] Those skilled in the art will understand that Figure 6 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.

[0092] In one embodiment, a computer device is also provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps in the above method embodiments.

[0093] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon that, when executed by a processor, implements the steps in the above method embodiments.

[0094] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps in the above method embodiments.

[0095] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data must comply with relevant regulations.

[0096] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.

[0097] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0098] The above embodiments are merely illustrative of several implementation methods of this application, and their descriptions are relatively specific and detailed. However, they should not be construed as limiting the scope of this application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.

Claims

1. A method for accessing object data, characterized in that, The method includes: Receive the initial request sent by the client; The initial request is analyzed and processed to obtain segmentation information, which includes: request header time, client version, and network bandwidth jitter. Based on the segmentation conditions, the segmentation information is matched to obtain the matching result; If the matching result is successful, the initial request is segmented to obtain the segmented request; According to the segmentation request, data is requested from the object storage pool, and the first target object data returned by the object storage pool based on the segmentation request is received, and the first target object data is sent to the client.

2. The method according to claim 1, characterized in that, The matching process based on the segmentation conditions to obtain the matching result includes: For each segment information, the segment conditions corresponding to the segment information are compared and processed to obtain the sub-matching result corresponding to the segment information; The matching result is determined based on the number of successful matches in the sub-matching results.

3. The method according to claim 1, characterized in that, The analysis and processing of the initial request to obtain segmentation information includes: The initial request is subjected to permission authentication processing to obtain the permission authentication result; If the authorization authentication result is successful, the initial request is parsed to obtain the segmentation information.

4. The method according to claim 1, characterized in that, The method further includes: If the initial request does not meet the segmentation conditions, data is requested from the object storage pool according to the initial request, and the second target object data returned by the object storage pool based on the initial request is received, and the second target object data is sent to the client.

5. An object data access device, characterized in that, The device includes: The request receiving module is used to receive initial requests sent by clients; The segmentation processing module is used to analyze and process the initial request to obtain segmentation information, which includes: request header time, client version, and network bandwidth jitter; based on the segmentation conditions, the segmentation information is matched to obtain a matching result; if the matching result is successful, the initial request is segmented to obtain the segmented request. The data request module is used to request data from the object storage pool according to the segmented request, receive the first target object data returned by the object storage pool based on the segmented request, and send the first target object data to the client.

6. An object storage system, characterized in that, The system includes: Client; Object storage pool; and An object storage gateway for performing the method of any one of claims 1-4.

7. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 4.

8. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 4.

9. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 4.

Citation Information

Patent Citations

  • Data processing method and device based on cluster access

    CN111026709A