Data processing system, data processing method and device, equipment and storage medium

By connecting the two network cards to isolated switches in the data processing system and using shared memory for data transmission, the problems of network bandwidth bottlenecks and resource imbalance in dual-processor dual-network card storage devices are solved, and the network performance of the storage system is significantly improved.

CN119814692APending Publication Date: 2025-04-11INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202412000493.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-31
Publication Date
2025-04-11

AI Technical Summary

Technical Problem

In dual-processor dual-network storage devices, the two network cards share a switch, resulting in a network bandwidth bottleneck, especially in high load conditions, affecting network performance. At the same time, data flow is randomly allocated by the operating system, resulting in unbalanced CPU, memory and network usage, and network performance can only be utilized by 50%.

Method used

A data processing system is designed, wherein the first processor is connected to the first network card, the second processor is connected to the second network card, and the object storage service client transmits data through shared memory and object storage service. The first network card is connected to the first switch, the second network card is connected to the second switch, and the two switches are isolated from each other to avoid resource competition between the network cards.

Benefits of technology

By connecting two network cards to two switches and isolating them, network bandwidth bottlenecks are avoided and the network performance of the storage system is improved. At the same time, data transmission through shared memory is further optimized and the balanced utilization of system resources is ensured.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119814692A_ABST
    Figure CN119814692A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a data processing system, a data processing method, a data processing device, equipment and a storage medium, according to the data processing system, two network cards are connected to two switches respectively, and the two switches are isolated from each other, so that the data processing efficiency is improved; according to the technical scheme, the first network card and the second network card in different data processing systems can be isolated, the problem that the network performance is poor due to the fact that the two network cards share one switch is avoided, the network performance of the storage system is further improved, data transmission is carried out through the shared memory, and the network performance of the storage system is further improved. Besides, according to the data processing method, network cards in different data processing systems can be isolated, competition of network resources is avoided, the network performance of the storage system is further improved, the read-write strategy is dynamically adjusted according to the data processing system corresponding to the target object storage service, the data processing performance can be optimized, and the user experience is improved. The network performance of the storage system is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

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

[0002] With the continuous development of science and technology, artificial intelligence and big data technology have penetrated into all aspects of production and life. Smart transportation, smart communities, smart warehousing, etc. are inseparable from the storage and calculation of massive data. Distributed storage can easily manage hundreds or thousands of nodes, and build large-scale clusters with storage capacity of PB (Petabyte, a high-level storage unit) or above, which can meet the storage capacity requirements. The network performance of distributed storage systems has become the most important indicator to measure the quality of the system.

[0003] In a storage device based on dual processors and dual network cards, under normal circumstances, the two network cards can be connected to different switches respectively. However, if the two network cards share the same switch, it may cause a bottleneck in network bandwidth, especially in a high load situation, the bottleneck of network bandwidth will be more obvious, and the bottleneck of network bandwidth will affect network performance. In addition, the data flow in the storage device with dual processors and dual network cards is usually randomly allocated by the operating system, resulting in an imbalance in the use of the CPU (Central Processing Unit), memory, and network, and the phenomenon that the network performance can only be used at 50%. Summary of the invention

[0004] The embodiment of the present application provides a data processing system to solve the problem in the related art that two network cards share a switch, resulting in poor network performance.

[0005] The embodiment of the present application also provides a data processing method to solve the problem in the related art that data flow is randomly allocated by the operating system, resulting in poor network performance.

[0006] Correspondingly, an embodiment of the present application also provides a data processing device, an electronic device and a storage medium to ensure the implementation and application of the above method.

[0007] In order to solve the above problems, an embodiment of the present application discloses a data processing system, which includes: a first processor, a second processor, a shared memory, multiple object storage services and an object storage service client, the first processor is connected to a first network card, the second processor is connected to a second network card, and the object storage service client transmits data with the object storage service through the shared memory; the first network card is connected to a first switch, the second network card is connected to a second switch, and the first switch and the second switch are isolated from each other.

[0008] The present application also discloses a data processing method, which includes:

[0009] Constructing a dual data processing system; the dual data processing system includes: a first data processing system and a second data processing system, the first data processing system and the second data processing system respectively include: a first processor, a second processor and a plurality of object storage services, the first processor is connected to a first network card, the second processor is connected to a second network card, and the object storage service client in the first data processing system communicates with the client through the first network card;

[0010] Isolating the first network card in the first data processing system from the second network card in the second data processing system, and isolating the second network card in the first data processing system from the first network card in the second data processing system, so that the first network card and the second network card in different data processing systems are isolated from each other;

[0011] In response to a read / write signal from the client for data, determining a read / write strategy for the data according to a data processing system corresponding to the target object storage service;

[0012] When the data processing system corresponding to the target object storage service is the first data processing system, the read-write strategy is implemented based on a shared memory in the first data processing system;

[0013] When the data processing system corresponding to the target object storage service is the second data processing system, the read-write strategy is implemented based on the second network card in the first data processing system or the second network card in the second data processing system.

[0014] Optionally, the read / write signal includes a read signal and a write signal, the read / write policy includes a read policy and a write policy, the target object storage service includes a first target object storage service and a second target object storage service, and the responding to the read / write signal of the client for the data and determining the read / write policy of the data according to the data processing system corresponding to the target object storage service includes:

[0015] In response to the read signal, a read strategy for the data is determined according to a data processing system corresponding to the first target object storage service; wherein the first target object storage service is used to send the data, the read signal is used to indicate that the client needs to read the data from the object storage service client, and the read strategy is used to merge the data stored in the first target object storage service and send it to the client;

[0016] In response to the write signal, a write strategy for the data is determined according to a data processing system corresponding to the second target object storage service; wherein the second target object storage service is used to store the data, the write signal is used to indicate that the client needs to write the data to the second target object storage service, and the write strategy is used to split the client's data and send it to the second target object storage service.

[0017] Optionally, in response to the write signal, determining a write strategy for the data according to a data processing system corresponding to the second target object storage service includes:

[0018] In response to the write signal, determining the second target object storage service through the object storage service client;

[0019] The data writing strategy is determined according to the data processing system corresponding to the second target object storage service.

[0020] Optionally, the object storage service client is in a first processor of the first data processing system, and when the data processing system corresponding to the target object storage service is the first data processing system, the read-write strategy is implemented based on a shared memory in the first data processing system, including:

