Data sharing system based on cloud chain collaboration
By designing the cloud chain -based data sharing system in the multi -center medical data sharing system, the problem of data sharing and query efficiency is solved, and the reasonable storage of data and the extraction of high -value data are realized.
Patent Information
- Application Number
- CN202410120144.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-01-29
- Publication Date
- 2025-01-24
- Estimated Expiration
- 2044-01-29
AI Technical Summary
In the multi-center medical data sharing scenario, how to realize the distributed primary index query of patients, collaborative computing and storage between edge end nodes of medical institutions and consortium chains of medical institutions, and how to obtain high-value medical samples.
Design a data sharing system based on cloud chain, including cloud server, data holding end, data demand side, and client. All nodes are nodes on the alliance chain. The data holding the original data on the cloud server and stored data signatures and storage addresses on the local server. By prefabricating main index generation methods to generate the user's main index for the user, and store the mapping relationship between the characteristics of the patient's characteristics and the main index of the medical institution in the smart contract.
Improve the retrieval efficiency of users, ensure the reasonable storage of data, and extract high -value data.
Smart Images

Figure CN117938520B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer technology applications, and in particular to a data sharing system based on cloud chain collaboration. Background Art
[0002] Currently, in some application scenarios, multi-center medical data retrospective and prospective studies require a large number of samples. Therefore, multiple centers, i.e. multiple medical institutions, need to provide their own samples. These samples need to be transmitted in a consortium chain scenario based on cloud chain collaboration to ensure that the provided samples can be shared reliably. Due to the existence of multiple centers, the following problems will arise in this scenario:
[0003] (1) How to provide patients with a distributed master index to facilitate patient queries;
[0004] (2) How samples are collaboratively computed and stored on the cloud, at the edge nodes of medical institutions, and on the consortium chain;
[0005] (3) How to obtain high-value samples based on the results of medical exclusion. Summary of the invention
[0006] In view of the above technical problems, the technical solution adopted by the present invention is:
[0007] An embodiment of the present invention provides a data sharing system based on cloud chain collaboration, the system comprising at least a cloud server and multiple data holders, multiple data demanders and multiple clients communicatively connected to the cloud server, the data holders, the data demanders and the clients are all nodes on the alliance chain.
[0008] The original data held by the data holder is stored in the cloud server, and the data signature and storage address of the original data held by the data holder are stored in the corresponding local server.
[0009] Any data holding end is used to generate a corresponding user master index for the corresponding user according to a preset master index generation method and send it to the corresponding client, and obtain the corresponding query result and the associated user ID based on the data query conditions sent by the data demand end, and send a request authorization instruction to the associated user ID, and when receiving the authorization information sent by the client corresponding to the associated user ID, send the corresponding query result to the data demand end.
[0010] Any data demand end is used to process the query result received from the data holding end to obtain a corresponding processing result, and the processing result at least includes a first result representing the data quality.
[0011] Any client is used to generate corresponding authorization information based on the received authorization request instruction, and send it to the corresponding data holder, and exchange information with the corresponding data holder through the user master index.
[0012] The present invention has at least the following beneficial effects:
[0013] The data sharing system based on cloud-chain collaboration provided by the embodiment of the present invention can improve the user's retrieval efficiency, reasonably store data, and extract high-value data in the cloud-chain collaboration scenario. BRIEF DESCRIPTION OF THE DRAWINGS
[0014] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0015] Figure 1 A structural block diagram of a data sharing system based on cloud chain collaboration provided in an embodiment of the present invention. DETAILED DESCRIPTION
[0016] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present invention.
[0017] An embodiment of the present invention provides a data sharing system based on cloud chain collaboration, the system comprising at least a cloud server and multiple data holders, multiple data demanders and multiple clients communicatively connected to the cloud server, the data holders, the data demanders and the clients are all nodes on the alliance chain.
[0018] Among them, the cloud server is deployed in the cloud environment. The encryption and decryption units are set up on the nodes corresponding to the data holder, data demander and client, and private keys are deployed, and smart contracts are deployed on the alliance chain network.
[0019] In the embodiment of the present invention, the data demand end is a node that needs data, the data holding end is a node that holds client data, and the client is a node to which the data belongs, which can communicate with multiple users and is a node that forwards the information sent by the data demand end to the mobile terminal of the corresponding user. In the embodiment of the present invention, the user can be the object that generates data.
[0020] In an embodiment of the present invention, the encryption and decryption algorithm used by the encryption and decryption unit may be one or more of the following encryption and decryption algorithms: DES (Data Encryption Standard) data encryption standard algorithm, symmetric encryption AES, asymmetric encryption ECC, message digest MD5 or digital signature DSA. Preferably, the encryption and decryption algorithm used may be asymmetric encryption.
[0021] In the embodiment of the present invention, the data may be medical data, and of course other data. Those skilled in the art know that the medical data may be all medical data generated in the hospital, for example, including historical diagnosis of disease types, number of treatments for similar diseases, attending physicians and hospitals, etc., and may specifically be imaging data, electronic medical records, diagnosis and treatment plans, medical records, examination result data, medical consumption and expenses, etc.
[0022] In an embodiment of the present invention, when the data is medical data, the user may be a patient, the data holder may be a hospital, and the data demander may be a doctor and a third-party organization such as medical research, drug clinical trials, medical insurance claims, etc.
[0023] Furthermore, in an embodiment of the present invention, the original data held by the data holder is stored in the cloud server, and the data signature and storage address of the original data held by the data holder are stored in the corresponding local server. Among them, all data holders have a unified database table structure, which is a structure that conceptualizes and encodes data content based on medical data, including patient clinical data, drug data, surgical data, medical terminology, etc.
[0024] In an embodiment of the present invention, any data holding end is used to collect, transform and structure the original data, build a local patient master index and synchronize it to the corresponding client, and upload the original data, such as image data, cost details, medical records, etc., to the cloud server and alliance chain through the cloud link interface. Specifically, it is used to generate a corresponding user master index for the corresponding user according to the preset master index generation method and send it to the corresponding client, and store the mapping relationship between patient feature items and patient master indexes of medical institutions at all levels in the smart contract. And based on the data query conditions sent by the data demand end, the corresponding query results and the associated user ID are obtained, and a request authorization instruction is sent to the associated user ID, and when the authorization information sent by the client corresponding to the associated user ID is received, the corresponding query results are sent to the data demand end.
[0025] In the embodiment of the present invention, the data holding terminal i is provided with a user database UD i and intermediate database MD i , U.D. i The jth row in contains (A ij , Bij ), A ij For UD i The ID of the j-th row of data in B ij For UD i The basic user information corresponding to the j-th row of data in B ij = {B 1 ij , B 2 ij , ..., B s ij , ..., B P ij}, B s ij For B ij The sth basic attribute in the data set, s ranges from 1 to P, P is the number of basic attributes, i ranges from 1 to m, m is the number of data holders, j ranges from 1 to f(i), f(i) is UD i The number of data in MD i The rth row in the ir , K ir ), U ir For MD i The user primary index corresponding to the r-th row of data in K ir For MD i The user key information corresponding to the r-th row of data in K ir ={K 1 ij , K 2 ij , ..., K h ij , ..., K Q ij}, K h ij K ir The hth key attribute in the , where h ranges from 1 to Q, Q is the number of key attributes, where (K i1 ∪K i2 ∪……∪K ir ∪……∪K ig(i) )∈(B i1 ∪B i2 ∪……∪B ij ∪……∪B if(i) ), that is, the intermediate database is a subset of the user database, and K i1 ≠K i2 ≠……≠K ir ≠……≠K ig(i) , that is, any user primary index in the intermediate database is different, and the corresponding user is also different. The value of r ranges from 1 to g(i), where g(i) is MD iThe amount of data in .
[0026] In the embodiment of the present invention, when the data is medical data, the basic information of the user may at least include the basic attributes of the user, such as the user's name, ID number, gender, medical insurance card number, medical card number, date of birth, home address, contact number, date of birth, emergency contact, emergency contact number, previous medical history, etc. The key information of the user may at least include the user's name, ID number, gender, medical insurance card number, medical card number, contact number and date of birth, etc.
[0027] Furthermore, in the embodiment of the present invention, the data holder i may generate a corresponding user primary index for the corresponding user based on the following method:
[0028] S10, set j=1.
[0029] S11, Get UD i B in the jth row of data ij Corresponding key attribute KB ij ; Set r=1; Execute S12.
[0030] S12, obtain intersection I = KB ij ∩K ir , if I is an empty set, execute S13, otherwise, execute S15.
[0031] S13, set r=r+1, if r≤g(i), execute S12, otherwise, execute S14.
[0032] S14, based on setting algorithm B ij The corresponding user generates the corresponding user primary index, and based on the generated user primary index and KB ij Update MD i ; Execute S16.
[0033] In an embodiment of the present invention, the setting algorithm may be an existing primary index generation algorithm. In an exemplary embodiment, the setting algorithm may be a snowflake algorithm. The unique identifier generated by the snowflake algorithm is a 64-bit integer, which can be decomposed into the following parts:
[0034] (1) Sign bit (1 bit): always 0, reserved for future use.
[0035] (2) Timestamp (41 bits): accurate to milliseconds, indicating the timestamp when the ID is generated.
[0036] (3) Work machine ID (10 digits): used to distinguish different machines. Multiple machines can be configured, and each machine is assigned a unique ID.
[0037] (4) Sequence number (12 bits): indicates the sequence number of multiple IDs generated in the same millisecond. If more than 4095 IDs are generated in the same millisecond (2 12 -1), you need to wait for the next millisecond to generate again.
[0038] In the embodiment of the present invention, based on the generated user primary index and KB ij Update MD i To: add the generated user primary index and corresponding key attributes to the current intermediate database.
[0039] S15, based on the preset recognition rule library, obtain the weight corresponding to I, if the obtained weight is greater than the set threshold, set K ir =KB ij ∪K ir ; Execute S16.
[0040] In an embodiment of the present invention, the preset recognition rule base includes multiple recognition rules and corresponding weights, and each rule includes at least two key attributes in the key information. The specific recognition rules and corresponding weights can be set based on actual needs. In an exemplary embodiment, for example, the preset recognition rule base can be shown in Table 1 below:
[0041] Table 1
[0042] Identification rules Weight ID number + name + gender 100 Medical insurance card number + name + gender 95 Name + Gender 70 Name + Contact Number + Date of Birth 80 Name + Medical Insurance Card Number 90 Medical card number + name 91
[0043] For I, the key attributes included in I are compared with each identification rule to obtain the corresponding weight. In the embodiment of the present invention, the threshold value can be set based on actual needs, and can be determined based on the level of the data holder, such as the medical level. The higher the level, the larger the corresponding threshold value, and vice versa. Taking a tertiary hospital as an example, the threshold value can be set to 90.
[0044] In the embodiment of the present invention, if the obtained weight is greater than the set threshold, it means that the user already exists in the intermediate database, and K can be automatically set. ir =KB ij ∪K ir , to update the current intermediate database. If the weight obtained is less than or equal to the set threshold, it means that it is uncertain whether the user is a user in the intermediate database. It can be submitted for manual processing, and the intermediate database can be updated manually based on relevant information. In this way, a mapping relationship between each record in the user database and the user's primary index can be established.
[0045] S16, set j=j+1, if j≤f(i), execute S11, otherwise, exit the current control program.
[0046] In the embodiment of the present invention, any data demand end is used to process the query result received from the data holding end to obtain a corresponding processing result, and the processing result at least includes a first result representing the data quality.
[0047] In an embodiment of the present invention, taking medical data as an example, the data demand side initiates a feasibility study, constructs indicators and screens cases based on a unified query language; and sorts the returned results according to time and research value. The research value refers to the value score calculated by fitting according to medical expenses, hospital category, data completeness, etc.
[0048] In the embodiment of the present invention, considering the characteristics of medical data, the data demand side uses UQL language to send data query conditions. The difference from SQL is mainly reflected in: the table of UQL is not a table in the simple sense, but a data set, and the data row is also a data set. For example, the patients table represents the data set of the patient dimension, and each data refers to the complete medical record data of a certain patient. The visits table represents the data set of the visit dimension, and each data refers to the complete medical record data of a certain patient's visit. The improved functions of UQL may include, for example: functions for calculating a set of data statistics, functions for processing time series data (first, last, and n times, etc.), timestamp functions, input data information statistics functions, and output data statistics functions.
[0049] In the embodiment of the present invention, taking medical data as an example, examples of sending data query conditions using UQL may include:
[0050] Example 1: Full-text fuzzy query
[0051] Query:Male, Female
[0052] UQL:
[0053] SELECT patient_info.PATIENT_SN,patient_info.GENDER,patient_info.ETHNIC
[0054] FROM patients
[0055] WHERE QUERY('Male,Female')
[0056] Example 2: Cross-visit query
[0057] Query:
[0058] Male patients diagnosed with lung cancer before 2015, who have undergone right or left lower lung resection, and who have had pneumonia before 2013
[0059] UQL:
[0060] SELECT patient_info.PATIENT SN,patient_info.GENDER,patient_info.ETHNIC
[0061] FROM patients
[0062] WHERE patient_info.GENDER='Male'AND{vists.diagnose.DIAGNOSIS CONTAIN'Lung cancer'AND visits.visit_info.ADMISSION_DATE<'2015-01-00:00:00'AND{visits.operation_info CONTAIN'Right lower lung resection'OR visits.operation_info CONTAIN'Left lower lung resection'AND[visits.diagnose.DIAGNOSIS]CONTAIN'Pneumonia'AND visits.visit_info.ADMISSION_DATE<'2013-01-01 00:00:00'
[0063] Example 3: Multiple fields with strong correlation
[0064] Query:
[0065] Blood routine test, female patients with lymphocyte percentage greater than 40%
[0066] UQL:
[0067] SELECT patient_info.PATIENT_SN,patient_info.GENDER,patient_info.ETHNIC
[0068] FROM patients
[0069] WHERE patient_info.GENDER='Female'
[0070] AND{visits.inspection_reports.SPECIMEN_NAME='blood routine'
[0071] AND{visits.inspection_reports.sub_inspection.SUB_INSPECTION_CN='lymphocyte percentage'
[0072] AND visits.inspection_reports.sub_inspection.SUBINSPECTION_UNIT='%'AND visits.inspection_reports.sub_inspection.SUB_INSPECTION_RESULT_NUMBER>'40'}}
[0073] Example 4:
[0074] Query:
[0075] Patients hospitalized for pneumonia more than twice within 1 year
[0076] UQL:
[0077] SELECT visits.visit_info.PATIENT_SN
[0078] FROM visits
[0079] WHERE visits.visit_info.VISIT_TYPE_NAME = 'hospitalization'
[0080] AND visits.diagnose.DIAGNOSIS='Pneumonia'
[0081] GROUP BY visits.visit_info.PATIENT_SN
[0082] HAVING COUNT(visits.visit_info.VISIT_SN)>'2'AND MIN_DIFF(visits.visit_info.ADMISSION_DATE)<=YEARS(1))
[0083] Example 5:
[0084] Query:
[0085] Hepatocellular carcinoma diagnosed 1 year after first diagnosis of cirrhosis
[0086] UQL:
[0087] SELECT event1.PATIENT_SN
[0088] FROM(SELECT visits.visit_info.PATIENT_SN AS patient_sn,first_date(visits.visit_info.ADMISSION DATE)AS first_date
[0089] FROM visits
[0090] WHERE visits.diagnose.DIAGNOSIS CONTAIN'liver cirrhosis'
[0091] GROUP BY visits.visit_info.PATIENT_SN)AS event1
[0092] INNER JION(SELECT visits.visit_info.PATIENT_SN AS patient_sn,first_date(visits.visit_info.ADMISSION_DATE)AS first_date
[0093] WHERE visits.diagnose.DIAGNOSIS CONTAIN'Liver cancer'
[0094] GROUP BY visits.visit_info.PATIENT_SN)AS event2
[0095] ON event1.patient_sn=event2.patient_sn
[0096] WHERE event2.first_date-event1.first_date>YEARS(1)
[0097] Further, in the embodiment of the present invention, the first result can be obtained based on the following steps:
[0098] The received query result is input into the data quality assessment model to obtain a corresponding output result as the first result.
[0099] Furthermore, the data quality assessment model is obtained through the following steps:
[0100] S20, obtaining a sample data set.
[0101] The sample data set can be obtained from the data holder through data query conditions. Taking medical data as an example, each sample data is the data generated by a user's visit to the doctor or hospitalization.
[0102] S21, based on the current feature dimension, extract the feature value in each sample data, and normalize the extracted feature value to obtain the corresponding target feature value.
[0103] In an embodiment of the present invention, the characteristic dimensions may be determined based on the characteristics of the data itself. Taking medical data as an example, the characteristic dimensions may include medical expenses, hospital level, surgical level, doctor position, number of user visits, data integrity, etc.
[0104] The unit of medical expenses is yuan, and the corresponding value range is [0,100]. For a certain sample data, the corresponding actual medical expenses R can be converted to [0,100] through the formula R0=LnR, where R0 is the normalized medical expenses.
[0105] The hospital level is measured in points, and the corresponding value range is [0,100]. It can be determined based on the hospital level corresponding to the sample data. For example, the third-level A is 100 points, the third-level B is 85 points, the second-level A is 70 points, the second-level B is 55 points, the first-level A is 40 points, the first-level B is 25 points, and the others are 10 points.
[0106] The surgical grade is measured in points, and the corresponding value range is [0,100], which can be determined based on the grade of the surgery corresponding to the sample data. For example, a grade 4 surgery is 100 points, a grade 3 surgery is 85 points, a grade 2 surgery is 70 points, and a grade 1 surgery is 55 points.
[0107] The doctor position is measured in points, and the corresponding value range is [0,100], which can be determined based on the level of the attending physician corresponding to the sample data. For example, the chief physician is 100 points, the deputy chief physician is 85 points, the attending physician is 70 points, and the resident physician is 55 points.
[0108] The value range of the user's cumulative number of visits is [0, 100]. If the actual cumulative number of visits of the user corresponding to the sample data is C, it can be converted to [0, 100] by the formula C0 = LnC, where C0 is the normalized cumulative number of visits.
[0109] Data integrity: First, set the core field set, then calculate the number of core fields in a row of records in the database consisting of visits or hospitalizations corresponding to each sample data, and then get the data integrity score of each sample data according to the formula x / X0×100. x is the number of core fields contained in each sample data, and X0 is the number of core fields.
[0110] In an embodiment of the present invention, the core field set may be multiple combinations of a patient basic information subset, a basic health information subset, a health event summary subset, a medical expense record subset, an outpatient and emergency medical record subset, an emergency observation medical record subset, a western medicine prescription subset, an examination record subset, a test record subset, a treatment record subset, a general surgery record subset, anesthesia pre-operative visit record subset, anesthesia record subset, anesthesia post-operative visit record subset, blood transfusion record subset, general nursing record subset, critical (serious) nursing record subset, surgical nursing record subset, vital signs measurement record subset, input and output record subset, and high-value consumables usage record subset.
[0111] For the sample data, feature extraction is performed according to the current feature dimension to obtain the feature value of each feature, and the feature value is normalized and mapped. The normalization process can be based on the need to perform different function changes on the value range, such as continuous, discrete, logarithmic function or piecewise function. The mapping process should follow the principle that the feature with the greatest value has the higher weight.
[0112] S22, based on the target feature value of each sample data, determine the label of each sample data, and divide the sample data set with the determined label into a test set and a validation set.
[0113] In an embodiment of the present invention, the label can be obtained based on manual scoring, and can include the first label to the fourth label. The first label to the fourth label can be determined based on the score, and the scores corresponding to the first to the fourth labels decrease in sequence. For example, the score range corresponding to the first label can be [90, 100], the score range corresponding to the second label can be [70, 90), the score range corresponding to the third label can be [50, 70), and the score range corresponding to the fourth label can be [0, 50).
[0114] S23, inputting the training sample data of the current batch into the current data quality assessment model for training to obtain the corresponding prediction results.
[0115] S24, based on the prediction results of the current batch and the corresponding actual results, obtain the current loss function value of the data quality assessment model, and determine whether the current loss function value meets the preset model training end condition. If yes, execute step S26, otherwise, execute step S25.
[0116] S25, updating the parameters of the current data quality assessment model based on the current loss function value, and using the next batch of training sample data as the current batch of training sample data, and executing S24;
[0117] S26, using the current data quality assessment model as an intermediate data quality assessment model; executing S27;
[0118] S27, input the sample data corresponding to the verification set into the intermediate data quality assessment model to obtain the corresponding output result, and obtain the assessment result based on the actual result and output result of the sample data corresponding to the verification set. If the assessment result meets the preset conditions, the current data quality assessment model is used as the target data quality assessment model; otherwise, the parameters of the current data quality assessment model are adjusted and S23 is executed.
[0119] In an embodiment of the present invention, the data quality assessment model is a linear regression model. The loss function value can be calculated based on an existing loss function. The preset model training end condition can be set based on actual needs. For example, the loss is less than or equal to a set loss threshold and remains unchanged within a set time period.
[0120] In an embodiment of the present invention, the evaluation result may be a mean square error, a root mean square error, and a mean absolute error. The preset condition may be that the evaluation result is less than a set error threshold. The set error threshold may be determined based on the model accuracy.
[0121] Furthermore, in the embodiment of the present invention, the processing result also includes second results arranged in chronological order. The chronological order may include arranging by year, month or specific time period.
[0122] Furthermore, in the embodiment of the present invention, any client is used to generate corresponding authorization information based on the received authorization request instruction, and send it to the corresponding data holder, and exchange information with the corresponding data holder through the user primary index.
[0123] In the embodiment of the present invention, the client will construct a user master index list for each user based on the received user master index, and each user master index is associated with a corresponding data holder. When a user initiates a data query request to check his own data on a data holder, the client will use the user master index corresponding to the data holder to check, thereby improving query efficiency.
[0124] In addition, if the user information is updated, the corresponding client will automatically update the mapping relationship between the data holder and the user's primary index.
[0125] Furthermore, in the embodiment of the present invention, the data holders will exchange information to obtain the required data. Specifically, the information exchange process between the data holder B and the data holder A is as follows:
[0126] (1) Data holder B retrieves the database table structure in data holder A, that is, data holder B sends the data query conditions corresponding to the data of interest to data holder A;
[0127] (2) After receiving the data query conditions sent by B, data holder A searches the local database. If the corresponding results are found, the search results are used as the target data, and the storage address of the target data on the cloud server and the encryption key corresponding to data holder A are encrypted to generate encrypted data;
[0128] (3) Data holder B obtains the encrypted data transmitted by data holder A from the alliance chain, including the symmetric key and the original data address on the cloud (cloud server);
[0129] (4) Data holder B decrypts the encrypted data using the asymmetric key, obtains the transmitted symmetric key and cloud address, downloads the original data from the cloud, and decrypts the downloaded original data using the symmetric key;
[0130] (5) After the download is complete, data holder B will verify that the data is consistent with the original hash signature on the chain of data holder A to ensure that the data has not been tampered with.
[0131] Furthermore, the data directory of the data holder will be notified to each data holder through the alliance chain broadcast. Taking medical data as an example, the data holder will broadcast the data directory of the data holder on the alliance chain (such as hospital name, hospital level, department name, department introduction, supported scientific research projects, whether online access is supported, etc.) based on the classification and grading standards of medical and health data, and notify each data holder through automatic broadcast. The data demand side maintains a set of real-time updated and available data directory structure for the entire network locally.
[0132] Although some specific embodiments of the present invention have been described in detail by way of example, it should be understood by those skilled in the art that the above examples are for illustration only and are not intended to limit the scope of the present invention. It should also be understood by those skilled in the art that various modifications may be made to the embodiments without departing from the scope and spirit of the present invention. The scope of the present invention is defined by the appended claims.
Claims
1. A data sharing system based on cloud chain collaboration, characterized by: The system includes at least a cloud server and a plurality of data holders, a plurality of data demanders, and a plurality of clients in communication with the cloud server, wherein the data holders, the data demanders, and the clients are all nodes on the alliance chain; The original data held by the data holding terminal is stored in the cloud server, and the data signature and storage address of the original data held by the data holding terminal are stored in the corresponding local server; Any data holding end is used to generate a corresponding user primary index for the corresponding user according to a preset primary index generation method and send it to the corresponding client, and obtain the corresponding query result and the associated user ID based on the data query condition sent by the data demand end, and send an authorization request instruction to the associated user ID, and upon receiving the authorization information sent by the client corresponding to the associated user ID, send the corresponding query result to the data demand end; Any data demand end is used to process the query result received from the data holding end to obtain a corresponding processing result, wherein the processing result at least includes a first result representing the data quality; Any client is used to generate corresponding authorization information based on the received authorization request instruction, send it to the corresponding data holder, and exchange information with the corresponding data holder through the user master index; The data holding terminal i is provided with a user database UD i and intermediate database MD i , UD i The jth row in the ij , B ij ), A ij UD i The ID of the j-th row of data in B ij UD i The basic user information corresponding to the j-th row of data in B ij ={B 1 ij , B 2 ij ,……,B s ij ,……,B P ij }, B s ij For B ij The sth basic attribute in the data set, s ranges from 1 to P, P is the number of basic attributes, i ranges from 1 to m, m is the number of data holders, j ranges from 1 to f(i), f(i) is the UD i The amount of data in MD i The rth row in the ir , K ir ), U ir For MD i The user primary index corresponding to the r-th row of data, K ir For MD i The user key information corresponding to the r-th row of data, K ir ={K 1 ij , K 2 ij ,……,K h ij ,……,K Q ij }, K h ij K ir The hth key attribute in the , h value ranges from 1 to Q, Q is the number of key attributes, where (K i1 ∪K i2 ∪……∪K ir ∪……∪K ig(i) )∈(B i1 ∪B i2 ∪……∪B ij ∪……∪B if(i) ), and K i1 ≠K i2 ≠……≠K ir ≠……≠K ig(i) , r ranges from 1 to g(i), g(i) is MD i The amount of data in .
2. The system according to claim 1, wherein: The data holder i generates the corresponding user primary index for the corresponding user based on the following method: S10, set j = 1; S11, obtain UD i B in the j-th row of data ij Corresponding key attributes KB ij ; Set r = 1; Execute S12; S12, obtain the intersection I=KB ij ∩K ir , if I is an empty set, execute S13, otherwise, execute S15; S13, set r = r + 1, if r ≤ g (i), execute S12, otherwise, execute S14; S14, based on the set algorithm B ij The corresponding user generates the corresponding user master index, and based on the generated user master index and KB ij Update MD i ; Execute S16; S15, based on the preset recognition rule base, obtain the weight corresponding to I, if the obtained weight is greater than the set threshold, set K ir =KB ij ∪K ir ; Execute S16; S16, set j=j+1, if j≤f(i), execute S11, otherwise, exit the current control program.
3. The system according to claim 1, wherein: The processing results also include second results arranged in chronological order.
4. The system according to claim 1, wherein: The first result is obtained based on the following steps: The received query result is input into the data quality assessment model to obtain a corresponding output result as the first result.
5. The system according to claim 4, characterized in that The data quality assessment model is obtained through the following steps: S20, obtaining a sample data set; S21, based on the current feature dimension, extract the feature value in each sample data, and normalize the extracted feature value to obtain the corresponding target feature value; S22, determining a label for each sample data based on the target feature value of each sample data, and dividing the sample data set with the determined label into a test set and a validation set; S23, inputting the current batch of training sample data into the current data quality assessment model for training to obtain corresponding prediction results; S24, based on the prediction results of the current batch and the corresponding actual results, obtain the current loss function value of the data quality assessment model, and determine whether the current loss function value meets the preset model training end condition. If so, execute step S26; otherwise, execute step S25; S25, updating the parameters of the current data quality assessment model based on the current loss function value, and using the next batch of training sample data as the current batch of training sample data, and executing S24; S26, using the current data quality assessment model as an intermediate data quality assessment model; executing S27; S27, input the sample data corresponding to the verification set into the intermediate data quality assessment model to obtain the corresponding output result, and obtain the evaluation result based on the actual result and output result of the sample data corresponding to the verification set. If the evaluation result meets the preset conditions, the current data quality assessment model is used as the target data quality assessment model; otherwise, the parameters of the current data quality assessment model are adjusted and S23 is executed.
6. The system according to claim 4, characterized in that The data quality assessment model is a linear regression model.
7. The system according to claim 1, wherein: The data demand side sends data query conditions through the UQL language.
8. The system according to any one of claims 1 to 7, characterized in that The data is medical data.
Citation Information
Patent Citations
Energy transaction data sharing system and method based on cloud chain fusion
CN114884747A
Information interaction method, electronic equipment and storage medium
CN116881972A
Software quality evaluation method and device, computer equipment and storage medium
CN117093477A