CN115599800A - Data storage method, device, system, storage medium and program product - Google Patents

Data storage method, device, system, storage medium and program product Download PDF

Info

Publication number
CN115599800A
CN115599800A CN202111319262.0A CN202111319262A CN115599800A CN 115599800 A CN115599800 A CN 115599800A CN 202111319262 A CN202111319262 A CN 202111319262A CN 115599800 A CN115599800 A CN 115599800A
Authority
CN
China
Prior art keywords
data
media data
data storage
storage
resource pool
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111319262.0A
Other languages
Chinese (zh)
Inventor
曲强
张子怡
杨锐捷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Cloud Computing Technologies Co Ltd
Original Assignee
Huawei Cloud Computing Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Cloud Computing Technologies Co Ltd filed Critical Huawei Cloud Computing Technologies Co Ltd
Priority to PCT/CN2022/082069 priority Critical patent/WO2023279770A1/en
Priority to EP22836530.0A priority patent/EP4354313A1/en
Publication of CN115599800A publication Critical patent/CN115599800A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2425Iterative querying; Query formulation based on the results of a preceding query
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Abstract

The embodiment of the application discloses a data storage method, a data storage device, a data storage system, a data storage medium and a program product, and belongs to the technical field of data storage. The embodiment of the application provides a data storage system for multi-source cross-domain media data storage based on a block chain, wherein the data storage system provides a data storage interface for a plurality of clients, and the clients can request uplink storage by calling the data storage interface. The data storage system may interface with and service multiple blockchain systems. And the data storage system also comprises a storage resource pool shared by the plurality of clients to share the storage resources, so that the problems that the block chain participants are easy to generate errors in self-management of the storage resources, and the expansion cost of the storage resources is high are reduced. In short, the scheme does not need a block chain participant to automatically arrange the logic among the client, the block chain system and the data storage, improves the usability and universality of the block chain system, and improves the safety of the data storage.

Description