[0021] When the data processing system corresponding to the first target object storage service is the first data processing system, and the processor corresponding to the first target object storage service is the first processor in the first data processing system, the first target object storage service copies the data to the shared memory, and the object storage service client reads the data from the shared memory;

[0022] When the data processing system corresponding to the second target object storage service is the first data processing system, and the processor corresponding to the second target object storage service is the first processor in the first data processing system, the object storage service client copies the data to the shared memory, and the second target object storage service obtains the data from the shared memory.

[0023] Optionally, when the data processing system corresponding to the target object storage service is the second data processing system, the read / write strategy is implemented based on the second network card in the first data processing system or the second network card in the second data processing system, including:

[0024] When the data processing system corresponding to the first target object storage service is the second data processing system, and the processor corresponding to the first target object storage service is the second processor in the second data processing system, the first target object storage service sends the data to the target memory through the second network card in the second data processing system, and the object storage service client reads the data from the target memory; the processor corresponding to the target memory is the second processor in the first data processing system;

[0025] When the data processing system corresponding to the second target object storage service is the second data processing system, and the processor corresponding to the second target object storage service is the second processor in the second data processing system, the object storage service client copies the data to the target memory, and the target memory writes the data to the second target object storage service through the second network card in the first data processing system.

[0026] Optionally, the processor corresponding to the shared memory is the first processor in the first data processing system.

[0027] The present application also discloses a data processing device, which includes:

[0028] A construction module is used to construct a dual data processing system; the dual data processing system includes: a first data processing system and a second data processing system, the first data processing system and the second data processing system respectively include: a first processor, a second processor and a plurality of object storage services, the first processor is connected to a first network card, the second processor is connected to a second network card, and the object storage service client in the first data processing system communicates with the client through the first network card;

[0029] an isolation module, used to isolate the first network card in the first data processing system from the second network card in the second data processing system, and to isolate the second network card in the first data processing system from the first network card in the second data processing system, so that the first network card and the second network card in different data processing systems are isolated from each other;

[0030] A read / write strategy module, configured to respond to a read / write signal from the client for data and determine a read / write strategy for the data according to a data processing system corresponding to a target object storage service;

[0031] A shared memory module, used for implementing the read and write strategy based on the shared memory in the first data processing system when the data processing system corresponding to the target object storage service is the first data processing system;

[0032] A second network card module is used for a second network card. When the data processing system corresponding to the target object storage service is the second data processing system, the read and write strategy is implemented based on the second network card in the first data processing system or the second network card in the second data processing system.

[0033] An embodiment of the present application also discloses an electronic device, including: a processor; and a memory, on which executable code is stored. When the executable code is executed, the processor executes the data processing method as described in any one of the embodiments of the present application.

[0034] The embodiments of the present application also disclose one or more machine-readable media on which executable codes are stored. When the executable codes are executed, the processor executes the data processing method as described in any one of the embodiments of the present application.

[0035] Compared with the related art, the embodiments of the present application have the following advantages:

[0036] The embodiment of the present application provides a data processing system, including: a first processor, a second processor, a shared memory, a plurality of object storage services and an object storage service client, wherein the first processor is connected to a first network card, the second processor is connected to a second network card, and the object storage service client transmits data with the object storage service through a shared memory; the first network card is connected to a first switch, the second network card is connected to a second switch, and the first switch and the second switch are isolated from each other. The data processing system in the embodiment of the present application can isolate the first network card and the second network card in different data processing systems by connecting two network cards to two switches respectively, and isolating the two switches from each other, thereby avoiding the problem of poor network performance caused by two network cards sharing a switch, thereby improving the network performance of the storage system, and data transmission through shared memory can further improve the network performance of the storage system.

[0037] The embodiment of the present application also provides a data processing method for constructing a dual data processing system; the dual data processing system includes: a first data processing system and a second data processing system, the first data processing system and the second data processing system respectively include: a first processor, a second processor and a plurality of object storage services, the first processor is connected to a first network card, the second processor is connected to a second network card, and the object storage service client in the first data processing system communicates with the client through the first network card; the first network card in the first data processing system and the second network card in the second data processing system are isolated, and the second network card in the first data processing system and the first network card in the second data processing system are isolated, so that the first network card and the second network card in different data processing systems are isolated from each other; in response to the read and write signal of the client for data, the read and write policy of the data is determined according to the data processing system corresponding to the target object storage service; when the data processing system corresponding to the target object storage service is the first data processing system, the read and write policy is implemented based on the shared memory in the first data processing system; when the data processing system corresponding to the target object storage service is the second data processing system, the read and write policy is implemented based on the second network card in the first data processing system or the second network card in the second data processing system. In the embodiment of the present application, by constructing a first data processing system and a second data processing system with dual processors and dual network cards, and isolating the network cards in different data processing systems, competition for network resources can be avoided, the efficiency and reliability of network communication can be improved, and the network performance of the storage system can be improved. In addition, by dynamically adjusting the read and write strategy according to the data processing system corresponding to the target object storage service, the performance of data processing can be optimized to improve the network performance of the storage system. BRIEF DESCRIPTION OF THE DRAWINGS

[0038] Figure 1 It is a schematic diagram of the architecture of a data processing system;

[0039] Figure 2 It is a schematic diagram of a networking method based on a data processing system;

[0040] Figure 3 is a flowchart of steps of an embodiment of a data processing method of the present application;

[0041] Figure 4 It is a schematic diagram of the software architecture of a distributed storage system;

[0042] Figure 5 It is a data flow diagram for reading stored data;

[0043] Figure 6 This is a data flow diagram for reading stored data after optimization in the present application;

[0044] Figure 7 It is a data flow diagram for writing stored data;

[0045] Figure 8 This is a schematic diagram of data flow for writing storage data after optimization in the present application;

[0046] Fig. 9 is a structural block diagram of an embodiment of a data processing device of the present application;

[0047] Fig.10 It is a system schematic diagram of a device provided in one embodiment of the present application. DETAILED DESCRIPTION

[0048] In order to make the above-mentioned objects, features and advantages of the present application more obvious and easy to understand, the present application is further described in detail below in conjunction with the accompanying drawings and specific implementation methods.

