Distributed storage method and system for clinical trial data
Through ring signature encryption processing and dual-level random storage node configuration optimization, combined with LPPMM-DA data aggregation model and dynamic operation envelope analysis, the problems of low data security and storage resource utilization in the existing technology are solved, and the secure and reliable storage and efficient distribution of clinical trial data are achieved.
Patent Information
- Application Number
- CN202411879943.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-19
- Publication Date
- 2025-04-04
- Estimated Expiration
- 2044-12-19
AI Technical Summary
The prior art is difficult to ensure patient privacy and security while ensuring data availability, and ignores the dynamic optimization configuration of data storage nodes when processing multi-dimensional clinical trial data, resulting in low storage resource utilization.
The patient anonymized identifier is generated through ring signature encryption processing, and the storage node configuration is optimized by using the dual-level random storage node configuration and the Benders decomposition algorithm. Data sharding is performed based on the LPPMM-DA data aggregation model, and storage resource scheduling is performed through dynamic operation envelope analysis and alliance graph game calculation.
It effectively protects the security of patient privacy data, optimizes the resource allocation efficiency of storage nodes, improves the storage efficiency and access performance of data, and realizes the balanced distribution and safe and reliable storage of clinical trial data.
Smart Images

Figure CN119323046B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of distributed data storage, and in particular to a distributed storage method and system for clinical trial data. Background Art
[0002] Traditional centralized data storage solutions for clinical trial data are difficult to meet the storage needs of large-scale clinical trial data, and there is a risk of patient privacy leakage during data transmission and access.
[0003] Although existing distributed storage solutions have solved data storage and management problems to a certain extent, they generally have problems such as low data aggregation efficiency, unreasonable allocation of storage node resources, and imperfect data access control mechanisms. Especially in clinical trial scenarios involving patient privacy data, how to ensure patient privacy while ensuring data availability has become a technical problem that needs to be solved urgently. In addition, when processing multi-dimensional clinical trial data, existing technical solutions often ignore the dynamic optimization configuration of data storage nodes, resulting in low storage resource utilization, and lack of effective data sharding and load balancing mechanisms, which cannot meet the needs of efficient storage and secure access to large-scale clinical trial data. Summary of the invention
[0004] The present invention provides a distributed storage method and system for clinical trial data. The present invention constructs a complete data access control system to ensure the safe and reliable storage of clinical trial data.
[0005] In a first aspect, the present invention provides a distributed storage method for clinical trial data, the distributed storage method for clinical trial data comprising:
[0006] Patient trial data from multiple data centers are encrypted using ring signatures to obtain patient anonymized identifiers and standardized clinical data;
[0007] Performing a two-level random storage node configuration on the standardized clinical data, and calculating an optimal storage node configuration scheme through binary decision variable space mapping and Benders decomposition algorithm;
[0008] Building an LPPMM-DA data aggregation model based on the optimal storage node configuration solution, and sharding the patient test data to obtain multiple target data shards;
[0009] Performing dynamic operation envelope analysis and alliance graph game calculation on the multiple target data shards to obtain a storage resource scheduling plan;
[0010] Distributed data block storage and access authentication are performed on the multiple target data shards according to the storage resource scheduling scheme and the anonymized identifier to generate data block storage distribution information.
[0011] In a second aspect, the present invention provides a distributed storage system for clinical trial data, the distributed storage system for clinical trial data comprising:
[0012] An encryption module is used to perform ring signature encryption processing on patient test data in multiple data centers to obtain patient anonymized identifiers and standardized clinical data;
[0013] A configuration module, used for performing a two-level random storage node configuration on the standardized clinical data, and calculating an optimal storage node configuration scheme through binary decision variable space mapping and Benders decomposition algorithm;
[0014] A construction module, used to construct an LPPMM-DA data aggregation model based on the optimal storage node configuration solution, and perform sharding processing on the patient test data to obtain multiple target data shards;
[0015] A computing module, used to perform dynamic operation envelope analysis and alliance graph game calculation on the multiple target data shards to obtain a storage resource scheduling solution;
[0016] A generation module is used to perform distributed data block storage and access authentication on the multiple target data shards according to the storage resource scheduling scheme and the anonymized identifier, and generate data block storage distribution information.
[0017] In the technical solution provided by the present invention, the security of patient privacy data is effectively protected through ring signature encryption processing and ECDLP hardness assumption, while ensuring the unforgeability and tamper-proofness of the data; the two-level random storage node configuration and Benders decomposition algorithm are adopted to significantly optimize the resource allocation efficiency of storage nodes and reduce the storage cost and communication overhead of the system; the sharding processing mechanism based on the LPPMM-DA data aggregation model effectively improves the storage efficiency and access performance of the data, and realizes the balanced distribution of clinical trial data; through dynamic operation envelope analysis and alliance graph game calculation, the fair allocation of storage resources is guaranteed, and the collaboration efficiency between multiple data centers is improved; combined with the access authentication mechanism of the anonymous identifier, a complete data access control system is constructed to ensure the safe and reliable storage of clinical trial data; the present invention reduces the computational complexity and storage overhead of the system, and improves the scalability and operation stability of the distributed storage system. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other accompanying drawings can be obtained based on these accompanying drawings without paying creative work.
[0019] Figure 1 A schematic diagram of the steps of a distributed storage method for clinical trial data in an embodiment of the present invention;
[0020] Figure 2 Schematic diagram of the structure of the distributed storage system for clinical trial data in an embodiment of the present invention. DETAILED DESCRIPTION
[0021] Embodiments of the present invention provide a distributed storage method and system for clinical trial data. The terms "first", "second", "third", "fourth", etc. (if any) in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments described herein can be implemented in an order other than that illustrated or described herein. In addition, the terms "including" or "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0022] For ease of understanding, the specific process of the embodiment of the present invention is described below. Figure 1 An embodiment of a distributed storage method for clinical trial data in an embodiment of the present invention includes:
[0023] Step S1, performing ring signature encryption processing on patient test data in multiple data centers to obtain patient anonymized identifiers and standardized clinical data;
[0024] It is understandable that the execution subject of the present invention may be a distributed storage system for clinical trial data, or a terminal or a server, which is not limited here. The embodiment of the present invention is described by taking a server as the execution subject as an example.
[0025] Specifically, data field parsing is performed on the patient test data from multiple data centers. Different data field sets are extracted from the original test data collected from multiple data centers, including patient identification fields, clinical indicator fields, test process fields, and result data fields. Each field set contains different types of information. The patient identification field is used to identify the patient's identity, the clinical indicator field records the patient's various health parameters, the test process field reflects the specific steps of the test implementation, and the result data field records the final result of the test. Discrete logarithm calculation is performed on the patient identification field set to generate ring signature key parameters. Ring signature is an encryption method based on public key cryptography that allows multiple participants to jointly generate a signature without being able to determine which participant generated the signature, thereby ensuring the anonymity of the patient's identity. The group signature member parameter setting and key generation calculation are performed on the ring signature key parameters to obtain a ring signature encryption parameter set. Ring signature calculation is performed on the patient identification field set and the ring signature encryption parameter set to obtain a patient anonymized identifier. Through the ring signature process, the patient's true identity is hidden in a set of anonymized identifiers, ensuring that the patient's identity cannot be reversely inferred from the data itself during storage and use. After data encryption processing, other data fields are format standardized. It includes unified formatting of clinical indicator fields, test process fields and result data fields. The standardization process includes steps such as unification of data units, standardization of data ranges and consistency of formats, so as to ensure that the data can be more consistent and efficient in subsequent processing. Standardized clinical data can reduce inconsistencies in the data processing process and ensure that data exchange and storage between different data centers are not affected by format differences. The association calculation between the patient's anonymous identifier and the standard format clinical data is performed. Through this calculation step, the patient's anonymous identifier is matched with its related clinical data, and identity association mapping data is generated. In order to improve the security of the system, the adaptive selected message attack test calculation is performed next. The generated identity association mapping data is security verified to check the robustness of the data when encountering different types of attacks. Through this process, potential attack risks are effectively prevented to ensure that the generated data can maintain its integrity and privacy protection when encountering malicious attacks. The standard format clinical data is integrity checked and data quality evaluated according to the signature security verification data to verify whether the data is tampered with or lost during the encryption and standardization process, and whether the data quality meets the predetermined standards, and finally clinical data that meets the standardization requirements is obtained.
[0026] Step S2, performing a two-level random storage node configuration on the standardized clinical data, and calculating the optimal storage node configuration scheme through binary decision variable space mapping and Benders decomposition algorithm;
[0027] Specifically, the standardized clinical data were analyzed for data scale and access frequency statistics to obtain the data capacity requirement matrix and access feature vector. The data capacity requirement matrix describes the storage requirements of each data block, while the access feature vector reflects the access frequency of data in different time periods and nodes. Based on these data, the demand and access load of storage nodes were evaluated. The data capacity requirement matrix was input into a two-level random system for space-time-event dimension modeling to obtain a candidate configuration set of storage nodes. Each node in the candidate configuration set is a potential storage node, which provides different storage and access capabilities in different space, time and event dimensions. Binary variable assignment was performed on each storage node in the candidate configuration set to obtain a node selection decision matrix. The assignment of binary decision variables means that each node is either selected as a storage node or not. The core of this process is to determine the selection status of each node through mathematical modeling. By constructing a node selection decision matrix, the selection status of all storage nodes and the resource conditions they need to meet are quantified as decision variables, providing input for the subsequent optimization algorithm. The node selection decision matrix is processed by the K-means clustering algorithm. The K-means clustering algorithm divides the data scenarios of storage nodes according to the access feature vectors, groups similar data access patterns, and helps optimize the configuration of storage nodes. Through data scenario division, the role of different storage nodes in different access scenarios is clarified to ensure the efficiency of the storage system when processing different types of data. Based on the grouping of storage nodes, the hardware parameter constraints and network bandwidth limitations are calculated, and the resources of the storage nodes are reasonably constrained to ensure that the hardware capabilities and network bandwidth of each node can support the storage and access tasks it undertakes. The node resource constraints are input into the mixed integer programming model to construct the objective function and form a storage cost optimization model. The goal of the optimization model is to minimize the storage cost while satisfying all constraints, including data storage requirements, access requirements, hardware capabilities, and network bandwidth. In order to solve this optimization problem, the Benders decomposition algorithm is used. The Benders decomposition algorithm can effectively reduce the complexity of calculations and improve the efficiency of solving by decomposing complex mixed integer programming problems into main problems and sub-problems. Through the Benders decomposition algorithm, the initial storage node configuration plan is obtained, which provides a relatively optimal storage node configuration under the current constraints. The initial storage node configuration plan is input into the hot start nested solver for iterative optimization. The hot start nested solver adopts an inner loop and outer loop solution strategy, where the inner loop optimizes the selection of storage nodes by solving mixed integer subproblems, while the outer loop optimizes the system through security assessment operations. Through the iterative optimization process, the superiority of storage node configuration is gradually improved in multiple loops, and finally the optimal storage node configuration solution is obtained.
[0028] The node resource constraints are input into the mixed integer programming model, and a storage cost optimization model is constructed to minimize the system's storage cost, communication cost, and maintenance cost. The node resource constraints are linearized and matrix decomposed. Linearization can convert complex nonlinear constraints into linear form, which is convenient for subsequent mathematical modeling and optimization, while matrix decomposition helps to convert resource constraints into matrix form, which is convenient for operation in the optimization algorithm. Through this process, the node storage capacity constraint matrix and the network bandwidth constraint matrix are obtained, which respectively reflect the usage constraints of the storage capacity and network bandwidth of each node, and clarify the resource allocation amount that each node should bear in the storage task. The node storage capacity constraint matrix and the network bandwidth constraint matrix are linearly combined and calculated, and the mixed integer programming objective function containing these cost items is constructed by combining the storage cost, communication cost, and maintenance cost. Through the construction of the objective function, all the expenses of the storage system are fully considered, and a clear goal is provided for solving the optimization model. The storage cost item reflects the cost required for data storage, the communication cost item includes the cost of data transmission between nodes, and the maintenance cost item refers to the cost required for system maintenance. These cost items are integrated into an objective function to provide a comprehensive optimization basis for storage node configuration. Variable separation and matrix block operation are performed on the storage cost optimization model. Separating the storage node selection variables from the resource allocation variables facilitates the decomposition and solution of the optimization problem. By separating the variables, the storage node selection problem and the resource allocation problem are processed separately, simplifying the complexity of the optimization problem and improving the solution efficiency. The matrix block operation is to divide the variable matrix in the objective function into multiple sub-matrices, so that the problem can be more efficiently decomposed into multiple sub-problems. The branch and bound algorithm is used to solve the integer programming of the main problem variable matrix. The branch and bound algorithm is an optimization algorithm for solving integer programming problems. It systematically explores the feasible solution space by constructing a branch tree, and gradually eliminates solutions that do not meet the constraints to obtain the optimal solution. In this process, the branch and bound algorithm generates an initial storage node configuration vector, which represents the initial storage node configuration plan. Substitute the initial storage node configuration vector into the sub-problem variable matrix, construct the Benders sub-problem through the linear programming dual theory, and obtain the resource allocation dual solution. The Benders sub-problem is a sub-problem that is optimized and solved by decomposing the constraints of the main problem, which can effectively handle large-scale optimization problems. The resource allocation dual solution is obtained by solving the sub-problems, providing an optimal solution for resource allocation and allocating resources to each node in the entire storage system. Constraint violation calculation and slack variable analysis are performed on the resource allocation dual solution to help determine whether the current solution meets all constraints and check whether there are any violations of constraints. Through calculation, feasibility test results and optimality test results are obtained. The former determines whether the solution meets the constraints, and the latter evaluates the optimality of the solution.On this basis, Benders cut constraints are generated and added to the main problem variable matrix for iterative optimization. Benders cut constraints can limit the feasible solution space, thereby improving the accuracy and efficiency of the solution. After introducing these cut constraints into the main problem, the solution to the main problem is gradually optimized through multiple iterative calculations to obtain a storage node configuration solution that is closer to the optimal. Through the above steps and optimization process, the optimization result of the main problem is obtained, and based on this, the storage node configuration and resource allocation calculation are generated to obtain the initial storage node configuration solution.
[0029] Step S3: constructing an LPPMM-DA data aggregation model based on the optimal storage node configuration solution, and sharding the patient test data to obtain multiple target data shards;
[0030] Specifically, the node capacity analysis is performed on the optimal storage node configuration scheme to determine the storage capacity of each storage node under different conditions. The node capacity analysis includes evaluating the hardware resources of the storage node and performing hierarchical calculations according to the preset capacity intervals to obtain a node capacity level matrix, which reflects the storage capacity of each node and its adaptation in different storage tasks. Multi-dimensional feature extraction is performed on the node capacity level matrix to analyze the load and usage of the storage node from multiple dimensions (such as test type, time dimension, and patient group). The test type affects the storage requirements of the data. For example, some tests generate a large amount of image or video data, while other tests generate a large amount of text data. The time dimension reflects the timeliness requirements of data storage and access, while the patient group affects the storage distribution of the data because the test data of different patients have different access frequencies. By extracting the features of these dimensions, the LPPMM-DA data aggregation model is constructed, which can guide subsequent data aggregation and storage operations based on the characteristics of the test type, time dimension, and patient group. According to the LPPMM-DA data aggregation model, the patient test data is classified. Different types of test data are grouped so that similar data or data with similar access frequencies can be stored centrally, improving the efficiency of storage and access, and obtaining a classified data set. Each data group in the set represents a specific category of test data. The classified data set is divided into fixed-size data blocks. A larger data set is split into multiple smaller data blocks, each of which contains a certain amount of related data for subsequent distribution and storage. Each data block calculates its hash value, which is used as a unique identifier to ensure the uniqueness and integrity of the data block in the storage system, and obtains the initial data shard set. Load balancing calculation is performed on the initial data shard set according to the node capacity level matrix. The initial data shard set is reasonably distributed according to the node capacity level matrix to ensure load balancing of each storage node to avoid the situation where some nodes are overloaded while other nodes are idle, and a data block distribution plan is obtained, which can ensure the reasonable distribution of data blocks among storage nodes. After the data block distribution plan is completed, it is input into the sharding strategy generator to calculate the number of copies. By increasing the number of copies of the data block, the data recovery capability can be guaranteed when a storage node fails. Determine the geographical distribution location of the copies. Reasonable copy distribution can reduce the delay of data access and improve the performance of the storage system. The access rights are set and data integrity is verified for the data block replica distribution strategy to provide security for the entire storage system and prevent unauthorized access and data tampering. According to the security access control rules, the data blocks of the initial data shard set are integrated and the distribution is optimized. Data block integration refers to the reasonable integration and optimization of data blocks according to storage and access requirements to improve the access efficiency and data redundancy of the storage system.Distribution optimization refers to further optimizing the data sharding distribution plan based on node resources, access frequency, and security requirements to ensure that the system can ensure data security while meeting performance requirements.
[0031] Step S4: Perform dynamic operation envelope analysis and alliance graph game calculation on multiple target data shards to obtain a storage resource scheduling plan;
[0032] Specifically, the load of each storage node is monitored in real time to obtain the real-time load matrix of the node, which reflects the current load status of each node, including the usage of storage capacity, data access frequency and other information. By monitoring these indicators, the storage resource requirements of each node are dynamically evaluated. The real-time load matrix is input into the dynamic operation envelope analysis model, and the resource allocation constraints are obtained through the resource allocation calculation of the model. The alliance graph model is constructed based on the resource allocation constraints. The alliance graph model is used to describe the collaborative relationship of storage resources between multiple data centers. In a distributed storage system, each data center will share storage resources, so it is necessary to model the collaboration between them. By constructing an alliance member relationship graph, the storage resources of each data center and the way they cooperate with each other are displayed. In this process, the alliance graph model not only considers the resource storage capacity of each node, but also involves factors such as the communication capacity and data synchronization requirements between nodes. These relationship graphs help the system understand and optimize the structure of resource collaboration. The stability analysis of the alliance member relationship graph is carried out to ensure that the system can achieve long-term stable resource allocation under multi-node collaboration. When performing stability analysis, the Nash equilibrium theory is used to calculate the game equilibrium solution. Nash equilibrium is an important concept in game theory, which describes an equilibrium state reached between game participants, in which no participant can obtain a better result by unilaterally changing the strategy. In the scenario of storage resource scheduling, the game equilibrium solution helps determine the best strategy for each data center in the storage resource allocation, ensuring that each data center can make the best decision based on the existing resources and constraints, and improving the resource utilization efficiency of the overall system. The game equilibrium solution obtained by Nash equilibrium calculation is then input into the resource optimizer for storage efficiency calculation. The storage efficiency is measured by analyzing the storage performance of each node under the allocated resources, including data storage speed, access latency, and fault recovery capability, and the resource allocation efficiency index is obtained. The resource allocation efficiency index is judged by threshold to determine whether the current resource allocation has reached the predetermined efficiency standard. If the resource allocation efficiency index exceeds the set threshold, it means that the current storage resources have been used more effectively and the existing allocation plan is maintained; if it is lower than the threshold, resource reallocation is required. Based on the threshold judgment result, a resource reallocation strategy is generated to improve the overall storage efficiency of the system by adjusting the resource allocation of each node. The generation of resource reallocation strategies involves re-evaluating the load and storage requirements of each node to ensure that the resources of each node can be allocated more reasonably. The profit distribution calculation of the resource reallocation strategy ensures that after the resource reallocation, each node can obtain corresponding benefits according to its contribution. The contribution of each node in the resource reallocation process is analyzed, including providing storage space, processing data requests, participating in data synchronization, etc. The profit distribution results help evaluate the performance of each node in allocating resources and provide economic incentives for cooperation between nodes.According to the revenue distribution results of each node, fairness verification is performed to ensure that all nodes are not treated unfairly during the resource reallocation process. Based on the fairness verification results, the final storage resource scheduling plan is obtained, which can meet the storage needs while ensuring efficient resource utilization and fairness of each node, and optimizing the performance of the entire storage system.
[0033] Step S5: Perform distributed data block storage and access authentication on multiple target data shards according to the storage resource scheduling scheme and the anonymous identifier to generate data block storage distribution information.
[0034] Specifically, based on the storage resource scheduling scheme, key parameters such as storage space allocation, network bandwidth limitation, and data read and write rate are analyzed and calculated. Through a comprehensive evaluation of these resources, a resource scheduling parameter matrix is obtained, which includes the resource configuration of each storage node, the available amount of network bandwidth, and the read and write performance indicators of each node. Storage location matching calculation is performed on the resource scheduling parameter matrix and multiple target data shards. Each target data shard is mapped to the most suitable storage node to ensure that the data can be stored efficiently and securely in a distributed environment. Through storage location matching calculation, each target data shard is written to the corresponding storage node to form a preliminary storage location mapping table. The mapping table reflects the storage location of each data shard and helps the system understand the storage status of each shard in the distributed system. Authentication and permission allocation are performed based on anonymous identifiers. Anonymous identifiers are used to protect the privacy of patients and ensure that only authorized users can access specific clinical trial data. Each anonymous identifier is authenticated and corresponding permissions are allocated based on the verification results. Permission allocation is determined based on the data access requirements to ensure that only legitimate users can access the relevant parts of the data according to their permissions. Through this process, a set of data access control rules is obtained. The initial storage location mapping table is bound and associated with the data access control rules to form an access authorization policy. The data access authorization policy can ensure that during the data access process, users can only access the target data shards within their authority, and cannot access the unauthorized shards. The data block access authorization policy is integrity tested and tamper-proof verified to ensure that the data is not modified or tampered with without authorization during storage, transmission and access. By checking the integrity of the data block access authorization policy, potential security vulnerabilities can be discovered in a timely manner, and measures can be taken to repair them. At the same time, the tamper-proof verification mechanism helps to improve the security of the system and prevent data from being maliciously tampered with, thereby ensuring the accuracy and consistency of the data. After completing the security verification, a threshold analysis is performed based on the test results, and the data block storage location is dynamically adjusted based on the analysis results. The dynamic adjustment of the data block storage location can be flexibly adjusted according to the real-time load situation, network status and storage requirements, thereby improving the system's adaptability and resource utilization efficiency. After the security verification and threshold analysis process, the target storage distribution plan is obtained. The data block storage status analysis is performed based on the target storage distribution plan. The effectiveness of the current storage plan is evaluated, and the storage location, access rights and performance indicators of the data block meet the expected requirements. By analyzing the data block storage status, we can obtain storage distribution information, including the storage location of the data block, access rights, and corresponding performance indicators (such as storage capacity, bandwidth, and read and write rates).
[0035] In the embodiment of the present invention, the security of patient privacy data is effectively protected through ring signature encryption processing and ECDLP hardness assumption, while ensuring the unforgeability and tamper-proofness of the data; the two-level random storage node configuration and Benders decomposition algorithm are adopted to significantly optimize the resource allocation efficiency of the storage nodes and reduce the storage cost and communication overhead of the system; the sharding processing mechanism based on the LPPMM-DA data aggregation model effectively improves the storage efficiency and access performance of the data, and realizes the balanced distribution of clinical trial data; through dynamic operation envelope analysis and alliance graph game calculation, the fair allocation of storage resources is guaranteed, and the collaboration efficiency between multiple data centers is improved; combined with the access authentication mechanism of the anonymous identifier, a complete data access control system is constructed to ensure the safe and reliable storage of clinical trial data; the present invention reduces the computational complexity and storage overhead of the system, and improves the scalability and operation stability of the distributed storage system.
[0036] In a specific embodiment, the process of executing step S1 may specifically include the following steps:
[0037] Parsing the data fields of the patient test data from multiple data centers to obtain a patient identification field set, a clinical indicator field set, a test process field set, and a result data field set;
[0038] Perform discrete logarithm calculation on the patient identification field set to obtain the ring signature key parameters, and perform group signature member parameter setting and key generation calculation on the ring signature key parameters to obtain the ring signature encryption parameter set;
[0039] Performing ring signature calculation on the patient identification field set and the ring signature encryption parameter set to obtain the patient anonymized identifier;
[0040] Perform data format standardization conversion on the clinical indicator field set, the test process field set and the result data field set to obtain clinical data in a standard format;
[0041] Perform association calculation on the patient's anonymous identifier and the standard format clinical data to obtain identity association mapping data, and perform adaptive selected message attack test calculation on the identity association mapping data to obtain signature security verification data;
[0042] Based on the signature security verification data, the integrity check and data quality assessment of the standard format clinical data are performed to obtain standardized clinical data.
[0043] Specifically, the data fields of the patient test data from multiple data centers are parsed to extract a set of patient identification fields, a set of clinical indicator fields, a set of test process fields, and a set of result data fields. Patient test data contains a mixed structure of multiple data types. For example, the patient identification field includes the patient's name, ID number, or other identifier; the clinical indicator field includes clinical measurements such as blood pressure, blood sugar level, and body temperature; the test process field involves information such as different stages of the test, medication regimens, and drug dosages; and the result data field refers to the final test results, including disease response, efficacy evaluation, etc. These different categories of data fields are extracted according to the structure of the data. Discrete logarithm calculation is performed on the set of patient identification fields. Ring signature key parameters are generated by mathematical methods to ensure the anonymity of the patient's identity. Discrete logarithm calculation is a key technology in the ring signature encryption algorithm. Its purpose is to generate a secure key so that the data can be verified to be from a specific patient without revealing the patient's identity. The calculation of discrete logarithm is performed using modular exponentiation, which is based on the following formula:
[0044] ;
[0045] in, is a cardinality, is a large prime number, is the private discrete logarithm, is the public key. In the ring signature, these key parameters are used to generate a group signature member parameter set to ensure that the identity of the signer remains anonymous while ensuring the validity of the signature. The setting of group signature member parameters includes determining a public group key and assigning a unique signature key to each member, which is used in the subsequent ring signature calculation process. After calculation, a ring signature encryption parameter set is obtained, which contains the key of each group member and the public key information required to verify the ring signature. The ring signature is calculated on the patient identification field set and the ring signature encryption parameter set to generate an anonymous identifier for the patient. Ring signature is an encryption method that can prove that a certain data is generated by a member of the group without exposing the individual's identity. In the ring signature, the calculation process is performed through the ring signature algorithm, and the formula is as follows:
[0046] ;
[0047] in, It's news. is the signature element of the ring signature, is the size of the group. Through this algorithm, the patient's identifier generates an anonymous identifier without revealing his or her true identity, ensuring that his or her privacy is protected. The anonymous identifier is combined with other clinical data of the patient, so that subsequent data processing can authenticate the identity while protecting the patient's privacy. At the same time, the clinical indicator field set, the trial process field set and the result data field set in the clinical trial data are converted to a standardized data format. The standardized conversion process includes operations such as unit conversion, date format unification and field name standardization, ensuring that data from different sources can be compared and analyzed on the same platform, obtaining clinical data in a standard format, and ensuring data consistency and compatibility. The patient's anonymous identifier is associated with the standard format clinical data to establish a mapping relationship between the patient data and its anonymous identifier. The association calculation is achieved by matching the identifier field with the relevant fields in the clinical data (such as medical record number, trial number, etc.). Through this process, each data shard is associated with a specific patient and his or her anonymous identifier. The identity association mapping data is tested and calculated using an adaptive selected message attack to ensure the security of the mapping relationship. Adaptive selected message attack testing is a technology that evaluates the security of encryption systems by simulating different attack scenarios. In this test, the attacker destroys the security of the system by manipulating the input data, and the adaptive selected message attack test effectively detects and prevents such attacks. After completing the security test, the integrity check and data quality assessment of the clinical data in the standard format are performed based on the test results. Data integrity verification is implemented through a checksum algorithm to ensure that the data has not been tampered with during storage and transmission. Common verification methods include hash algorithms (such as SHA-256) and digital signatures. Data quality assessment is to ensure that the data meets the predetermined quality standards by evaluating the accuracy, completeness, consistency and other aspects of the data. After integrity verification and quality assessment, standardized clinical data is finally obtained.
[0048] In a specific embodiment, the process of executing step S2 may specifically include the following steps:
[0049] Perform data scale analysis and access frequency statistics on standardized clinical data to obtain data capacity requirement matrix and access feature vector;
[0050] The data capacity demand matrix is input into a two-level random system for space-time-event dimension modeling to obtain a candidate configuration set of storage nodes;
[0051] Perform binary variable assignment processing on each node in the storage node candidate configuration set to obtain a node selection decision matrix;
[0052] The K-means clustering algorithm is used to divide the node selection decision matrix and access feature vector into data scenarios to obtain the storage node grouping results. The hardware parameter constraints and network bandwidth restrictions are calculated for the storage node grouping results to obtain the node resource constraints.
[0053] The node resource constraints are input into the mixed integer programming model to construct the objective function, and the storage cost optimization model is obtained. The storage cost optimization model is decomposed and calculated by the Benders main problem through the Benders decomposition algorithm to obtain the initial storage node configuration plan.
[0054] The initial storage node configuration plan is input into the hot start nested solver for iterative optimization. The optimal storage node configuration plan is obtained through inner loop mixed integer subproblem solving and outer loop safety evaluation calculation.
[0055] Specifically, we conduct data scale analysis and access frequency statistics on standardized clinical data, and evaluate the access requirements of each data element by counting its access frequency. The core of data scale analysis is to measure the demand for storage space, while access frequency statistics help identify the access popularity and access patterns of different data. By analyzing the data capacity requirement matrix and access feature vector, we establish an accurate model to predict the optimization requirements for data storage and access. Data Capacity Requirement Matrix is a multidimensional matrix that represents the storage requirements of different storage nodes for each data shard. For example, each element in the matrix Represents data shards On the storage node Capacity requirements on . Accessing feature vectors It represents the access frequency or popularity of each data shard. The elements in the vector Indicates data sharding The frequency of access. By statistically analyzing these data, we can obtain the data capacity requirement matrix and access feature vector. Input into a two-level random system for space-time-event dimension modeling to obtain a set of candidate configurations for storage nodes. The storage system configuration problem is transformed into a multi-dimensional optimization problem, taking into account the spatial distribution of data, temporal changes, and the regularity of event occurrence. In the spatial dimension, nodes are distributed in different data centers; in the temporal dimension, the frequency of data access varies over time; and the event dimension represents the change in storage demand under specific events (such as changes in trial phases, patient data updates, etc.). Through comprehensive modeling of these dimensions, a set of candidate configurations for storage nodes is obtained. , each element in the set represents a potential storage node configuration. Binary variable assignment is performed on each node in the storage node candidate configuration set to obtain the node selection decision matrix , where each element Is a binary variable representing the storage node Whether to be selected to store data shards For example, if the storage node Selected to store data shards ,but ,otherwise This matrix is used to represent the distribution of each data shard on different storage nodes. The K-means clustering algorithm is used to divide the data scenario into node selection decision matrix and access feature vector, and divide the data shards with similar storage requirements and access patterns into the same group of storage nodes to improve storage efficiency and access performance. The goal of the K-means algorithm is to minimize the sum of the distances within a cluster. Set the cluster center to , the data points in each cluster It will be assigned to the cluster center that is closest to it, and the distance is calculated according to the formula:
[0056] ;
[0057] in is the access characteristic of data sharding, is the cluster center, is the Euclidean distance. After K-means clustering, the storage node grouping results are grouped according to storage requirements and access frequency to obtain an optimized storage node allocation plan. The hardware parameter constraints and network bandwidth limitations are calculated for the storage node grouping results to ensure that each storage node can meet the data storage and access requirements in terms of hardware resources and bandwidth. Hardware parameter constraints include the computing power, storage capacity and processing speed of the storage node, while network bandwidth limitations involve the data transmission rate between storage nodes. By calculating these hardware parameters and bandwidth limitations, the node resource constraints are obtained. , which includes the resource allocation upper limit of each storage node and the bandwidth constraint of data transmission. The input is put into the mixed integer programming model to construct the objective function, and the storage cost optimization model is obtained. The goal of this model is to minimize the storage and access costs by reasonably allocating storage nodes and network resources. The objective function of the storage cost optimization model is expressed as:
[0058] ;
[0059] in, Is a storage node Storage data sharding The cost, is the node selection decision variable, is the data transmission cost, It is data sharding The access frequency of the large-scale optimization problem is decomposed into a main problem and sub-problems through the Benders decomposition algorithm. In the decomposition of the Benders main problem, the main problem is responsible for optimizing the selection of storage nodes and resource allocation, while the sub-problem is responsible for optimizing the allocation of network bandwidth and data transmission. The specific steps of the Benders decomposition algorithm include solving the main problem, obtaining the initial storage node configuration scheme through integer programming, and then inputting the scheme into the sub-problem for solving to obtain the dual solution of resource allocation. The linear programming method is used to solve the sub-problem, and the optimal resource allocation strategy is calculated by constructing the dual problem. When the solution of the sub-problem is fed back to the main problem, the main problem will update the storage node configuration until the convergence condition is reached. The initial storage node configuration scheme is input into the hot start nested solver for iterative optimization. The hot start technology accelerates the solution process by utilizing the state of the initial solution to avoid solving from scratch. The nested solver adopts an inner and outer loop method, in which the inner loop solves the sub-problem through mixed integer programming, and the outer loop performs security assessment and system performance optimization. In each round of iteration, the solver adjusts the configuration of storage nodes by evaluating the storage efficiency, access latency, and cost of the current solution to continuously approach the optimal solution. After multiple rounds of iteration, the optimal storage node configuration solution is finally obtained.
[0060] In a specific embodiment, the execution step inputs the node resource constraint condition into the mixed integer programming model to construct the objective function, obtains the storage cost optimization model, and performs Benders main problem decomposition calculation on the storage cost optimization model through the Benders decomposition algorithm to obtain the initial storage node configuration solution. The process may specifically include the following steps:
[0061] Linearize and decompose the node resource constraints to obtain the node storage capacity constraint matrix and network bandwidth constraint matrix.
[0062] The linear combination calculation of the node storage capacity constraint matrix and the network bandwidth constraint matrix is performed to construct a mixed integer programming objective function including storage cost items, communication cost items and maintenance cost items, and a storage cost optimization model is obtained.
[0063] Perform variable separation and matrix block operations on the storage cost optimization model, separate the storage node selection variables from the resource allocation variables, and obtain the main problem variable matrix and the sub-problem variable matrix;
[0064] The branch-and-bound algorithm is used to solve the main problem variable matrix through integer programming to obtain the initial configuration vector of the storage node, and the initial configuration vector of the storage node is substituted into the sub-problem variable matrix. The Benders sub-problem is constructed through the dual theory of linear programming to obtain the dual solution of resource allocation.
[0065] Calculate the constraint violation degree and analyze the slack variables of the dual solution of resource allocation to obtain the feasibility test results and optimality test results;
[0066] Generate Benders cutting plane constraints based on feasibility test results and optimality test results, add Benders cutting plane constraints to the main problem variable matrix for iterative optimization, and obtain the optimization result of the main problem;
[0067] Perform node configuration generation and resource allocation calculation on the optimization results of the main problem to obtain the initial storage node configuration plan.
[0068] Specifically, the node resource constraints are linearized and matrix decomposed to provide clear and structured data support for the subsequent optimization model. The node resource constraints include storage capacity and network bandwidth constraints, and these constraints need to be converted into mathematical models for easy solution. In this process, the node storage capacity constraint matrix is constructed separately. and the network bandwidth constraint matrix , in order to take storage capacity and bandwidth constraints into account. Node storage capacity constraint matrix Represents the relationship between the storage capacity of each node and the required storage data, where the matrix elements Indicates data sharding On the storage node The storage capacity required on the storage node. The storage capacity of each storage node is limited. , and its capacity constraint is expressed as:
[0069] ;
[0070] in, Is a binary decision variable, indicating whether to shard the data Stored on the node superior, It is data sharding The size of Is a storage node storage capacity, is the number of nodes, is the number of data shards. Similarly, the network bandwidth constraint matrix Describes the bandwidth limit between each storage node. Matrix elements Indicates data sharding From the storage node The bandwidth requirement for data transmission to other nodes. The bandwidth constraint is expressed as:
[0071] ;
[0072] in, Indicates data sharding The bandwidth requirement is limited. By calculating the linear combination of these two constraint matrices, combined with storage cost, communication cost and maintenance cost, a mixed integer programming objective function containing these cost items is constructed. The purpose of this objective function is to optimize the overall cost of the storage system. The specific form is:
[0073] ;
[0074] in, Is a storage node Storage data sharding The storage cost, It is data sharding Slave Node The communication cost of transmitting to other nodes, Is a node maintenance costs, is a binary variable indicating whether the node is enabled. is the storage allocation decision variable, indicating data sharding Is it stored in the node In the optimization problem, storage cost is the main optimization target, while communication cost and maintenance cost are additional considerations. By weighted combination of these cost items, a comprehensive storage cost optimization model is obtained. The goal of the optimization model is to minimize the total cost, including both storage cost and the cost generated by data transmission and node maintenance. In order to simplify the problem and improve the solution efficiency, the model is subjected to variable separation and matrix block processing. Variable separation is to separate the storage node selection variables and resource allocation variables Separation makes the solution process of the main problem and sub-problems more efficient. The variable matrix of the main problem Contains storage node selection decisions , and the variable matrix of the subproblem is Contains resource allocation decisions By dividing the problem into a main problem and sub-problems, the branch and bound method and Benders decomposition method are used to solve the problem step by step. In the main problem, the branch and bound method is used to solve the integer programming to find a suitable storage node configuration vector. The configuration vector Contains the allocation of each data shard on the storage node. The branch and bound method systematically divides the search space and gradually approaches the optimal solution. It improves the efficiency of the solution by searching between the branches and bounds of the nodes. Input to the subproblem variable matrix In , a Benders subproblem is constructed. The purpose of this subproblem is to determine whether the allocation of resources satisfies the constraints. The subproblem is a linear programming problem, and the duality theory is used to obtain the optimal dual solution for resource allocation. Through the duality of linear programming, the problem is transformed into a dual problem for solving resource allocation, and whether all resource constraints are met is determined based on the dual solution. When solving the subproblem, the constraint violation degree and slack variables of resource allocation are calculated to obtain feasibility test results and optimality test results. The constraint violation degree is a measure of whether the constraints are violated, and the slack variables indicate the distance between the current solution and the optimal solution. This information helps evaluate the feasibility of the current solution and provides a basis for generating new Benders cut constraints. Based on the feasibility test results and the optimality test results, a new Benders cut constraint is generated. The Benders cut constraint is obtained by decomposition calculation based on the original optimization problem, and is used to improve the solution of the main problem. Add the Benders cut constraint to the main problem variable matrix After that, the solution of the main problem is gradually improved through the iterative optimization process to obtain the optimization result of the main problem. The optimization result of the main problem includes the best configuration scheme of each storage node and the corresponding data shard allocation. Based on the optimization result of the main problem, node configuration generation and resource allocation calculation are performed to obtain the initial storage node configuration scheme. This scheme gives the best allocation of data storage on each node, taking into account factors such as storage capacity, bandwidth limitations and cost. Specifically, the selection of storage nodes and the allocation of data shards are expressed in the following way:
[0075] ;
[0076] in, Indicates that under the optimal configuration, data sharding Stored in the node decision-making, Representation Node Whether it is selected to store data. By solving these decision variables, the optimal storage node configuration solution is achieved, thereby reducing costs and improving the efficiency of storage resource utilization.
[0077] In a specific embodiment, the process of executing step S3 may specifically include the following steps:
[0078] Perform node capacity analysis on the optimal storage node configuration solution, and perform graded calculations according to preset capacity intervals to obtain a node capacity grade matrix;
[0079] Perform multi-dimensional feature extraction on the node capacity level matrix and build an LPPMM-DA data aggregation model based on trial type, time dimension and patient group;
[0080] According to the LPPMM-DA data aggregation model, the patient test data is classified to obtain a classified data set;
[0081] Divide the classified data set into fixed-size data blocks, and calculate the hash value of each data block as a unique identifier to obtain the initial data shard set;
[0082] Perform load balancing calculation on the initial data shard set according to the node capacity level matrix to obtain the data block distribution plan, input the data block distribution plan into the shard strategy generator to calculate the number of replicas, and determine the geographical distribution location of each replica to obtain the data block replica distribution strategy;
[0083] The access permission is set and the data integrity is verified for the data block replica distribution strategy to obtain the security access control rules, and the data blocks of the initial data shard set are integrated and the distribution is optimized according to the security access control rules to obtain multiple target data shards.
[0084] Specifically, the optimal storage node configuration solution is analyzed for node capacity. The capacity of the storage node is divided into intervals to obtain a node capacity level matrix, so that reasonable resource allocation can be performed based on the storage capacity of the node. is a two-dimensional matrix, each element of the matrix Represents a storage node Is it a capacity level? The capacity of each node According to the preset capacity interval Divide to obtain nodes of different levels. For example, if the node capacity Falling in the range In the will be assigned to a capacity level This process can help the system identify which nodes are suitable for storing large-scale data and which nodes are suitable for storing small-scale data, so as to perform more accurate load balancing calculations. The formation of the node capacity level matrix not only depends on the size of the storage capacity, but also needs to combine other factors to analyze the adaptability of the node. These factors include resource constraints such as the hardware performance, geographical location, and network bandwidth of the storage node. Multidimensional feature extraction refers to analyzing nodes from different perspectives, including information such as trial type, time dimension, and patient group. For example, in the medical field, different patient groups require different types of storage resources, and different trial types have different requirements for data storage and access. Through these feature extractions, a more detailed matching relationship is established for each node and data shard. These multidimensional features are considered by constructing a LPPMM-DA (Locality Preserving Pairwise Manifold Mapping with Dynamid Aggregation) data aggregation model. The LPPMM-DA model uses the locality preserving embedding (LPE) method to perform weighted aggregation of data based on the characteristics of trial type, time dimension, and patient group to ensure that similar data points are clustered in the same storage area. The construction of the model includes the standardization of the trial type, time dimension and patient group data, obtaining the feature vector of each data point and calculating the similarity between them. These data features are combined by data aggregation to obtain a classified data set. The construction process of the LPPMM-DA model is expressed as:
[0085] ;
[0086] in, is the feature matrix representing the final aggregation result, is the feature matrix of the trial type, is the feature matrix of the time dimension, is the feature matrix of the patient group, It is a multi-dimensional feature aggregation function. According to the LPPMM-DA model, the data set is classified into multiple categories to obtain a classified data set. ,in Indicates Each type of data has similar characteristics and is processed in the same storage node to improve storage and access efficiency. In order to reasonably distribute this data to the storage nodes, the classified data set is divided into fixed-size data blocks. Corresponding to a hash value As a unique identifier. The division of data blocks needs to ensure that the size of each data block meets the capacity requirements of the storage node. The following conditions need to be met:
[0087] ;
[0088] in Represents a storage node After the data block division is completed, the initial data shard set is obtained. According to the node capacity level matrix Perform load balancing calculations on the initial data shard set. Distribute data blocks to different storage nodes reasonably so that the load on each node is as balanced as possible, avoiding overloading of some nodes while other nodes are idle. The goal of load balancing calculations is to minimize the storage capacity utilization of each node. , that is, the proportion of storage capacity of each node used, satisfying the following constraints:
[0089] ;
[0090] in is a binary decision variable, indicating whether to Stored on the node The goal of load balancing calculation is to make As close to 1 as possible to achieve load balancing. Input the data block distribution plan into the sharding strategy generator to calculate the number of replicas. The location of each replica is determined by factors such as the reliability requirements and access frequency of the data block. The geographical distribution of the replicas needs to take into account the geographical distribution of the data storage nodes to improve the accessibility and reliability of the data. Calculated by the following formula:
[0091] ;
[0092] Where I represents the set of nodes, It is a function of the relationship between the number of copies, reliability, and access frequency. The access rights are set and the data integrity is verified for the data block copy distribution strategy to obtain the security access control rules. Access rights setting This is done by analyzing the privacy protection requirements and laws and regulations of patient trial data. Data integrity verification is to ensure that the stored data is not tampered with during storage and transmission. Hash functions and encryption algorithms are used to verify the data and obtain the data integrity test results. , which is the integrity and security verification result of the data block. According to the security access control rules, the initial data shard set is integrated and the distribution is optimized to obtain multiple target data shards. The goal of this process is to achieve the best distribution of data in the storage system, which can not only ensure the security and integrity of the data, but also improve the efficiency of data storage and access. The distribution optimization of data blocks is achieved through optimization algorithms, such as greedy algorithms, genetic algorithms, etc. After the above steps, multiple target data shards are obtained. It is an optimized data set. Each data shard is reasonably allocated to the storage node and optimized according to factors such as the node's capacity, geographical location, and access rights.
[0093] In a specific embodiment, the process of executing step S4 may specifically include the following steps:
[0094] Monitor the storage node loads of multiple target data shards to obtain a real-time node load matrix, and input the real-time node load matrix into the dynamic operation envelope analysis model to calculate resource allocation and obtain resource allocation constraints;
[0095] Based on resource allocation constraints, a coalition graph model is constructed to model the storage resource collaboration relationship among multiple data centers and obtain a coalition member relationship graph.
[0096] Perform stability analysis on the alliance member relationship graph, obtain the game equilibrium solution through Nash equilibrium calculation, and input the game equilibrium solution into the resource optimizer to calculate the storage efficiency and obtain the resource allocation efficiency index;
[0097] Perform threshold judgment on resource allocation efficiency indicators, obtain judgment results, and generate resource reallocation strategies based on the judgment results;
[0098] The profit distribution of the resource reallocation strategy is calculated to obtain the profit distribution results of each node. The fairness of the resource reallocation strategy is verified based on the profit distribution results of each node to obtain a storage resource scheduling plan.
[0099] Specifically, monitor the real-time load of storage nodes to timely evaluate and adjust the allocation of storage resources. Node real-time load matrix is a matrix representing the current load of each storage node, where Represents a storage node In time The load situation at the moment. The load situation is measured by multiple indicators such as CPU usage, memory usage, storage space usage ratio, etc. The construction of the load matrix is expressed by the following formula:
[0100] ;
[0101] in Is a node At the moment The actual resource usage on Is a node The total resource capacity of It means at time Time Node The load level of the node. By monitoring this data, the real-time load matrix of the node is obtained. The real-time load matrix of the node is input into the dynamic operation envelope analysis model to calculate the resource allocation. The dynamic operation envelope analysis model is a technology for resource optimization. It helps the system to make optimal resource allocation by evaluating the efficiency of multiple decision-making units (such as storage nodes in a data center) under certain constraints. In the dynamic operation envelope analysis model, the resource allocation constraints are determined by evaluating the relative efficiency of the nodes. The efficiency of each storage node is It is expressed by the following formula:
[0102] ;
[0103] in is the weight of each indicator, Is a node At the moment The load situation. Through the calculation of the dynamic operation envelope analysis model, the relative efficiency of each node is obtained to form the resource allocation constraint. Based on the resource allocation constraint, a coalition graph model is constructed to describe the storage resource collaboration relationship between multiple data centers. In this model, data centers form an alliance by sharing storage resources, and the members of the alliance work together to improve resource utilization efficiency. By node collection and edge set Each node Represents a data center, edge Representative data center and Data Center The construction of the graph depends on the resource sharing agreement and collaboration conditions between data centers. By taking the resource allocation constraints as the edge weights of the graph, a coalition graph representing the resource sharing intensity and collaboration efficiency is constructed. A stability analysis is performed on the alliance member relationship graph to ensure the robustness of the entire resource collaboration model. In the stability analysis, the Nash equilibrium concept of game theory is used to evaluate the collaborative behavior of each data center. The goal of each data center is to maximize its revenue, and in the game of resource sharing, all data centers will choose their own strategies based on the strategies of other data centers. Nash equilibrium refers to a game in which the strategy of each player (i.e., each data center) cannot obtain higher revenue by unilaterally changing its own strategy given the strategies of other players. Mathematically, the Nash equilibrium solution Obtained by solving the following game model:
[0104] ;
[0105] in It is a data center The utility function of It is a data center strategy, is the strategy of other data centers, is the resource constraint. Through Nash equilibrium calculation, we get the equilibrium solution of the game , which is the optimal strategy combination of all data centers in collaboration. The game equilibrium solution is input into the resource optimizer for storage efficiency calculation. The goal of the resource optimizer is to calculate the efficiency of storage resource usage under the current game equilibrium. The storage efficiency index calculated by the resource optimizer is Reflection Data Center The resource utilization efficiency under this game strategy is evaluated by calculating the output benefit per unit of resource. Storage efficiency index It is expressed as:
[0106]
[0107] in is the total resource output of data center i. A threshold is determined based on the storage efficiency index to determine whether resource allocation is reasonable. Set a predetermined efficiency threshold ,when When it is less than the threshold, it indicates that the resource allocation efficiency of data center i is low and resource reallocation is required. By judging the relationship between the storage efficiency index and the threshold, a resource reallocation strategy is generated to ensure that resources are reasonably allocated. For the generated resource reallocation strategy, a profit distribution calculation is performed. The purpose of profit distribution is to ensure that the profit distribution of each node is fair after resource reallocation. Profit distribution is calculated using Shapley value or other fair distribution algorithms. Shapley value To measure the node The fair share of contributions to the collaboration is calculated as:
[0108] ;
[0109] in, It's an alliance of income, It's an alliance Join Node The benefits after the resource redistribution are calculated. Based on the Shapley value of each node or other fair distribution results, the resource reallocation strategy is verified for fairness to ensure that the benefits distribution between nodes is fair and reasonable after the resource reallocation. By calculating the benefits distribution and verifying the fairness of the resource reallocation strategy, a storage resource scheduling plan is obtained.
[0110] In a specific embodiment, the process of executing step S5 may specifically include the following steps:
[0111] Based on the storage resource scheduling scheme, storage space allocation, network bandwidth limitation and data read and write rate are analyzed and calculated to obtain the resource scheduling parameter matrix;
[0112] Perform storage location matching calculation on the resource scheduling parameter matrix and multiple target data slices, write the target data slices into corresponding storage nodes, and obtain an initial storage location mapping table;
[0113] Authentication and permission allocation are performed through anonymous identifiers to obtain data access control rules, and the initial storage location mapping table and data access control rules are bound and associated to generate data block access authorization policies;
[0114] Perform integrity detection and anti-tampering verification on the data block access authorization policy to obtain security verification results, and perform threshold analysis and dynamic adjustment of data block storage locations on the security verification results to obtain the target storage distribution plan;
[0115] The data block storage status is analyzed based on the target storage distribution scheme to obtain the data block storage distribution information, which includes storage location, access rights and performance indicators.
[0116] Specifically, based on the storage resource scheduling scheme, the storage space allocation, network bandwidth limitation and data read and write rate are analyzed and calculated to obtain a resource scheduling parameter matrix. The storage space, bandwidth and data read and write rate of different storage nodes are reasonably scheduled to optimize the efficiency and performance of data storage. By analyzing the parameters in the resource scheduling scheme, a resource scheduling parameter matrix is obtained. The matrix represents the scheduling of each storage node on specific resources (such as storage space, network bandwidth, data read and write rate), where each element Represents a storage node Previous Scheduling parameters for the resource:
[0117] ;
[0118] in Is a storage node The resource scheduling function, It is storage space. is the network bandwidth, is the data read and write rate. By calculating and optimizing the resource scheduling parameters, an accurate basis is provided for the subsequent storage location matching calculation. Perform storage location matching calculations with multiple target data shards. Match the appropriate storage node according to the resource scheduling parameters. Determine the best storage location for each data shard by calculating the resource status of each storage node and the storage requirements of the target data shard. Design a storage location mapping function This function generates an initial storage location mapping table based on the resource availability of the storage node and the storage requirements of the data shard. The mapping table records each data shard The storage node location to which it is assigned ,in:
[0119] ;
[0120] in, Indicates data sharding Assigned to storage nodes The mapping relationship, Represents a storage node Through matching calculation, each target data shard is reasonably stored in the most suitable node, thereby improving storage efficiency and reducing resource waste. Anonymous identifiers are used to authenticate data and assign permissions to ensure security and privacy protection during data storage. It is a unique identifier generated by encryption technology, which is used to authenticate the stored data and ensure that only authorized users can access the data. By anonymizing the identifier, appropriate access rights are assigned to each data shard and data access control rules are generated. Data access control rules use a matrix To indicate that Indicates data sharding The access permission settings are defined as:
[0121] ;
[0122] in, Indicates data sharding Is the access permission open to users? . Ensure strict access control mechanism during data storage through identity authentication and permission allocation. Mapping table of initial storage location and data access control rules Bind and associate to generate data block access authorization policy. This policy is the result of associating the data storage location with the data access rights to form a complete authorization policy table ,in Record the storage location, access rights, and other related information of each data block. Data block access authorization policy table The construction formula is as follows:
[0123] ;
[0124] in, is the initial storage location mapping table, is the data access control rule, Indicates a merge operation. Through authorization policies, the security of data during storage is ensured, and which users access which data is strictly controlled. Integrity detection and anti-tampering verification are performed on the data block access authorization policy to ensure that data tampering will not occur during data storage, and to ensure data consistency and reliability. Integrity detection is achieved through methods such as hash value verification or digital signature. Generate a hash value for each data block , and compare it with the hash value stored in the database to ensure the integrity of the data. If the data is found to be tampered with, a warning will be issued in time through the anti-tampering mechanism. After the anti-tampering verification, the security verification result is obtained , which is calculated as:
[0125] ;
[0126] in, Is the data block access authorization policy The process of security verification. If the verification is successful, the result is "passed", otherwise it is "failed". Based on this result, threshold analysis is performed and the preset security threshold is used. Determine whether the data block has security risks. If the security verification result is lower than the threshold, dynamically adjust the data block storage location and reallocate it to a safer storage location. After completing the security verification and dynamic adjustment, the target storage distribution plan is obtained. The plan determines the final distribution location of the data storage and takes into account multiple factors such as storage location, access rights, and performance indicators. By analyzing the target storage distribution plan, the storage status information of the data block is obtained, including the data storage location, access rights of each data block, and the performance indicators of each data block (such as read and write speed, storage space utilization, etc.).
[0127] The above describes the distributed storage method of clinical trial data in the embodiment of the present invention. The following describes the distributed storage system of clinical trial data in the embodiment of the present invention. Figure 2 An embodiment of a distributed storage system for clinical trial data in an embodiment of the present invention includes:
[0128] An encryption module is used to perform ring signature encryption processing on patient test data in multiple data centers to obtain patient anonymized identifiers and standardized clinical data;
[0129] Configuration module, used to perform two-level random storage node configuration for standardized clinical data, and calculate the optimal storage node configuration scheme through binary decision variable space mapping and Benders decomposition algorithm;
[0130] A construction module is used to build an LPPMM-DA data aggregation model based on the optimal storage node configuration scheme, and to shard the patient test data to obtain multiple target data shards;
[0131] The computing module is used to perform dynamic operation envelope analysis and alliance graph game calculation on multiple target data shards to obtain a storage resource scheduling plan;
[0132] The generation module is used to perform distributed data block storage and access authentication on multiple target data shards according to the storage resource scheduling plan and the anonymous identifier, and generate data block storage distribution information.
[0133] Through the collaborative cooperation of the above-mentioned components, the security of patient privacy data is effectively protected through ring signature encryption processing and ECDLP hardness assumption, while ensuring the unforgeability and tamper-proofness of the data; the two-level random storage node configuration and Benders decomposition algorithm are adopted to significantly optimize the resource allocation efficiency of storage nodes and reduce the storage cost and communication overhead of the system; the sharding processing mechanism based on the LPPMM-DA data aggregation model effectively improves the storage efficiency and access performance of the data, and realizes the balanced distribution of clinical trial data; through dynamic operation envelope analysis and alliance graph game calculation, the fair allocation of storage resources is guaranteed, and the collaboration efficiency between multiple data centers is improved; combined with the access authentication mechanism of the anonymous identifier, a complete data access control system is constructed to ensure the safe and reliable storage of clinical trial data; the present invention reduces the computational complexity and storage overhead of the system, and improves the scalability and operation stability of the distributed storage system.
[0134] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media provided by the present invention and used in the embodiments may include non-volatile and / or volatile memory. Non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory may include random access memory (RAM) or external cache memory. As an illustration and not limitation, RAM is available in a variety of forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double-speed data rate SDRAM (SSRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM.
[0135] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the above-described systems, systems and units can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0136] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention is essentially or the part that contributes to the prior art or the whole or part of the technical solution can be embodied in the form of a software product. The computer software product is stored in a storage medium, including several instructions to enable a computer device (which can be a personal computer, server, or network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk and other media that can store program code.
[0137] As described above, the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit the same. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features thereof may be replaced by equivalents. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A distributed storage method for clinical trial data, characterized in that: The method comprises: Patient trial data from multiple data centers are encrypted using ring signatures to obtain patient anonymized identifiers and standardized clinical data; The standardized clinical data is subjected to a two-level random storage node configuration, and the optimal storage node configuration scheme is calculated by binary decision variable space mapping and Benders decomposition algorithm; specifically, the following steps are performed: data scale analysis and access frequency statistics are performed on the standardized clinical data to obtain a data capacity requirement matrix and an access feature vector; the data capacity requirement matrix is input into a two-level random system for space-time-event dimension modeling to obtain a storage node candidate configuration set; binary variable assignment processing is performed on each node in the storage node candidate configuration set to obtain a node selection decision matrix; the node selection decision matrix and the access feature vector are clustered by a K-means clustering algorithm. The data scenario is divided based on the feature vector to obtain the storage node grouping result, and the hardware parameter constraint and network bandwidth limitation calculation are performed on the storage node grouping result to obtain the node resource constraint condition; the node resource constraint condition is input into the mixed integer programming model to construct the objective function to obtain the storage cost optimization model, and the Benders main problem decomposition calculation is performed on the storage cost optimization model through the Benders decomposition algorithm to obtain the initial storage node configuration plan; the initial storage node configuration plan is input into the hot start nested solver for iterative optimization, and the optimal storage node configuration plan is obtained through the inner loop mixed integer subproblem solution and the outer loop safety assessment operation; Building an LPPMM-DA data aggregation model based on the optimal storage node configuration solution, and sharding the patient test data to obtain multiple target data shards; Performing dynamic operation envelope analysis and alliance graph game calculation on the multiple target data shards to obtain a storage resource scheduling plan; Distributed data block storage and access authentication are performed on the multiple target data shards according to the storage resource scheduling scheme and the anonymized identifier to generate data block storage distribution information.
2. The distributed storage method for clinical trial data according to claim 1, characterized in that: The ring signature encryption process is performed on the patient test data of multiple data centers to obtain the patient anonymized identifier and standardized clinical data, including: Parsing the data fields of patient test data from multiple data centers to obtain a patient identification field set, a clinical indicator field set, a test process field set, and a result data field set; Perform discrete logarithm calculation on the patient identification field set to obtain ring signature key parameters, and perform group signature member parameter setting and key generation calculation on the ring signature key parameters to obtain a ring signature encryption parameter set; Performing ring signature calculation on the patient identification field set and the ring signature encryption parameter set to obtain an anonymous patient identifier; Performing data format standardization conversion on the clinical indicator field set, the test process field set and the result data field set to obtain clinical data in a standard format; Performing association calculation on the patient anonymized identifier and the standard format clinical data to obtain identity association mapping data, and performing adaptive selected message attack test calculation on the identity association mapping data to obtain signature security verification data; According to the signature security verification data, the standard format clinical data is checked for integrity and data quality is evaluated to obtain standardized clinical data.
3. The distributed storage method for clinical trial data according to claim 1, characterized in that: The node resource constraint condition is input into the mixed integer programming model to construct the objective function, and a storage cost optimization model is obtained. The storage cost optimization model is decomposed and calculated by the Benders main problem through the Benders decomposition algorithm to obtain an initial storage node configuration scheme, including: Performing linearization and matrix decomposition operations on the node resource constraint conditions to obtain a node storage capacity constraint matrix and a network bandwidth constraint matrix; Performing linear combination calculation on the node storage capacity constraint matrix and the network bandwidth constraint matrix, constructing a mixed integer programming objective function including storage cost items, communication cost items and maintenance cost items, and obtaining a storage cost optimization model; Performing variable separation and matrix block operations on the storage cost optimization model, separating storage node selection variables from resource allocation variables, and obtaining a main problem variable matrix and a sub-problem variable matrix; Perform integer programming on the main problem variable matrix by using a branch and bound algorithm to obtain an initial configuration vector of a storage node, substitute the initial configuration vector of the storage node into the sub-problem variable matrix, construct a Benders sub-problem by using the dual theory of linear programming, and obtain a dual solution for resource allocation; Perform constraint violation calculation and slack variable analysis on the resource allocation dual solution to obtain feasibility test results and optimality test results; Generate a Benders cutting plane constraint according to the feasibility test result and the optimality test result, add the Benders cutting plane constraint to the main problem variable matrix for iterative optimization, and obtain an optimization result of the main problem; Node configuration generation and resource allocation calculation are performed on the optimization result of the main problem to obtain an initial storage node configuration plan.
4. The distributed storage method for clinical trial data according to claim 3, characterized in that: The LPPMM-DA data aggregation model is constructed based on the optimal storage node configuration scheme, and the patient test data is sliced to obtain multiple target data slices, including: Performing node capacity analysis on the optimal storage node configuration solution, and performing hierarchical calculation according to preset capacity intervals to obtain a node capacity grade matrix; Perform multi-dimensional feature extraction on the node capacity level matrix, and construct an LPPMM-DA data aggregation model based on trial type, time dimension and patient group; According to the LPPMM-DA data aggregation model, the patient test data is classified to obtain a classified data set; Dividing the classified data set into fixed-size data blocks, and calculating a hash value of each data block as a unique identifier to obtain an initial data shard set; Performing load balancing calculation on the initial data shard set according to the node capacity level matrix to obtain a data block distribution plan, inputting the data block distribution plan into a shard strategy generator to calculate the number of replicas, and determining the geographical distribution location of each replica to obtain a data block replica distribution strategy; Access rights are set and data integrity is verified for the data block replica distribution strategy to obtain security access control rules, and data block integration and distribution optimization are performed on the initial data shard set according to the security access control rules to obtain multiple target data shards.
5. The distributed storage method for clinical trial data according to claim 4, characterized in that: The dynamic operation envelope analysis and alliance graph game calculation are performed on the multiple target data shards to obtain a storage resource scheduling solution, including: Performing storage node load monitoring on the multiple target data shards to obtain a node real-time load matrix, and inputting the node real-time load matrix into a dynamic operation envelope analysis model to perform resource allocation calculation to obtain resource allocation constraint conditions; Based on the resource allocation constraint conditions, a coalition graph model is constructed to model the storage resource collaboration relationship among multiple data centers to obtain a coalition member relationship graph; Performing stability analysis on the alliance member relationship graph, obtaining a game equilibrium solution through Nash equilibrium calculation, and inputting the game equilibrium solution into a resource optimizer to perform storage efficiency calculation to obtain a resource allocation efficiency index; Performing a threshold judgment on the resource allocation efficiency indicator to obtain a judgment result, and generating a resource reallocation strategy according to the judgment result; The resource reallocation strategy is subjected to profit distribution calculation to obtain profit distribution results of each node, and the resource reallocation strategy is subjected to fairness verification based on the profit distribution results of each node to obtain a storage resource scheduling plan.
6. The distributed storage method for clinical trial data according to claim 5, characterized in that: The performing distributed data block storage and access authentication on the plurality of target data shards according to the storage resource scheduling scheme and the anonymized identifier to generate data block storage distribution information includes: Based on the storage resource scheduling scheme, storage space allocation, network bandwidth limitation and data read and write rate are analyzed and calculated to obtain a resource scheduling parameter matrix; Performing storage location matching calculation on the resource scheduling parameter matrix and the multiple target data slices, writing the target data slices into corresponding storage nodes, and obtaining an initial storage location mapping table; Authentication and authority allocation are performed through the anonymous identifier to obtain data access control rules, and the initial storage location mapping table and the data access control rules are bound and associated to generate a data block access authorization policy; Performing integrity detection and anti-tampering verification on the data block access authorization policy to obtain a security verification result, and performing threshold analysis and dynamic adjustment of the data block storage location on the security verification result to obtain a target storage distribution plan; A data block storage status analysis is performed based on the target storage distribution scheme to obtain data block storage distribution information, wherein the data block storage distribution information includes storage location, access rights and performance indicators.
7. A distributed storage system for clinical trial data, characterized in that: A method for performing a distributed storage method for clinical trial data according to any one of claims 1 to 6, wherein the distributed storage system for clinical trial data comprises: An encryption module is used to perform ring signature encryption processing on patient test data in multiple data centers to obtain patient anonymized identifiers and standardized clinical data; The configuration module is used to perform a two-level random storage node configuration on the standardized clinical data, and calculate the optimal storage node configuration scheme through binary decision variable space mapping and Benders decomposition algorithm; specifically includes: performing data scale analysis and access frequency statistics on the standardized clinical data to obtain a data capacity demand matrix and access feature vector; inputting the data capacity demand matrix into a two-level random system to perform space-time-event dimension modeling to obtain a storage node candidate configuration set; performing binary variable assignment processing on each node in the storage node candidate configuration set to obtain a node selection decision matrix; performing K-means clustering algorithm on the node selection decision matrix and The access feature vector is used to divide the data scenario to obtain the storage node grouping result, and the hardware parameter constraint and network bandwidth limitation calculation are performed on the storage node grouping result to obtain the node resource constraint condition; the node resource constraint condition is input into the mixed integer programming model to construct the objective function to obtain the storage cost optimization model, and the Benders main problem decomposition calculation is performed on the storage cost optimization model through the Benders decomposition algorithm to obtain the initial storage node configuration plan; the initial storage node configuration plan is input into the hot start nested solver for iterative optimization, and the optimal storage node configuration plan is obtained through the inner loop mixed integer subproblem solution and the outer loop security assessment operation; A construction module, used to construct an LPPMM-DA data aggregation model based on the optimal storage node configuration solution, and perform sharding processing on the patient test data to obtain multiple target data shards; A computing module, used to perform dynamic operation envelope analysis and alliance graph game calculation on the multiple target data shards to obtain a storage resource scheduling solution; A generation module is used to perform distributed data block storage and access authentication on the multiple target data shards according to the storage resource scheduling scheme and the anonymized identifier, and generate data block storage distribution information.
Citation Information
Patent Citations
Multi-cloud multi-chain collaborative electronic medical data security sharing method
CN113987443A
Medical record data intelligent storage method for medical electronic medical record
CN118866217A