Block chain data cloud storage method
By constructing a multi-objective block migration optimization model and an evolutionary algorithm to select some blocks for migration to cloud storage, the problem of limited storage resources for blockchain nodes is solved, storage space is released and costs are optimized, and the real-time requirements of the Industrial Internet of Things are met.
Patent Information
- Application Number
- CN202610018337.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-01-08
- Publication Date
- 2026-02-06
- Estimated Expiration
- 2046-01-08
AI Technical Summary
In industrial IoT scenarios, blockchain nodes have limited storage resources and cannot withstand the long-term accumulation of data. Existing technologies cannot effectively free up local storage space, and synchronizing to the cloud will introduce high costs and delays.
By constructing a multi-objective block migration optimization model, the migration trigger threshold of blockchain nodes is dynamically determined, and a cascading selection evolutionary algorithm is used to select some blocks to migrate to cloud storage, thereby optimizing storage space release and transmission costs.
Without compromising the integrity and verifiability of the blockchain, this approach effectively alleviates the pressure of limited storage resources, balances data availability, economic costs, and transmission overhead, and meets the real-time requirements of the Industrial Internet of Things.
Smart Images

Figure CN121478884A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of blockchain technology, and in particular to a blockchain data cloud storage method. Background Technology
[0002] In industrial IoT scenarios such as smart manufacturing, lightweight blockchain networks are often deployed on-site for data storage to ensure the immutability and traceability of critical production, process, and quality data. Industrial IoT devices continuously generate massive amounts of data and store it on the blockchain, causing the local storage copies of each blockchain node to grow linearly over time. However, blockchain nodes in industrial settings typically have limited storage resources, and their storage capacity cannot withstand the long-term accumulation of data.
[0003] In related technologies, the pressure is mainly alleviated indirectly by optimizing local storage utilization or adopting data sharding strategies, but these cannot truly free up the local physical storage space of blockchain nodes. Simply synchronizing all data of blockchain nodes to the cloud will introduce high transmission costs, query latency, and may jeopardize data sovereignty and real-time performance. Summary of the Invention
[0004] In view of this, this application provides a blockchain data cloud storage method that, without compromising the integrity and verifiability of the blockchain, intelligently and conditionally selects some blocks from each blockchain node to migrate to cloud storage, thereby truly freeing up the local storage space of blockchain nodes, reducing storage costs, improving system response speed, and meeting the needs of real-time applications.
[0005] According to one aspect of this application, a blockchain data cloud storage method is provided, comprising: Based on the storage status indicators of blockchain nodes within the observation time window, the block migration trigger threshold of the blockchain node is determined. The blockchain is deployed in an industrial site, and the storage status indicators are determined based on the blocks stored in the blockchain node. The blocks stored in the blockchain node are determined based on industrial data generated by industrial equipment in the industrial site through the industrial Internet of Things deployed in the industrial site. If the number of new blocks added by the blockchain node within the observation time window is greater than the block migration trigger threshold of the blockchain node, a multi-objective block migration optimization model for the blockchain is constructed. The multi-objective block migration optimization model is solved to obtain the number of target migrations corresponding to the blockchain node; The blockchain node determines the target migration quantity of target migration blocks from the candidate migration blocks within the observation time window and migrates them to cloud storage. The candidate migration blocks are determined based on the new blocks added by the blockchain node within the observation time window.
[0006] According to another aspect of this application, a blockchain data cloud storage device is provided, comprising: The determination module is used to determine the block migration trigger threshold of the blockchain node based on the storage status index of the blockchain node within the observation time window. The blockchain is deployed in an industrial site, and the storage status index is determined based on the blocks stored in the blockchain node. The blocks stored in the blockchain node are determined based on industrial data generated by industrial equipment in the industrial site through the industrial Internet of Things deployed in the industrial site. The construction module is used to construct a multi-objective block migration optimization model for the blockchain if the number of new blocks added by the blockchain node within the observation time window is greater than the block migration trigger threshold of the blockchain node; and to solve the multi-objective block migration optimization model to obtain the target migration number corresponding to the blockchain node. The migration module is used to determine the target number of migration blocks from the candidate migration blocks of the blockchain node within the observation time window and migrate them to cloud storage. The candidate migration blocks are determined based on the new blocks added by the blockchain node within the observation time window.
[0007] According to another aspect of this application, a readable storage medium is provided on which a program or instructions are stored, which, when executed by a processor, implement the steps of the above-described blockchain data cloud storage method.
[0008] According to another aspect of this application, a computer device is provided, including a storage medium, a processor, and a computer program stored on the storage medium and executable on the processor, wherein the processor executes the program to implement the steps of the above-described blockchain data cloud storage method.
[0009] By employing the above technical solution, this application provides a blockchain data cloud storage method. Based on the storage status data of blockchain nodes within an observation time window, the block migration trigger threshold for each blockchain node is dynamically determined. When the number of new blocks added within the observation time window of any blockchain node exceeds its block migration trigger threshold, a high-dimensional multi-objective block migration optimization model is constructed, aiming to minimize the loss of future block usage probability, cloud storage costs, blockchain weighted space occupancy, and migration transmission costs. Furthermore, an evolutionary algorithm based on cascaded selection is used to solve this multi-objective block migration optimization model to obtain the target migration quantity that each blockchain node should migrate to cloud storage. Finally, the target migration quantity of target migration blocks is selected from the candidate migration blocks of each blockchain node, and after encryption and hash anchor chain processing, it is migrated to cloud storage. This application can release the local storage space of blockchain nodes without compromising the integrity and verifiability of blockchain data, effectively alleviating the pressure on nodes with limited storage resources. Moreover, through the multi-objective block migration optimization model, data availability, economic costs, space release efficiency, and transmission overhead are intelligently balanced, avoiding inefficient migrations during network congestion or when storage is ample. Meanwhile, the efficient solution algorithm employed in this application ensures high-quality decision-making even under the real-time constraints of the Industrial Internet of Things (IIoT). This provides a systematic solution for the sustainable operation and maintenance of blockchain systems in the IIoT.
[0010] The above description is only an overview of the technical solution of this application. In order to better understand the technical means of this application and to implement it in accordance with the contents of the specification, and to make the above and other objects, features and advantages of this application more obvious and understandable, the following are specific embodiments of this application. Attached Figure Description
[0011] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments of this application and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings: Figure 1 A flowchart illustrating the blockchain data cloud storage method provided in an embodiment of this application is shown; Figure 2 A flowchart illustrating a blockchain data cloud storage method according to another embodiment of this application is shown; Figure 3 A structural block diagram of the blockchain data cloud storage device provided in an embodiment of this application is shown. Detailed Implementation
[0012] The present application will be described in detail below with reference to the accompanying drawings and embodiments. It should be noted that, unless otherwise specified, the embodiments and features described in the embodiments of the present application can be combined with each other.
[0013] The embodiments of this application are described in detail below. Examples of these embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and are only used to explain this application, and should not be construed as limiting this application.
[0014] Those skilled in the art will understand that, unless specifically stated otherwise, the singular forms “a,” “an,” “the,” and “the” used herein may also include the plural forms. It should be further understood that the term “comprising” as used in this application means the presence of the stated features, integers, steps, operations, elements, and / or components, but does not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof. It should be understood that when we say an element is “connected” or “attached” to another element, it can be directly connected or attached to the other element, or there may be intermediate elements. Furthermore, “connected” or “attached” as used herein can include wireless connections or wireless interconnections. The term “and / or” as used herein includes all or any unit and all combinations of one or more associated listed items.
[0015] Exemplary embodiments according to this application will now be described in more detail with reference to the accompanying drawings. However, these exemplary embodiments may be implemented in many different forms and should not be construed as being limited to the embodiments set forth herein. It should be understood that these embodiments are provided so that the disclosure of this application is thorough and complete, and that the concept of these exemplary embodiments is fully conveyed to those skilled in the art.
[0016] This application provides a blockchain data cloud storage method, such as... Figure 1 As shown, the method includes: Step 101: Determine the block migration trigger threshold of the blockchain node based on the storage status indicators of the blockchain node within the observation time window.
[0017] In this system, the blockchain is deployed in industrial sites, and the storage status indicators are determined based on the blocks stored in the blockchain nodes. The blocks stored in the blockchain nodes are determined based on industrial data generated by industrial equipment in the industrial sites through the industrial Internet of Things deployed in the industrial sites.
[0018] In this step, within a preset observation time window, storage status indicators of blockchain nodes deployed in the industrial site are acquired via telemetry, including storage space occupancy and available storage capacity. Based on these indicators, a storage pressure index for each blockchain node is calculated, reflecting the degree of strain on node storage resources. Simultaneously, a congestion index for the transmission network between the blockchain and the cloud is calculated to characterize the volatility of the external uplink data transmission network between the blockchain and the cloud. Finally, the storage pressure index, the transmission network congestion index, and a preset block migration baseline threshold are combined to calculate a dynamically adjusted block migration trigger threshold for each blockchain node. This threshold adaptively adjusts the sensitivity of block migration triggering based on node storage pressure and network conditions.
[0019] Step 102: If the number of new blocks added by a blockchain node within the observation time window is greater than the block migration trigger threshold of the blockchain node, construct a multi-objective block migration optimization model for the blockchain.
[0020] In this step, when the number of newly added blocks within the observation time window of any blockchain node reaches its corresponding block migration trigger threshold, the block migration operation for the entire blockchain is initiated. This block migration operation models the block migration problem as a high-dimensional multi-objective block migration optimization model. The decision variables of the multi-objective block migration optimization model are a vector composed of the number of blocks migrated to cloud storage by each blockchain node. The multi-objective block migration optimization model simultaneously minimizes four key objectives: the block usage probability objective function of blockchain nodes, the cloud storage cost objective function, the blockchain space occupancy objective function, and the blockchain migration cost objective function, in order to provide each blockchain node with a migration quantity configuration scheme that achieves a balance between data availability, economy, space release efficiency, and transmission overhead.
[0021] Step 103: Solve the multi-target block migration optimization model to obtain the number of target migrations corresponding to the blockchain nodes.
[0022] In this step, an evolutionary algorithm based on cascaded selection is used to solve the multi-objective block migration optimization model, thereby determining the number of blocks that each blockchain node should migrate to cloud storage, i.e., the target migration number.
[0023] Step 104: Determine the target migration number of target migration blocks from the candidate migration blocks within the observation time window of the blockchain node and migrate them to cloud storage.
[0024] Among them, candidate migration blocks are determined based on the new blocks added by blockchain nodes within the observation time window.
[0025] In this step, after obtaining the target migration quantity for each blockchain node, based on the block generation time order, the earliest generated candidate migration block with the target migration quantity is selected from the candidate migration blocks generated by each blockchain node within the observation time window that have exceeded the preset protection period, as the final target migration block. This allows for the conditional selection of some blocks to be stored in the cloud without compromising on-chain verifiability, truly releasing the local storage space of blockchain nodes, expanding the overall storage capacity of the blockchain, significantly reducing storage pressure, and thus benefiting real-time, security, and economical applications.
[0026] This embodiment enables the release of local storage space on blockchain nodes without compromising the integrity and verifiability of blockchain data, effectively alleviating the pressure on nodes with limited storage resources. Furthermore, through a multi-objective block migration optimization model, it intelligently balances data availability, economic cost, space release efficiency, and transmission overhead, avoiding inefficient migrations during network congestion or when storage is plentiful. The efficient solution algorithm employed in this embodiment ensures high-quality decision-making even under the real-time constraints of the Industrial Internet of Things (IIoT). Therefore, it provides a systematic solution for the sustainable operation and maintenance of blockchain systems in the IIoT.
[0027] Another embodiment of this application provides a blockchain data cloud storage method, such as... Figure 2 As shown, the method includes: Step 201: Obtain the storage status indicators of blockchain nodes within the observation time window.
[0028] In this system, the blockchain is deployed in industrial sites, and the storage status indicators are determined based on the blocks stored in the blockchain nodes. The blocks stored in the blockchain nodes are determined based on industrial data generated by industrial equipment in the industrial sites through the industrial Internet of Things deployed in the industrial sites.
[0029] It should be noted that, in this embodiment, the industrial site refers to the physical environment where actual production takes place. To achieve digital monitoring and precise control of the physical industrial equipment and its production processes in the industrial site, a series of Industrial Internet of Things (IIoT) devices need to be deployed. These IIoT devices are installed on industrial equipment or integrated into production lines to directly collect key production, process, and quality data (i.e., critical industrial data) reflecting the operating status of industrial equipment, process parameter data reflecting process execution, and quality records of output quality. Based on this industrial data, the production status, product quality, and operational compliance within the industrial site can be determined. The IIoT devices are organized, connected, and coordinated through a unified IIoT architecture. To ensure the immutability, traceability, and operational compliance of this industrial data during long-term storage and circulation, a lightweight blockchain is deployed within the industrial site. The blockchain includes multiple blockchain nodes deployed on servers or industrial control computers in the industrial site. The IIoT sends the industrial data collected by the IIoT devices to a nearby deployed gateway. The gateway performs preliminary cleaning and format standardization on the industrial data submitted by the IIoT, and encapsulates it into standard blockchain transactions, which are then broadcast to the blockchain. Each blockchain node receives and verifies these blockchain transactions, and packages them into blocks using the consensus algorithm configured within the blockchain, storing these blocks in its local blockchain copy. At this point, all blockchain nodes store identical copies of the data. Because blocks are continuously generated, the local storage space of all blockchain nodes is being consumed synchronously, leading to increased storage pressure on blockchain nodes in resource-constrained Industrial Internet of Things (IIoT) scenarios.
[0030] Here, a blockchain consensus algorithm refers to a method used by blockchain nodes to reach a consensus, determining which blockchain node can create the next block and add it to the blockchain, and ensuring that the local blockchain copies of all blockchain nodes are consistent in content. Specifically, this embodiment can use an improved Byzantine fault-tolerant consensus algorithm, such as the Improved Practical Byzantine Fault-Tolerant Consensus Algorithm or the Delegated Byzantine Fault-Tolerant Consensus Algorithm.
[0031] Specifically, industrial sites can be smart factories and automated production lines, such as automobile assembly lines, CNC machine tool workshops, or food packaging production lines. Industrial equipment can be the core production equipment, gear, or production line itself in an industrial site, such as machine tools, robots, reactors, and conveyor lines. Industrial Internet of Things (IIoT) devices can be various sensors, actuators, programmable logic controllers, and RFID (Radio Frequency Identification) readers used to collect data such as vibration, temperature, and visual data from industrial equipment. Equipment status data can include the electrical parameters, mechanical parameters, operating status, position, and attitude of industrial equipment, such as voltage, current, power, power consumption, speed, torque, vibration amplitude, frequency, noise, temperature, pressure, displacement, start / stop status, operating mode (automatic, manual), alarm data, fault signals, cumulative runtime, GPS coordinates, robotic arm joint angles, and the real-time position of AGVs (Automated Guided Vehicles). Process parameter data can include process parameters, program data, environmental parameters, operations and events during the manufacturing process of industrial equipment. Examples include welding current, welding voltage, welding speed, spraying pressure, spraying flow rate, heat treatment temperature, heat treatment time, injection pressure, injection temperature, injection holding time, executed CNC program number, process formula version number, operation procedure number, workshop ambient temperature, humidity, cleanliness, operator employee number, shift, operation start / end timestamps, material batch number input records, and equipment abnormal shutdown records. Quality records can include output dimensions, output physicochemical properties, output appearance defects, output functional test results, and output identification and traceability data. Examples include measured values of key dimensions (such as diameter, thickness, and pore size), weight, hardness, strength, and composition analysis results, detection results of surface scratches, stains, and color differences, electrical test results, sealing test pressure values, performance test curves, unique serial numbers, printed or recorded QR code / barcode information, and RFID tag data.
[0032] This embodiment proposes a blockchain data cloud storage method for lightweight blockchains deployed in industrial IoT scenarios with limited storage resources to ensure the trusted storage of critical industrial data. This method expands the overall local storage capacity of the blockchain without altering its original consensus and structure. Specifically, this embodiment monitors the storage status of each blockchain node to trigger block migration operations. Without compromising the integrity and verifiability of the blockchain, it intelligently and conditionally selects some blocks from each blockchain node to migrate to cloud storage. This truly frees up the local storage space of the blockchain nodes, reduces storage costs, improves system response speed, meets the needs of real-time applications, and ensures the security and integrity of data during transmission and storage.
[0033] In this step, the storage status indicators of each blockchain node in the blockchain within the observation time window are monitored by telemetry data acquisition. The storage status indicators include storage space occupancy rate and storage available capacity.
[0034] Here, the observation time window is a preset time period, such as 5-15 minutes. Storage space occupancy rate refers to the percentage of local storage capacity of a blockchain node that is occupied by blocks stored in its local blockchain replica within the observation time window. Available storage capacity refers to the remaining space in the local storage capacity of a blockchain node that can store blocks within the observation time window. Storage space occupancy rate directly indicates the scarcity of storage resources for the blockchain node within the observation time window, while available storage capacity directly indicates how much data the blockchain node can still hold after the observation time window ends.
[0035] Step 202: Determine the storage pressure index of the blockchain node within the observation time window based on the weighted sum of the storage space occupancy rate and available storage capacity of the blockchain node within the observation time window; determine the transmission network congestion index between the blockchain and the cloud within the observation time window based on the variance and average of the single effective throughput of the block migration records within the observation time window; determine the block migration trigger threshold of the blockchain node based on the transmission network congestion index between the blockchain and the cloud within the observation time window, the storage pressure index of the blockchain node, and the preset block migration baseline threshold, the preset gain coefficient of the transmission network congestion index and the storage pressure index.
[0036] In this embodiment, the proportional weights of storage space occupancy and available storage capacity are preset (i.e., preset proportional weights). Therefore, in this step, based on the storage space occupancy and available storage capacity of the blockchain node within the observation time window, and the preset proportional weights of storage space occupancy and available storage capacity, the storage pressure index of the blockchain node within the observation time window is determined. This storage pressure index reflects the relative utilization and absolute stress level of the blockchain node's storage resources.
[0037] For example, the storage pressure index of a blockchain node within the observation time window can be obtained according to the following formula: , in, For blockchain nodes During the observation time window Internal storage space utilization For blockchain nodes During the observation time window Available storage capacity within. For blockchain nodes During the observation time window Storage pressure index within. Storage space utilization The preset ratio weight, For available storage capacity The preset ratio weight.
[0038] Here, the preset proportional weights of storage space occupancy and available storage capacity can be set according to the actual storage needs of the actual industrial IoT scenario, as long as the optimal risk warning and resource scheduling effect is achieved. This embodiment does not impose specific limitations. For example, if the actual storage needs of the actual industrial IoT scenario are to prevent storage overflow and ensure the continuous operation of the blockchain, then a higher value will be assigned to the preset proportional weight of available storage capacity.
[0039] It should be noted that, in this embodiment, the process of conditionally selecting some blocks from each blockchain node to migrate to cloud storage requires transmitting the blocks through an external uplink data transmission network between the blockchain and the cloud, thereby achieving the migration.
[0040] In this step, we obtain all batches of block migration records for the blockchain that migrate blocks to cloud storage within the observation time window. For each batch of block migration records, we calculate the single effective throughput of that block migration record based on the total number of bytes transferred, the start time, and the end time. Then, based on the average and variance of all single effective throughputs of the blockchain within the observation time window, we determine the network congestion index between the blockchain and the cloud within the observation time window.
[0041] For example, the single effective throughput of the blockchain's block migration records within the observation time window is calculated according to the following formula: .in, For blockchain within the observation time window Inner The total number of bytes transferred in the batch block migration record; For blockchain within the observation time window Inner The transmission start timestamp of the batch block migration record; For blockchain within the observation time window The first The transmission end timestamp of the batch block migration record; For blockchain within the observation time window Inner The single effective throughput of a batch block migration record is measured in Mbit / s (megabits per second).
[0042] The congestion index of the transmission network between the blockchain and the cloud within the observation time window is determined by the following formula: , in, For blockchain within the observation time window The variance of all single effective throughputs within the range; For blockchain within the observation time window The average of all single effective throughputs within the range; It should be a very small positive number to prevent the denominator from being 0; Indicates will It is restricted to a closed interval between 0 and 1. For blockchain within the observation time window The congestion index of the internal transmission network.
[0043] Here, the transmission network congestion index is used to represent the degree of fluctuation in the transmission speed of the blockchain within the observation time window, and to quantify the volatility of the network transmission rate of the external uplink data transmission network between the blockchain and the cloud, thereby avoiding inefficient or high-risk block migrations when network conditions are unstable.
[0044] Here, if the current observation time window is the first observation time window in the time sequence, or if the previous observation time window did not trigger a block migration operation, resulting in insufficient block migration records within the current observation time window, the transmission network congestion index can be set to a preset conservative value, such as 0 or a small value, to indicate that the data transmission network status between the blockchain and the cloud is assumed to be stable or low congestion.
[0045] It should be noted that in this embodiment, telemetry data is collected, and the number of new blocks (i.e., newly added blocks) successfully appended to the local blockchain copy of the blockchain node within the observation time window is monitored using a local counter in the blockchain node. This results in the number of newly added blocks for the blockchain node within the observation time window. A larger number of newly added blocks indicates that the blockchain node is rapidly receiving and confirming new data from industrial equipment within the observation time window, and its local storage space is consumed at a correspondingly faster rate. This can be used to predict the future storage pressure growth trend of the blockchain node. Furthermore, in this embodiment, a pre-set protection period (i.e., a preset protection period) is established, which is shorter than the observation time window. Here, the preset protection period specifies the minimum time a block must be stored on the local blockchain copy of the blockchain node after its generation. Within the preset protection period, regardless of the local storage pressure of the blockchain node, blocks are not allowed to be migrated to cloud storage. Therefore, this embodiment determines the generation time of each newly added block based on the difference between the generation timestamp carried by the newly added block within the observation time window and the current time. Then, new blocks generated by the blockchain node within the observation time window that take longer than the preset protection period are considered candidate migration blocks that the blockchain node can migrate to cloud storage within the observation time window, and the number of candidate migration blocks for the blockchain node within the observation time window is obtained. This ensures that the latest production, process, and quality data generated by industrial equipment in the industrial field can be used locally on the blockchain node.
[0046] In this step, the block migration trigger threshold for a blockchain node within the observation time window is determined based on the storage pressure index and the transmission network congestion index of the blockchain within the observation time window. The block migration trigger threshold is used to determine whether to trigger a block migration operation for the entire blockchain after the observation time window ends; that is, whether to conditionally select a portion of candidate migration blocks from each blockchain node within the observation time window and migrate them to cloud storage.
[0047] For example, the block migration trigger threshold for a blockchain node within the observation time window is determined according to the following formula: , in, The preset block migration baseline threshold represents the baseline threshold required to trigger a block migration operation in a blockchain under the baseline conditions of an ideal external uplink data transmission network between the blockchain and the cloud and no pressure on the storage of blockchain nodes. It can be specifically determined based on the average block generation speed and expected migration frequency of the blockchain in the actual industrial IoT scenario, for example, 150-300. This embodiment does not impose a specific limit. and These are preset gain coefficients for the transmission network congestion index and the storage pressure index, used to control the intensity of their influence on the block migration trigger threshold. For example, and The value range is 0.2-0.8, and can be set according to the actual storage needs of the actual industrial IoT scenario. This embodiment does not impose specific restrictions. This is the rounding function. For blockchain nodes The threshold for triggering block migration.
[0048] It's worth noting that when the blockchain's transmission network congestion index is high and the network is congested, the corresponding block migration trigger threshold increases. This reduces the frequency of migration tasks initiated by the blockchain under poor network conditions, preventing transmission queue backlog and task timeouts, thus protecting network resources for more critical production data uploading. Conversely, when the blockchain node's storage pressure index is high and storage pressure is increasing, the corresponding block migration trigger threshold decreases, accelerating the release of blockchain storage space and prioritizing prevention of downtime due to storage overflow.
[0049] Step 203: If the number of new blocks added by a blockchain node within the observation time window exceeds the block migration trigger threshold of the blockchain node, trigger the blockchain block migration operation.
[0050] In this step, if the number of new blocks added by any blockchain node within the observation time window is greater than or equal to its block migration trigger threshold, then the block migration operation of the entire blockchain is triggered. That is, from the candidate migration blocks of each blockchain node within the observation time window, a portion of the candidate migration blocks are conditionally selected and migrated to cloud storage.
[0051] Step 204: Construct a multi-objective block migration optimization model for the blockchain.
[0052] In this step, the entire blockchain block migration system is modeled as a high-dimensional multi-objective block migration optimization model. The decision variables of this multi-objective block migration optimization model are a vector consisting of the target number of target migration blocks that each blockchain node should migrate to for cloud storage. ,in, This represents the number of blockchain nodes in the blockchain. =1, 2, ..., ; Represents a blockchain node The target number of target migration blocks to be migrated to cloud storage. It should be noted that the target migration blocks for a blockchain node are selected from the candidate migration blocks within the observation time window.
[0053] Furthermore, as a refinement and extension of the specific implementation of the above embodiments, in order to fully illustrate the specific implementation process of this embodiment, step 204, namely, constructing a multi-objective block migration optimization model for the blockchain, specifically includes: determining the sum of future usage loss values of the target migration blocks of the blockchain node based on the preset block usage frequency function corresponding to the candidate migration blocks of the blockchain node within the observation time window, the number of candidate migration blocks, the target migration number of the target migration blocks of the blockchain node, and the preset usage frequency benchmark value; constructing a block usage probability objective function for the blockchain node with the goal of minimizing the sum of future usage loss values of the target migration blocks of the blockchain node; determining the cloud storage cost of the blockchain based on the preset cost ratio of cloud storage to blockchain storage, the average size of newly added blocks of the blockchain node within the observation time window, and the target migration number of the target migration blocks of the blockchain node; and constructing a cloud storage... The objective function is as follows: The weighted space occupancy rate of candidate migration blocks in the blockchain after migration is determined based on the number of candidate migration blocks for each blockchain node within the observation time window, the target migration number of the target migration blocks, and the preset node weight coefficients of the blockchain nodes. A blockchain space occupancy rate objective function is constructed with the goal of minimizing the weighted space occupancy rate of the blockchain after migration. The transmission cost of migrating the target migration blocks to cloud storage is determined based on the target migration number of the target migration blocks, the average size of newly added blocks by the blockchain node within the observation time window, and the effective uplink bandwidth used by the blockchain to migrate blocks to cloud storage within the observation time window. A blockchain migration cost objective function is constructed with the goal of minimizing the blockchain transmission cost. A multi-objective block migration optimization model is constructed based on the blockchain node block usage probability objective function, the cloud storage cost objective function, the blockchain space occupancy rate objective function, and the blockchain migration cost objective function.
[0054] It should be noted that, in this embodiment, for any candidate migration block of all blockchain nodes within the observation time window, a corresponding block usage frequency model (i.e., a preset block usage frequency function) is pre-set for the candidate migration block based on the data type of the industrial data contained within it. Here, the industrial data contained within the candidate migration block refers to the industrial data included in the blockchain exchange before the candidate migration block is packaged by the blockchain node.
[0055] Specifically, if the frequency of external use of industrial data contained in a candidate migration block remains stable and it needs to be queried in real time and quickly, then the industrial data belongs to the first preset data type, and the candidate migration block containing industrial data of the first preset data type is assigned to a preset block usage frequency function of constant mode. If the industrial data contained in a candidate migration block is concentrated in external use in the early stages of its generation, but the usage frequency subsequently drops sharply, then the industrial data belongs to the second preset data type, and the candidate migration block containing industrial data of the second preset data type is assigned to a preset block usage frequency function of exponential decay mode. If the frequency of external use of industrial data contained in a candidate migration block decreases steadily and uniformly, then the industrial data belongs to the third preset data type, and the industrial data containing industrial data of the third preset data type is assigned to a preset block usage frequency function of linear decay mode.
[0056] For example, the preset block of the constant mode is represented using a frequency function as follows: , in, The time elapsed since the candidate migration block was generated; Use a frequency function for the preset block. The preset frequency reference value is used.
[0057] The preset block of the exponential decay mode is represented by the frequency function as follows: , in, This is the exponential decay coefficient, used to control the rate of exponential decay.
[0058] The preset block of the linear decay mode is represented by a frequency function as follows: , in, This is the linear decay coefficient, used to control the linear decay rate.
[0059] For specific examples, the first preset data type could be industrial data such as real-time alarm logs of industrial equipment. Engineers may need to review historical alarms at any time, so the need for querying this data is constant. The second preset data type could be industrial data such as production batch quality records of outputs, which are frequently queried during the audit period but are rarely used once approved. The third preset data type could be industrial data such as periodic analysis reports of industrial equipment or outputs, whose reference value decreases over time.
[0060] Here, the preset usage frequency benchmark value can be determined based on the urgency or importance of the industrial data being used after its generation in the actual industrial environment. For example, c can be set between 0.5 and 1; this embodiment does not impose specific limitations. The exponential decay coefficient and the linear decay coefficient can be determined based on the rate of decay of the data value of the industrial data of the second and third preset data types over time, respectively. For example, the exponential decay coefficient can be a fraction of the preset usage frequency benchmark value, and the linear decay coefficient can be between 0.01 and 0.05; this embodiment does not impose specific limitations.
[0061] In this step, the block usage frequency of candidate migration blocks is transformed into the usage probability of the target migration block in the blockchain node, thereby constructing the block usage probability objective function for each blockchain node.
[0062] For example, a block can be represented using a probabilistic objective function as follows: , in, For blockchain nodes The blocks use a probability objective function. For blockchain nodes The index of the target migration block. The value ranges from 1 to Here, this step involves the blockchain node. During the observation time window Candidate migration blocks within the blockchain are sorted in ascending order of their generation time to obtain the block order, and the blockchain nodes... Each target migration block The order in the block sequence is , =1 indicates the earliest generated candidate migration block. The larger the value, the newer the block. For blockchain nodes Target migration block The corresponding preset block uses a frequency function. For blockchain nodes During the observation time window The number of candidate migration blocks within the region; Approximate representation of blockchain nodes Target migration block The generation time. Used to calculate blockchain nodes Target migration block The corresponding preset block is represented by the integral of the frequency function over its generation time. The historical usage intensity; the larger the score, the more likely the target migration block is to be affected. The more frequently it has been used historically. Fractional items. It is a blockchain node Target migration block A transformation function that maps historical usage intensity to future usage probability is used to represent the target migration block. The future usage loss value; when the target migration block The historical usage intensity is extremely high, meaning that when the integral approaches infinity, the fractional term approaches 1, indicating that the target migration block... It is highly likely to be accessed in the future, and migrating it would result in significant losses; when the target block is migrated... The historical usage intensity is extremely low; that is, when the integral approaches 0, the fractional term is close to 0, indicating that the target migration block is... It will hardly be accessed in the future, so the loss from migrating it is small.
[0063] Therefore, with the goal of maximizing the sum of future usage loss values of all target migration blocks of the blockchain node, a block usage probability objective function of the blockchain node is constructed to prioritize the migration of candidate migration blocks with low future usage probability.
[0064] It should be noted that in this embodiment, the unit cost ratio of cloud storage to local blockchain storage is preset, i.e., the cost ratio of cloud storage to local blockchain storage (i.e., the preset cost ratio). A preset cost ratio less than 1 indicates that cloud storage is cheaper, and this preset cost ratio is used in subsequent steps to optimize the economic cost of storage. Furthermore, through remote sensing data acquisition, the total size of blocks in the local blockchain replica of the blockchain node is recorded at the beginning and end of the observation time window. The size at the end is subtracted from the size at the beginning to obtain the size of newly added blocks by the blockchain node during the observation time window. Dividing this newly added block size by the number of newly added blocks by the blockchain node during the observation time window yields the average size of newly added blocks by the blockchain node during the observation time window. The average size of newly added blocks indicates that the transaction data packaged in each newly added block by the blockchain node within the observation time window is larger or more densely packed, and migrating each newly added block will consume more network bandwidth and cloud storage space.
[0065] For specific examples, the preset cost ratio can be determined based on the actual industrial IoT scenario and cloud service market prices. For instance, the cost of local blockchain storage includes capital expenditures and operating costs such as hardware procurement, depreciation, maintenance, and data center energy consumption for blockchain nodes, while the cost of cloud storage can be measured based on the service provider's pricing, according to operating expenses such as local storage capacity, duration, and number of calls. As long as the actual preset cost ratio can be calculated, this embodiment does not impose specific limitations.
[0066] In this step, the cloud storage cost of the blockchain relative to local storage is determined based on the preset cost ratio between cloud storage and local blockchain storage, the average size of new blocks added by blockchain nodes within the observation time window, and the target migration number of target migration blocks for blockchain node migration. Then, a cloud storage cost objective function is constructed with the goal of minimizing the cloud storage cost of the blockchain.
[0067] For example, the objective function for cloud storage costs Represented as: , here, For blockchain nodes During the observation time window The average size of newly added blocks within the block, This is the preset cost ratio. This represents the total amount of data that needs to be transferred during this blockchain migration operation, i.e., the total amount of additional cloud storage space that will be occupied by this migration operation. Multiplying the total amount of additional cloud storage space by a preset cost ratio yields the cloud storage cost relative to using local blockchain storage. The objective function for cloud storage cost is to minimize the final calculated cloud storage cost by adjusting the target number of target migration blocks that each blockchain node needs to migrate. This quantifies economic efficiency and prevents uncontrolled cloud migration.
[0068] It should be noted that in this embodiment, the local storage capacity of each blockchain node is obtained in advance. It should also be noted that the local storage capacity of each blockchain node is not the same. Furthermore, a node weight coefficient (preset node weight coefficient) is determined in advance based on the differences in the local storage capacity of the blockchain nodes. This allows for the allocation of higher weights to blockchain nodes with smaller local storage capacities and more limited resources, thereby ensuring that this embodiment can more effectively alleviate the storage pressure on the most vulnerable blockchain nodes and achieve overall blockchain balance.
[0069] In this step, based on the number of candidate migration blocks for a blockchain node within the observation time window, the target migration number of the target migration block, and a preset node weight coefficient, the weighted retention ratio of candidate migration blocks locally after the blockchain node performs the migration operation is determined. Therefore, based on the sum of the weighted retention ratios of candidate migration blocks locally after the blockchain node performs the block migration operation, the weighted space occupancy rate of candidate migration blocks locally after the blockchain node performs the migration operation is determined. With the goal of minimizing the weighted space occupancy rate of the blockchain after migration, a blockchain space occupancy rate objective function is constructed.
[0070] For example, the objective function for blockchain space occupancy. Represented as: , here, For blockchain nodes The preset node weight coefficients, . Represents a blockchain node After a migration operation, the percentage of candidate migration blocks retained by a blockchain node locally is considered important. A smaller percentage indicates a higher likelihood of migration from that blockchain node. The more blocks a blockchain node migrates, the more powerful it becomes. Local storage is released more fully. Represents a blockchain node The weighted retention ratio of candidate migration blocks in the local area after the migration operation. This represents the weighted space occupancy rate of the blockchain after the migration operation. The objective function of blockchain space occupancy rate aims to alleviate the storage pressure on blockchain nodes, ensuring that after the target migration block is moved to cloud storage, the remaining candidate migration blocks occupy as little local storage space as possible, thus preventing "overflow" phenomena in blockchain nodes with smaller storage capacities.
[0071] It should be noted that in this embodiment, the effective uplink bandwidth used by the blockchain to migrate blocks to cloud storage within the observation time window is pre-calculated. Specifically, if the number of block migration records for the blockchain to migrate blocks to cloud storage within the observation time window exceeds a preset threshold, this step adopts a passive measurement method, using all batches of block migration records to calculate the effective uplink bandwidth used by the blockchain to migrate blocks to cloud storage within the observation time window. Specifically, firstly, abnormal effective throughput in all single effective throughput of the blockchain within the observation time window is removed to update the single effective throughput of the blockchain within the observation time window. Then, the single effective throughput of the blockchain within the observation time window is sorted in ascending order, and the median of the single effective throughput of the blockchain within the observation time window is determined based on the sorted single effective throughput. This median is used as the effective uplink bandwidth used by the blockchain to migrate blocks to cloud storage within the observation time window, so as to obtain a reference value that can represent the reliable network capability of the blockchain within the observation window, which is not easily affected by transient abnormal interference. If the number of block migration records that the blockchain migrates to cloud storage within the observation time window is less than or equal to a preset threshold, resulting in insufficient samples, this embodiment adopts an active detection method of short burst detection. A blockchain node is randomly selected in the blockchain, and the blockchain node is controlled to send a certain number of bytes of samples to the cloud at an approximately constant rate within a preset short period of time. The effective uplink bandwidth used by the blockchain to migrate blocks to cloud storage within the observation time window is calculated by using the transmission duration and the number of bytes transmitted based on the measured byte samples.
[0072] For example, if the number of block migration records for all batches of blockchains migrating to cloud storage within the observation time window is less than or equal to a preset threshold, the effective uplink bandwidth of the blockchain node within the observation time window is calculated according to the following formula: , in, For blockchain nodes During the observation time window Effective uplink bandwidth within, The number of bytes sent for the byte sample. The duration for sending byte samples.
[0073] For example, if the current observation time window is the first observation time window in chronological order, or if the previous observation time window did not trigger a block migration operation, resulting in insufficient block migration records within the current observation time window, then an active detection method using short burst detection is adopted. Conversely, a passive measurement method is used to calculate the effective uplink bandwidth.
[0074] Here, the preset threshold can be determined based on the actual network stability and measurement results after the blockchain is deployed. For example, in a stable network environment, the preset threshold can be appropriately increased to 5, while in a network environment with large fluctuations, the preset threshold can be kept at 2 or 3.
[0075] In this step, based on the target number of blocks to be migrated in the blockchain node migration, the average size of new blocks added by the blockchain node within the observation time window, and the effective uplink bandwidth used by the blockchain to migrate blocks to cloud storage within the observation time window, the energy and time transmission costs of the blockchain in migrating the target blocks to cloud storage are determined. With the goal of minimizing the transmission cost of the blockchain, a blockchain migration cost objective function is constructed.
[0076] For example, the objective function for blockchain migration costs Represented as: .
[0077] here, The total data to be transferred in this blockchain migration operation is divided by the current effective uplink bandwidth of the blockchain to obtain the theoretically required total transmission time to complete the migration operation. By adjusting the target number of target blocks for each blockchain node, the objective function value of the blockchain migration cost is minimized. This prevents situations where excessive transmission overhead in industrial IoT scenarios with limited storage resources could lead to delays in adding new blocks to the chain, affect the blockchain's real-time performance, or even reduce the synchronization efficiency and security of blockchain nodes.
[0078] Therefore, this step constructs a multi-objective block migration optimization model based on the objective functions of block usage probability, cloud storage cost, blockchain space occupancy, and blockchain migration cost. This model minimizes multiple conflicting objectives, allowing for the calculation of a configuration scheme for the target number of target migration blocks for each blockchain node.
[0079] An exemplary multi-objective block migration optimization model Represented as: , .
[0080] in, , .
[0081] here, It is a collection A vector with 3 components represents the objective function that needs to be minimized simultaneously. Minimize the block usage probability objective function for each blockchain node. This can reduce the loss of future data usage efficiency due to migration, ensuring that frequently queried data is retained locally on the blockchain as much as possible. Minimize It allows for control over the economic costs of long-term cloud storage use. Minimize... This maximizes the use of local storage space on each blockchain node, prioritizing the relief of pressure on blockchain nodes with smaller storage capacities. Minimizes... It can reduce the network time occupied by migration operations and avoid affecting the real-time performance and synchronization efficiency of the blockchain network.
[0082] Step 205: Based on the number of candidate migration blocks of blockchain nodes within the observation time window, determine a preset number of candidate solutions for the multi-objective block migration optimization model. The candidate solutions include candidate values for the target migration number of target migration blocks of blockchain nodes migrating to cloud storage. Treat the candidate solutions as individuals to form a parent population based on the individuals. Calculate the objective function value of each individual using the objective function in the multi-objective block migration optimization model. The objective functions include the blockchain node's block usage probability objective function, the cloud storage cost objective function, the blockchain space occupancy rate objective function, and the blockchain migration cost objective function. Perform genetic operations on the parent population to obtain the offspring population, and merge the parent population and the offspring population to obtain a joint population.
[0083] It should be noted that, since there are many objective functions in the multi-objective block migration optimization model and there are conflicts between them, this embodiment adopts an evolutionary algorithm based on cascaded selection to solve the multi-objective block migration optimization model. This allows for the use of a smaller population size to still obtain a set of solutions that are widely distributed in the objective space and have good convergence, making it suitable for application scenarios in the Industrial Internet of Things where storage resources are limited and latency is sensitive.
[0084] In this step, the population size and maximum number of iterations in the evolutionary algorithm are pre-set. The maximum number of iterations is the termination condition of the evolutionary algorithm to ensure that the computation time is controllable and meets the real-time constraints of the industrial IoT scenario. Here, the population size can be specifically set according to the search capabilities and computational costs of the industrial IoT scenario. For example, in industrial IoT scenarios with limited storage resources, the population size is set to be smaller, such as 20-50, to balance the optimization effect and real-time requirements.
[0085] Furthermore, since the solution to the multi-objective block migration optimization model is the target migration number of target migration blocks that each blockchain node should migrate, i.e., the decision variable, this embodiment uses integer encoding to initialize a preset number of candidate decision variables from the feasible domain of the decision variables as candidate solutions to the multi-objective block migration optimization model, and uses these candidate decision variables as initial individuals. It can be understood that each individual is also a candidate solution to the multi-objective block migration optimization model. It should be noted that each individual includes candidate values for the target migration number of target migration blocks for each blockchain node in the blockchain, i.e., the number of blocks that each blockchain node may migrate.
[0086] It should be noted that the feasible domain of the decision variable is determined based on the number of candidate migration blocks for each blockchain node within the observation time window, and is expressed as: , Integer encoding means that the candidate values for the number of objective transitions in the candidate solutions are integers.
[0087] Furthermore, an initial parent population is formed based on the initialized individuals. Then, genetic operations such as random matching, simulated binary crossover, and polynomial mutation are performed on the initial parent population to generate a new offspring population with the same preset size. The initial parent population and the offspring population are then merged to obtain a combined population. Understandably, the combined population includes twice the preset number of individuals.
[0088] Furthermore, the objective function value for each individual in the joint population is calculated using the objective function in the multi-objective block migration optimization model. It can be understood that the objective functions in the multi-objective block migration optimization model include: the block usage probability objective function for blockchain nodes, the cloud storage cost objective function, the blockchain space occupancy rate objective function, and the blockchain migration cost objective function. The individual objective function values include the block usage probability objective function value, the cloud storage cost objective function value, the blockchain space occupancy rate objective function value, and the blockchain migration cost objective function value for each blockchain node. Therefore, in subsequent steps, based on the individual objective function values, the next generation parent population is determined from the joint population.
[0089] Step 206: Normalize the objective function values of individuals in the joint population; transform the normalized objective function values of individuals in the joint population; based on the transformed objective function values of individuals in the joint population, perform Pareto domination on individuals in the joint population to obtain convergence evaluation values of individuals in the joint population; sort individuals in the joint population according to convergence evaluation values to obtain the first convergence order, add the individual at the top of the first convergence order to the next generation parent population, and remove the individual at the top of the first convergence order from the joint population.
[0090] In this step, all objective function values of all individuals in the joint population are normalized to eliminate the influence of differences in objective dimensions and scales on the selection operation.
[0091] For example, normalization is performed according to the following formula: , in, The index of the objective function; In this embodiment, the number of objective functions is... = +3; From 1 to At that time, respectively corresponding to The blocks of each blockchain node use a probabilistic objective function; for +1 to When +3, it corresponds to the objective function of cloud storage cost, the objective function of blockchain space occupancy rate, and the objective function of blockchain migration cost, respectively. For a joint population medium-sized individuals The The objective function value, For a joint population medium-sized individuals Normalized The objective function value. , They are joint populations The first of all individuals The maximum and minimum values among the objective function values.
[0092] Furthermore, in the normalized target space, the normalized objective function values of individuals in the joint population are transformed to enhance the distinguishability between individuals in the high-dimensional target space, thereby more effectively guiding the population to converge.
[0093] For example, the transformation includes an initial transformation and a target transformation. The initial transformation is performed on the normalized target function values of individuals in the joint population according to the following formula: , in, For a circular index, It will sequentially take values from 1 to 1. All integer values, but It will skip the currently being calculated joint population. medium-sized individuals Normalized The objective function value. For individuals in a syndicated population Normalized The objective function value. Indicates that they will unite the population medium-sized individuals After normalization, the first All other than the objective function value -1 normalized objective function value Perform summation. To preset weights, The synod population was preserved. medium-sized individuals In the Performance on each objective function This individual was introduced. Other objective functions Overall performance. When When large, syngas medium-sized individuals The first after initial transformation The objective function value It depends mainly on the individual. Normalized The objective function value This makes the initial transformation focus more on the individual's performance on a single target; conversely, The initial transformation is more influenced by the performance of other objectives, making it more important to emphasize the overall balance of an individual across all objectives.
[0094] Therefore, after the initial transformation, the objective function value of each individual in the joint population after the initial transformation integrates the local objective and the global performance. This makes an individual with moderate and balanced performance in all objectives more advantageous in the high-dimensional objective space than an individual with excellent performance in one objective but poor performance in other objectives. This significantly increases the possibility of Pareto dominance among individuals and effectively strengthens the guidance on population convergence.
[0095] Here, the preset weights are determined based on the level of attention given to each objective function of the multi-objective block migration optimization model in the actual industrial IoT scenario, and are sufficient to meet the actual solution requirements. For example, the preset weights are set to 0.3-0.7, and this embodiment does not impose specific limitations. It can be understood that the objective is the optimization objective of the multi-objective block migration optimization model, which corresponds to each objective function in the multi-objective block migration optimization model.
[0096] The objective function value of an individual in the joint population after initial transformation is transformed according to the following formula: , in, It is also a circular index. It will sequentially take values from 1 to 1. All integer values, but It will skip the currently being calculated joint population. medium-sized individuals The first after initial transformation The objective function value. For individuals in a syndicated population The first after initial transformation The objective function value. Indicates that they will unite the population medium-sized individuals After the initial transformation, the th All other than the objective function value -1 initial transformed objective function value Perform summation. As a penalty term, the objective transformation is applied to the joint population. medium-sized individuals The first after initial transformation The maximum value between the objective function value and its penalty term is taken to obtain the individual. The final transformed number The objective function value .
[0097] Here, if an individual in the joint population performs extremely well on one objective but extremely poorly on others, after taking the maximum value of the objective transformation, the transformed objective function value of that individual on the objective where it performs well will be very large. This punishes individuals with unbalanced performance across objectives, thereby encouraging individuals with balanced development across all objectives.
[0098] Therefore, the joint population any individual Transformed objective function value Represented as: , , in, This indicates that the following content refers to an individual. The constraints. It indicates that it belongs to. This represents the feasible region. express The real space, that is, the individual is composed of A vector consisting of real number components. The feasible region is A subset within.
[0099] Furthermore, in the transformed objective space, based on the transformed objective function value of any individual in the joint population, the number of individuals that the individual can be Pareto dominated in the joint population is calculated, and this number of individuals is used as the convergence evaluation value of the individual.
[0100] For example, the convergence evaluation value of an individual in a joint population is determined according to the following formula; , in, For a joint population Remove individuals Other individuals as they thought. This indicates that Pareto dominates. Indicates a joint population medium-sized individuals Capable of controlling individuals . For a joint population medium-sized individuals The convergence evaluation value.
[0101] It should be noted that the joint population In the middle, individuals Capable of controlling individuals The condition is: individual At least with individuals on all goals Equal, and more than individuals in at least one objective. Even better. In this embodiment, the individual At least with individuals on all goals Equal, manifested in individuals All transformed objective function values are at least the same as individual Equal; Individual Compared to individuals in at least one objective Superior, manifested in individuals At least one of the transformed objective function values is less than that of the individual. .
[0102] Therefore, based on the calculated convergence evaluation value from smallest to largest, individuals in the joint population are sorted to obtain the first convergence order. The individual at the top of the first convergence order is added to the next generation parent population. The individual with the best convergence (i.e. the largest convergence evaluation value) is selected from the joint population and directly saved to the next generation parent population. This individual is then removed from the joint population to ensure that the population converges quickly.
[0103] Step 207: Perform Pareto nondominated sorting on the removed joint population to obtain nondominated front layers at different levels.
[0104] In this step, the remaining individuals in the combined population after removal are subjected to Pareto non-dominated sorting, dividing them into multiple non-dominated front layers. This classifies the remaining individuals in the combined population into different levels, thereby preferentially selecting higher-level individuals to join the next generation of the parent population. For example, the non-dominated front layer can be represented as: ,in, These are the different levels of non-dominated frontier layers, from high to low. This is the optimal layer.
[0105] It should be noted that the first-level non-dominated front layer includes individuals in the joint population that are not dominated by any other individuals, and these individuals do not dominate each other. The second-level non-dominated front layer includes individuals in the joint population excluding those in the first-level non-dominated front layer that are not dominated by any other individuals, and so on, resulting in various non-dominated front layers for the joint population.
[0106] Therefore, in subsequent steps, a cascaded selection operation of diversity selection and convergence selection is performed cyclically on different levels of the non-dominated frontier layer to select individuals from different levels of the non-dominated frontier layer to join the next generation of parent population until the population size of the next generation of parent population reaches the preset number.
[0107] Step 208: Sort the non-dominated front layer according to hierarchy to obtain the hierarchical order, and take the first level in the hierarchical order as the target level; calculate the minimum adaptive mapping parallel distance between individuals in the non-dominated front layer of the target level and selected individuals in the next generation parent population, and determine the number of candidate individuals in the next generation parent population based on the difference between the preset number and the number of selected individuals in the next generation parent population; based on the comparison between the number of individuals in the non-dominated front layer of the target level and the number of candidate individuals in the next generation parent population, determine a temporary population from the non-dominated front layer of the target level according to the value of the minimum adaptive mapping parallel distance.
[0108] In this step, diversity selection is performed. Specifically, the non-dominated frontier layers are sorted from highest to lowest level to obtain a hierarchical order. The layer at the top of the hierarchical order is then selected as the target layer, thus choosing the non-dominated frontier layer with the highest priority. Next, calculate the current highest priority non-dominated frontier layer. The minimum adaptive mapping parallel distance between each individual and all individuals in the next generation parent population is considered. The larger the minimum adaptive mapping parallel distance, the sparser the region to which the individual belongs and the better the diversity.
[0109] At the same time, according to the preset population size (i.e., preset number) ) and the next generation of parent population The difference in the number of selected individuals in the parent population is used to determine the number of candidate individuals to be added in the next generation (i.e., the number of individuals to be added in the parent population). If the current highest priority non-dominated frontier layer... The number of individuals in the middle generation is greater than the number of candidate individuals in the next generation parent population. Then, based on the minimum adaptive mapping parallel distance, prioritize the non-dominated front layers with the largest current priority from high to low. Sort the individuals to obtain their order, and then select the first individuals in the order. Individuals with good diversity were preserved in the temporary population. In the middle. If the current highest priority non-dominated frontier layer If the number of candidate individuals is less than or equal to the number of parent individuals in the next generation, then the current highest priority non-dominated frontier layer will be selected. All individuals are preserved in a temporary population. It should be noted that the selected individuals in the next generation parent population are those that have already entered the next generation parent population in the combined population.
[0110] For example, the minimum adaptive mapping parallel distance is calculated according to the following formula: , , in, For individuals in the non-dominated frontier layer of the target level, For the next generation of individuals already selected from the parent population, For individuals in the non-dominated frontier layer of the target level Between the selected individuals in the next generation of the parent population The adaptive mapping parallel distance, For individuals in the non-dominated frontier layer of the target level Between and all selected individuals in the next generation of the parent population The minimum adaptive mapping parallel distance. For individuals Normalized The objective function value, For individuals Normalized There are several objective function values; min() is the function to find the minimum value.
[0111] here, Measuring the distance between two individuals using Euclidean distance and The total difference in absolute values across all targets. This is used to capture the consistency of the direction of difference between two individuals across various targets. If the two individuals differ by a similar amount across all targets, such as individual... Superior to individuals in all goals If the two individuals have different absolute positions, their adaptive mapping parallel distance will decrease, meaning that although they are in different positions, they are homogeneous in the target space and contribute little to increasing population diversity. If the two individuals have different strengths and weaknesses on different targets, their adaptive mapping parallel distance will increase, meaning that they are heterogeneous and can provide different trade-off perspectives, contributing significantly to diversity. This ensures that the final output target population can uniformly and broadly cover the entire target space, providing decision-makers with a rich variety of choices.
[0112] Step 209: Sort the individuals in the temporary population according to the convergence evaluation value to obtain the second convergence order, add the first individual in the second convergence order to the next generation parent population, and remove the first individual in the second convergence order from the non-dominated front layer and the joint population of the target level.
[0113] In this step, convergence selection is performed. Specifically, it is based on the convergence evaluation value. For temporary populations The individuals in the middle are sorted to obtain a second convergent order, and the individual at the top of the second convergent order is added to the next generation of the parent population. To transition from temporary populations Select The largest and most convergent individual is added to the next generation of the parent population. In the middle, and remove the individual from the current highest priority non-dominated frontier layer. With the joint population Removed from the middle.
[0114] Step 210: If there are individuals in the non-dominated front layer of the target level after removal, and the number of selected individuals in the next generation parent population is less than the preset number, recalculate the minimum adaptive mapping parallel distance between the individuals in the non-dominated front layer of the target level after removal and the selected individuals in the next generation parent population, until there are no individuals in the non-dominated front layer of the target level after removal or the number of selected individuals in the next generation parent population is equal to the preset number.
[0115] In this step, the cyclical execution of cascading selection is evaluated. Specifically, if the currently highest-priority non-dominated frontier layer is removed... The process is not yet complete, and the population size of the next generation of parent species has not reached the preset number, meaning the current highest priority non-dominant frontier layer after removal... If individuals still exist in the population, and the number of selected individuals in the next generation's parent population is less than the preset number, then diversity selection continues to be performed on the same layer, that is, on the currently highest-priority non-dominant frontier layer after removal. Perform diversity selection and recalculate the current highest priority non-dominated frontier layer after removal. The minimum adaptive mapping parallel distance between the selected individuals in the middle generation and the selected individuals in the next generation parent population is used until the same layer is processed or the population size of the next generation parent population reaches a preset number, i.e., the current highest priority non-dominated front layer after removal. There are no individuals in the population or the number of selected individuals in the next generation parent population is equal to the preset number.
[0116] Step 211: If there are no individuals in the non-dominated front layer of the target level after removal, and the number of selected individuals in the next generation parent population is less than the preset number, update the level next to the target level in the hierarchical order to the target level, and calculate the minimum adaptive mapping parallel distance between individuals in the non-dominated front layer of the updated target level and selected individuals in the next generation parent population, until the number of selected individuals in the next generation parent population is equal to the preset number.
[0117] In this step, if the currently highest priority non-dominated frontier layer is removed... The process has been completed, and the population size of the next generation of parent species has not yet reached the preset number, meaning the current highest priority non-dominant frontier layer after removal... If no individuals are found in the parent population and the number of selected individuals in the next generation is less than the preset number, then the process moves to the next non-dominant frontier layer. So as to make the non-dominated frontier layer Update the current highest priority non-dominated frontier layer, that is, update the layer that is one level below the target layer in the hierarchy to the target layer. Then update the updated current highest priority non-dominated frontier layer. Perform diversity selection and compute the updated current top-priority non-dominated frontier layer. The minimum adaptive mapping parallel distance between an individual in the middle generation and the selected individuals in the next generation parent population is calculated until the population size of the next generation parent population reaches a preset number, that is, the number of selected individuals in the next generation parent population equals the preset number.
[0118] Step 212: The parent population output when the number of evolutionary iterations equals the preset maximum number of iterations is taken as the target population.
[0119] In this step, if the number of selected individuals in the next generation parent population is equal to the preset number, the current evolutionary iteration is completed, and genetic operations are performed on the next generation parent population until the number of evolutionary iterations is equal to the preset maximum number of iterations. The parent population output when the number of evolutionary iterations is equal to the preset maximum number of iterations is taken as the solution result of the multi-objective block migration optimization model, i.e., the target population.
[0120] Step 213: Determine the target migration quantity corresponding to the blockchain node based on the individuals in the target population; migrate the target migration blocks with the target migration quantity from the candidate migration blocks of the blockchain node within the observation time window to cloud storage.
[0121] In this step, the solution results of the multi-objective block migration optimization model, i.e., the target population, include multiple feasible solutions that achieve different trade-offs among the objectives. Based on the actual needs and objective preferences in real industrial sites and industrial IoT scenarios, a final target individual is selected from all individuals in the target population for execution. The target individual is the target migration number of target migration blocks determined by each blockchain node in the blockchain to be migrated to cloud storage.
[0122] For specific examples, the actual needs and objectives in real-world industrial settings and Industrial Internet of Things (IIoT) scenarios might prioritize real-time performance, minimize costs, or quickly release storage space on specific nodes. In IIoT scenarios with limited storage resources, such as smart healthcare or real-time device control, prioritizing real-time performance means selecting the individual with the lowest block usage probability objective function value from the target population. In IIoT scenarios with limited storage resources and cost-sensitive warehousing and logistics, minimizing costs means selecting the individual with the lowest weighted sum of cloud storage cost and blockchain migration cost objective functions from the target population. Finally, in IIoT scenarios with limited storage resources where a blockchain node's storage capacity is about to be exhausted, selecting the individual with the lowest blockchain space occupancy objective function value for that blockchain node from the target population.
[0123] Next, based on the target migration quantity of the target migration blocks determined by each blockchain node within the target individual and to be migrated to cloud storage, the entire blockchain's block migration operation is performed within the next observation time window, thus generating block migration records within the next observation time window. Specifically, from the candidate migration blocks of each blockchain node within the current observation time window, the earliest generated candidate migration block corresponding to the target migration quantity for that blockchain node within the target individual is selected as the target migration block. This target migration block for that blockchain node undergoes symmetric encryption and redundancy processing before being migrated to cloud storage to ensure data confidentiality and improve storage reliability. After the block migration operation is completed, the Merkle root hash value of the migrated target migration block is calculated, and this Merkle root hash value is embedded as metadata into the block header of subsequently added blocks in the blockchain. This constructs a hash anchor chain from on-chain to off-chain cloud, ensuring that any tampering with block data stored in the cloud can be detected by on-chain verification. This ensures the integrity and verifiability of the entire data system without storing all data locally.
[0124] This embodiment fundamentally solves the storage problem faced by blockchain-enabled Industrial Internet of Things (IIoT). The core idea is no longer to optimize local storage, but to conditionally select some blocks for cloud storage without compromising on-chain verifiability. This truly releases the local storage space of blockchain nodes, expands the overall storage capacity of the blockchain, and significantly reduces storage pressure, thus benefiting real-time, security, and economic applications. Furthermore, through high-dimensional multi-objective optimization, it achieves the optimal trade-off between block usage probability, storage cost, space occupancy, and transmission costs, providing an optimal block migration configuration scheme for each blockchain node. Simultaneously, the hash anchor chain and cryptographic redundancy mechanism ensure data integrity, security, and verifiability while utilizing cloud storage. Moreover, the method used in this embodiment to solve the multi-objective migration optimization model can efficiently solve high-dimensional optimization problems. Based on a diversity-first cascaded environment selection mechanism, it ensures that even with a small population size, it can efficiently obtain a set of optimal solutions that are evenly distributed in the target space and approximate the true frontier, perfectly adapting to the low-latency requirements and resource-constrained application scenarios of the IIoT.
[0125] In another embodiment of this application, the industrial site is an intelligent production line for automotive parts. The industrial equipment at the site includes welding robots (reporting welding current, voltage waveform data, workstation number, and program number), torque wrenches (reporting the precise tightening torque value for each bolt), and barcode scanners (reporting component serial numbers). This critical industrial data, directly determining product safety and compliance, is deployed on the industrial IoT network at the site and stored on the blockchain in real time. After the blockchain has been running for a period of time, the on-chain data reaches TB levels, and the disk space of some blockchain nodes is approaching the alarm threshold, requiring the release of local storage while ensuring verifiable traceability. The blockchain data cloud storage method described in this application is used for processing: The blockchain deployed in the intelligent production line for automotive parts consists of four blockchain nodes, each with... The value is set to 200. Observation time window. Set to 10 minutes and follow the rule of not migrating newly added blocks within the last 2 minutes. The cost ratio of cloud storage to blockchain storage is set to... The initial access frequency reference value and attenuation coefficient are set as follows: linear attenuation coefficient Exponential decay coefficient The node weight coefficients of the four blockchain nodes are set to 0.3, 0.2, 0.4, and 0.1 respectively to reflect their different storage capacities and importance. The population size is determined during the solution process. Set to 20, and the maximum number of iterations is used as the termination condition, with a value of 10000, to meet the real-time requirements of the Industrial Internet of Things.
[0126] This embodiment yielded a Pareto optimal solution set (i.e., the target population). Table 1 lists three solutions obtained under three modes: constant, linear decay, and exponential decay, with the block using the frequency function respectively. Due to space limitations, only three solutions are presented in this embodiment.
[0127] In constant mode: Migrating 85, 132, 42, and 184 blocks from 4 blockchain nodes to the cloud respectively, the storage space saved for each node is 42.5%, 66%, 21%, and 92% respectively.
[0128] In linear decay mode, the number of blocks migrated from the four blockchain nodes are 58, 112, 38, and 165 respectively, saving 29%, 56%, 19%, and 82.5% of storage space.
[0129] In the exponential decay mode, the number of blocks migrated from the four blockchain nodes are 75, 118, 83, and 135 respectively, saving 37.5%, 59%, 41.5%, and 67.5% of storage space.
[0130] Based on the calculation of the node weight coefficients of each blockchain node, the effective weighted storage space saved by the blockchain in the three scenarios are 42.3%, 35.75%, and 46.4%, respectively. The results show that this embodiment can effectively and significantly relieve the local storage pressure of blockchain nodes, verifying its effectiveness in solving the storage problem in blockchain-enabled industrial IoT.
[0131] Among them, Table 1 , , , The target number of blocks to be migrated for the four blockchain nodes to be migrated to cloud storage. , , , These represent the block usage probability objective function values for the four blockchain nodes in the multi-objective block migration optimization model. , , These represent the objective function values for cloud storage cost, blockchain space occupancy rate, and blockchain migration cost in the multi-objective block migration optimization model, respectively.
[0132] Table 1
[0133] This embodiment compares the method used to solve the multi-objective migration optimization model with three other advanced high-dimensional multi-objective optimization algorithms.
[0134] Three of the high-dimensional multi-objective evolutionary algorithms include RVEA (Reference Vector Guided Evolutionary Algorithm), VaEA (A·Vector Angle-Based Evolutionary Algorithm for Unconstrained Many-Objective Optimization), and MaOEA-CSS (Many-Objective Evolutionary Algorithms Based on Coordinated Selection Strategy).
[0135] Table 2 shows the HV (hyper-volume) values obtained by running each algorithm independently 20 times on the multi-objective migration optimization model. HV measures both the convergence and diversity of the solution set. As shown in Table 2, the HV value obtained by the method used in this embodiment to solve the multi-objective migration optimization model is significantly better than that of the other comparative algorithms.
[0136] Table 2 uses scientific notation to represent the mean and standard deviation of the HV index. For example, 3.2462e-2 (5.28e-3) indicates that the mean HV index under the linear decay mode of the RVEA algorithm is 0.032462 and the standard deviation is 0.00528.
[0137] Table 2
[0138] Table 3 shows a comparison of the average values of each objective function for each algorithm in the exponential decay scenario. As can be seen from Table 3, the method used in this embodiment to solve the multi-objective migration optimization model achieves optimal performance on all objectives. This proves that the diversity-first principle and cascaded selection mechanism employed in the method used in this embodiment to solve the multi-objective migration optimization model can effectively balance convergence and diversity, thereby obtaining an optimal decision set that is closer to the true Pareto front.
[0139] Table 3
[0140] It should be noted that the sequence number of each step in the above embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.
[0141] Furthermore, such as Figure 3As shown, as a specific implementation of the above-mentioned blockchain data cloud storage method, this application embodiment provides a blockchain data cloud storage device 300, which includes: a determination module 301, a construction module 302, and a migration module 303.
[0142] Among them, the determining module 301 is used to determine the block migration trigger threshold of the blockchain node based on the storage status index of the blockchain node within the observation time window. The blockchain is deployed in the industrial site, and the storage status index is determined based on the blocks stored in the blockchain node. The blocks stored in the blockchain node are determined based on the industrial data generated by industrial equipment in the industrial site through the industrial Internet of Things deployed in the industrial site. Module 302 is used to construct a multi-objective block migration optimization model for the blockchain if the number of new blocks added by the blockchain node within the observation time window is greater than the block migration trigger threshold of the blockchain node; and to solve the multi-objective block migration optimization model to obtain the target migration number corresponding to the blockchain node. The migration module 303 is used to determine the target number of migration blocks to migrate from the candidate migration blocks of the blockchain node within the observation time window to cloud storage. The candidate migration blocks are determined based on the new blocks added by the blockchain node within the observation time window.
[0143] Specific limitations regarding blockchain data cloud storage devices can be found in the limitations of blockchain data cloud storage methods described above, and will not be repeated here. Each module in the aforementioned blockchain data cloud storage device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device in hardware form, or stored in the memory of a computer device in software form, so that the processor can call and execute the operations corresponding to each module.
[0144] Based on the above, Figures 1 to 2 Accordingly, embodiments of this application also provide a readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the above-described method. Figures 1 to 3 The blockchain data cloud storage method is shown.
[0145] Based on this understanding, the technical solution of this application can be embodied in the form of a software product. The software product can be stored in a non-volatile storage medium (such as a CD-ROM, USB flash drive, or portable hard drive), and includes several instructions to cause a computer device (such as a personal computer, server, or network device) to execute the methods described in the various implementation scenarios of this application.
[0146] Based on the above, Figures 1 to 2 The method shown, and Figure 3To achieve the above objectives, the present application also provides a computer device, specifically a personal computer, server, network device, etc., as shown in the virtual device embodiment. This computer device includes a storage medium and a processor; the storage medium stores a computer program; the processor executes the computer program to achieve the above-described objectives. Figures 1 to 2 The blockchain data cloud storage method is shown.
[0147] Optionally, the computer device may also include a user interface, a network interface, a camera, radio frequency (RF) circuitry, sensors, audio circuitry, a Wi-Fi module, etc. The user interface may include a display screen, input units such as a keyboard, etc., and optional user interfaces may also include USB ports, card reader ports, etc. The network interface may optionally include standard wired interfaces, wireless interfaces (such as Bluetooth interfaces, Wi-Fi interfaces), etc.
[0148] Those skilled in the art will understand that the computer device structure provided in this embodiment does not constitute a limitation on the computer device, and may include more or fewer components, or combine certain components, or have different component arrangements.
[0149] The storage medium may also include an operating system and a network communication module. The operating system is a program that manages and stores the hardware and software resources of a computer device, supporting the operation of information processing programs and other software and / or programs. The network communication module is used to enable communication between the various components within the storage medium, as well as communication with other hardware and software within the physical device.
[0150] Through the above description of the embodiments, those skilled in the art can clearly understand that this application can be implemented by means of software plus necessary general-purpose hardware platform, or the application embodiments can be implemented by hardware.
[0151] Those skilled in the art will understand that the accompanying drawings are merely schematic diagrams of a preferred embodiment, and the modules or processes shown in the drawings are not necessarily essential for implementing this application. Those skilled in the art will understand that the modules in the apparatus of the embodiment can be distributed within the apparatus of the embodiment as described, or can be modified to be located in one or more apparatuses different from this embodiment. The modules of the above-described embodiment can be combined into one module, or further divided into multiple sub-modules.
[0152] The serial numbers in this application are for descriptive purposes only and do not represent the superiority or inferiority of any particular implementation scenario. The above disclosures are merely a few specific implementation scenarios of this application; however, this application is not limited thereto, and any variations conceived by those skilled in the art should fall within the protection scope of this application.
Claims
1. A blockchain data cloud storage method, characterized in that, The method includes: Based on the storage status indicators of blockchain nodes within the observation time window, the block migration trigger threshold of the blockchain node is determined. The blockchain is deployed in an industrial site, and the storage status indicators are determined based on the blocks stored in the blockchain node. The blocks stored in the blockchain node are determined based on industrial data generated by industrial equipment in the industrial site through the industrial Internet of Things deployed in the industrial site. If the number of new blocks added by the blockchain node within the observation time window is greater than the block migration trigger threshold of the blockchain node, a multi-objective block migration optimization model for the blockchain is constructed. The multi-objective block migration optimization model is solved to obtain the number of target migrations corresponding to the blockchain node; The blockchain node determines the target migration quantity of target migration blocks from the candidate migration blocks within the observation time window and migrates them to cloud storage. The candidate migration blocks are determined based on the new blocks added by the blockchain node within the observation time window. The construction of the multi-objective block migration optimization model for the blockchain specifically includes: Based on the preset block usage frequency function corresponding to the candidate migration block of the blockchain node within the observation time window, the number of candidate migration blocks, the target migration number of the target migration block migrated by the blockchain node, and the preset usage frequency benchmark value, the sum of the future usage loss values of the target migration block migrated by the blockchain node is determined. With the goal of minimizing the sum of future usage loss values of the target migrated blocks of the blockchain node, a block usage probability objective function for the blockchain node is constructed. The cloud storage cost of the blockchain is determined based on the preset cost ratio between cloud storage and blockchain storage, the average size of new blocks added by the blockchain node within the observation time window, and the target migration number of the target migration blocks of the blockchain node. With the goal of minimizing the cloud storage cost of the blockchain, a cloud storage cost objective function is constructed; Based on the number of candidate migration blocks of the blockchain node within the observation time window, the target migration number of the target migration block of the blockchain node, and the preset node weight coefficient of the blockchain node, the weighted space occupancy rate of the candidate migration blocks in the blockchain after migration is determined. With the goal of minimizing the weighted space occupancy rate of the migrated blockchain, a blockchain space occupancy objective function is constructed. Based on the target migration number of the target migration block of the blockchain node, the average size of the new block added by the blockchain node within the observation time window, and the effective uplink bandwidth used by the blockchain to migrate the block to the cloud storage within the observation time window, the transmission cost of the blockchain to migrate the target migration block to the cloud storage is determined. With the goal of minimizing the transmission cost of the blockchain, a blockchain migration cost objective function is constructed; The multi-objective block migration optimization model is constructed based on the objective function of the block usage probability of the blockchain node, the objective function of the cloud storage cost, the objective function of the blockchain space occupancy rate, and the objective function of the blockchain migration cost.
2. The blockchain data cloud storage method according to claim 1, characterized in that, The storage status indicators include: the storage space occupancy rate and available storage capacity of the blockchain node within the observation time window. The step of determining the block migration trigger threshold of the blockchain node based on the storage status indicators of the blockchain node within the observation time window specifically includes: The storage pressure index of the blockchain node within the observation time window is determined by the weighted sum of the storage space occupancy rate and the available storage capacity of the blockchain node within the observation time window. Based on the variance and average of the single effective throughput of the blockchain's block migration records within the observation time window, the congestion index of the transmission network between the blockchain and the cloud within the observation time window is determined. Based on the transmission network congestion index between the blockchain and the cloud within the observation time window, the storage pressure index of the blockchain node, a preset block migration baseline threshold, and a preset gain coefficient of the transmission network congestion index and the storage pressure index, the block migration trigger threshold of the blockchain node is determined.
3. The blockchain data cloud storage method according to claim 1, characterized in that, The method further includes: If the number of block migration records in the blockchain within the observation time window is greater than a preset threshold, the single effective throughput of the block migration record is calculated based on the total number of bytes transmitted, the start time of transmission, and the end time of transmission of the block migration record, and the median of the single effective throughput of the block migration record is taken as the effective uplink bandwidth. If the number of block migration records in the blockchain within the observation time window is less than or equal to the preset threshold, the blockchain node randomly selected in the blockchain is controlled to send byte samples to the cloud, and the effective uplink bandwidth is determined based on the sending duration and the number of bytes sent.
4. The blockchain data cloud storage method according to claim 1, characterized in that, Solving the multi-objective block migration optimization model to obtain the target migration number corresponding to the blockchain node specifically includes: Based on the number of candidate migration blocks of the blockchain node within the observation time window, a preset number of candidate solutions for the multi-target block migration optimization model are determined. The candidate solutions include candidate values for the number of target migration blocks of the blockchain node that are migrated to the cloud storage. The candidate solutions are treated as individuals, and a parent population is formed based on these individuals; The objective function value of the individual is calculated using the objective function in the multi-objective block migration optimization model. The objective function includes the block usage probability objective function of the blockchain node, the cloud storage cost objective function, the blockchain space occupancy rate objective function, and the blockchain migration cost objective function. Genetic operations are performed on the parent population to obtain the offspring population, and the parent population and the offspring population are merged to obtain a combined population; Based on the objective function value of the individual, the next generation of the parent population is determined from the joint population until the number of evolutionary iterations equals the preset maximum number of iterations, and the parent population is output as the target population. Based on the individuals in the target population, determine the target migration quantity corresponding to the blockchain node.
5. The blockchain data cloud storage method according to claim 4, characterized in that, The determination of the next generation of the parent population from the joint population based on the objective function value of the individual specifically includes: The objective function values of individuals in the joint population are normalized. The normalized objective function values of individuals in the joint population are transformed. Based on the transformed objective function values of individuals in the joint population, Pareto domination is applied to the individuals in the joint population to obtain the convergence evaluation values of the individuals in the joint population. According to the convergence evaluation value, the individuals in the joint population are sorted to obtain a first convergence order, and the individual at the top of the first convergence order is added to the next generation of the parent population, and the individual at the top of the first convergence order is removed from the joint population. Pareto nondominated sorting was performed on the removed joint population to obtain nondominated front layers at different levels; The non-dominated frontier layers are sorted according to the hierarchy to obtain a hierarchical order, and the first layer in the hierarchical order is taken as the target layer. Calculate the minimum adaptive mapping parallel distance between individuals in the non-dominated front layer of the target level and selected individuals in the next generation of the parent population, and determine the number of candidate individuals in the next generation of the parent population based on the difference between the preset number and the number of selected individuals in the next generation of the parent population, wherein the selected individuals are those that have entered the next generation of the parent population. Based on the minimum adaptive mapping parallel distance, the number of candidate individuals in the next generation of the parent population, and the convergence evaluation value, the next generation of the parent population is determined from the non-dominated frontier layers at different levels.
6. The blockchain data cloud storage method according to claim 5, characterized in that, The determination of the next-generation parent population from the different levels of the non-dominated frontier, based on the minimum adaptive mapping parallel distance, the number of candidate individuals in the next-generation parent population, and the convergence evaluation value, specifically includes: Based on the comparison between the number of individuals in the non-dominated front layer of the target level and the number of candidate individuals in the next generation of the parent population, a temporary population is determined from the non-dominated front layer of the target level according to the numerical value of the minimum adaptive mapping parallel distance. According to the convergence evaluation value, the individuals in the temporary population are sorted to obtain a second convergence order, and the individual at the top of the second convergence order is added to the next generation of the parent population. The individual at the top of the second convergence order is removed from the non-dominated front layer of the target level and the joint population. If there are individuals in the non-dominated front layer of the target level after removal, and the number of selected individuals in the next generation of the parent population is less than the preset number, the minimum adaptive mapping parallel distance between the individuals in the non-dominated front layer of the target level after removal and the selected individuals in the next generation of the parent population is recalculated until there are no individuals in the non-dominated front layer of the target level after removal or the number of selected individuals in the next generation of the parent population is equal to the preset number. If there are no individuals in the non-dominated front layer of the target level after removal, and the number of selected individuals in the next generation of the parent population is less than the preset number, the level next to the target level in the hierarchical order is updated to the target level, and the minimum adaptive mapping parallel distance between individuals in the non-dominated front layer of the updated target level and selected individuals in the next generation of the parent population is calculated until the number of selected individuals in the next generation of the parent population is equal to the preset number.
7. The blockchain data cloud storage method according to claim 5, characterized in that, The normalized objective function value of individuals in the joint population is transformed according to the following formula: , , in, For circular indices, the value ranges from 1 to... ; The number of the objective functions; The index of the objective function; For individuals in the aforementioned joint population Normalized One objective function value; For individuals in the aforementioned joint population Normalized One objective function value; Preset weights; For individuals in the aforementioned joint population The first after initial transformation One objective function value; For individuals in the aforementioned joint population The first after initial transformation The objective function has several values; max() is the function to find the maximum value; For individuals in the aforementioned joint population The transformed first The objective function value.
8. The blockchain data cloud storage method according to claim 5, characterized in that, The minimum adaptive mapping parallel distance between an individual in the non-dominated front layer of the target level and the selected individuals in the next generation of the parent population is calculated according to the following formula; , , in, The number of the objective functions; The index of the objective function; For individuals in the non-dominated frontier layer of the target level Normalized One objective function value; Selected individuals from the parent population for the next generation Normalized One objective function value; For individuals in the non-dominated frontier layer of the target level Between the next generation and the selected individuals in the parent population The adaptive mapping parallel distance, For individuals in the non-dominated frontier layer of the target level The minimum adaptive mapping parallel distance between the next generation and all selected individuals in the parent population; The parent population is the next generation; min() is the minimum value function; For individuals Normalized The objective function value, For individuals Normalized The objective function value.
Citation Information
Patent Citations
Data storage method and device based on block chain and related equipment
CN120066381A
Data flow management system and method based on block chain technology
CN120197232A
Decentralized processing of global naming systems
US20170236123A1
Virtual-machine scheduling method and apparatus, and storage medium and electronic device
WO2024212620A1