[0049] Reference Figure 1 , is a schematic diagram of the architecture of a data processing system, including: a first processor and a second processor, the first processor is connected to a first network card, and the second processor is connected to a second network card; specifically, it includes two CPUs (a first processor CPU0 and a second processor CPU1), and the CPUs exchange data through CPU interconnection lines. Each CPU has its own bus and mounts other devices such as memory, network card, disk, etc. The device systems on both sides adopt a completely symmetrical design.

[0050] In an embodiment of the present application, the data processing system includes: a first processor, a second processor, a shared memory, multiple object storage services and an object storage service client, the first processor is connected to a first network card, the second processor is connected to a second network card, and the object storage service client transmits data with the object storage service through the shared memory.

[0051] Reference Figure 2 , is a schematic diagram of a networking method based on a data processing system, the networking method includes: the first network card is connected to a first switch, and the second network card is connected to a second switch.

[0052] Specifically, in the embodiment of the present application, in order to achieve isolation between the first network card and the second network card, the design will be Figure 2The first switch and the second switch in the data processing system are isolated from each other. Exemplarily, each network card in each data processing system includes two network ports, which can be used as a front-end network and a back-end network respectively, and the front-end and back-end networks are isolated from each other. At the same time, since the two network cards belong to two CPUs respectively, the two network cards are connected to two switches respectively in design, and the two switches are isolated from each other, so that the first network card and the second network card in different data processing systems of the embodiment of the present application are isolated from each other, but it does not affect the normal communication between the two network cards in the same data processing system.

[0053] The data processing system in the embodiment of the present application can isolate the first network card and the second network card in different data processing systems by connecting the two network cards to two switches respectively and isolating the two switches from each other, thereby avoiding the problem of poor network performance caused by two network cards sharing one switch, thereby improving the network performance of the storage system.

[0054] Since the network performance of a distributed storage system will directly affect the efficiency and reliability of the entire storage system, based on this, for the data backup strategy in a distributed storage system, a data processing method based on dual processors and dual network cards is proposed in an embodiment of the present application. The data flow is accurately controlled through RDMA (Remote Direct Memory Access) communication, thereby achieving a reasonable flow of data in the CPU, memory, and bus, improving storage performance, and optimizing the network performance of the storage system.

[0055] RDMA technology means that the local node can directly access the memory of the remote node just like accessing the local memory, bypassing the complex TCP (Transmission Control Protocol) / IP (Internet Protocol) network protocol stack of traditional Ethernet to read and write remote memory. The other end is unaware of this process, and most of the work in this reading and writing process is completed by hardware rather than software. RDMA technology does not occupy the CPU, omits memory copying actions, and greatly improves network communication performance.

[0056] Reference Figure 3 , is a flowchart of a data processing method embodiment of the present application, comprising the following steps:

[0057] Step 301: construct a dual data processing system; the dual data processing system includes: a first data processing system and a second data processing system, the first data processing system and the second data processing system respectively include: a first processor, a second processor and a plurality of object storage services, the first processor is connected to a first network card, the second processor is connected to a second network card, and the object storage service client in the first data processing system communicates with the client through the first network card;

[0058] In the embodiment of the present application, a dual data processing system (including a first data processing system and a second data processing system) for data processing is first constructed. The architecture of the first data processing system and the second data processing system is as follows: Figure 1 As shown in , the first processor (CPU0) and the second processor (CPU1) are respectively included. The first processor and the second processor are connected to a network card respectively. The network card connected to the first processor is called the first network card, and the network card connected to the second processor is called the second network card.

[0059] Reference Figure 4 , is a schematic diagram of the software architecture of a distributed storage system, the software architecture mainly includes modules such as the object storage service client (OSSC), the object storage service (OSS), etc., that is, in addition to the first processor and the second processor, the first data processing system and the second data processing system of the embodiment of the present application also include multiple object storage services (OSS) in the OSS module. Based on the symmetrical architecture of dual processors and dual network cards in the data processing system, a symmetrical design is also adopted when designing the software architecture, that is, the OSSC module starts two services to respectively accept storage requests from different clients, wherein each OSS corresponds to a disk device, and due to the symmetry of the disk device, the OSS is also designed symmetrically.

[0060] like Figure 4 As shown, in an embodiment of the present application, the object storage service client 1 in the first data processing system is connected to the client (first client) through the first network card, and then the first client can communicate with the object storage service client 1.

[0061] Step 302: Isolate the first network card in the first data processing system and the second network card in the second data processing system, and isolate the second network card in the first data processing system and the first network card in the second data processing system, so that the first network cards and the second network cards in different data processing systems are isolated from each other;

[0062] In the related art, since two network cards in different data processing systems share a switch (i.e., a first network card in a first data processing system and a second network card in a second data processing system share a switch, and a second network card in the first data processing system and a first network card in the second data processing system share a switch), poor network performance may occur.

[0063] Therefore, in order to solve the problem of poor network performance caused by two network cards in different data processing systems sharing a switch, in the embodiment of the present application, it is necessary to isolate the first network card in the first data processing system and the second network card in the second data processing system, and isolate the second network card in the first data processing system and the first network card in the second data processing system, that is, the communication between the first network card in the first data processing system (assuming it is network card A) and the second network card in the second data processing system (assuming it is network card B) is blocked or restricted, and the communication between the second network card in the first data processing system (assuming it is network card C) and the first network card in the second data processing system (assuming it is network card D) is also blocked or restricted, so that network card A and network card B cannot directly exchange data, and network card C and network card D cannot directly exchange data.

[0064] In the embodiment of the present application, the network cards in the first data processing system and the second data processing system are connected as follows: Figure 2 By isolating the first switch and the second switch, the first network card in the first data processing system and the second network card in the second data processing system can be isolated, and the second network card in the first data processing system and the first network card in the second data processing system can be isolated.

[0065] The embodiments of the present application can simplify network management, more clearly divide network boundaries, reduce network complexity, and thus improve network performance by isolating network cards in different data processing systems.

[0066] Step 303: In response to the read / write signal of the client for data, determine the read / write strategy of the data according to the data processing system corresponding to the target object storage service;

[0067] First, after the client initiates a data read or write request, it is necessary to determine the specific object storage service (target object storage service) that the client requests to access, and then select different data read and write strategies based on the data processing system (first data processing system or second data processing system) corresponding to the target object storage service.