Data storage method, device, system, storage medium and program product
The embodiment of the present application claims priority of chinese patent application No. 202110770872.6 entitled "data storage method, apparatus, server and storage medium" filed on 8/7/2021, which is incorporated by reference in its entirety.
Technical Field
The present disclosure relates to the field of data storage technologies, and in particular, to a data storage method, apparatus, system, storage medium, and program product.
Background
The blockchain is a novel application mode of computer technologies such as distributed data storage, consensus mechanism, encryption algorithm and the like. The block chain system utilizes a chain data structure to verify and store data, utilizes a distributed node consensus algorithm to generate and update data blocks, utilizes a cryptographic mode to ensure the safety of data transmission and access, and utilizes an intelligent contract composed of automatic script codes to program and operate data. Currently, blockchain-based data storage is receiving increasing attention and applications.
With the generalization of blockchain services and application fields, the storage of multi-source cross-domain media data will be one of the key problems in solving industry problems by applying blockchain technology. The multi-source media data is characterized in that the multi-source media data can be from different organizations, nodes or application platforms, the cross-domain media data is that the data to be stored is widely existed in the fields of finance, energy, aviation, agriculture, livelihood, logistics and the like, and the multi-source media data is more and more rich in modalities such as texts, audios, images, videos and the like.
Disclosure of Invention
The embodiment of the application provides a data storage method, a data storage device, a data storage system, a data storage medium and a program product, which can store multi-source cross-domain media data based on a block chain, improve the usability and universality of the block chain system and improve the safety of data storage. The technical scheme is as follows:
in a first aspect, a data storage method is provided, where the method is performed by a first client, where the first client is any one of multiple clients included in a data storage system, the data storage system further includes a storage resource pool shared by the multiple clients, and the data storage system provides a data storage interface to the multiple clients, the storage resource pool is used to store multi-source cross-domain media data, and the multiple clients are clients accessing multiple blockchain systems, and the method includes:
a first client acquires a data storage request, wherein the data storage request carries first media data to be stored; the first client calls the data storage interface, sends the data storage request through the data storage interface, wherein the data storage request is used for indicating that the first transaction data are stored in the blockchain and storing the first media data in the storage resource pool, and the first transaction data are the transaction data of the first media data.
The embodiment of the application provides a data storage system for multi-source cross-domain media data storage based on a block chain, wherein the data storage system provides a data storage interface for a plurality of clients, and the clients can request uplink storage by calling the data storage interface. The data storage system may interface with and service multiple blockchain systems. And the data storage system also comprises a storage resource pool shared by the plurality of clients to share the storage resources, so that the problems that the block chain participants are easy to generate errors in self-management of the storage resources, and the expansion cost of the storage resources is high are reduced. That is, the logic between the client, the block chain system and the data storage does not need to be arranged by the block chain participant, so that the usability and universality of the block chain system are improved, and the safety of the data storage is improved.
Optionally, the data storage request further carries first check information; the first client sends the data storage request through the data storage interface, and the data storage request comprises: the first client verifies the first media data through the data storage interface based on the first verification information; and in the case that the first media data passes the verification, the first client sends the data storage request through the data storage interface. That is, the data storage interface includes a data verification logic therein for the client to perform data verification, thereby ensuring the accuracy of the data.
Optionally, the data storage request further carries first signature information, where the first signature information is obtained by signing the first media data according to the first private key; the first client sends the data storage request through the data storage interface, and the data storage request comprises: the first client verifies the first signature information through the data storage interface according to the first public key; and under the condition that the first signature information is verified, the first client sends the data storage request through the data storage interface. That is, the data storage interface includes signature verification logic therein for the client to perform signature verification to ensure the authenticity of the data.
Optionally, the data storage system further comprises a plurality of service terminals and a service management terminal; the first client sends the data storage request through the data storage interface, and the data storage request comprises: the first client sends the data storage request to the service management end through the data storage interface, wherein the data storage request is also used for indicating the service management end to determine the first service end from the plurality of service ends and sending the data storage request to the first service end. That is, the data storage system provides multiple compute nodes to improve the performance of the server.
Optionally, the data storage system further provides a data query interface to the plurality of clients; the method further comprises the following steps: the first client acquires source information of second media data to be inquired; the first client calls a data query interface and sends a data acquisition request through the data query interface, wherein the data acquisition request carries source information of the second media data; and the first client receives a first query result through the data query interface, and the first query result is obtained based on the source information of the second media data. That is, the data storage system provides a data query interface for a plurality of clients, and the clients can obtain the media data by calling the data query interface.
Optionally, the source information of the second media data includes second check information, and the first query result carries the queried second media data; after the first client receives the first query result through the data query interface, the method further includes: and the first client verifies the queried second media data through the data query interface based on the second verification information. That is, the data query interface includes a data verification logic for the client to perform data verification, so as to ensure the accuracy of the acquired media data.
In a second aspect, a data storage method is provided, where the method is performed by a first server, where the first server is one of at least one server included in a data storage system, the data storage system further includes multiple clients and a storage resource pool shared by the multiple clients, where the storage resource pool is used to store multi-source cross-domain media data, and the multiple clients are clients accessing multiple blockchain systems, and the method includes:
a first service end receives a data storage request, wherein the data storage request carries first media data to be stored; the first service end determines first transaction data, stores the first transaction data to the blockchain, and stores the first media data to the storage resource pool, wherein the first transaction data is transaction data of the first media data.
The embodiment of the application provides a data storage system for multi-source cross-domain media data storage based on the block chain, and the service end does not need to directly connect the block chain system for uplink storage, but connects a plurality of block chain systems for uplink storage. The data storage system comprises a storage resource pool shared by a plurality of clients to share storage resources, so that the problems that a blockchain participant is easy to cause errors in self-management of the storage resources, and the expansion cost of the storage resources is high are solved. That is, the logic between the client, the block chain system and the data storage does not need to be arranged by the block chain participant, so that the usability and universality of the block chain system are improved, and the safety of the data storage is improved.
Optionally, the data storage request further carries first check information; the first service end determines first transaction data, and the first transaction data comprises: the first service end verifies the first media data based on the first check information; and under the condition that the first media data passes the verification, the first service end determines the first transaction data. That is, in the uplink storage process, the server can perform data verification, and the accuracy of the data is ensured.
Optionally, the data storage request further carries first signature information, and the first signature information is obtained by signing the first media data according to the first private key; the first service end determines first transaction data, and the first transaction data comprises: the first server side verifies the first signature information according to the first public key; and under the condition that the first signature information is verified, the first service end determines the first transaction data. That is, in the uplink storage process, the server can perform signature verification to ensure the authenticity of data.
Optionally, the data storage system includes a plurality of service terminals and a service management terminal, and the first service terminal is determined by the service management terminal from the plurality of service terminals; the first service terminal receives a data storage request, and the data storage request comprises the following steps: the first service end receives a data storage request sent by the service management end, the data storage request received by the service management end is sent by a first client, and the first client is one of the multiple clients. That is, the data storage system provides multiple compute nodes to improve the performance of the server.
Optionally, the storage resource pool includes a plurality of storage nodes, and the plurality of storage nodes are used for storing the multi-source cross-domain media data in a classified manner; the first server stores the first media data to a storage resource pool, and the method comprises the following steps: the first server classifies the first media data according to the attribute information of the first media data to obtain a classification result; and the first server determines a first storage node from the plurality of storage nodes according to the classification result, and stores the first media data to the first storage node. That is, the server can perform classified storage according to the attribute of the media data, and the classified storage is reasonably stored to reduce the waste of storage space and improve the storage performance.
Optionally, the method further comprises: a first service end receives a data acquisition request, wherein the data acquisition request carries source information of third media data to be inquired; the first service terminal inquires the third media data from the storage resource pool based on the source information of the third media data to obtain a second inquiry result; and the first server side sends the second query result. That is, the server also has data query capability.
Optionally, the source information of the third media data includes third verification information; the first service terminal queries the third media data from the storage resource pool based on the source information of the third media data to obtain a second query result, and the method comprises the following steps: the first service terminal inquires third media data from the storage resource pool based on the source information of the third media data; the first service end verifies the inquired third media data based on the third verification information; and under the condition that the queried third media data passes the verification, the first server side obtains a second query result, and the second query result carries the queried third media data. That is, the server can perform data verification on the queried media data to ensure the accuracy of the queried media data.
Optionally, the source information of the third media data includes third check information, and the storage resource pool includes a main resource pool and a standby resource pool; the first service terminal queries the third media data from the storage resource pool based on the source information of the third media data to obtain a second query result, and the method includes: the first service terminal inquires third media data from the main resource pool based on the source information of the third media data, and verifies the inquired third media data from the main resource pool based on third verification information; under the condition that the third media data inquired from the main resource pool is not verified, or under the condition that the third media data is not inquired from the main resource pool, the first service terminal inquires the third media data from the standby resource pool based on the source information of the third media data, and verifies the third media data inquired from the standby resource pool based on the third verification information; and under the condition that the third media data queried from the standby resource pool passes the verification, the first server side obtains a second query result, and the second query result carries the third media data queried from the standby resource pool. That is, the storage resource pool has an automatic disaster recovery capability, and the reliability of the data storage system is improved.
In a third aspect, there is provided a data storage device having a function of implementing the behavior of the data storage method in the first aspect described above. The data storage device comprises one or more modules, and the one or more modules are used for realizing the data storage method provided by the first aspect.
That is, a data storage apparatus is provided, the apparatus is used for a first client, the first client is any one of a plurality of clients included in a data storage system, the data storage system further includes a storage resource pool shared by the plurality of clients, and the data storage system provides a data storage interface for the plurality of clients, the storage resource pool is used for storing multi-source cross-domain media data, the plurality of clients are clients accessing a plurality of blockchain systems, the apparatus includes:
the first acquisition module is used for acquiring a data storage request, wherein the data storage request carries first media data to be stored;
the first processing module is used for calling the data storage interface, sending the data storage request through the data storage interface, wherein the data storage request is used for indicating that the first transaction data are stored in the blockchain and storing the first media data in the storage resource pool, and the first transaction data are the transaction data of the first media data.
Optionally, the data storage request further carries first check information;
the first processing module includes:
the first verification sub-module is used for verifying the first media data through the data storage interface based on the first verification information;
and the sending submodule is used for sending the data storage request through the data storage interface under the condition that the first media data passes the verification.
Optionally, the data storage request further carries first signature information, and the first signature information is obtained by signing the first media data according to the first private key;
the first processing module includes:
the second verification submodule is used for the first client to verify the first signature information through the data storage interface according to the first public key;
and the sending submodule is used for sending the data storage request through the data storage interface under the condition that the first signature information is verified.
Optionally, the data storage system further comprises a plurality of service terminals and a service management terminal;
the first processing module comprises:
and the sending submodule is used for sending the data storage request to the service management end through the data storage interface, and the data storage request is also used for indicating the service management end to determine a first service end from the plurality of service ends and sending the data storage request to the first service end.
Optionally, the data storage system further provides a data query interface to the plurality of clients; the device also includes:
the second acquisition module is used for acquiring source information of second media data to be inquired;
the second processing module is used for calling the data query interface and sending a data acquisition request through the data query interface, wherein the data acquisition request carries source information of second media data;
and the receiving module is used for receiving a first query result through the data query interface, and the first query result is obtained based on the source information of the second media data.
Optionally, the source information of the second media data includes second check information, and the first query result carries the queried second media data;
the device also includes:
and the verification module is used for verifying the queried second media data through the data query interface based on the second verification information.
In a fourth aspect, there is provided a data storage apparatus having a function of realizing the behavior of the data storage method in the second aspect described above. The data storage device comprises one or more modules, and the one or more modules are used for realizing the data storage method provided by the second aspect.
That is, a data storage apparatus is provided, the apparatus is used in a first server, the first server is one of at least one server included in a data storage system, the data storage system further includes a plurality of clients and a storage resource pool shared by the plurality of clients, the storage resource pool is used for storing multi-source cross-domain media data, the plurality of clients are clients accessing a plurality of blockchain systems, the apparatus includes:
the first receiving module is used for receiving a data storage request, wherein the data storage request carries first media data to be stored;
and the uplink storage module is used for determining first transaction data, storing the first transaction data to the blockchain and storing the first media data to the storage resource pool, wherein the first transaction data is the transaction data of the first media data.
Optionally, the data storage request further carries first check information;
the uplink storage module comprises:
the first verification sub-module is used for verifying the first media data based on the first verification information;
and the determining sub-module is used for determining the first transaction data under the condition that the first media data passes the verification.
Optionally, the data storage request further carries first signature information, and the first signature information is obtained by signing the first media data according to the first private key;
the uplink storage module comprises:
the second verification submodule is used for verifying the first signature information according to the first public key;
and the determining sub-module is used for determining the first transaction data under the condition that the first signature information is verified.
Optionally, the data storage system includes a plurality of service terminals and a service management terminal, and the first service terminal is determined by the service management terminal from the plurality of service terminals;
the first receiving module includes:
the receiving submodule is used for receiving a data storage request sent by the service management end, the data storage request received by the service management end is sent by a first client side, and the first client side is one of the multiple client sides.
Optionally, the storage resource pool includes a plurality of storage nodes, and the plurality of storage nodes are used for storing the multi-source cross-domain media data in a classified manner;
the uplink storage module comprises:
the classification submodule is used for classifying the first media data according to the attribute information of the first media data to obtain a classification result;
and the storage submodule is used for determining a first storage node from the plurality of storage nodes according to the classification result and storing the first media data to the first storage node.
Optionally, the apparatus further comprises:
the second receiving module is used for receiving a data acquisition request, wherein the data acquisition request carries source information of third media data to be inquired;
the query module is used for querying the third media data from the storage resource pool based on the source information of the third media data to obtain a second query result;
and the sending module is used for sending the second query result by the first service terminal.
Optionally, the source information of the third media data includes third verification information;
the query module comprises:
the first query submodule is used for querying the third media data from the storage resource pool based on the source information of the third media data;
the third verification sub-module is used for verifying the inquired third media data based on the third verification information;
and the first obtaining sub-module is used for obtaining a second query result under the condition that the queried third media data passes verification, and the second query result carries the queried third media data.
Optionally, the source information of the third media data includes third check information, and the storage resource pool includes a main resource pool and a standby resource pool;
the query module comprises:
the first processing sub-module is used for inquiring third media data from the main resource pool based on the source information of the third media data and verifying the third media data inquired from the main resource pool based on third verification information;
the second processing sub-module is used for inquiring third media data from the standby resource pool based on source information of the third media data under the condition that the third media data inquired from the main resource pool is not verified or the third media data is not inquired from the main resource pool, and verifying the third media data inquired from the standby resource pool based on third verification information;
and the second obtaining submodule is used for obtaining a second query result under the condition that the third media data queried from the standby resource pool passes the verification, and the second query result carries the third media data queried from the standby resource pool.
In a fifth aspect, a data storage system is provided, where the data storage system includes multiple clients and at least one server, a first client is one of the multiple clients, and a first server is one of the at least one server, the data storage system further includes a storage resource pool shared by the multiple clients, and the data storage system provides a data storage interface for the multiple clients, the storage resource pool is used for storing multi-source cross-domain media data, and the multiple clients are clients accessing multiple blockchain systems; a first client, configured to implement the data storage method according to the first aspect; the first service end is configured to implement the data storage method according to the second aspect.
In a sixth aspect, a computer device is provided, which includes a processor and a memory, wherein the memory is used for storing a program for executing the data storage method provided by the first aspect or the second aspect, and storing data for realizing the data storage method provided by the first aspect or the second aspect. The processor is configured to execute programs stored in the memory. The operating means of the memory device may further comprise a communication bus for establishing a connection between the processor and the memory.
In a seventh aspect, a computer-readable storage medium is provided, which stores instructions that, when executed on a computer, cause the computer to perform the data storage method of the first or second aspect.
In an eighth aspect, there is provided a computer program product comprising instructions which, when run on a computer, cause the computer to perform the data storage method of the first or second aspect.
The technical effects obtained by the third aspect, the fourth aspect, the fifth aspect, the sixth aspect, the seventh aspect, and the eighth aspect are similar to the technical effects obtained by the corresponding technical means in the first aspect or the second aspect, and are not described herein again.
The technical scheme provided by the embodiment of the application can at least bring the following beneficial effects:
the embodiment of the application provides a data storage system for multi-source cross-domain media data storage based on a block chain, the data storage system provides a data storage interface for a plurality of clients, and each client can request uplink storage by calling the data storage interface. The plurality of clients are clients accessing a plurality of blockchain systems, that is, the data storage system can interface and serve the plurality of blockchain systems. And the data storage system also comprises a storage resource pool shared by the plurality of clients to share the storage resources, so that the problems that the block chain participants easily manage the storage resources by themselves, such as data error and high storage resource expansion cost, are reduced. In short, the scheme does not need a block chain participant to automatically arrange the logic among the client, the block chain system and the data storage, improves the usability and universality of the block chain system, and improves the safety of the data storage.
Drawings
Fig. 1 is a system architecture diagram according to a data storage method provided in an embodiment of the present application;
FIG. 2 is an architecture diagram of a data storage system provided by an embodiment of the present application;
FIG. 3 is a schematic structural diagram of a computer device according to an embodiment of the present disclosure;
FIG. 4 is a flowchart of a data storage method provided in an embodiment of the present application;
FIG. 5 is a diagram of a system architecture according to another data storage method provided by an embodiment of the present application;
FIG. 6 is a flowchart of a method for data uplink storage according to an embodiment of the present application;
FIG. 7 is a flowchart of a data query method provided by an embodiment of the present application;
FIG. 8 is a flow chart of another data query method provided by an embodiment of the present application;
FIG. 9 is a schematic structural diagram of a data storage device according to an embodiment of the present application;
fig. 10 is a schematic structural diagram of another data storage device according to an embodiment of the present application.
Detailed Description
To make the objects, technical solutions and advantages of the embodiments of the present application more clear, the embodiments of the present application will be further described in detail with reference to the accompanying drawings.
It should be noted that, the network architecture and the service scenario described in the embodiment of the present application are for more clearly illustrating the technical solution of the embodiment of the present application, and do not constitute a limitation to the technical solution provided in the embodiment of the present application, and it is known by a person skilled in the art that, along with the evolution of the network architecture and the appearance of a new service scenario, the technical solution provided in the embodiment of the present application is also applicable to similar technical problems.
Fig. 1 is a system architecture diagram according to a data storage method provided in an embodiment of the present application. Referring to fig. 1, the system architecture includes a plurality of clients, at least one server, and a storage resource pool. Alternatively, the system is referred to as a data storage system. The data storage system provides a data storage interface (also referred to as a data uplink interface) to the plurality of clients. And the storage resource pool is shared by the plurality of clients. The plurality of clients are clients accessing one or more blockchain systems, and the data storage system provided by the embodiment of the present application may be considered to interface with the one or more blockchain systems.
Any client in the multiple clients is used for realizing the corresponding function of the client in the data storage method provided by the embodiment of the application. Illustratively, a first client receives a data storage request submitted by a certain blockchain participant, calls a data storage interface, and sends the data storage request through the data storage interface, wherein the data storage request indicates uplink storage. The first client is any one of a plurality of clients included in the data storage system.
Optionally, one of the plurality of clients is for use by one or more blockchain participants. That is, the blockchain participants may use a client individually or may share a client.
If the data storage system comprises a server, the client is used for sending the data storage request to the server through the data storage interface. If the data storage system comprises a plurality of service terminals, the data storage system further comprises a service management terminal, and the client is used for sending the data storage request to the service management terminal through the data storage interface. The service management terminal is used for determining a service terminal from the plurality of service terminals and sending the data storage request to the determined service terminal. For example, the service manager determines a server from the plurality of servers according to the load balancing policy.
Any one of the at least one server is configured to implement a corresponding function of the server in the data storage method provided by the embodiment of the application. Illustratively, the server receives the data storage request, stores the transaction data to the blockchain, and stores the media data to the storage resource pool.
The storage resource pool is used for storing multi-source cross-domain media data (also called multi-source cross-domain media big data) for the multiple clients to share, namely for the share of the blockchain participants. In an embodiment of the present application, the storage resource pool includes a plurality of storage nodes, and the plurality of storage nodes are used for storing the multi-source cross-domain media data in a classified manner. Optionally, the storage resource pool is a cloud storage resource pool.
Optionally, in order to improve the security and accuracy of data storage, the client and/or the server is further configured to verify media data carried by the data storage request, including accuracy verification (such as digest verification) and/or authenticity verification (signature verification), and perform subsequent operations if the verification is passed.
Optionally, the data storage system also provides a data query interface (also referred to as a data acquisition interface) to the plurality of clients. Any one of the plurality of clients is further configured to invoke a data query interface to request a query for media data. The server is also used for inquiring the media data from the storage resource pool according to the data inquiry request of the client and feeding back an inquiry result. Optionally, the storage resource pool includes a primary resource pool and a standby resource pool. And the standby resource pool is used for storing disaster backup data. Optionally, in order to improve the security and accuracy of the data storage, the client and/or the server is further configured to perform verification on the queried media data, including accuracy verification (e.g., digest verification), and perform subsequent operations if the verification is passed.
As can be seen from the above, the data storage system provided by the present invention can interface with a plurality of blockchain systems, and the data storage system can be considered to have multi-tenancy capability. The data storage system provides a uniform data storage interface and a data query interface for the client used by each blockchain participant, a user does not need to organize the interactive logic among the client, the blockchain system and the storage by himself, the applicability and the usability of the blockchain system are improved, and the problem of logic errors caused by the fact that the user writes codes by himself is solved. Therefore, the problems that the self-organizing logic is easy to cause uplink errors and the like are avoided to a certain extent, and the stability and the safety of the client network, the transmission network and the storage network are improved. The storage resource pool provided by the scheme is shared by the block chain participants and managed by the server side, and all interaction with the storage resources needs to pass through the server side. Therefore, the problems of scattered storage resources, lost data, easy tampering, inaccessibility and the like caused by the respective management of the storage resources by the block chain participants are avoided to a certain extent. And the storage resource pool is convenient to expand, and the cost of expanding storage resources by a user is reduced. The classified storage of the storage resource pool improves the storage performance and reduces the waste of storage resources. The storage resource pool is designed into a main and standby framework so as to have automatic disaster recovery capability. In addition, both the client and the server can perform data verification to ensure that data is not easy to be tampered. Data verification is carried out in the process of uplink storage of the media data and the process of media data acquisition, and the secondary verification improves the safety and the reliability.
In other words, the present solution provides a blockchain oriented rich media data storage system. The block chain system can be integrated with the rich media storage system in a butt joint mode to enhance the storage capacity of the block chain system and make up for the defect that the original block chain system cannot manage rich media data. From the user perspective, the block chain system connected with the system is used, the block chain system is not different from the original block chain system in use, the user can not sense the difference between the common data uplink and the rich media data uplink in the background processing flow, the user (such as a public cloud user) is not required to manage the rich media data storage by himself, and the rich media data storage system has the capabilities of tamper resistance, data management, disaster tolerance, cost optimization and the like.
In the embodiment of the application, any client is a user terminal or a local server. The client is also referred to as a blockchain client. Any server is a cloud server, the server is also called a computing node or a cloud computing node, and the server includes a cloud computing engine, and the cloud computing engine is used for implementing the corresponding function of the server in the data storage method provided by the embodiment of the application. The service management end is a cloud server.
Fig. 2 is an architecture diagram of a data storage system according to an embodiment of the present application. Referring to fig. 2, the data storage system includes a client side and a service side. The client side includes a plurality of clients, i.e., the plurality of clients includes a blockchain client accessing a plurality of blockchain systems. The server side comprises a plurality of servers, and each server comprises a cross-domain media big data cloud computing engine (cloud computing engine for short). The block chain client is used for acquiring cross-domain media big data (media data for short) to be stored. Optionally, the client performs verification calculations on the media data to ensure the accuracy of the data. And in the case of passing the verification, the client sends a data storage request. And after receiving the data storage request, the cloud computing engine performs verification computing on the media data. And in the case of passing the verification, the cloud computing engine stores the media data to a storage resource pool, namely a cloud versioned storage resource pool. In addition, in case of passing the verification, the cloud computing engine stores the transaction data to the blockchain, i.e. the uplink transaction.
Referring to fig. 3, fig. 3 is a schematic structural diagram of a computer device according to an embodiment of the present application. Optionally, the computer device is a server shown in fig. 1 or fig. 2. Alternatively, the computer device is a client shown in fig. 1 or fig. 2. The computer device includes one or more processors 301, a communication bus 302, a memory 303, and one or more communication interfaces 304.
The processor 301 is a general-purpose Central Processing Unit (CPU), a Network Processor (NP), a microprocessor, or one or more integrated circuits such as an application-specific integrated circuit (ASIC), a Programmable Logic Device (PLD), or a combination thereof for implementing the present invention. Optionally, the PLD is a Complex Programmable Logic Device (CPLD), a field-programmable gate array (FPGA), a General Array Logic (GAL), or any combination thereof.
A communication bus 302 is used to transfer information between the above components. Optionally, the communication bus 302 is divided into an address bus, a data bus, a control bus, and the like. For ease of illustration, only one thick line is shown, but this does not mean that there is only one bus or one type of bus.
Alternatively, the memory 303 is a read-only memory (ROM), a Random Access Memory (RAM), an electrically erasable programmable read-only memory (EEPROM), an optical disk (including a compact disk-read-only memory (CD-ROM), a compact disk, a laser disk, a digital versatile disk, a Blu-ray disk, etc.), a magnetic disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer, but is not limited to. The memory 303 is separate and connected to the processor 301 through the communication bus 302, or the memory 303 is integrated with the processor 301.
The communication interface 304 uses any transceiver or the like for communicating with other devices or communication networks. The communication interface 304 includes a wired communication interface and optionally a wireless communication interface. The wired communication interface is, for example, an ethernet interface. Optionally, the ethernet interface is an optical interface, an electrical interface, or a combination thereof. The wireless communication interface is a Wireless Local Area Network (WLAN) interface, a cellular network communication interface, or a combination thereof.
Optionally, in some embodiments, the computer device comprises a plurality of processors, such as processor 301 and processor 305 shown in fig. 3. Each of these processors is a single core processor, or a multi-core processor. A processor herein optionally refers to one or more devices, circuits, and/or processing cores for processing data (e.g., computer program instructions).
In a specific implementation, the computer device further includes an output device 306 and an input device 307, as an embodiment. An output device 306 is in communication with the processor 301 and is capable of displaying information in a variety of ways. For example, the output device 306 is a Liquid Crystal Display (LCD), a Light Emitting Diode (LED) display device, a Cathode Ray Tube (CRT) display device, a projector (projector), or the like. The input device 307 is in communication with the processor 301 and is capable of receiving user input in a variety of ways. The input device 307 is, for example, a mouse, a keyboard, a touch screen device, a sensing device, or the like.
In some embodiments, the memory 303 is used to store program code 310 for implementing aspects of the present application, and the processor 301 is capable of executing the program code 310 stored in the memory 303. The program code includes one or more software modules, and the computer device can implement the data storage method provided in the embodiment of fig. 4 below through the processor 301 and the program code 310 in the memory 303.
Fig. 4 is a flowchart of a data storage method according to an embodiment of the present application. The method is applied to a data storage system, such as the data storage system shown in fig. 1 or fig. 2. The data storage system comprises a plurality of clients, at least one server and a storage resource pool shared by the clients, and is provided with a data storage interface for the clients, and the storage resource pool is used for storing multi-source cross-domain media data. Referring to fig. 4, the method includes the following steps.
Step 401: the first client side obtains a data storage request, and the data storage request carries first media data to be stored.
The first client is any one of a plurality of clients included in the data storage system.
As can be seen from the foregoing, the data storage system interfaces with one or more blockchain systems, and each client in the data storage system can receive a data storage request submitted by a blockchain participant to perform uplink storage of media data. The data storage system is a system designed for multi-source cross-domain media data storage based on blockchains. The multiple clients can obtain the multi-source cross-domain media data to perform uplink storage according to the data storage method provided by the embodiment of the application.
Next, a first client of the plurality of clients is taken as an example for description. The other clients of the multiple clients except the first client obtain the data storage request to perform the uplink storage of the media data, which is similar to the corresponding implementation manner of the first client, and reference may be made to the related introduction to the first client.
In the embodiment of the application, a first client acquires a data storage request, and the data storage request carries first media data to be stored. Illustratively, a first client receives a data storage request submitted by a first data source, the first data source being a blockchain participant submitting the data storage request to the first client.
Step 402: the first client calls a data storage interface provided by the data storage system to the blockchain participant, and sends the data storage request through the data storage interface.
In the embodiment of the application, after acquiring the data storage request, the first client calls the data storage interface, and sends the data storage request through the data storage interface. It should be noted that the data storage interface is a unified data storage interface provided by the data storage system to the clients used by the blockchain participants. The data storage request sent by the first client is used for indicating to store the first transaction data to the blockchain and store the first media data to the storage resource pool. The first transaction data is transaction data of the first media data.
Optionally, the data storage request further carries first check information. The first client verifies the first media data through the data storage interface based on the first verification information. And in the case that the first media data passes the verification, the first client sends the data storage request through the data storage interface. Optionally, in case the first media data is not verified, the first client retrieves the data storage request. That is, to ensure data accuracy, the first client verifies the first media data before sending the data storage request. Illustratively, the first client calculates verifiable encoding (such as a digest, a Cyclic Redundancy Check (CRC) code, a parity code, and the like) of the first media data by using a verification encoding algorithm, compares the calculated verifiable encoding with the first check information, and if the comparison is consistent, the first client determines that the first media data is verified. The verification coding algorithm may also be referred to as a check algorithm, and the verification coding algorithm may be a digest algorithm (such as a hash algorithm), a CRC check algorithm, a parity check algorithm, or another algorithm, which is not limited in this application. It should be noted that the verification coding algorithm adopted by the first client is identical to the algorithm used for determining the first check information.
Optionally, the first verification information is verification information of first data signed by a first data source, and the first data source is a blockchain participant submitting the data storage request to the first client. That is, the first data source carries the verifiable code (i.e., the first verification information) signed by using the data source certificate when submitting the first media data to the first client, so as to facilitate data verification by the first client.
Optionally, the data storage request further carries first signature information, and the first signature information is obtained by signing the first media data according to the first private key. And the first client verifies the first signature information through the data storage interface according to the first public key. And under the condition that the first signature information is verified, the first client sends the data storage request through the data storage interface. Optionally, in a case that the first signature information verification fails, the first client retrieves the data storage request. The first signature information is obtained by a first data source through signing the first media data according to a first private key. It should be noted that the first private key and the first public key are matched, and the first public key is shared by the first data source to the first client, so as to facilitate signature verification. The first client side verifies that the first signature information is really obtained by the signature of the first data source by adopting an asymmetric encryption mode. The first client verifies the first signature information through the data storage interface according to the first public key in a plurality of implementation manners, which is not limited in the embodiment of the present application.
It should be noted that the security verification (including signature verification and/or data verification) is optional for the first client. In other words, the data storage interface may or may not include security verification logic therein. Optionally, in a case where the data storage interface includes signature verification logic and data verification logic, the first client may first verify the first signature information through the signature verification logic to ensure the authenticity of the data. And under the condition that the first signature information is verified, the first client verifies the first media data through the data verification logic so as to ensure the accuracy of the data.
As can be seen from the foregoing, the data storage system includes one server or a plurality of servers. Under the condition that the data storage system comprises a server side, the first client side sends a data storage request to the server side through the data storage interface, and the server side is the first server side. In the case where the data storage system includes a plurality of servers, the data storage system further includes a service manager. The first client sends the data storage request to the service management end through the data storage interface, and the data storage request is also used for indicating the service management end to determine a first service end from the plurality of service ends and sending the data storage request to the first service end. The first server is one of at least one server included in the data storage system. Illustratively, the service manager determines the first service from the plurality of services according to a load balancing policy.
Fig. 5 is a system architecture diagram according to another data storage method provided in an embodiment of the present application. Referring to fig. 5, it is assumed that the data storage system provided in the embodiment of the present application is leased to each cloud user, and the cloud users are participants of a plurality of block chain systems. In the tenant area, the blockchain participants are connected with a server of the data storage system through blockchain clients, and the blockchain client a, the blockchain client B, the blockchain client C and the like request uplink storage by calling a data storage interface or call a data query interface to request acquisition of media data. In a service area (also referred to as a management area), requests of blockchain clients are processed through various service ends according to a load balancing strategy, wherein the service ends comprise an engine A, an engine B, an engine C, an engine D, an engine E and the like. It should be noted that the system architecture further includes a storage resource pool for tenants to share the storage resource.
Step 403: the first service end receives the data storage request.
In the embodiment of the application, when the data storage system comprises one server, the first server receives a data storage request sent by the first client. Under the condition that the data storage system comprises a plurality of service terminals, the first service terminal receives a data storage request sent by the service management terminal. As can be seen from the foregoing, the data storage request received by the service manager is sent by the first client, and the first service is determined by the service manager from the plurality of services.
Step 404: the first service end determines first transaction data, stores the first transaction data to a block chain, and stores the first media data to a storage resource pool, wherein the storage resource pool is used for storing multi-source cross-domain media data.
In an embodiment of the present application, after receiving the data storage request, the first server determines first transaction data, and stores the first transaction data in a blockchain, that is, a trade uplink. The first service end also stores the first media data to the storage resource pool. The first transaction data is transaction data of the first media data.
Alternatively, the transaction data may be referred to as log data. In one implementation, the first transaction data includes first verification information (e.g., a data digest). Or, if the first check information is a data digest (e.g., a hash value), the first transaction data includes the first check information, and if the first check information is not the data digest, the first transaction data includes a digest of the first media data, and the digest of the first media data is determined by the first service end based on the first media data. In addition, the first transaction data further includes data source information of the first media data, a first timestamp, a storage location of the first media data, attribute information of the first media data, and the like. Wherein the first timestamp may be determined based on a system time at which the first data source submitted the data storage request.
As can be seen from the foregoing, the data storage request also carries the first check information. In order to ensure data accuracy, optionally, the first server verifies the first media data based on the first verification information before determining the first transaction data. And under the condition that the first media data passes the verification, the first service end determines the first transaction data. Optionally, in a case that the first media data is not verified, the first server sends, to the first client, indication information of storage failure. That is, the first service end may also perform data verification. Illustratively, the first service end calculates the verifiable code of the first media data by using a verification coding algorithm, compares the calculated verifiable code with the first check information, and if the comparison is consistent, the first service end determines that the first media data passes the verification. The verification coding algorithm is consistent with the algorithm used for determining the first check information, which may specifically refer to the foregoing description of the verification coding algorithm used by the first client, and is not described herein again.
Optionally, the data storage request further carries first signature information, and the first signature information is obtained by signing the first media data according to the first private key. To ensure data authenticity, optionally, the first server verifies the first signature information according to the first public key before determining the first transaction data. And under the condition that the first signature information is verified, the first service end determines the first transaction data. Optionally, in a case that the first signature information is not verified, the first server sends, to the first client, indication information that storage fails. That is, the first service end may also perform signature verification. It should be noted that the first private key is matched with the first public key, and the first public key is shared by the first data source to the first service end, so as to facilitate signature verification. The first service end adopts an asymmetric encryption mode to verify that the first signature information is really obtained by the signature of the first data source. The first server verifies the first signature information according to the first public key in a plurality of ways, which is not limited in the embodiment of the present application.
It should be noted that the security verification (including signature verification and/or data verification) is also optional for the first service end. Optionally, the first server may verify the first signature information first to ensure the authenticity of the data. And under the condition that the first signature information is verified, the first service end verifies the first media data again to ensure the accuracy of the data.
In an embodiment of the present application, the storage resource pool includes a plurality of storage nodes, and the plurality of storage nodes are used for storing the multi-source cross-domain media data in a classified manner. Optionally, the first server classifies the first media data according to the attribute information of the first media data, so as to obtain a classification result. And the first server determines a first storage node from the plurality of storage nodes according to the classification result, and stores the first media data to the first storage node.
Optionally, the first server obtains part or all of the attribute information of the first media data from the data storage request. Optionally, the first service end extracts a data feature from the first media data, and the extracted data feature may be a part of the attribute information of the first media data.
Optionally, the attribute information of the first media data includes a domain to which the first media data belongs, a source organization or platform, a degree of coldness, a data characteristic, and the like. According to the scheme, the media can be classified and stored according to the characteristics of the multi-source cross-domain media big data, the waste of storage space is reduced, the storage requirement of high performance can be met, and the storage performance is improved. In addition, the storage resource pool has automatic disaster recovery and cloud storage service decoupled from other modules, and expandable big data storage capacity is realized.
Optionally, the first service performs versioning storage on the first media data, that is, historical versions of the media data are not overwritten every time the first media data is stored. The first service end records the first media data and version information of the first media data so as to record and inquire historical versions. The server side records the interaction history, so that the safety, accessibility and operation traceability of data can be improved.
Optionally, the first server stores the first transaction data in the blockchain, and feeds back indication information of successful storage to the first client after storing the first media data in the storage resource pool. If the first service end fails to uplink the transaction data or fails to store the first media data, the first service end feeds back indication information of storage failure to the first client. For example, in the case that the first server verifies that the first media data and/or the first signature information do not pass, the first server feeds back storage failure indication information to the first client to indicate that the first client reacquires the data storage request.
It should be noted that, as can be seen from the foregoing, the data storage system may interface with a plurality of blockchain systems, that is, a plurality of clients in the data storage system are clients accessing the plurality of blockchain systems, and then the first service end stores the first transaction data into the first blockchain, where the first blockchain is a blockchain in the blockchain system accessed by the first client.
Fig. 6 is a flowchart of a method for data uplink storage according to an embodiment of the present application. Referring to fig. 6, a blockchain client (abbreviated as a client) performs uplink storage of multi-source cross-domain media data by calling a data uplink interface (i.e., a data storage interface). When a certain blockchain client receives a data storage request, the client calls a data uplink interface, and logic in the data uplink interface carries out verification calculation on media data. The data storage request carries media data to be stored and the abstract of the media data. For example, the client calculates a verifiable code (such as a digest) of the received media data by using a verification coding algorithm, and compares the calculated verifiable code with the verification information carried by the data storage request to verify the accuracy of the media data, so as to prevent the media data from being tampered or having errors in the transmission path. And after the media data passes the verification, the client sends the data storage request to the service management terminal. And the service management terminal distributes the computing nodes according to the load balancing strategy, namely, one service terminal is determined from the plurality of service terminals. The distributed computing nodes (namely certain cloud computing engine) perform verification computation on the media data, after the media data passes the verification, transaction data are generated according to the hash key value (namely the abstract) and the attribute information (including the extracted data features) of the media data, and the transaction data are stored in the block chain. After the verification is passed, the distributed computing nodes also store the media data into the cloud versioned storage resource pool in a classified manner according to the attribute information of the media data.
In summary, the embodiment of the present application provides a data storage system for block chain-based multi-source cross-domain media data storage, where the data storage system provides a data storage interface for a plurality of clients, and each client can request uplink storage by calling the data storage interface. The plurality of clients are clients accessing a plurality of blockchain systems, that is, the data storage system can be connected to and serve a plurality of blockchain systems. And the data storage system also comprises a storage resource pool shared by the plurality of clients to share the storage resources, so that the problems that the block chain participants easily manage the storage resources by themselves, such as data error and high storage resource expansion cost, are reduced. In brief, the scheme does not need a block chain participant to arrange logic among the client, the block chain system and the data storage by self, improves the usability and universality of the block chain system, and improves the safety of the data storage.
As can be seen from the foregoing, the data storage system also provides the plurality of clients with a data query interface for the clients to query for media data. Next, the first client requests to query the second media data is taken as an example for description.
Fig. 7 is a flowchart of a data query method provided in an embodiment of the present application. The method is applied to a data storage system, such as the data storage system shown in fig. 1 or fig. 2. Referring to fig. 7, the data query method includes the following steps.
Step 701: the first client acquires source information of second media data to be queried.
In the embodiment of the application, the first client acquires the source information of the second media data to be queried so as to query the second media data. Illustratively, the first ue stores the verification information (e.g. summary) and the attribute information of the uplink media data, and after receiving the data query request submitted by the second data source, the first ue obtains the source information of the second media data from the stored verification information and attribute information of the uplink media data. The second data source is a blockchain participant submitting the data query request to the first client. The second data source and the first data source may be the same. The source information of the second media data includes second check information, attribute information of the second media data, and the like, and the second check information is check information of the second media data.
Step 702: the first client calls a data query interface provided by the data storage system to the plurality of clients, and sends a data acquisition request through the data query interface, wherein the data acquisition request carries source information of the second media data.
In the embodiment of the application, the first client calls the data query interface, and sends the data acquisition request through the data query interface, wherein the data acquisition request carries the source information of the second media data.
Optionally, in a case that the data storage system includes one server, the first client sends a data acquisition request to the server through the data query interface, and the server is the second server. Under the condition that the data storage system comprises a plurality of service terminals and a service management terminal, a first client sends a data acquisition request to the service management terminal through a data query interface, and the service management terminal determines a second service terminal from the plurality of service terminals and then sends the data acquisition request to the second service terminal. The service management end can determine the second service end from the multiple service ends according to the load balancing strategy. The second service end and the first service end may be the same or different.
Step 703: and the second server receives the data acquisition request, and inquires the second media data from the storage resource pool based on the source information of the second media data to obtain a first inquiry result.
In this embodiment of the present application, after receiving the data acquisition request, the second server queries the second media data from the storage resource pool based on the source information of the second media data, so as to obtain a first query result. Illustratively, after receiving the data acquisition request, the second server queries the blockchain for the transaction data of the second media data based on the source information of the second media data to obtain the second transaction data. The second transaction data is transaction data of the second media data. And then, the second server analyzes the second transaction data to obtain the storage position of the second media data. And the second server side inquires the second media data from the storage resource pool based on the storage position of the second media data.
Optionally, the second server queries the second media data from the storage resource pool based on the source information of the second media data, and then the second server verifies the queried second media data based on the second verification information. And under the condition that the queried second media data passes the verification, the second server side obtains a first query result, and the first query result carries the queried second media data. Optionally, the second server obtains the first query result under the condition that the queried second media data is not verified, where the first query result carries indication information of acquisition failure. The second check information is check information carried by the data acquisition request, or the second check information is check information in the second transaction data. The verification information carried by the data acquisition request is the same as the verification information in the second transaction data. Exemplarily, assuming that the second check information is a second data digest, the second server calculates the digest of the queried second media data using a verification coding algorithm, and compares the calculated digest with the second data digest to verify the accuracy of the queried second media data.
Optionally, in order to improve storage reliability, in this embodiment of the present application, the storage resource pool includes a main resource pool and a standby resource pool, so as to provide disaster recovery services. Correspondingly, after receiving the data acquisition request, the second server firstly queries the second media data from the master resource pool based on the source information of the second media data, and verifies the queried second media data from the master resource pool based on the second verification information. And under the condition that the second media data inquired from the main resource pool is not verified, or under the condition that the second media data is not inquired from the main resource pool, the second server inquires the second media data from the standby resource pool based on the source information of the second media data, and verifies the second media data inquired from the standby resource pool based on the second check information. And under the condition that the second media data inquired from the standby resource pool passes the verification, the second server side obtains a first inquiry result, and the first inquiry result carries the second media data inquired from the standby resource pool. Optionally, the second server obtains a first query result under the condition that the second media data queried from the standby resource pool is not verified, where the first query result carries indication information of acquisition failure.
It should be noted that the backup resource pool is used for storing disaster backup data, which is also called backup data. The data stored in the standby resource pool is consistent with the data stored in the primary resource pool.
As can be seen from the foregoing, the server may perform versioning storage on the media data, that is, the storage resource pool stores the latest version and the historical version of the media data. Optionally, the second server first obtains a latest version of the second media data from the storage resource pool based on the source information of the second media data, verifies the latest version, queries, when the latest version fails to be verified, a last version of the second media data from the storage resource pool, and continues to verify, based on the link transaction data, a last version of the second media data that is queried, after the verification passes, the second server determines a first query result, where the first query result carries the last version of the second media data that is queried and the version indication information.
Step 704: and the second server sends the first query result.
In the embodiment of the application, after obtaining the first query result, the second server sends the first query result to the first client. Or, in the case that the data storage system includes a plurality of servers and a service manager, the second server sends the first query result to the service manager, and the service manager forwards the first query result to the first client.
Step 705: the first client receives a first query result through the data query interface.
In an embodiment of the present application, the first client may receive the first query result through the data query interface.
In order to ensure the accuracy of the queried second media data under the condition that the first query result carries the queried second media data, the first client may verify the received second media data. That is, the first client verifies the queried second media data through the data query interface based on the second verification information. Exemplarily, assuming that the second verification information is a second data digest, the first client calculates a digest of the queried second media data using a verification coding algorithm, and compares the calculated digest with the second data digest to verify the accuracy of the queried second media data.
Optionally, the first client re-acquires the source information of the second media data to be queried when the first query result carries the indication information of the acquisition failure.
The implementation process of the data query method in the embodiment of the present application is described above by taking an example that the first client requests to query the second media data. Taking an example that the first service end receives a data query request of a certain client as follows, an exemplary description is given again to the implementation process of the data query method in the embodiment of the present application, and the detailed implementation process may refer to the foregoing embodiment. The data query method comprises the following steps 1 to 5.
1. And the second client acquires the source information of the third media data to be inquired, and is one client in the data storage system.
2. And the second client calls the data query interface and sends a data acquisition request through the data query interface, wherein the data acquisition request carries the source information of the third media data.
3. The first service end receives the data acquisition request.
4. And the first service terminal inquires the third media data from the storage resource pool based on the source information of the third media data to obtain a second inquiry result, and sends the second inquiry result.
Optionally, the source information of the third media data includes third check information. And the first service terminal inquires the third media data from the storage resource pool based on the source information of the third media data. And the first service end verifies the inquired third media data based on the third verification information. And under the condition that the queried third media data passes the verification, the first server side obtains a second query result, and the second query result carries the queried third media data. That is, the first server may verify the queried media data to ensure that the data is not tampered by the storage node or corrupted on the transmission path.
Optionally, the source information of the third media data includes third check information, and the storage resource pool includes a primary resource pool and a standby resource pool. Correspondingly, the first service terminal inquires the third media data from the main resource pool based on the source information of the third media data, and verifies the inquired third media data from the main resource pool based on the third verification information. And under the condition that the third media data inquired from the main resource pool is not verified, or under the condition that the third media data is not inquired from the main resource pool, the first service terminal inquires the third media data from the standby resource pool based on the source information of the third media data, and verifies the third media data inquired from the standby resource pool based on the third verification information. And under the condition that the third media data inquired from the standby resource pool passes the verification, the first server side obtains a second inquiry result, and the second inquiry result carries the third media data inquired from the standby resource pool. That is, the scheme provides disaster recovery service to improve the reliability of data storage.
5. And the second client receives a second query result through the data query interface, and the second query result is obtained based on the source information of the third media data.
Optionally, the source information of the third media data includes third verification information, and the second query result carries the queried third media data. And after receiving the second query result through the data query interface, the second client verifies the queried third media data through the data query interface based on the third verification information.
Fig. 8 is a flowchart of another data query method provided in an embodiment of the present application. Referring to fig. 8, the client acquires the hash key value and the attribute information of the stored media data to be queried, and requests to query the transaction data of the media data by calling a data query interface. The hash key value is check information. And after receiving the request of the client, the server reads transaction data on the chain according to the hash key value and the data attribute of the media data, namely, the transaction data of the media data is obtained from the block chain. The server analyzes the transaction data to obtain a storage address of the media data stored in the chain, and reads the media data from the storage resource pool according to the storage address. And the server side performs data verification on the read media data, such as hash comparison verification. And under the condition that the read media data pass the verification, the server side feeds back the acquired media data and the transaction data to the client side. And under the condition that the read media data is not verified, the server side returns an error to the client side. Or, under the condition that the storage resource pool comprises a main resource pool and a standby resource pool, the server side firstly reads the media data from the main resource pool and performs data verification on the read media data. And under the condition that the media data read from the main resource pool is not verified, the server side reads the media data from the standby resource pool and performs data verification on the read media data. And under the condition that the media data read from the standby resource pool passes the verification, the server side feeds back the transaction data and the media data read from the standby resource pool to the client side. And under the condition that the media data read from the standby resource pool is not verified, the server side returns an error to the client side.
In summary, the embodiment of the present application provides a data storage system for multi-source cross-domain media data storage based on a block chain, where the data storage system provides a data storage interface and a data query interface for a plurality of clients, and each client can call the data storage interface to request uplink storage and call the data query interface to request media data acquisition. The plurality of clients are clients accessing a plurality of blockchain systems, that is, the data storage system can interface and serve the plurality of blockchain systems. And the data storage system also comprises a storage resource pool shared by the plurality of clients to share the storage resources, so that the problems that the block chain participants are easy to generate errors in self-management of the storage resources, and the expansion cost of the storage resources is high are reduced. In brief, the scheme does not need a block chain participant to arrange logic among the client, the block chain system and the data storage by self, improves the usability and universality of the block chain system, and improves the safety of the data storage.
Fig. 9 is a schematic structural diagram of a data storage apparatus 900 provided in an embodiment of the present application, where the data storage apparatus 900 may be implemented as part or all of a computer device by software, hardware, or a combination of the two, and the computer device may be a client in the embodiments of fig. 1 to fig. 8. In this embodiment of the present application, the apparatus 900 is used for a first client, where the first client is any one of a plurality of clients included in a data storage system, the data storage system further includes a storage resource pool shared by the plurality of clients, and the data storage system provides a data storage interface for the plurality of clients, the storage resource pool is used for storing multi-source cross-domain media data, and the plurality of clients are clients accessing a plurality of block chain systems. Referring to fig. 9, the apparatus 900 includes: a first obtaining module 901 and a first processing module 902.
A first obtaining module 901, configured to obtain a data storage request, where the data storage request carries first media data to be stored;
the first processing module 902 is configured to invoke a data storage interface, send the data storage request through the data storage interface, where the data storage request is used to instruct to store the first transaction data to the blockchain and store the first media data to the storage resource pool, and the first transaction data is transaction data of the first media data.
Optionally, the data storage request further carries first check information;
the first processing module 902 includes:
the first verification sub-module is used for verifying the first media data through the data storage interface based on the first verification information;
and the sending submodule is used for sending the data storage request through the data storage interface under the condition that the first media data passes the verification.
Optionally, the data storage request further carries first signature information, and the first signature information is obtained by signing the first media data according to the first private key;
the first processing module 902 includes:
the second verification submodule is used for the first client to verify the first signature information through the data storage interface according to the first public key;
and the sending submodule is used for sending the data storage request through the data storage interface under the condition that the first signature information is verified.
Optionally, the data storage system further comprises a plurality of service terminals and a service management terminal;
the first processing module 902 includes:
and the sending submodule is used for sending the data storage request to the service management end through the data storage interface, and the data storage request is also used for indicating the service management end to determine a first service end from the plurality of service ends and sending the data storage request to the first service end.
Optionally, the data storage system further provides a data query interface to the plurality of clients; the apparatus 900 further comprises:
the second acquisition module is used for acquiring source information of second media data to be inquired;
the second processing module is used for calling the data query interface and sending a data acquisition request through the data query interface, wherein the data acquisition request carries source information of second media data;
and the receiving module is used for receiving a first query result through the data query interface, and the first query result is obtained based on the source information of the second media data.
Optionally, the source information of the second media data includes second check information, and the first query result carries the queried second media data;
the apparatus 900 further comprises:
and the verification module is used for verifying the queried second media data through the data query interface based on the second verification information.
The embodiment of the application provides a data storage system for multi-source cross-domain media data storage based on a block chain, the data storage system provides a data storage interface for a plurality of clients, and the clients can request uplink storage by calling the data storage interface. The data storage system may interface with and service multiple blockchain systems. And the data storage system also comprises a storage resource pool shared by the plurality of clients to share the storage resources, so that the problems that the block chain participants easily manage the storage resources by themselves, such as data error and high storage resource expansion cost, are reduced. In brief, the scheme does not need a block chain participant to arrange logic among the client, the block chain system and the data storage by self, improves the usability and universality of the block chain system, and improves the safety of the data storage.
It should be noted that: in the data storage device provided in the above embodiment, when storing data, only the division of the above functional modules is taken as an example, and in practical applications, the above function distribution may be completed by different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules to complete all or part of the above described functions. In addition, the data storage device provided by the above embodiment and the data storage method embodiment belong to the same concept, and specific implementation processes thereof are detailed in the method embodiment and are not described herein again.
Fig. 10 is a schematic structural diagram of a data storage apparatus 1000 according to an embodiment of the present application, where the data storage apparatus 1000 may be implemented as part or all of a computer device by software, hardware, or a combination of the two, and the computer device may be a server in the embodiments of fig. 1 to fig. 8. In an embodiment of the present application, the apparatus is used for a first server, where the first server is one of at least one server included in a data storage system, the data storage system further includes a plurality of clients and a storage resource pool shared by the plurality of clients, the storage resource pool is used for storing multi-source cross-domain media data, and the plurality of clients are clients accessing a plurality of blockchain systems. Referring to fig. 10, the apparatus 1000 includes: a first receiving module 1001 and an uplink storing module 1002.
A first receiving module 1001, configured to receive a data storage request, where the data storage request carries first media data to be stored;
the uplink storage module 1002 is configured to determine first transaction data, store the first transaction data in the blockchain, and store the first media data in the storage resource pool, where the first transaction data is transaction data of the first media data.
Optionally, the data storage request further carries first check information;
the uplink memory module 1002 includes:
a first verification sub-module for verifying the first media data based on the first verification information;
and the determining sub-module is used for determining the first transaction data under the condition that the first media data passes the verification.
Optionally, the data storage request further carries first signature information, and the first signature information is obtained by signing the first media data according to the first private key;
the uplink memory module 1002 includes:
the second verification submodule is used for verifying the first signature information according to the first public key;
and the determining sub-module is used for determining the first transaction data under the condition that the first signature information is verified.
Optionally, the data storage system includes a plurality of service terminals and a service management terminal, and the first service terminal is determined by the service management terminal from the plurality of service terminals;
the first receiving module 1001 includes:
the receiving submodule is used for receiving a data storage request sent by the service management terminal, the data storage request received by the service management terminal is sent by a first client, and the first client is one of the plurality of clients.
Optionally, the storage resource pool includes a plurality of storage nodes, and the plurality of storage nodes are used for storing the multi-source cross-domain media data in a classified manner;
the uplink memory module 1002 includes:
the classification submodule is used for classifying the first media data according to the attribute information of the first media data to obtain a classification result;
and the storage submodule is used for determining a first storage node from the plurality of storage nodes according to the classification result and storing the first media data to the first storage node.
Optionally, the apparatus 1000 further comprises:
a second receiving module, configured to receive a data acquisition request, where the data acquisition request carries source information of third media data to be queried;
the query module is used for querying the third media data from the storage resource pool based on the source information of the third media data to obtain a second query result;
and the sending module is used for sending the second query result by the first service terminal.
Optionally, the source information of the third media data includes third verification information;
the query module comprises:
the first query submodule is used for querying the third media data from the storage resource pool based on the source information of the third media data;
the third verification sub-module is used for verifying the inquired third media data based on the third verification information;
and the first obtaining sub-module is used for obtaining a second query result under the condition that the queried third media data passes verification, and the second query result carries the queried third media data.
Optionally, the source information of the third media data includes third check information, and the storage resource pool includes a main resource pool and a standby resource pool;
the query module comprises:
the first processing sub-module is used for inquiring third media data from the main resource pool based on the source information of the third media data and verifying the inquired third media data from the main resource pool based on third verification information;
the second processing sub-module is used for inquiring third media data from the standby resource pool based on source information of the third media data under the condition that the third media data inquired from the main resource pool is not verified or the third media data is not inquired from the main resource pool, and verifying the third media data inquired from the standby resource pool based on third verification information;
and the second obtaining submodule is used for obtaining a second query result under the condition that the third media data queried from the standby resource pool passes the verification, and the second query result carries the third media data queried from the standby resource pool.
The embodiment of the application provides a data storage system for multi-source cross-domain media data storage based on a block chain, the data storage system provides a data storage interface for a plurality of clients, and the clients can request uplink storage by calling the data storage interface. The data storage system may interface with and service multiple blockchain systems. And the data storage system also comprises a storage resource pool shared by the plurality of clients to share the storage resources, so that the problems that the block chain participants are easy to generate errors in self-management of the storage resources, and the expansion cost of the storage resources is high are reduced. In brief, the scheme does not need a block chain participant to arrange logic among the client, the block chain system and the data storage by self, improves the usability and universality of the block chain system, and improves the safety of the data storage.
It should be noted that: in the data storage device provided in the above embodiment, when storing data, only the division of the above functional modules is taken as an example, and in practical applications, the above function distribution may be completed by different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules to complete all or part of the above described functions. In addition, the data storage device provided by the above embodiment and the data storage method embodiment belong to the same concept, and specific implementation processes thereof are detailed in the method embodiment and are not described herein again.
In the above embodiments, the implementation may be wholly or partly realized by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When loaded and executed on a computer, cause the processes or functions described in accordance with the embodiments of the application to occur, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable device. The computer instructions may be stored on a computer readable storage medium or transmitted from one computer readable storage medium to another, for example, from one website, computer, server, or data center to another website, computer, server, or data center via wire (e.g., coaxial cable, fiber optic, digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device, such as a server, a data center, etc., that includes one or more of the available media. The usable medium may be a magnetic medium (e.g., a floppy disk, a hard disk, a magnetic tape), an optical medium (e.g., a Digital Versatile Disk (DVD)), or a semiconductor medium (e.g., a Solid State Disk (SSD)), among others. It is noted that the computer-readable storage medium mentioned in the embodiments of the present application may be a non-volatile storage medium, in other words, a non-transitory storage medium.
It is to be understood that reference herein to "at least one" means one or more and "a plurality" means two or more. In the description of the embodiments of the present application, "/" means "or" unless otherwise specified, for example, a/B may mean a or B; "and/or" herein is merely an association describing an associated object, and means that there may be three relationships, e.g., a and/or B, which may mean: a exists alone, A and B exist simultaneously, and B exists alone. In addition, in order to facilitate clear description of technical solutions of the embodiments of the present application, in the embodiments of the present application, words such as "first" and "second" are used to distinguish identical items or similar items with substantially identical functions and actions. Those skilled in the art will appreciate that the terms "first," "second," etc. do not denote any order or quantity, nor do the terms "first," "second," etc. denote any order or importance.
The above-mentioned embodiments are provided not to limit the present application, and any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the protection scope of the present application.

Claims (31)

1. A data storage method is executed by a first client, the first client is any one of a plurality of clients included in a data storage system, the data storage system further includes a storage resource pool shared by the plurality of clients, the data storage system provides a data storage interface for the plurality of clients, the storage resource pool is used for storing multi-source cross-domain media data, and the plurality of clients are clients accessing a plurality of block chain systems, the method includes:
the first client side obtains a data storage request, wherein the data storage request carries first media data to be stored;
the first client calls the data storage interface, and sends the data storage request through the data storage interface, wherein the data storage request is used for indicating to store first transaction data to a blockchain and store the first media data to the storage resource pool, and the first transaction data is transaction data of the first media data.
2. The method of claim 1, wherein the data storage request further carries first verification information;
the first client sends the data storage request through the data storage interface, and the data storage request comprises:
the first client verifies the first media data through the data storage interface based on the first verification information;
and under the condition that the first media data passes the verification, the first client sends the data storage request through the data storage interface.
3. The method of claim 1 or 2, wherein the data storage request further carries first signature information, the first signature information being signed from a first private key to the first media data;
the first client sends the data storage request through the data storage interface, and the data storage request comprises:
the first client verifies the first signature information through the data storage interface according to a first public key;
and under the condition that the first signature information is verified, the first client sends the data storage request through the data storage interface.
4. A method according to any of claims 1-3, wherein the data storage system further comprises a plurality of servers and service managers;
the first client sends the data storage request through the data storage interface, and the data storage request comprises:
the first client sends the data storage request to the service management end through the data storage interface, wherein the data storage request is further used for indicating the service management end to determine a first service end from the plurality of service ends and sending the data storage request to the first service end.
5. The method of any of claims 1-4, wherein the data storage system further provides a data query interface to the plurality of clients; the method further comprises the following steps:
the first client acquires source information of second media data to be inquired;
the first client calls the data query interface and sends a data acquisition request through the data query interface, wherein the data acquisition request carries source information of the second media data;
and the first client receives a first query result through the data query interface, wherein the first query result is obtained based on the source information of the second media data.
6. The method of claim 5, wherein the source information of the second media data comprises second check-up information, and the first query result carries queried second media data;
after the first client receives the first query result through the data query interface, the method further includes:
and the first client verifies the queried second media data through the data query interface based on the second verification information.
7. A data storage method is executed by a first server, the first server is one of at least one server included in a data storage system, the data storage system further includes a plurality of clients and a storage resource pool shared by the plurality of clients, the storage resource pool is used for storing multi-source cross-domain media data, and the plurality of clients are clients accessing a plurality of blockchain systems, the method includes:
the first service end receives a data storage request, wherein the data storage request carries first media data to be stored;
the first service end determines first transaction data, stores the first transaction data to a block chain, and stores the first media data to the storage resource pool, wherein the first transaction data is transaction data of the first media data.
8. The method of claim 7, wherein the data storage request further carries first verification information;
the first service end determines first transaction data, and the first transaction data comprises the following steps:
the first service terminal verifies the first media data based on the first verification information;
and under the condition that the first media data passes the verification, the first server determines the first transaction data.
9. The method of claim 7 or 8, wherein the data storage request further carries first signature information, the first signature information being signed from a first private key to the first media data;
the first service end determines first transaction data, and the first transaction data comprises:
the first server side verifies the first signature information according to a first public key;
and under the condition that the first signature information is verified, the first server determines the first transaction data.
10. The method of any of claims 7-9, wherein the data storage system comprises a plurality of servers and a service manager, the first server being determined by the service manager from the plurality of servers;
the first service terminal receives a data storage request, and the data storage request comprises the following steps:
the first service end receives a data storage request sent by the service management end, the data storage request received by the service management end is sent by a first client, and the first client is one of the multiple clients.
11. The method of any of claims 7-10, wherein the storage resource pool comprises a plurality of storage nodes for categorically storing multi-source cross-domain media data;
the first server stores the first media data to the storage resource pool, and the method includes:
the first server classifies the first media data according to the attribute information of the first media data to obtain a classification result;
and the first server determines a first storage node from the plurality of storage nodes according to the classification result, and stores the first media data to the first storage node.
12. The method of any of claims 7-11, wherein the method further comprises:
the first service end receives a data acquisition request, wherein the data acquisition request carries source information of third media data to be inquired;
the first service terminal inquires the third media data from the storage resource pool based on the source information of the third media data to obtain a second inquiry result;
and the first service end sends the second query result.
13. The method of claim 12, wherein the source information of the third media data includes third check information;
the first service terminal queries the third media data from the storage resource pool based on the source information of the third media data to obtain a second query result, including:
the first service terminal inquires the third media data from the storage resource pool based on the source information of the third media data;
the first service end verifies the inquired third media data based on the third verification information;
and under the condition that the queried third media data passes verification, the first server side obtains the second query result, and the second query result carries the queried third media data.
14. The method of claim 12, wherein the source information of the third media data includes third check information, and the storage resource pool includes a primary resource pool and a standby resource pool;
the first service terminal queries the third media data from the storage resource pool based on the source information of the third media data to obtain a second query result, including:
the first service terminal inquires the third media data from the main resource pool based on the source information of the third media data, and verifies the inquired third media data from the main resource pool based on the third verification information;
when the third media data queried from the main resource pool is not verified, or when the third media data is not queried from the main resource pool, the first service terminal queries the third media data from the standby resource pool based on the source information of the third media data, and verifies the third media data queried from the standby resource pool based on the third verification information;
and under the condition that the third media data inquired from the standby resource pool passes verification, the first server side obtains the second inquiry result, and the second inquiry result carries the third media data inquired from the standby resource pool.
15. A data storage apparatus, wherein the apparatus is used for a first client, the first client is any one of a plurality of clients included in a data storage system, the data storage system further includes a storage resource pool shared by the plurality of clients, and the data storage system provides a data storage interface for the plurality of clients, the storage resource pool is used for storing multi-source cross-domain media data, and the plurality of clients are clients accessing a plurality of blockchain systems, the apparatus comprises:
the device comprises a first acquisition module, a second acquisition module and a storage module, wherein the first acquisition module is used for acquiring a data storage request, and the data storage request carries first media data to be stored;
the first processing module is configured to invoke the data storage interface, send the data storage request through the data storage interface, where the data storage request is used to instruct to store first transaction data to a blockchain and store the first media data to the storage resource pool, and the first transaction data is transaction data of the first media data.
16. The apparatus of claim 15, wherein the data storage request further carries first verification information;
the first processing module comprises:
the first verification sub-module is used for verifying the first media data through the data storage interface based on the first verification information;
and the sending submodule is used for sending the data storage request through the data storage interface under the condition that the first media data passes the verification.
17. The apparatus of claim 15 or 16, wherein the data storage request further carries first signature information, the first signature information being signed from a first private key to the first media data;
the first processing module comprises:
the second verification submodule is used for verifying the first signature information through the data storage interface according to the first public key;
and the sending submodule is used for sending the data storage request through the data storage interface under the condition that the first signature information is verified to be passed.
18. The apparatus of any of claims 15-17, wherein the data storage system further comprises a plurality of service ends and service management ends;
the first processing module comprises:
the sending submodule is used for sending the data storage request to the service management terminal through the data storage interface, and the data storage request is also used for indicating the service management terminal to determine a first service terminal from the plurality of service terminals and sending the data storage request to the first service terminal.
19. The apparatus of any of claims 15-18, wherein the data storage system further provides a data query interface to the plurality of clients; the device further comprises:
the second acquisition module is used for acquiring source information of second media data to be inquired;
the second processing module is used for calling the data query interface and sending a data acquisition request through the data query interface, wherein the data acquisition request carries source information of the second media data;
and the receiving module is used for receiving a first query result through the data query interface, wherein the first query result is obtained based on the source information of the second media data.
20. The apparatus of claim 19, wherein the source information of the second media data comprises second check-up information, and the first query result carries queried second media data;
the device further comprises:
and the verification module is used for verifying the queried second media data through the data query interface based on the second verification information.
21. A data storage apparatus, wherein the apparatus is used for a first server, the first server is one of at least one server included in a data storage system, the data storage system further includes a plurality of clients and a storage resource pool shared by the plurality of clients, the storage resource pool is used for storing multi-source cross-domain media data, and the plurality of clients are clients accessing a plurality of blockchain systems, the apparatus includes:
the device comprises a first receiving module, a second receiving module and a sending module, wherein the first receiving module is used for receiving a data storage request, and the data storage request carries first media data to be stored;
and the uplink storage module is used for determining first transaction data, storing the first transaction data to a block chain and storing the first media data to the storage resource pool, wherein the first transaction data is the transaction data of the first media data.
22. The apparatus of claim 21, wherein the data storage request further carries first verification information;
the uplink storage module comprises:
a first verification sub-module, configured to verify the first media data based on the first verification information;
the determining sub-module is used for determining the first transaction data under the condition that the first media data passes the verification.
23. The apparatus of claim 21 or 22, wherein the data storage request further carries first signature information, the first signature information being signed from a first private key to the first media data;
the uplink storage module comprises:
the second verification submodule is used for verifying the first signature information according to the first public key;
a determining sub-module for determining the first transaction data if the first signature information is verified.
24. The apparatus of any of claims 21-23, wherein the data storage system comprises a plurality of servers and a service manager, the first server being determined by the service manager from among the plurality of servers;
the first receiving module includes:
the receiving submodule is used for receiving a data storage request sent by the service management terminal, the data storage request received by the service management terminal is sent by a first client, and the first client is one of the plurality of clients.
25. The apparatus of any of claims 21-24, wherein the storage resource pool comprises a plurality of storage nodes for storing the multi-source cross-domain media data in a sorted manner;
the uplink storage module comprises:
the classification submodule is used for classifying the first media data according to the attribute information of the first media data to obtain a classification result;
and the storage submodule is used for determining a first storage node from the plurality of storage nodes according to the classification result and storing the first media data to the first storage node.
26. The apparatus of any of claims 21-25, wherein the apparatus further comprises:
the second receiving module is used for receiving a data acquisition request, wherein the data acquisition request carries source information of third media data to be inquired;
the query module is used for querying the third media data from the storage resource pool based on the source information of the third media data to obtain a second query result;
and the sending module is used for sending the second query result by the first service terminal.
27. The apparatus of claim 26, wherein the source information of the third media data comprises third check information;
the query module comprises:
a first query submodule, configured to query the storage resource pool for the third media data based on source information of the third media data;
a third verification sub-module, configured to verify the queried third media data based on the third verification information;
and the first obtaining sub-module is used for obtaining the second query result under the condition that the queried third media data passes verification, wherein the second query result carries the queried third media data.
28. The apparatus of claim 26, wherein the source information of the third media data includes third check information, and the storage resource pool includes a primary resource pool and a standby resource pool;
the query module comprises:
a first processing sub-module, configured to query the third media data from the primary resource pool based on source information of the third media data, and verify the third media data queried from the primary resource pool based on the third verification information;
a second processing sub-module, configured to, when third media data queried from the primary resource pool fails to be verified, or when the third media data is not queried from the primary resource pool, query the third media data from the standby resource pool based on source information of the third media data, and verify the third media data queried from the standby resource pool based on the third verification information;
and the second obtaining submodule is used for obtaining a second query result under the condition that third media data queried from the standby resource pool passes verification, and the second query result carries the third media data queried from the standby resource pool.
29. A data storage system is characterized by comprising a plurality of clients and at least one server, wherein a first client is one of the clients, the first server is one of the at least one server, the data storage system further comprises a storage resource pool shared by the clients, the data storage system provides a data storage interface for the clients, the storage resource pool is used for storing multi-source cross-domain media data, and the clients are clients accessing a plurality of block chain systems;
the first client for implementing the steps of the method of any one of claims 1-6;
the first service end, configured to implement the steps of the method according to any one of claims 7 to 14.
30. A computer-readable storage medium, characterized in that the storage medium has stored therein a computer program which, when being executed by a processor, carries out the steps of the method of any one of claims 1 to 6 or carries out the steps of the method of any one of claims 7 to 14.
31. A computer program product having stored therein computer instructions for implementing the steps of the method of any one of claims 1 to 6, or the steps of the method of any one of claims 7 to 14, when executed by a processor.
CN202111319262.0A 2021-07-08 2021-11-09 Data storage method, device, system, storage medium and program product Pending CN115599800A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/CN2022/082069 WO2023279770A1 (en) 2021-07-08 2022-03-21 Data storage method, apparatus and system, storage medium, and program product
EP22836530.0A EP4354313A1 (en) 2021-07-08 2022-03-21 Data storage method, apparatus and system, storage medium, and program product

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN2021107708726 2021-07-08
CN202110770872 2021-07-08

Publications (1)

Publication Number Publication Date
CN115599800A true CN115599800A (en) 2023-01-13

Family

ID=84841767

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111319262.0A Pending CN115599800A (en) 2021-07-08 2021-11-09 Data storage method, device, system, storage medium and program product

Country Status (1)

Country Link
CN (1) CN115599800A (en)

Similar Documents

Publication Publication Date Title
US11438139B2 (en) Blockchain based secure naming and update verification
CN111163182B (en) Block chain-based device registration method and apparatus, electronic device, and storage medium
US11343103B2 (en) Sending cross-chain authenticatable messages
US11954095B2 (en) High performance distributed system of record with extended transaction processing capability
CN112101942B (en) Transaction request processing method, system, device and equipment based on block chain
CN109766330B (en) Data slicing method and device, electronic equipment and storage medium
CN110266872B (en) Address book data management and control method and device, cloud address book system, computer equipment and computer readable storage medium
US8572047B2 (en) Method and system for data update synchronization by two-phase commit
US7676565B2 (en) Light weight software and hardware inventory
CN113271311A (en) Digital identity management method and system in cross-link network
CN114936254A (en) Food safety big data sharing management method and system under cloud chain fusion mechanism
WO2023279770A1 (en) Data storage method, apparatus and system, storage medium, and program product
CN111681011A (en) Data processing method, block chain system, computer system and medium
CN115599800A (en) Data storage method, device, system, storage medium and program product
US11720453B2 (en) High performance distributed system of record with unspent transaction output (UTXO) database snapshot integrity
US11526516B2 (en) Method, apparatus, device and storage medium for generating and processing a distributed graph database
CN114706774A (en) Interface test method, device, equipment and storage medium
WO2008147400A1 (en) Authentication for operations over an outsourced file system stored by an untrusted unit
CN113824755A (en) Method, system and related device for processing block chain data
US20220237594A1 (en) High performance distributed system of record with wallet services resiliency
US11537463B1 (en) Data integrity verification optimized at unit level
KR100970207B1 (en) Authentication system for mobile service and method thereof
US20050108194A1 (en) System for verifying a state of an environment
CN117914870A (en) Data query method, device, electronic equipment, medium and program product
CN116938462A (en) Transaction processing method and device based on blockchain, equipment and medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication