A data processing method, device and equipment
By acquiring and transforming data from multiple data sources into reliable data, the problem of cumbersome data migration and insufficient reliability in traditional centralized platforms is solved, achieving efficient and reliable data processing and trustworthy computation results.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- ANT DOUBLE CHAIN TECH (SHANGHAI) CO LTD
- Filing Date
- 2018-10-26
- Publication Date
- 2026-06-12
AI Technical Summary
In traditional centralized computing platforms, data migration is cumbersome and data reliability cannot be guaranteed, resulting in low data processing efficiency.
By receiving query parameters, query result data is obtained from multiple pre-defined data sources, and then converted into target reliable data that conforms to data reliability protocols. Finally, the data is sent to blockchain nodes, using decentralized nodes as the cornerstone for data to enter the blockchain, simplifying the processing and ensuring data reliability.
It improves the breadth of computing sources and data processing efficiency, ensures the credibility and immutability of computing results, and simplifies the blockchain processing flow.
Smart Images

Figure CN114662159B_ABST
Abstract
Description
[0001] This application is a divisional application of Chinese patent application filed on October 26, 2018, with application number 201811260305.0 and entitled "A method, apparatus and device for processing data". Technical Field
[0002] This specification relates to the field of computer technology, and in particular to a data processing method, apparatus, and device. Background Technology
[0003] Typically, a trusted computing system has multiple data sources and can perform calculations from multiple dimensions. Therefore, the data sources for calculations may come from different institutions or organizations. The data storage technologies of different institutions or organizations vary, such as: multi-signature evidence storage blockchains, account-based consortium blockchains, non-account-based consortium blockchains, and traditional trusted storage.
[0004] In traditional centralized computing platforms, to enable trusted computing, data is typically acquired by migrating data from multiple data sources to a single centralized platform system. However, this data acquisition process is cumbersome and cannot guarantee data reliability. Therefore, there is a need for a more convenient, efficient, and reliable data processing solution. Summary of the Invention
[0005] The purpose of the embodiments in this specification is to provide a data processing method, apparatus, and device, so as to provide a more convenient, faster, more efficient, and more reliable data processing solution.
[0006] To solve the above-mentioned technical problems, the embodiments in this specification are implemented as follows:
[0007] This specification provides an embodiment of a data processing method, the method comprising:
[0008] Receive the input query parameters;
[0009] Based on the query parameters, retrieve query result data from each predetermined data source;
[0010] The query results data are converted into target reliable data that conforms to a predetermined data reliability protocol.
[0011] The target reliable data is sent to the blockchain node.
[0012] Optionally, the data source includes one or more of the following: data sources based on Operation Support System (OSS), Distributed File System (HDFS), private blockchain, consortium blockchain, and public blockchain.
[0013] Optionally, the data reliability protocol includes the Unified Directed Acyclic Graph (UDAG) protocol.
[0014] Optionally, the query result data includes one or more of the following:
[0015] The data includes readwriteSet data in Fabric cluster nodes, SPV data in ETH cluster nodes, transaction information stored on non-account model consortium blockchains, and corresponding Data in the OSS cluster of the Operation Support System.
[0016] This specification provides an embodiment of a data processing method, the method comprising:
[0017] Receive target reliable data that conforms to a predetermined data reliability protocol sent by a decentralized node. The target reliable data is data obtained by transforming query result data according to the predetermined data reliability protocol. The query result data is data obtained from each predetermined data source according to the query parameters.
[0018] The target reliable data is analyzed to obtain the corresponding query results data;
[0019] Logical calculations are performed on the query result data to obtain the target query result corresponding to the query parameters.
[0020] Optionally, the method further includes:
[0021] Receive a query request sent by the user that includes the query parameters;
[0022] Send the target query results corresponding to the query parameters to the user.
[0023] Optionally, after parsing the target data to obtain the corresponding query result data, the method further includes:
[0024] The query results data are verified;
[0025] The step of performing logical calculations on the query result data to obtain the target query result corresponding to the query parameters includes:
[0026] If the query result data passes the verification, then logical calculations are performed on the query result data to obtain the target query result corresponding to the query parameters.
[0027] This specification provides an embodiment of a data processing apparatus, the apparatus comprising:
[0028] The parameter receiving module is used to receive the input query parameters;
[0029] The result acquisition module is used to acquire query result data from each predetermined data source according to the query parameters.
[0030] The data conversion module is used to convert the query result data into target reliable data that conforms to a predetermined data reliability protocol;
[0031] The data sending module is used to send the target reliable data to the blockchain node.
[0032] Optionally, the data source includes one or more of the following: data sources based on Operation Support System (OSS), Distributed File System (HDFS), private blockchain, consortium blockchain, and public blockchain.
[0033] Optionally, the data reliability protocol includes the Unified Directed Acyclic Graph (UDAG) protocol.
[0034] Optionally, the query result data includes one or more of the following:
[0035] The data includes readwriteSet data in Fabric cluster nodes, SPV data in ETH cluster nodes, transaction information stored on non-account model consortium blockchains, and corresponding Data in the OSS cluster of the Operation Support System.
[0036] This specification provides an embodiment of a data processing apparatus, the apparatus comprising:
[0037] The data receiving module is used to receive target reliable data that conforms to a predetermined data reliability protocol sent by decentralized nodes. The target reliable data is data obtained by converting query result data according to the predetermined data reliability protocol. The query result data is data obtained from each predetermined data source according to the query parameters.
[0038] The parsing module is used to parse the target reliable data and obtain the corresponding query result data;
[0039] The query result determination module is used to perform logical calculations on the query result data to obtain the target query result corresponding to the query parameters.
[0040] Optionally, the device further includes:
[0041] The request receiving module is used to receive a query request sent by the user that includes the query parameters;
[0042] The result sending module is used to send the target query result corresponding to the query parameter to the user.
[0043] Optionally, the device further includes:
[0044] The verification module is used to verify the query result data;
[0045] The query result determination module is used to perform logical calculations on the query result data if the verification of the query result data is successful, so as to obtain the target query result corresponding to the query parameter.
[0046] This specification provides an embodiment of a data processing device, the data processing device comprising:
[0047] Processor; and
[0048] A memory configured to store computer-executable instructions, which, when executed, cause the processor to:
[0049] Receive the input query parameters;
[0050] Based on the query parameters, retrieve query result data from each predetermined data source;
[0051] The query results data are converted into target reliable data that conforms to a predetermined data reliability protocol.
[0052] The target reliable data is sent to the blockchain node.
[0053] This specification provides an embodiment of a data processing device, the data processing device comprising:
[0054] Processor; and
[0055] A memory configured to store computer-executable instructions, which, when executed, cause the processor to:
[0056] Receive target reliable data that conforms to a predetermined data reliability protocol sent by a decentralized node. The target reliable data is data obtained by transforming query result data according to the predetermined data reliability protocol. The query result data is data obtained from each predetermined data source according to the query parameters.
[0057] The target reliable data is analyzed to obtain the corresponding query results data;
[0058] Logical calculations are performed on the query result data to obtain the target query result corresponding to the query parameters.
[0059] As can be seen from the technical solutions provided in the embodiments of this specification above, these embodiments receive input query parameters, and then, based on these parameters, obtain query result data from each predetermined data source. The query result data is then converted into target reliable data conforming to a predetermined data reliability protocol. Finally, the target reliable data can be sent to blockchain nodes. Subsequently, blockchain nodes can obtain the corresponding query result data from the target reliable data and perform multi-dimensional calculations to obtain the target query result corresponding to the query parameters. By using data from multiple data sources, the breadth of computational sources is increased. Furthermore, computational logic and data can be separated. Decentralized nodes are used as the cornerstone for data entering the blockchain, simplifying the blockchain processing procedure. The use of a data reliability protocol for data reliability proof ensures the immutability of logic and rules, as well as the reliability of the data, thereby improving the credibility of the computational results. Attached Figure Description
[0060] To more clearly illustrate the technical solutions in the embodiments or prior art of this specification, the drawings used in the description of the embodiments or prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments recorded in this specification. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0061] Figure 1 This is an embodiment of a data processing method described in this specification;
[0062] Figure 2 This is a schematic diagram of a query page in this specification;
[0063] Figure 3 This is a schematic diagram of the structure of a data processing system described in this specification;
[0064] Figure 4 This is another embodiment of a data processing method described in this specification;
[0065] Figure 5 This is yet another embodiment of a data processing method described in this specification;
[0066] Figure 6 This is a schematic diagram of the logical structure of a data processing system described in this specification.
[0067] Figure 7 This is an embodiment of a data processing apparatus as described in this specification;
[0068] Figure 8 This is an embodiment of a data processing apparatus as described in this specification;
[0069] Figure 9This is an embodiment of a data processing device described in this specification;
[0070] Figure 10 This is an embodiment of a data processing device described in this specification. Detailed Implementation
[0071] This specification provides a data processing method, apparatus, and device through its embodiments.
[0072] To enable those skilled in the art to better understand the technical solutions in this specification, the technical solutions in the embodiments of this specification will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this specification, and not all embodiments. Based on the embodiments in this specification, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of this specification.
[0073] Example 1
[0074] like Figure 1 As shown in the embodiments of this specification, a data processing method is provided. The execution subject of this method can be a decentralized node, which can be a terminal device or a server. The terminal device can be a personal computer, a mobile terminal device such as a mobile phone or tablet, or a user-used terminal device. The server can be a standalone server or a server cluster composed of multiple servers. Furthermore, the server can be a backend server for a specific business function or a backend server for a website (such as an online shopping website or a payment application). This method can be used to convert data from certain data sources or databases into data with higher reliability. Specifically, the method may include the following steps:
[0075] In step S102, the input query parameters are received.
[0076] The target data can be any data, such as data related to a user, data related to any event, or data related to any transaction. Query parameters can be user identifiers, keywords, or related terms.
[0077] In practice, blockchain can essentially be understood as a data storage technology. The traditional database technology works by receiving data to be written, simultaneously saving a log entry of that data write, and then writing the data back to the database. When data is lost, it can be recovered by re-executing the log entry for that data write. Blockchain data writing works similarly; each block records a log entry of the data that has been verified within that block, and also stores information about changes in the data's state after the log entry is executed. Blockchain can be considered a distributed ledger, a decentralized distributed database. Blockchain has the following characteristics: decentralization, transparency, immutability, and trustworthiness. Every piece of data on the blockchain is broadcast to all blockchain nodes, and each node has complete and consistent data. Each block in the blockchain records the hash value of the previous block, the set of transactions in the current block, and the hash of the current block itself. Because each block has the hash value of the previous block, blocks can be linked together by their hash values to form a blockchain.
[0078] Typically, trusted computing systems have multiple data sources and can perform calculations from multiple dimensions. Therefore, the data sources for computation may originate from different institutions or organizations. These different institutions or organizations use different data storage technologies. For example: Multi-signature blockchains: All data on these blockchains is uploaded after being endorsed and signed by multiple trusted institutions. This could be a public blockchain or a consortium blockchain, and all results are certified by multiple signatures. Account-based consortium blockchains: The platform primarily uses an account model, and all operations on accounts are completed through transactions. Non-account-based consortium blockchains: The platform stores data on the blockchain in the form of hash values; queries only require providing the hash value. Traditional trusted storage (OSS (The Office of Strategic Services), HDFS (Hadoop Distributed File System), etc.): Data in traditional trusted storage is generally provided by trusted parties and can be queried directly using a key or a unique data identifier.
[0079] In traditional centralized computing platforms, to enable trusted computing, data is typically acquired in two ways: Method 1 involves migrating data from multiple data sources to a single centralized platform system; Method 2 involves multiple centralized data sources providing interfaces for the computing platform. Of these two methods, the first method involves complex data source migration and cannot guarantee data reliability, while the second method does not consider blockchain-based data sources. The reliability of blockchain data requires verification through SPV (Simplified Payment Verification), signatures, and other methods.
[0080] Considering the gradual development of blockchain technology, more and more data sources will use blockchain for storage. Due to the diversity of blockchain structures, using multi-chain technology for storing various data sources is imperative. Furthermore, to ensure data reliability, transparency of computation results, and immutability, this specification provides a trusted blockchain computing platform solution, which may specifically include the following:
[0081] Decentralized nodes can have decentralized applications (DApps) installed. When administrators or technicians need to query or input query parameters to retrieve relevant data, they can launch the DApp. The DApp's server can then send the corresponding web page data to the DApp, which can then display the received data. For example... Figure 2 As shown, the webpage data may include information input boxes and query result display boxes. Administrators or technicians can input user identifiers (such as user name, ID card number, social security card number, or mobile phone number) or keywords (such as the sales volume of product A within one month) into the aforementioned information input boxes as needed. In this way, the system can retrieve relevant user data or data related to keywords by using the query parameters entered by administrators or technicians, thereby obtaining the target data.
[0082] In step S104, query result data is obtained from each predetermined data source according to the above query parameters.
[0083] The predetermined data source can include various types, such as one or more of the following mentioned in step S102: multi-signature evidence storage chain, account-model consortium blockchain, non-account-model consortium blockchain, and traditional trusted storage. In practical applications, multi-signature evidence storage chain, account-model consortium blockchain, non-account-model consortium blockchain, and traditional trusted storage correspond to servers or server clusters. Therefore, it can be determined that the predetermined data source can be data in a Fabric cluster, data in an ETH cluster, data in a non-account-model evidence storage chain cluster, and data in clusters such as OSS and HDFS.
[0084] In implementation, after receiving the query parameter data, the decentralized application can obtain information such as the identifier of the pre-defined data source. Then, it can send query requests to each data source. The device where the data source is located can obtain the corresponding query data from the corresponding data source according to the query parameters. Then, the device where the data source is located can send the queried query data to the decentralized application. Thus, the decentralized application can obtain the corresponding query data from each pre-defined data source. The obtained query data can constitute the query result data.
[0085] In step S106, the query result data is converted into target reliable data that conforms to a predetermined data reliability protocol.
[0086] The data reliability protocol can be set according to the actual situation. In practical applications, the data reliability protocol can be a UDAG (Unified Directed Acyclic Graph) protocol or a Merkle DAG protocol, etc.
[0087] In implementation, since the query results are obtained from a predetermined data source, and the reliability of the data in that source may not be high, to ensure the platform's universality and computational reliability, the obtained query results can be converted into more reliable data using a predetermined data reliability protocol. Specifically, based on the relevant content of the predetermined data reliability protocol, the data format information before and after conversion can be determined. Based on the format information of the converted data, the data format of the retrieved query results can be converted to the data format corresponding to the data reliability protocol, thereby obtaining target reliable data that conforms to the predetermined data reliability protocol. The target reliable data can be a UDAG request or a Merkle DAG request.
[0088] In step S108, the aforementioned target reliable data is sent to the blockchain node.
[0089] In implementation, such as Figure 3As shown, blockchain nodes can include smart contracts. After obtaining reliable target data, decentralized nodes can act as data upload services (Oracles) for the blockchain, inputting the reliable target information (UDAG request or Merkle DAG request) into the smart contract. To ensure the reliability and immutability of the calculation results, smart contracts can be used for data verification and reliable calculation to obtain the corresponding results for user query and use.
[0090] This specification provides a data processing method. By receiving input query parameters, query result data can be obtained from each predetermined data source based on these parameters. This query result data is then converted into target reliable data conforming to a predetermined data reliability protocol. Finally, the target reliable data can be sent to blockchain nodes. Subsequently, blockchain nodes can obtain the corresponding query result data from the target reliable data and perform multi-dimensional calculations to obtain the target query result corresponding to the query parameters. By using data from multiple data sources, the breadth of computational sources is increased. Furthermore, computational logic and data can be separated. Decentralized nodes are used as the foundation for data entering the blockchain, simplifying the blockchain processing process. The use of a data reliability protocol for data reliability proof ensures the immutability of logic and rules, as well as data reliability, thereby improving the credibility of the computational results.
[0091] like Figure 4 As shown in the embodiments of this specification, a data processing method is provided. The executing entity of this method can be a blockchain node, which can be a terminal device or a server. The terminal device can be a personal computer, a mobile terminal device such as a mobile phone or tablet, or a user-used terminal device. The server can be a standalone server or a server cluster composed of multiple servers. Furthermore, the server can be a backend server for a specific business function or a backend server for a website (such as an online shopping website or a payment application). This method can be used to convert data from certain data sources or databases into data with higher credibility. Specifically, the method may include the following steps:
[0092] In step S402, target reliable data conforming to a predetermined data reliability protocol is received from the decentralized node. The target reliable data is data obtained by converting query result data according to the predetermined data reliability protocol. The query result data is data obtained from each predetermined data source according to the query parameters.
[0093] The specific processing procedure of step S402 can be found in the relevant content of steps S102 to S108 above, and will not be repeated here.
[0094] In step S404, the aforementioned target reliable data is parsed to obtain the corresponding query result data.
[0095] In implementation, after receiving the target reliable data, a blockchain node can parse the data (which could be a UDAG request or a Merkle DAG request). Based on the content parsed from the target reliable data, it can retrieve corresponding data from trusted nodes, such as trusted SPV nodes, trusted ETH nodes, and Fabric cluster nodes. The retrieved data can then be combined to form the corresponding query results. The trusted nodes are determined by the blockchain itself; that is, the blockchain nodes selected as trusted nodes can be chosen from the blockchain's own data structure.
[0096] In step S406, logical calculations are performed on the above query result data to obtain the target query result corresponding to the above query parameters.
[0097] In implementation, the obtained query results can be calculated from multiple dimensions to obtain corresponding results. Since the query results are obtained from trusted nodes in the blockchain, the reliability of the calculation results obtained through multi-dimensional calculations on blockchain nodes is high. These calculation results can be used as the target query results corresponding to the aforementioned query parameters.
[0098] When a user uses the above query parameters to query the corresponding data again, the blockchain node can directly send the target query result corresponding to the query parameter to the user, and can guarantee the reliability of the target query result provided to the user.
[0099] This specification provides a data processing method. By receiving input query parameters, query result data can be obtained from each predetermined data source based on these parameters. This query result data is then converted into target reliable data conforming to a predetermined data reliability protocol. Finally, the target reliable data can be sent to blockchain nodes. Subsequently, blockchain nodes can obtain the corresponding query result data from the target reliable data and perform multi-dimensional calculations to obtain the target query result corresponding to the query parameters. By using data from multiple data sources, the breadth of computational sources is increased. Furthermore, computational logic and data can be separated. Decentralized nodes are used as the foundation for data entering the blockchain, simplifying the blockchain processing process. The use of a data reliability protocol for data reliability proof ensures the immutability of logic and rules, as well as data reliability, thereby improving the credibility of the computational results.
[0100] Example 2
[0101] like Figure 5 As shown in the embodiments of this specification, a data processing method is provided. The execution subject of this method can be a decentralized node and a blockchain node. The decentralized node can be a terminal device or a server, and the blockchain node can also be a terminal device or a server. The terminal device can be a personal computer or a mobile terminal device such as a mobile phone or tablet computer, and can be a user-used terminal device. The server can be a standalone server or a server cluster composed of multiple servers. Furthermore, the server can be a backend server for a specific business or a backend server for a website (such as an online shopping website or payment application). This method can be used to convert data from certain data sources or databases into data with higher credibility. Specifically, the method may include the following steps:
[0102] In step S502, the decentralized node receives the input query parameters.
[0103] In step S504, the decentralized node retrieves query result data from each predetermined data source according to the query parameters.
[0104] Among them, such as Figure 6 As shown, the data source can include one or more of the following: OSS-based, HDFS-based, private blockchains, consortium blockchains, and public blockchains. A consortium blockchain can be used for inter-institutional transactions; it can be limited to members of a specific group and a limited number of third parties, internally designating multiple pre-selected nodes as ledger keepers. The generation of each block is jointly determined by all pre-selected nodes. Other access nodes can participate in transactions but do not interfere with the ledger process. Other third parties can perform limited queries through the blockchain's open API. A public blockchain can be a blockchain where anyone can read and send transactions, and transactions can be effectively confirmed, and anyone can participate in the consensus process. A private blockchain can be a blockchain open to a single individual or entity. Consortium blockchains can include account-based and non-account-based consortium blockchains, etc. This data source can also include multi-signature evidence storage chains, which can be public blockchains or consortium blockchains.
[0105] Since there may be multiple data sources, the resulting query results can also consist of various types of data. Specifically, the query results may include one or more of the following: ReadWriteSet data from Fabric cluster nodes, SPV data from ETH cluster nodes, transaction information stored on a non-account model consortium blockchain, and corresponding Data data from the OSS cluster. The Fabric cluster nodes can be one or more nodes in a multi-signature notarization blockchain, and the ETH cluster nodes can be one or more nodes in an account model consortium blockchain, etc.
[0106] In step S506, the decentralized node converts the query result data into target reliable data that conforms to a predetermined data reliability protocol.
[0107] This data reliability protocol may include UDAG protocol and Merkle DAG protocol, etc.
[0108] In step S508, the decentralized node sends the aforementioned target reliable data to the blockchain node.
[0109] The specific processing procedures for steps S502 to S508 can be found in the relevant content of the above embodiment one, and will not be repeated here.
[0110] In step S510, the blockchain node parses the aforementioned target reliable data to obtain the corresponding query result data.
[0111] In practical applications, the reliability of blockchain data needs to be proven through various verification schemes such as SPV verification and signature. Therefore, after a blockchain node obtains the query result data, it can verify the query result data. For details, please refer to the processing of steps S512 and S514 below.
[0112] In step S512, the blockchain node verifies the query result data.
[0113] In implementation, based on the above-mentioned content, the query result data can include data from multiple different data sources, such as ReadWriteSet data, SPV data, transaction information, and corresponding Data data. These different types of data can be verified separately; that is, ReadWriteSet data can be verified, SPV data can be verified (i.e., SPV verification can be performed), transaction information can be verified, and corresponding Data data can be verified. In practical applications, each type of data in the query result data can be verified individually, or a specific type of data can be verified (e.g., only the SPV data included can be verified). The specific settings can be configured according to the actual situation, and this specification does not limit this aspect.
[0114] If all data requiring verification passes the verification using the above methods, then step S514 can be executed. If none of the data requiring verification passes the verification, it can be determined that the data in the query results has poor reliability. In this case, relevant prompts can be sent to administrators or technical personnel to prompt them to promptly investigate the cause, and the above processing procedure can be restarted. If some data in the data requiring verification fails the verification, it can be determined that the data in the query results has relatively poor reliability. In this case, relevant prompts can be sent to administrators or technical personnel, and information related to the data with poor reliability can be sent to them.
[0115] In step S514, if the above query result data is verified, the blockchain node performs logical calculations on the query result data to obtain the target query result corresponding to the above query parameters.
[0116] In practice, if the data to be verified is verified separately through the above verification process and the verification result of each type of data is passed, then the blockchain node can perform multi-dimensional calculations on the query result data to obtain the target query result corresponding to the above query parameters.
[0117] After obtaining the target query result corresponding to the above query parameters, the data contained in the target query result has high reliability. At this time, the target query result can be stored in correspondence with the above query parameters. When the blockchain node receives the query parameter again, it can directly find the target query result corresponding to the query parameter from the stored data and provide it to the queryer. For details, please refer to the processing of steps S516 and S518 below.
[0118] In step S516, the blockchain node receives a query request from the user that includes the aforementioned query parameters.
[0119] Users can be any user who needs blockchain or blockchain nodes to provide related services (such as payment services).
[0120] In implementation, a user's terminal device may have an application installed. Through this application, the user can obtain relevant data or services from the corresponding blockchain or blockchain nodes. When a user needs to query certain data (i.e., the data of the target query result mentioned above), they can enter query parameters. After entering the parameters, they can trigger the terminal device to retrieve them through clicking or other related operations. Based on these parameters, the terminal device generates a corresponding query request and sends it to the blockchain node. The blockchain node can then receive the query request.
[0121] In step S518, the blockchain node sends the target query result corresponding to the above query parameters to the user.
[0122] In practice, after receiving the query request, the blockchain node can extract the query parameters and then check whether the stored data contains the query parameters. If it does, it can obtain the target query result corresponding to the query parameters and provide it to the user. In this way, the corresponding query results can be obtained quickly for the user, and the reliability of the query results provided to the user can be guaranteed.
[0123] This specification provides a data processing method. By receiving input query parameters, query result data can be obtained from each predetermined data source based on these parameters. This query result data is then converted into target reliable data conforming to a predetermined data reliability protocol. Finally, the target reliable data can be sent to blockchain nodes. Subsequently, blockchain nodes can obtain the corresponding query result data from the target reliable data and perform multi-dimensional calculations to obtain the target query result corresponding to the query parameters. By using data from multiple data sources, the breadth of computational sources is increased. Furthermore, computational logic and data can be separated. Decentralized nodes are used as the foundation for data entering the blockchain, simplifying the blockchain processing process. The use of a data reliability protocol for data reliability proof ensures the immutability of logic and rules, as well as data reliability, thereby improving the credibility of the computational results.
[0124] Example 3
[0125] The above describes the data processing method provided in the embodiments of this specification. Based on the same idea, the embodiments of this specification also provide a data processing apparatus, such as... Figure 7 As shown.
[0126] The data processing device includes: a parameter receiving module 701, a result acquisition module 702, a data conversion module 703, and a data sending module 704, wherein:
[0127] The parameter receiving module 701 is used to receive input query parameters;
[0128] The result acquisition module 702 is used to acquire query result data from each predetermined data source according to the query parameters.
[0129] Data conversion module 703 is used to convert the query result data into target reliable data that conforms to a predetermined data reliability protocol;
[0130] The data sending module 704 is used to send the target reliable data to the blockchain node.
[0131] In the embodiments of this specification, the data source includes one or more of the following: data sources based on Operation Support System (OSS), Distributed File System (HDFS), private blockchain, consortium blockchain, and public blockchain.
[0132] In the embodiments described in this specification, the data reliability protocol includes the Unified Directed Acyclic Graph (UDAG) protocol.
[0133] In the embodiments described in this specification, the query result data includes one or more of the following:
[0134] ReadWriteSet data in Fabric cluster nodes, SPV data in ETH cluster nodes, transaction information stored on non-account model consortium blockchains, and corresponding Data in the OSS cluster of the Operation Support System.
[0135] This specification provides a data processing apparatus that receives input query parameters and then, based on these parameters, retrieves query result data from each predetermined data source. The query result data is then converted into target reliable data conforming to a predetermined data reliability protocol. Finally, the target reliable data is sent to blockchain nodes. Subsequently, blockchain nodes can obtain the corresponding query result data from the target reliable data and perform multi-dimensional calculations to obtain the target query result corresponding to the query parameters. By using data from multiple data sources, the breadth of computational sources is increased. Furthermore, computational logic and data can be separated. Decentralized nodes are used as the foundation for data entering the blockchain, simplifying the blockchain processing procedure. The use of a data reliability protocol for data reliability proof ensures the immutability of logic and rules, as well as data reliability, thereby improving the credibility of the computational results.
[0136] Example 4
[0137] Following the same line of thought, embodiments of this specification also provide a data processing apparatus, such as... Figure 8 As shown.
[0138] The data processing device includes: a data receiving module 801, a parsing module 802, and a query result determination module 803, wherein:
[0139] The data receiving module 801 is used to receive target reliable data that conforms to a predetermined data reliability protocol sent by a decentralized node. The target reliable data is data obtained by converting query result data according to the predetermined data reliability protocol. The query result data is data obtained from each predetermined data source according to query parameters.
[0140] The parsing module 802 is used to parse the target reliable data to obtain the corresponding query result data;
[0141] The query result determination module 803 is used to perform logical calculations on the query result data to obtain the target query result corresponding to the query parameters.
[0142] In the embodiments described in this specification, the device further includes:
[0143] The request receiving module is used to receive a query request sent by the user that includes the query parameters;
[0144] The result sending module is used to send the target query result corresponding to the query parameter to the user.
[0145] In the embodiments described in this specification, the device further includes:
[0146] The verification module is used to verify the query result data;
[0147] The query result determination module 803 is used to perform logical calculations on the query result data if the verification of the query result data is successful, so as to obtain the target query result corresponding to the query parameter.
[0148] This specification provides a data processing apparatus that receives input query parameters and then, based on these parameters, retrieves query result data from each predetermined data source. The query result data is then converted into target reliable data conforming to a predetermined data reliability protocol. Finally, the target reliable data is sent to blockchain nodes. Subsequently, blockchain nodes can obtain the corresponding query result data from the target reliable data and perform multi-dimensional calculations to obtain the target query result corresponding to the query parameters. By using data from multiple data sources, the breadth of computational sources is increased. Furthermore, computational logic and data can be separated. Decentralized nodes are used as the foundation for data entering the blockchain, simplifying the blockchain processing procedure. The use of a data reliability protocol for data reliability proof ensures the immutability of logic and rules, as well as data reliability, thereby improving the credibility of the computational results.
[0149] Example 5
[0150] The above describes the data processing apparatus provided in the embodiments of this specification. Based on the same idea, the embodiments of this specification also provide a data processing device, such as... Figure 9 As shown.
[0151] The data processing device can be the decentralized node provided in the above embodiments.
[0152] Data processing devices can vary considerably depending on configuration or performance, and may include one or more processors 901 and memory 902. Memory 902 may store one or more application programs or data. Memory 902 may be temporary or persistent storage. The application programs stored in memory 902 may include one or more modules (not shown), each module including a series of computer-executable instructions for the data processing device. Furthermore, processor 901 may be configured to communicate with memory 902 and execute the series of computer-executable instructions in memory 902 on the data processing device. The data processing device may also include one or more power supplies 903, one or more wired or wireless network interfaces 904, one or more input / output interfaces 905, and one or more keyboards 906.
[0153] Specifically, in this embodiment, the data processing device includes a memory and one or more programs, wherein one or more programs are stored in the memory, and one or more programs may include one or more modules, and each module may include a series of computer-executable instructions for the data processing device, and is configured to be executed by one or more processors. The one or more programs include computer-executable instructions for performing the following:
[0154] Receive the input query parameters;
[0155] Based on the query parameters, retrieve query result data from each predetermined data source;
[0156] The query results data are converted into target reliable data that conforms to a predetermined data reliability protocol.
[0157] The target reliable data is sent to the blockchain node.
[0158] In the embodiments of this specification, the data source includes one or more of the following: data sources based on Operation Support System (OSS), Distributed File System (HDFS), private blockchain, consortium blockchain, and public blockchain.
[0159] In the embodiments described in this specification, the data reliability protocol includes the Unified Directed Acyclic Graph (UDAG) protocol.
[0160] In the embodiments described in this specification, the query result data includes one or more of the following:
[0161] ReadWriteSet data in Fabric cluster nodes, SPV data in ETH cluster nodes, transaction information stored on non-account model consortium blockchains, and corresponding Data in the OSS cluster of the Operation Support System.
[0162] This specification provides a data processing device that receives input query parameters and then, based on these parameters, retrieves query result data from each predetermined data source. The query result data is then converted into target reliable data conforming to a predetermined data reliability protocol. Finally, the target reliable data is sent to blockchain nodes. Subsequently, blockchain nodes can obtain the corresponding query result data from the target reliable data and perform multi-dimensional calculations to obtain the target query result corresponding to the query parameters. By using data from multiple data sources, the breadth of computational sources is increased. Furthermore, computational logic and data can be separated. Decentralized nodes are used as the foundation for data entering the blockchain, simplifying the blockchain processing procedure. The use of a data reliability protocol for data reliability proof ensures the immutability of logic and rules, as well as data reliability, thereby improving the credibility of the computational results.
[0163] Example 6
[0164] Following the same line of thought, embodiments of this specification also provide a data processing device, such as... Figure 10 As shown.
[0165] The data processing device can be the blockchain node provided in the above embodiments.
[0166] Data processing devices can vary considerably due to differences in configuration or performance, and may include one or more processors 1001 and memory 1002. Memory 1002 may store one or more application programs or data. Memory 1002 may be temporary or persistent storage. The application programs stored in memory 1002 may include one or more modules (not shown), each module including a series of computer-executable instructions for the data processing device. Furthermore, processor 1001 may be configured to communicate with memory 1002 and execute the series of computer-executable instructions in memory 1002 on the data processing device. The data processing device may also include one or more power supplies 1003, one or more wired or wireless network interfaces 1004, one or more input / output interfaces 1005, and one or more keyboards 1006.
[0167] Specifically, in this embodiment, the data processing device includes a memory and one or more programs, wherein one or more programs are stored in the memory, and one or more programs may include one or more modules, and each module may include a series of computer-executable instructions for the data processing device, and is configured to be executed by one or more processors. The one or more programs include computer-executable instructions for performing the following:
[0168] Receive target reliable data that conforms to a predetermined data reliability protocol sent by a decentralized node. The target reliable data is data obtained by transforming query result data according to the predetermined data reliability protocol. The query result data is data obtained from each predetermined data source according to the query parameters.
[0169] The target reliable data is analyzed to obtain the corresponding query results data;
[0170] Logical calculations are performed on the query result data to obtain the target query result corresponding to the query parameters.
[0171] In the embodiments of this specification, the method further includes:
[0172] Receive a query request sent by the user that includes the query parameters;
[0173] Send the target query results corresponding to the query parameters to the user.
[0174] In this embodiment of the specification, after parsing the target data to obtain the corresponding query result data, the method further includes:
[0175] The query results data are verified;
[0176] The step of performing logical calculations on the query result data to obtain the target query result corresponding to the query parameters includes:
[0177] If the query result data passes the verification, then logical calculations are performed on the query result data to obtain the target query result corresponding to the query parameters.
[0178] This specification provides a data processing device that receives input query parameters and then, based on these parameters, retrieves query result data from each predetermined data source. The query result data is then converted into target reliable data conforming to a predetermined data reliability protocol. Finally, the target reliable data is sent to blockchain nodes. Subsequently, blockchain nodes can obtain the corresponding query result data from the target reliable data and perform multi-dimensional calculations to obtain the target query result corresponding to the query parameters. By using data from multiple data sources, the breadth of computational sources is increased. Furthermore, computational logic and data can be separated. Decentralized nodes are used as the foundation for data entering the blockchain, simplifying the blockchain processing procedure. The use of a data reliability protocol for data reliability proof ensures the immutability of logic and rules, as well as data reliability, thereby improving the credibility of the computational results.
[0179] The foregoing has described specific embodiments of this specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired result. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired result. In some embodiments, multitasking and parallel processing are possible or may be advantageous.
[0180] In the 1990s, improvements to a technology could be clearly distinguished as either hardware improvements (e.g., improvements to the circuit structure of diodes, transistors, switches, etc.) or software improvements (improvements to the methodology). However, with technological advancements, many methodological improvements today can be considered direct improvements to the hardware circuit structure. Designers almost always obtain the corresponding hardware circuit structure by programming the improved methodology into the hardware circuit. Therefore, it cannot be said that a methodological improvement cannot be implemented using a hardware physical module. For example, a Programmable Logic Device (PLD) (e.g., a Field Programmable Gate Array (FPGA)) is such an integrated circuit whose logic function is determined by the user programming the device. Designers can program a digital system themselves to "integrate" it onto a PLD, without needing chip manufacturers to design and manufacture dedicated integrated circuit chips. Furthermore, nowadays, instead of manually manufacturing integrated circuit chips, this programming is mostly implemented using "logic compiler" software. Similar to the software compiler used in program development, the original code before compilation must be written in a specific programming language, called a Hardware Description Language (HDL). There are many HDLs, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, and RHDL (Ruby Hardware Description Language). Currently, the most commonly used are VHDL (Very-High-Speed Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art should understand that by simply performing some logic programming on the method flow using one of these hardware description languages and programming it into an integrated circuit, the hardware circuit implementing the logical method flow can be easily obtained.
[0181] The controller can be implemented in any suitable manner. For example, it can take the form of a microprocessor or processor and a computer-readable medium storing computer-readable program code (e.g., software or firmware) executable by the (micro)processor, logic gates, switches, application-specific integrated circuits (ASICs), programmable logic controllers, and embedded microcontrollers. Examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicon Labs C8051F320. A memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art will also recognize that, in addition to implementing the controller in purely computer-readable program code form, the same functionality can be achieved by logically programming the method steps to make the controller take the form of logic gates, switches, application-specific integrated circuits, programmable logic controllers, and embedded microcontrollers. Therefore, such a controller can be considered a hardware component, and the means included therein for implementing various functions can also be considered as structures within the hardware component. Alternatively, the means for implementing various functions can be considered as both software modules implementing the method and structures within the hardware component.
[0182] The systems, devices, modules, or units described in the above embodiments can be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, a computer can be, for example, a personal computer, laptop computer, cellular phone, camera phone, smartphone, personal digital assistant, media player, navigation device, email device, game console, tablet computer, wearable device, or any combination of these devices.
[0183] For ease of description, the above apparatus is described by dividing it into various functional units. Of course, when implementing one or more embodiments of this specification, the functions of each unit can be implemented in one or more software and / or hardware.
[0184] Those skilled in the art will understand that the embodiments of this specification can be provided as methods, systems, or computer program products. Therefore, one or more embodiments of this specification may take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, one or more embodiments of this specification may take the form of a computer program product implemented on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0185] The embodiments described herein are illustrated with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this specification. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0186] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0187] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0188] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.
[0189] Memory may include non-persistent storage in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.
[0190] Computer-readable media includes both permanent and non-permanent, removable and non-removable media that can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.
[0191] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
[0192] Those skilled in the art will understand that the embodiments of this specification can be provided as methods, systems, or computer program products. Therefore, one or more embodiments of this specification may take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, one or more embodiments of this specification may take the form of a computer program product implemented on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0193] One or more embodiments of this specification can be described in the general context of computer-executable instructions, such as program modules, that are executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc., that perform a particular task or implement a particular abstract data type. One or more embodiments of this specification can also be practiced in distributed computing environments where tasks are performed by remote processing devices connected via a communication network. In distributed computing environments, program modules can reside in local and remote computer storage media, including storage devices.
[0194] The various embodiments in this specification are described in a progressive manner. Similar or identical parts between embodiments can be referred to interchangeably. Each embodiment focuses on describing the differences from other embodiments. In particular, the system embodiments are basically similar to the method embodiments, so the description is relatively simple; relevant parts can be referred to the descriptions in the method embodiments.
[0195] The above description is merely an embodiment of this specification and is not intended to limit this specification. Various modifications and variations can be made to this specification by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this specification should be included within the scope of the claims of this specification.
Claims
1. A data processing method applied to decentralized nodes, the method comprising: Receive the input query parameters; According to the query parameters, query result data is obtained from each predetermined data source. The query result data includes multiple of the following: ReadWriteSet data in Fabric cluster nodes, Simple Payment Verification (SPV) data in ETH cluster nodes, transaction information stored on non-account model consortium blockchains, and corresponding Data data in the Operation Support System (OSS) cluster. The query result data is converted into target reliable data that conforms to the predetermined Unified Directed Acyclic Graph (UDAG) protocol; The target reliable data is sent to the blockchain node for trusted computing.
2. The method according to claim 1, wherein the data source includes a variety of the following: data sources based on Operation Support System (OSS), Distributed File System (HDFS), private blockchain, consortium blockchain, and public blockchain.
3. A data processing method applied to a blockchain node, the method comprising: Receive target reliable data sent by decentralized nodes that conforms to a predetermined unified directed acyclic graph (UDAG) protocol. The target reliable data is data obtained by transforming query result data according to a predetermined data reliability protocol. The query result data is data obtained from each predetermined data source according to query parameters. The target reliable data is parsed to obtain the corresponding query result data, which includes multiple of the following: ReadWriteSet data in Fabric cluster nodes, Simple Payment Verification (SPV) data in ETH cluster nodes, transaction information stored on non-account model consortium blockchains, and corresponding Data data in the Operation Support System (OSS) cluster. Logical calculations are performed on the query result data to obtain the target query result corresponding to the query parameter, and the target query result is used for trusted computing.
4. The method according to claim 3, further comprising: Receive a query request sent by the user that includes the query parameters; Send the target query results corresponding to the query parameters to the user.
5. The method according to claim 3, after parsing the target reliable data to obtain the corresponding query result data, the method further includes: The query results data are verified; The step of performing logical calculations on the query result data to obtain the target query result corresponding to the query parameters includes: If the query result data passes the verification, then logical calculations are performed on the query result data to obtain the target query result corresponding to the query parameters.
6. A data processing apparatus, the apparatus comprising: The parameter receiving module is used to receive the input query parameters; The result acquisition module is used to acquire query result data from each predetermined data source according to the query parameters. The query result data includes multiple of the following: ReadWriteSet data in Fabric cluster nodes, Simple Payment Verification (SPV) data in ETH cluster nodes, transaction information stored on the non-account model consortium blockchain, and corresponding Data data in the Operation Support System (OSS) cluster. The data conversion module is used to convert the query result data into target reliable data that conforms to the predetermined unified directed acyclic graph (UDAG) protocol. The data sending module is used to send the target reliable data to the blockchain node for trusted computing.
7. A data processing apparatus, the apparatus comprising: The data receiving module is used to receive target reliable data that conforms to a predetermined unified directed acyclic graph (UDAG) protocol sent by decentralized nodes. The target reliable data is data obtained by converting query result data according to a predetermined data reliability protocol. The query result data is data obtained from each predetermined data source according to query parameters. The parsing module is used to parse the target reliable data and obtain the corresponding query result data. The query result data includes multiple of the following: ReadWriteSet data in Fabric cluster nodes, Simple Payment Verification (SPV) data in ETH cluster nodes, transaction information stored on the non-account model consortium blockchain, and corresponding Data data in the Operation Support System (OSS) cluster. The query result determination module is used to perform logical calculations on the query result data to obtain the target query result corresponding to the query parameter, and the target query result is used for trusted computing.
8. A data processing apparatus, the data processing apparatus comprising: processor; as well as A memory configured to store computer-executable instructions, which, when executed, cause the processor to: Receive the input query parameters; According to the query parameters, query result data is obtained from each predetermined data source. The query result data includes multiple of the following: ReadWriteSet data in Fabric cluster nodes, Simple Payment Verification (SPV) data in ETH cluster nodes, transaction information stored on non-account model consortium blockchains, and corresponding Data data in the Operation Support System (OSS) cluster. The query result data is converted into target reliable data that conforms to the predetermined Unified Directed Acyclic Graph (UDAG) protocol; The target reliable data is sent to the blockchain node for trusted computing.
9. A data processing apparatus, the data processing apparatus comprising: processor; as well as A memory configured to store computer-executable instructions, which, when executed, cause the processor to: Receive target reliable data sent by decentralized nodes that conforms to a predetermined unified directed acyclic graph (UDAG) protocol. The target reliable data is data obtained by transforming query result data according to a predetermined data reliability protocol. The query result data is data obtained from each predetermined data source according to query parameters. The target reliable data is parsed to obtain the corresponding query result data, which includes multiple of the following: ReadWriteSet data in Fabric cluster nodes, Simple Payment Verification (SPV) data in ETH cluster nodes, transaction information stored on non-account model consortium blockchains, and corresponding Data data in the Operation Support System (OSS) cluster. Logical calculations are performed on the query result data to obtain the target query result corresponding to the query parameter, and the target query result is used for trusted computing.
Citation Information
Patent Citations
Alliance-chain-based out-of-chain data access method and system
CN107507005A
Blockchain based transaction execution method and device and electronic equipment
CN108389129A
Secured system operation
WO2018162628A1