[0068] In an embodiment of the present application, by selecting different data read and write strategies according to the data processing system corresponding to the target object storage service, data read and write performance can be optimized, system efficiency can be improved, data consistency can be ensured, and the needs of different application scenarios can be met. By selecting appropriate read and write strategies, system resources can be fully utilized, data processing efficiency can be improved, and the overall performance and availability of the system can be ensured.

[0069] Step 304: When the data processing system corresponding to the target object storage service is the first data processing system, the read-write strategy is implemented based on the shared memory in the first data processing system;

[0070] Shared memory allows processes or threads to directly access the same memory area, avoiding the copying and transmission of data between different memory areas, thereby greatly reducing read and write delays. In addition, the bandwidth of shared memory is usually much higher than the bandwidth of network transmission. Reading and writing data through shared memory can not only avoid data transmission through the network, reduce network bandwidth occupancy and network delay, thereby improving read and write performance, but also make full use of the high bandwidth of system memory to improve data transmission efficiency.

[0071] Therefore, in an embodiment of the present application, since the bandwidth of shared memory is usually much higher than the bandwidth of network transmission, when the data processing system corresponding to the target object storage service is the first data processing system, that is, the target object storage service and the object storage service client are located in the same data processing system, data reading and writing through shared memory can not only avoid data transmission through the network, reduce network bandwidth occupancy and network delay, thereby improving read and write performance, but also make full use of the high bandwidth of the system memory to improve data transmission efficiency.

[0072] Step 305: When the data processing system corresponding to the target object storage service is the second data processing system, the read and write strategy is implemented based on the second network card in the first data processing system or the second network card in the second data processing system.

[0073] The embodiments of the present application relate to a distributed storage system, that is, data is distributed on different nodes (data processing systems). In a distributed environment, data reading and writing usually need to be performed through a network.

[0074] Therefore, in an embodiment of the present application, when the data processing system corresponding to the target object storage service is a second data processing system, that is, the target object storage service and the object storage service client are not located in the same data processing system, a second network card is used to implement cross-node (cross-data processing system) data transmission to ensure data read and write operations between different nodes.

[0075] In the embodiment of the present application, by constructing a first data processing system and a second data processing system with dual processors and dual network cards, and isolating the network cards in different data processing systems, competition for network resources can be avoided, the efficiency and reliability of network communication can be improved, and the network performance of the storage system can be improved. In addition, by dynamically adjusting the read and write strategy according to the data processing system corresponding to the target object storage service, the performance of data processing can be optimized to improve the network performance of the storage system.

[0076] In an embodiment of the present application, the read / write signal includes a read signal and a write signal, the read / write policy includes a read policy and a write policy, the target object storage service includes a first target object storage service and a second target object storage service, and step 303, in response to the read / write signal of the client for the data, determines the read / write policy of the data according to the data processing system corresponding to the target object storage service, includes:

[0077] In response to the read signal, a read strategy for the data is determined according to a data processing system corresponding to the first target object storage service; wherein the first target object storage service is used to send the data, the read signal is used to indicate that the client needs to read the data from the object storage service client, and the read strategy is used to merge the data stored in the first target object storage service and send it to the client;

[0078] In response to the write signal, a write strategy for the data is determined according to a data processing system corresponding to the second target object storage service; wherein the second target object storage service is used to store the data, the write signal is used to indicate that the client needs to write the data to the second target object storage service, and the write strategy is used to split the client's data and send it to the second target object storage service.

[0079] In an embodiment of the present application, a data reading strategy and a data writing strategy are determined based on a read signal and a write signal of the client and a data processing system corresponding to the target object storage service.

[0080] Specifically, when the client initiates a read signal, it first identifies the first target object storage service and determines the data processing system corresponding to the service. According to different data processing systems, it selects the corresponding read strategy to merge the data stored in the first target object storage service and send it to the client, thereby ensuring that the client can obtain complete data and improve reading efficiency.

[0081] When the client initiates a write signal, it first identifies the second target object storage service and determines the data processing system corresponding to the service. Based on the different data processing systems, it selects the corresponding write strategy to split the client's data and send it to the second target object storage service, thereby ensuring that the data can be distributed and stored in multiple nodes or storage locations, thereby improving the reliability and scalability of data storage.

[0082] The embodiments of the present application select the most appropriate read and write strategies according to different target object storage services and data processing systems, thereby optimizing data read and write performance and efficiency to meet the needs of different application scenarios.

[0083] In another embodiment of the present application, data compression technology can be introduced in the process of data transmission and storage to reduce the amount of data transmission, improve network bandwidth utilization, and thus improve network performance.

[0084] In an embodiment of the present application, in response to the write signal, determining the write strategy of the data according to the data processing system corresponding to the second target object storage service includes:

[0085] In response to the write signal, determining the second target object storage service through the object storage service client;

[0086] The data writing strategy is determined according to the data processing system corresponding to the second target object storage service.

[0087] In the embodiments of the present application, Figure 4 As shown, the first client, the second client and the first data processing system are three servers. The first client sends data to the object storage service client 1 through the first network card, and the second client sends data to the object storage service client 2 through the second network card. After the object storage service client 1 calculates the data backup relationship through the CRUSH (Controlled Replication Under Scalable Hashing) algorithm, it sends the data to some object storage services for storage through the first network card and to some object storage services for storage through the second network card.

[0088] Data backup strategies include replicas and erasure codes. Replicas refer to storing data on multiple nodes, with the content stored on each node being exactly the same. Erasure codes divide data into fragments, expand and encode the original data blocks, and store them in different locations. The content stored on each node is generally different. Replicas have higher read and write performance than erasure codes, and erasure codes save more space than replicas. Both have their own advantages and disadvantages and are generally used in different occasions.

[0089] The data backup relationship refers to the association and dependency between different data copies or erasure code fragments in the data backup strategy. Specifically, the data backup relationship describes how data is distributed, replicated, and encoded between multiple nodes or storage locations, and how these copies or fragments work together to ensure the availability, consistency, and integrity of the data. The "node" here can be understood as the "data processing system" in the embodiments of this application.

[0090] In the embodiment of the present application, when the client initiates a write signal (that is, when the client needs to write data), the object storage service client 1 will receive the write signal, and then the object storage service client 1 will preferentially determine the second target object storage service according to the CRUSH algorithm. After the object storage service client 1 determines the second target object storage service, it further determines the data processing system corresponding to the service. Depending on the data processing system, the object storage service client 1 will select the corresponding write strategy.

[0091] Specifically, the CRUSH algorithm is an algorithm for data distribution and data location in distributed storage systems. It is mainly used to determine the distribution location of data in a storage cluster to achieve data load balancing, high availability, and fault tolerance. The core idea of ​​the CRUSH algorithm is to control the distribution of data through consistent hashing and a hierarchical system.

[0092] The CRUSH algorithm has the following characteristics:

[0093] 1. Consistent Hashing:

[0094] The CRUSH algorithm uses consistent hashing to map data to storage devices. Consistent hashing ensures that only a small amount of data needs to be remapped when adding or removing storage devices, thereby reducing the overhead of data migration.

[0095] 2. Layered System:

[0096] The CRUSH algorithm uses a hierarchical system to organize storage clusters. The hierarchical system usually includes multiple levels, such as data centers, racks, hosts, and storage devices. This hierarchical system can better control the distribution of data and ensure load balancing and fault tolerance of data at different levels.

[0097] 3. Control data distribution:

[0098] The CRUSH algorithm allows administrators to control data distribution by defining rules (CRUSH Rules). Rules can specify data distribution strategies at different levels, such as the number of replicas, replica distribution locations, etc.

[0099] 4. High availability and fault tolerance:

[0100] The CRUSH algorithm ensures high availability and fault tolerance of data by distributing data copies on multiple storage devices. Even if some storage devices fail, the data can still be accessed through other copies.

[0101] The specific steps of the CRUSH algorithm are as follows:

[0102] 1. Enter data and storage cluster information:

[0103] The input data includes an identifier of the data (such as an object ID) and hierarchical system information of the storage cluster.

[0104] The hierarchical system information of the storage cluster includes the hierarchical relationship between data centers, racks, hosts, and storage devices.

[0105] 2. Calculate the hash value:

[0106] The hash value is calculated using the identifier of the data. The hash value is used to determine the distribution location of the data in the storage cluster.

[0107] 3. Apply CRUSH rules:

[0108] According to the predefined CRUSH rules, appropriate storage devices are selected to store data. The rules can specify the number of replicas, the location of replica distribution, etc.

[0109] 4. Select storage device:

[0110] Based on the hash value and CRUSH rules, a suitable storage device is selected to store the data. The selection process takes into account the load, availability, and fault tolerance of the storage device.

[0111] 5. Output storage location:

[0112] The distribution location of the output data in the storage cluster, that is, the identifier of the storage device.

[0113] The embodiments of the present application can select the most appropriate write strategy according to different target object storage services and their corresponding data processing systems, thereby optimizing data writing performance and efficiency to meet the needs of different application scenarios.

[0114] In one embodiment of the present application, the object storage service client is in a first processor of the first data processing system, and when the data processing system corresponding to the target object storage service is the first data processing system, the read-write strategy is implemented based on a shared memory in the first data processing system, including:

[0115] When the data processing system corresponding to the first target object storage service is the first data processing system, and the processor corresponding to the first target object storage service is the first processor in the first data processing system, the first target object storage service copies the data to the shared memory, and the object storage service client reads the data from the shared memory;

[0116] When the data processing system corresponding to the second target object storage service is the first data processing system, and the processor corresponding to the second target object storage service is the first processor in the first data processing system, the object storage service client copies the data to the shared memory, and the second target object storage service obtains the data from the shared memory.

[0117] Reference Figure 5 , is a data flow diagram for reading stored data. Data is read from the disks of object storage service 1 and object storage service 2, and sent to the object storage service client through the first network card and the second network card respectively. The object storage service client performs calculations and merges the data before sending it to the client. However, in actual high-performance and high-stress tests, it is found that if the data is in the first processor of the first data processing system (that is, the data processing system corresponding to the first target object storage service is the first data processing system, and the processor corresponding to the first target object storage service is the first processor in the first data processing system, then the first target object storage service can be understood as Figure 5 In the object storage service 1), data is sent from the object storage service 1 to the object storage service client based on the network card traffic, which will cause performance loss. Therefore, in order to avoid performance loss, the embodiment of the present application optimizes the reading of storage data.

[0118] Reference Figure 6 , is a schematic diagram of data flow after optimization for reading stored data in the present application. After the object storage service 1 reads the data, a judgment is added at this time. If the object storage service 1 and the object storage service client are on the same data processing system (that is, the data processing system corresponding to the first target object storage service is the first data processing system, and the processor corresponding to the first target object storage service is the first processor in the first data processing system, then the first target object storage service can be understood as Figure 6 The object storage service 1 in the first data processing system copies the data to the shared memory in the first processor, and the object storage service client obtains the data from the shared memory. The object storage service client and the object storage service 1 no longer interact through the network, thereby avoiding performance loss.

[0119] Reference Figure 7, is a data flow diagram for writing and storing data. The client sends data to the object storage service client through the first network card. The object storage service client calculates the data to be stored in object storage service 1 and object storage service 2 through the CRUSH algorithm, and then sends the data through the first network card and the second network card respectively. In actual high-performance and high-stress tests, it is found that if the data is in the first processor of the first data processing system (that is, the data processing system corresponding to the second target object storage service is the first data processing system, and the processor corresponding to the second target object storage service is the first processor in the first data processing system), the second target object storage service can be understood as Figure 7 In the object storage service 1), sending data from the object storage service client to the object storage service 1 needs to be based on the network card traffic, which will also cause performance loss. Therefore, in order to avoid performance loss, the embodiment of the present application optimizes writing storage data.

[0120] Reference Figure 8 , is a schematic diagram of data flow after optimization of writing storage data in the present application. The client sends data to the object storage service client. After the CRUSH algorithm calculates that the data is to be stored in the object storage service 1 and the object storage service 2, a judgment is added at this time. If the object storage service 1 and the object storage service client are on the same data processing system (that is, the data processing system corresponding to the second target object storage service is the first data processing system, and the processor corresponding to the second target object storage service is the first processor in the first data processing system, then the second target object storage service can be understood as Figure 8 The object storage service 1 in the first data processing system copies the data to the shared memory in the first processor of the first data processing system, and the object storage service 1 obtains the data from the shared memory. The object storage service client and the object storage service 1 no longer interact through the network, thereby avoiding performance loss.

[0121] In one embodiment of the present application, the processor corresponding to the shared memory is the first processor in the first data processing system.

[0122] The shared memory in the embodiment of the present application allows the object storage service client and the object storage service 1 to directly access the same memory area. Therefore, there is no need for data transmission between the object storage service client and the object storage service 1 through the network.

[0123] Network transmission usually introduces significant delay, especially in the case of high load or long distance transmission. Therefore, in the embodiment of the present application, by avoiding network transmission, data can be read and written directly in the memory, thereby greatly reducing the delay and optimizing the network performance. In addition, since the read and write speed of the memory is much higher than the network transmission speed, therefore, in the embodiment of the present application, data transmission is performed through shared memory, which can make full use of the high bandwidth of the memory and significantly improve the data transmission speed. In addition, network transmission will take up a lot of bandwidth resources, especially in the case of high concurrency or large data volume transmission. Therefore, in the embodiment of the present application, by avoiding network transmission, bandwidth resources can be saved, the overall utilization efficiency of the network can be improved, and the network performance can be optimized.

[0124] In one embodiment of the present application, when the data processing system corresponding to the target object storage service is the second data processing system, the read / write strategy is implemented based on the second network card in the first data processing system or the second network card in the second data processing system, including:

[0125] When the data processing system corresponding to the first target object storage service is the second data processing system, and the processor corresponding to the first target object storage service is the second processor in the second data processing system, the first target object storage service sends the data to the target memory through the second network card in the second data processing system, and the object storage service client reads the data from the target memory; the processor corresponding to the target memory is the second processor in the first data processing system;

[0126] When the data processing system corresponding to the second target object storage service is the second data processing system, and the processor corresponding to the second target object storage service is the second processor in the second data processing system, the object storage service client copies the data to the target memory, and the target memory writes the data to the second target object storage service through the second network card in the first data processing system.

[0127] like Figure 5As shown, data is read from the disks of object storage service 1 and object storage service 2, and sent to the object storage service client through the first network card and the second network card respectively. The object storage service client performs calculations and merges the data before sending it to the client. However, in actual high-performance and high-stress tests, in addition to finding that sending data from object storage service 1 to the object storage service client requires network card traffic, it is also found that if the data is in the second processor of the second data system (that is, the data processing system corresponding to the first target object storage service is the second data processing system, and the processor corresponding to the first target object storage service is the second processor in the second data processing system), then the first target object storage service can be understood as Figure 5 In the object storage service 2), the data needs to be sent to other data processing systems (second data processing systems) through the second network card, and the network performance will be reduced. Therefore, in order to avoid the reduction of network performance, the embodiment of the present application optimizes the reading of storage data.

[0128] like Figure 6 As shown, after optimization, after the object storage service 1 reads the data, a judgment is added at this time. If the object storage service 1 and the object storage service client are not on the same data processing system (that is, the data processing system corresponding to the first target object storage service is the second data processing system, and the processor corresponding to the first target object storage service is the second processor in the second data processing system, then the first target object storage service can be understood as Figure 6 The object storage service 2 in the object storage service is sent to the memory of the second processor of the data processing system (the first data processing system) where the object storage service client is located through the second network card in the second data processing system, and then the data is copied to the object storage service client. In this way, under high-performance and high-pressure conditions, the network performance is improved compared to before the optimization.

[0129] like Figure 7 As shown, the client sends data to the object storage service client through the first network card. The object storage service client calculates the data to be stored in object storage service 1 and object storage service 2 through the CRUSH algorithm, and then sends the data through the first network card and the second network card respectively. In the actual high-performance and high-stress test, in addition to finding that sending data from the object storage service client to the object storage service 1 needs to be based on the network card traffic, it is also found that if the data is in the second processor of the second data system (that is, the data processing system corresponding to the second target object storage service is the second data processing system, and the processor corresponding to the second target object storage service is the second processor in the second data processing system), the second target object storage service can be understood as Figure 7In the object storage service 2), the data needs to be sent to other data processing systems (second data processing systems) through the second network card, and the network performance will be reduced. Therefore, in order to avoid the reduction of network performance, the embodiment of the present application optimizes the writing of storage data.

[0130] like Figure 8 As shown, after optimization, the client sends the data to the object storage service client, and the CRUSH algorithm calculates that the data needs to be stored in object storage service 1 and object storage service 2. At this time, an additional judgment is added. If object storage service 1 and the object storage service client are not on the same data processing system (that is, the data processing system corresponding to the second target object storage service is the second data processing system, and the processor corresponding to the second target object storage service is the second processor in the second data processing system, the second target object storage service can be understood as Figure 8 In the object storage service 2), the object storage service client first copies the data to the memory of the second processor of the data processing system (the first data processing system) where the object storage service client is located, and then sends the data to the object storage service 2 through the second network card in the first data processing system. In this way, under high performance and high pressure conditions, the network performance is improved compared to before optimization.

[0131] In the embodiment of the present application, when the data processing system corresponding to the target object storage service is the second data processing system, data interaction between different data processing systems is achieved through the second network card, thereby solving the performance loss caused by cross-CPU communication in the network. In this process, although one copy is added, the network performance is greatly improved, which ultimately improves the business performance. In addition, RDMA technology is adopted to achieve balanced use of CPU and memory through precise control of data flow, reduce data flow between devices, improve network performance, and thus improve storage performance.

[0132] In the embodiment of the present application, by constructing a first data processing system and a second data processing system with dual processors and dual network cards, and isolating the network cards in different data processing systems, competition for network resources can be avoided, the efficiency and reliability of network communication can be improved, and the network performance of the storage system can be improved. In addition, by dynamically adjusting the read and write strategy according to the data processing system corresponding to the target object storage service, the performance of data processing can be optimized to improve the network performance of the storage system.

[0133] It should be noted that, for the 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 embodiments of the present application are not limited by the described order of actions, because according to the embodiments of 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 involved are not necessarily required by the embodiments of the present application.

[0134] On the basis of the above embodiments, this embodiment further provides a data processing device, which is applied to electronic devices such as terminal devices and servers.

[0135] Reference Fig. 9 , shows a structural block diagram of a data processing device embodiment of the present application, which may specifically include the following modules:

[0136] A construction module 901 is used to construct a dual data processing system; the dual data processing system includes: a first data processing system and a second data processing system, the first data processing system and the second data processing system respectively include: a first processor, a second processor and a plurality of object storage services, the first processor is connected to a first network card, the second processor is connected to a second network card, and the object storage service client in the first data processing system communicates with the client through the first network card;

[0137] an isolation module 902, configured to isolate the first network card in the first data processing system from the second network card in the second data processing system, and to isolate the second network card in the first data processing system from the first network card in the second data processing system, so that the first network card and the second network card in different data processing systems are isolated from each other;

[0138] A read / write policy module 903 is used to determine the read / write policy of the data according to the data processing system corresponding to the target object storage service in response to the read / write signal of the client for the data;

[0139] A shared memory module 904, configured to implement the read / write strategy based on the shared memory in the first data processing system when the data processing system corresponding to the target object storage service is the first data processing system;

[0140] The second network card module 905 is used for the second network card. When the data processing system corresponding to the target object storage service is the second data processing system, the read and write strategy is implemented based on the second network card in the first data processing system or the second network card in the second data processing system.

[0141] The embodiment of the present application also provides a non-volatile readable storage medium, which stores one or more modules (programs). When the one or more modules are applied to a device, the device can execute instructions (instructions) of each method step in the embodiment of the present application.

[0142] The present application embodiment provides one or more machine-readable media on which instructions are stored, and when executed by one or more processors, an electronic device executes one or more of the methods described in the above embodiments. In the present application embodiment, the electronic device includes various types of devices such as terminal devices and servers (clusters).

[0143] The embodiments of the present disclosure may be implemented as a device configured as desired using any appropriate hardware, firmware, software, or any combination thereof, and the device may include electronic devices such as terminal devices and servers (clusters). Fig.10 An exemplary apparatus 1000 that can be used to implement various embodiments described in this application is schematically illustrated.

[0144] For one embodiment, Fig.10 An exemplary apparatus 1000 is shown having one or more processors 1002, a control module (chip set) 1004 coupled to at least one of the (one or more) processors 1002, a memory 1006 coupled to the control module 1004, a non-volatile memory (NVM) / storage device 1008 coupled to the control module 1004, one or more input / output devices 1010 coupled to the control module 1004, and a network interface 1012 coupled to the control module 1004.

[0145] The processor 1002 may include one or more single-core or multi-core processors, and the processor 1002 may include any combination of general-purpose processors or special-purpose processors (such as graphics processors, application processors, baseband processors, etc.). In some embodiments, the device 1000 can be used as a terminal device, server (cluster), etc. described in the embodiments of the present application.

[0146] In some embodiments, the apparatus 1000 may include one or more computer-readable media (e.g., memory 1006 or NVM / storage device 1008) having instructions 1014 and one or more processors 1002 combined with the one or more computer-readable media and configured to execute the instructions 1014 to implement a module to perform the actions described in the present disclosure.

[0147] For one embodiment, the control module 1004 may include any suitable interface controller to provide any suitable interface to at least one of the processor(s) 1002 and / or any suitable device or component in communication with the control module 1004 .

[0148] The control module 1004 may include a memory controller module to provide an interface to the memory 1006. The memory controller module may be a hardware module, a software module, and / or a firmware module.

[0149] The memory 1006 may be used, for example, to load and store data and / or instructions 1014 for the device 1000. For one embodiment, the memory 1006 may include any suitable volatile memory, such as a suitable DRAM. In some embodiments, the memory 1006 may include double data rate type four synchronous dynamic random access memory (DDR4 SDRAM).

[0150] For one embodiment, control module 1004 may include one or more input / output controllers to provide an interface to NVM / storage device 1008 and input / output device(s) 1010 .

[0151] For example, NVM / storage 1008 may be used to store data and / or instructions 1014. NVM / storage 1008 may include any suitable non-volatile memory (e.g., flash memory) and / or may include any suitable non-volatile storage device(s) (e.g., one or more hard disk drives (HDDs), one or more compact disk (CD) drives, and / or one or more digital versatile disk (DVD) drives).

[0152] NVM / storage device 1008 may include storage resources that are physically part of the device on which apparatus 1000 is installed, or it may be accessible to the device without being part of the device. For example, NVM / storage device 1008 may be accessed via input / output device(s) 1010 over a network.

[0153] (One or more) input / output devices 1010 may provide an interface for the apparatus 1000 to communicate with any other appropriate device, and the input / output device 1010 may include a communication component, an audio component, a sensor component, etc. The network interface 1012 may provide an interface for the apparatus 1000 to communicate through one or more networks, and the apparatus 1000 may wirelessly communicate with one or more components of a wireless network according to any of one or more wireless network standards and / or protocols, for example, accessing a wireless network based on a communication standard, such as WiFi, 2G, 3G, 4G, 5G, etc., or a combination thereof for wireless communication.

[0154] For one embodiment, at least one of the processor(s) 1002 may be packaged together with the logic of one or more controllers (e.g., a memory controller module) of the control module 1004. For one embodiment, at least one of the processor(s) 1002 may be packaged together with the logic of one or more controllers of the control module 1004 to form a system-in-package (SiP). For one embodiment, at least one of the processor(s) 1002 may be integrated on the same die with the logic of one or more controllers of the control module 1004. For one embodiment, at least one of the processor(s) 1002 may be integrated on the same die with the logic of one or more controllers of the control module 1004 to form a system-on-chip (SoC).

[0155] In various embodiments, the apparatus 1000 may be, but is not limited to, a terminal device such as a server, a desktop computing device, or a mobile computing device (e.g., a laptop computing device, a handheld computing device, a tablet computer, a netbook, etc.). In various embodiments, the apparatus 1000 may have more or fewer components and / or a different architecture. For example, in some embodiments, the apparatus 1000 includes one or more cameras, a keyboard, a liquid crystal display (LCD) screen (including a touch screen display), a non-volatile memory port, multiple antennas, a graphics chip, an application-specific integrated circuit (ASIC), and a speaker.

[0156] Among them, the main control chip can be used as a processor or control module in the detection device, sensor data, location information, etc. are stored in a memory or NVM / storage device, the sensor group can be used as an input / output device, and the communication interface may include a network interface.

[0157] As for the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.

[0158] The various embodiments in this specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the various embodiments can be referenced to each other.

[0159] The embodiments of the present application are described with reference to the flowcharts and / or block diagrams of the methods, terminal devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing terminal device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing terminal device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0160] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing terminal device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce a manufactured product including an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0161] These computer program instructions can also be loaded onto a computer or other programmable data processing terminal device so that a series of operating steps are executed on the computer or other programmable terminal device to produce a computer-implemented process, thereby providing instructions for implementing the process in the computer or other programmable terminal device. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0162] Although the preferred embodiments of the present application have been described, those skilled in the art may make additional changes and modifications to these embodiments once they have learned the basic creative concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications that fall within the scope of the embodiments of the present application.

[0163] Finally, it should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or terminal device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or terminal device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or terminal device including the elements.

[0164] The data processing system, the data processing method and the device, the electronic device and the storage medium provided by the present application are introduced in detail above. The principles and implementation methods of the present application are explained in this article by using specific examples. The description of the above embodiments is only used to help understand the method of the present application and its core idea. At the same time, for the general technical personnel in this field, according to the idea of ​​the present application, there will be changes in the specific implementation method and the scope of application. In summary, the content of this specification should not be understood as a limitation on the present application.

Claims

1. A data processing system, characterized in that: The data processing system includes: a first processor, a second processor, a shared memory, multiple object storage services, and an object storage service client, the first processor is connected to a first network card, the second processor is connected to a second network card, the object storage service client performs data transmission with the object storage service through the shared memory; the first network card is connected to a first switch, the second network card is connected to a second switch, and the first switch and the second switch are isolated from each other.

2. A data processing method, characterized in that: The method comprises: Constructing a dual data processing system; the dual data processing system includes: a first data processing system and a second data processing system, the first data processing system and the second data processing system respectively include: a first processor, a second processor and a plurality of object storage services, the first processor is connected to a first network card, the second processor is connected to a second network card, and the object storage service client in the first data processing system communicates with the client through the first network card; Isolating the first network card in the first data processing system from the second network card in the second data processing system, and isolating the second network card in the first data processing system from the first network card in the second data processing system, so that the first network card and the second network card in different data processing systems are isolated from each other; In response to a read / write signal from the client for data, determining a read / write strategy for the data according to a data processing system corresponding to the target object storage service; When the data processing system corresponding to the target object storage service is the first data processing system, the read-write strategy is implemented based on a shared memory in the first data processing system; When the data processing system corresponding to the target object storage service is the second data processing system, the read-write strategy is implemented based on the second network card in the first data processing system or the second network card in the second data processing system.

3. The method according to claim 2, characterized in that The read / write signal includes a read signal and a write signal, the read / write strategy includes a read strategy and a write strategy, the target object storage service includes a first target object storage service and a second target object storage service, and the response to the read / write signal of the client for the data, according to the data processing system corresponding to the target object storage service, determines the read / write strategy of the data, including: In response to the read signal, a read strategy for the data is determined according to a data processing system corresponding to the first target object storage service; wherein the first target object storage service is used to send the data, the read signal is used to indicate that the client needs to read the data from the object storage service client, and the read strategy is used to merge the data stored in the first target object storage service and send it to the client; In response to the write signal, a write strategy for the data is determined according to a data processing system corresponding to the second target object storage service; wherein the second target object storage service is used to store the data, the write signal is used to indicate that the client needs to write the data to the second target object storage service, and the write strategy is used to split the client's data and send it to the second target object storage service.

4. The method according to claim 3, characterized in that The step of determining, in response to the write signal, a write strategy for the data according to a data processing system corresponding to the second target object storage service, includes: In response to the write signal, determining the second target object storage service through the object storage service client; The data writing strategy is determined according to the data processing system corresponding to the second target object storage service.

5. The method according to claim 3, characterized in that: The object storage service client is in a first processor of the first data processing system, and when the data processing system corresponding to the target object storage service is the first data processing system, the read-write strategy is implemented based on a shared memory in the first data processing system, including: When the data processing system corresponding to the first target object storage service is the first data processing system, and the processor corresponding to the first target object storage service is the first processor in the first data processing system, the first target object storage service copies the data to the shared memory, and the object storage service client reads the data from the shared memory; When the data processing system corresponding to the second target object storage service is the first data processing system, and the processor corresponding to the second target object storage service is the first processor in the first data processing system, the object storage service client copies the data to the shared memory, and the second target object storage service obtains the data from the shared memory.

6. The method according to claim 5, characterized in that When the data processing system corresponding to the target object storage service is the second data processing system, the read / write strategy is implemented based on the second network card in the first data processing system or the second network card in the second data processing system, including: When the data processing system corresponding to the first target object storage service is the second data processing system, and the processor corresponding to the first target object storage service is the second processor in the second data processing system, the first target object storage service sends the data to the target memory through the second network card in the second data processing system, and the object storage service client reads the data from the target memory; the processor corresponding to the target memory is the second processor in the first data processing system; When the data processing system corresponding to the second target object storage service is the second data processing system, and the processor corresponding to the second target object storage service is the second processor in the second data processing system, the object storage service client copies the data to the target memory, and the target memory writes the data to the second target object storage service through the second network card in the first data processing system.

7. The method according to claim 2, characterized in that The processor corresponding to the shared memory is the first processor in the first data processing system.

8. A data processing device, characterized in that: The device comprises: A construction module is used to construct a dual data processing system; the dual data processing system includes: a first data processing system and a second data processing system, the first data processing system and the second data processing system respectively include: a first processor, a second processor and a plurality of object storage services, the first processor is connected to a first network card, the second processor is connected to a second network card, and the object storage service client in the first data processing system communicates with the client through the first network card; an isolation module, used to isolate the first network card in the first data processing system from the second network card in the second data processing system, and to isolate the second network card in the first data processing system from the first network card in the second data processing system, so that the first network card and the second network card in different data processing systems are isolated from each other; A read / write strategy module, configured to respond to a read / write signal from the client for data and determine a read / write strategy for the data according to a data processing system corresponding to a target object storage service; A shared memory module, used for implementing the read and write strategy based on the shared memory in the first data processing system when the data processing system corresponding to the target object storage service is the first data processing system; A second network card module is used for a second network card. When the data processing system corresponding to the target object storage service is the second data processing system, the read and write strategy is implemented based on the second network card in the first data processing system or the second network card in the second data processing system.

9. An electronic device, characterized in that: include: processor; and A memory having executable codes stored thereon, which, when executed, enables the processor to execute the data processing method according to any one of claims 2 to 7.

10. One or more machine-readable media having executable codes stored thereon, which, when executed, cause a processor to execute the data processing method according to any one of claims 2 to 7.