Subnet-aware distributed data partition management method and system, medium and device

By adopting a subnet-aware, progressively weighted, round-robin distributed data partitioning management method, the problems of data isolation and dynamic expansion in high-temperature reactors in the nuclear industry are solved, achieving efficient and reliable real-time data storage and high system availability, and adapting to the performance requirements of multiple reactors sharing a server.

CN122086958APending Publication Date: 2026-05-26CHINA NUCLEAR CONTROL SYST ENG
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
CHINA NUCLEAR CONTROL SYST ENG
Filing Date
2026-03-06
Publication Date
2026-05-26

AI Technical Summary

Technical Problem

Traditional DCS technology architecture is difficult to adapt to the performance bottlenecks of multiple reactors sharing servers, real-time databases and networks in the large-scale construction of high-temperature reactors in the nuclear industry. Furthermore, the construction, commissioning, operation and maintenance phases of different modules are not synchronized, which makes data isolation and dynamic expansion difficult.

Method used

A subnet-aware, progressive weighted round-robin distributed data partitioning management method is adopted. Subnets are constructed based on business logic affiliation, and partition load is dynamically calculated by combining a weighted round-robin algorithm to achieve intelligent matching and capacity load balancing between subnets and partitions, ensuring efficient and reliable storage of real-time data for high-temperature stacks.

Benefits of technology

It achieves intelligent matching of subnets and partitions, balances capacity load, ensures efficient and reliable storage of real-time data of high-temperature stacks, supports large capacity requirements and modular phased construction, meets high availability and scalability requirements, and avoids the impact of traditional expansion methods on business interruption.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122086958A_ABST
    Figure CN122086958A_ABST
Patent Text Reader

Abstract

This application discloses a subnet-aware distributed data partitioning management method, system, medium, and device. The method includes: during the field deployment phase of a high-temperature reactor (HTGR), various hardware devices at the HTGR site are designated as field hard points. These hard points are then integrated based on business logic affiliation. A subnet is constructed based on field hard points belonging to the same business logic affiliation. The subnet is stored as an independent management unit in a nuclear industry distributed control system database. During storage, a weighted round-robin algorithm dynamically calculates the real-time capacity load of each partition in the nuclear industry distributed control system database. Based on the calculated real-time capacity load of each partition, each subnet is pre-allocated. This ensures that when the HTGR enters the operational phase, the real-time data generated by the field hard points within the subnet is stored in the pre-allocated partitions of the subnet. This method enables intelligent matching between subnets and partitions, balances capacity load, and ensures efficient and reliable storage of real-time data from the HTGR.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the fields of distributed database and industrial control technology, and in particular to a subnet-aware distributed data partitioning management method, system, medium, and device. Background Technology

[0002] With the large-scale application of high-temperature reactors (HTGRs) in the nuclear industry, unit capacity has increased from 200MW to 600MW, and the number of system hard points has increased dramatically from 16,000 to 40,000. Future large-scale HTGR construction will involve even more reactors built in batches, resulting in more reactors and higher power outputs. The performance bottleneck of multiple reactors sharing servers, real-time databases, and networks is becoming increasingly prominent. Furthermore, the nuclear industry adopts a phased construction approach, with each module consisting of two reactors. This results in asynchronous construction, commissioning, operation, and maintenance phases for different modules, creating unique requirements for data isolation and dynamic expansion. Traditional DCS (Distributed Control System) architectures are no longer adequate for this development trend. Summary of the Invention

[0003] In view of this, this application provides a subnet-aware distributed data partition management method, system, medium, and device. Through the subnet-aware progressive weighted round-robin distributed data partition management method, it can realize intelligent matching between subnets and partitions, balance capacity load, and ensure efficient and reliable storage of real-time data in high-temperature stacks.

[0004] According to one aspect of this application, a subnet-aware distributed data partitioning management method is provided, the method comprising: During the on-site setup phase of the high-temperature reactor, the business logic affiliation is determined based on the functional rules and interaction processes of each high-temperature reactor control system during operation. The high-temperature reactor control system includes at least one of the following: nuclear steam supply system, conventional island system, nuclear facility auxiliary system, and safety protection system. Various hardware devices at the high-temperature reactor site are treated as field hard points, and these field hard points are integrated by business logic affiliation. A subnet is constructed based on field hard points belonging to the same business logic affiliation. Each field hard point in the subnet corresponds to a tag point, which is used to represent at least one of the measured values, control signals, and intermediate calculated values ​​of the hardware device. Subnets are stored as independent management and control units in the nuclear industry distributed control system database. During the storage process, the real-time capacity load of each partition in the nuclear industry distributed control system database is dynamically calculated using a weighted round-robin algorithm. Based on the real-time capacity load calculated for each partition, each subnet is pre-allocated so that when the high-temperature reactor enters the operation phase, the real-time data generated by the field hard points within the subnet is stored in the pre-allocated partition of the subnet. The nuclear industry distributed control system database includes multiple partitions for hosting subnets, and each subnet is assigned a unique subnet number in the nuclear industry distributed control system database.

[0005] According to another aspect of this application, a subnet-aware distributed data partitioning management system is provided, the system comprising: The logical attribution determination module is used to determine the business logic attribution during the on-site deployment phase of the high-temperature reactor based on the functional rules and interaction processes of each high-temperature reactor control system during the operation of the high-temperature reactor. The high-temperature reactor control system includes at least one of the following: nuclear steam supply system, conventional island system, nuclear facility supporting auxiliary system, and safety protection system. The subnet construction module is used to treat various hardware devices at the high-temperature reactor site as field hard points, and integrate the field hard points through business logic affiliation. A subnet is constructed based on the field hard points belonging to the same business logic affiliation. Each field hard point in the subnet corresponds to a tag point, which is used to represent at least one of the measured values, control signals and intermediate calculated values ​​of the hardware device. The weighted round-robin allocation module is used to store subnets as independent management and control units in the nuclear industry distributed control system database. During the storage process, the real-time capacity load of each partition in the nuclear industry distributed control system database is dynamically calculated through a weighted round-robin algorithm. Based on the real-time capacity load calculated for each partition, each subnet is pre-allocated so that when the high-temperature reactor enters the operation phase, the real-time data generated by the field hard points in the subnet is stored in the pre-allocated partition of the subnet. The nuclear industry distributed control system database includes multiple partitions for hosting subnets. Each subnet in the nuclear industry distributed control system database is assigned a unique subnet number.

[0006] According to another aspect of this application, a medium is provided having a computer program stored thereon, which, when executed by a processor, implements the above-described subnet-aware distributed data partition management method.

[0007] According to another aspect of this application, an apparatus is provided, including a medium, a processor, and a computer program stored on the medium and executable on the processor, wherein the processor executes the program to implement the above-described subnet-aware distributed data partition management method.

[0008] By employing the above technical solutions, this application provides a subnet-aware distributed data partition management method, system, medium, and device that can achieve intelligent matching between subnets and partitions, balance capacity load, and ensure efficient and reliable storage of real-time data in high-temperature stacks.

[0009] 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, specific embodiments of this application are given below. Attached Figure Description

[0010] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments 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 a subnet-aware distributed data partition management method provided in an embodiment of this application is shown. Figure 2 This illustration shows a distributed data partitioning management architecture provided in an embodiment of this application. Figure 3 This illustration shows a load distribution design diagram for multi-subnet data in a distributed database with data partitioning and multiple replicas, provided by an embodiment of this application. Figure 4 This illustration shows a schematic diagram of the structure of a subnet-aware distributed data partitioning management system provided in an embodiment of this application. Detailed Implementation

[0011] 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.

[0012] This embodiment provides a subnet-aware distributed data partition management method, such as Figure 1 As shown, the method includes: Step 101: During the on-site setup phase of the high-temperature reactor, the business logic affiliation is determined based on the functional rules and interaction processes of each high-temperature reactor control system during operation. The high-temperature reactor control system includes at least one of the following: nuclear steam supply system, conventional island system, nuclear facility auxiliary system, and safety protection system. Step 102: Take all kinds of hardware devices at the high temperature reactor site as field hard points, and integrate the field hard points by business logic affiliation. Construct a subnet based on the field hard points belonging to the same business logic affiliation. Each field hard point in the subnet corresponds to a tag point. The tag point is used to represent at least one of the measured value, control signal and intermediate calculated value of the hardware device. Step 103: Store the subnet as an independent management and control unit in the nuclear industry distributed control system database. During the storage process, the real-time capacity load of each partition in the nuclear industry distributed control system database is dynamically calculated using a weighted round-robin algorithm. Based on the real-time capacity load calculated for each partition, each subnet is pre-allocated so that when the high-temperature reactor enters the operation phase, the real-time data generated by the field hard points in the subnet is stored in the pre-allocated partition of the subnet. The nuclear industry distributed control system database includes multiple partitions for hosting subnets. Each subnet in the nuclear industry distributed control system database is assigned a unique subnet number.

[0013] In the above embodiments of this application, such as Figure 2 As shown, based on the functional rules and interaction processes of systems such as the nuclear steam supply system, conventional island, and BOP (bottom-of-plant) system (auxiliary system for nuclear facilities), business logic is assigned. On-site hardware is designated as hard points with equipment information tags, and hard points with the same logic are integrated into independent subnets with unique subnet numbers. When the subnets are stored in the nuclear industry distributed database, the real-time capacity load of each partition (initial load + number of managed subnets) is calculated through a weighted round-robin algorithm, and the subnets are pre-allocated to the partition with the lowest load. During runtime, the real-time data of hard points within the subnet is directly written to the pre-allocated partition. That is, by combining "subnet awareness" for basic mapping and "weighted round-robin" for dynamic load adjustment, it can support high-availability partition management without migration and expansion, covering all core links, thereby realizing partition management of distributed data.

[0014] Specifically, each nuclear steam supply system consists of a modular high-temperature gas-cooled reactor, a spiral tube direct-flow steam generator, a main helium blower, and a set of hot gas ducts, among other systems and equipment. The turbine power generation system belongs to the conventional island system; within the high-temperature reactor system, multiple nuclear steam supply systems drive one turbine power generation system. The interaction process is as follows: each nuclear steam supply system adjusts its output power according to its assigned power setpoint, and the turbine follows the output power of all modules, ensuring that the unit's output power matches the unit's power generation load demand.

[0015] When classifying business logic, systems directly involved in the same process can be grouped into the same logic. For example, a nuclear steam supply system can be classified as a single business logic.

[0016] Next, each hardware device (such as a sensor or actuator) is abstracted as a "field hard point," such as "core neutron detector #1" or "cooling main pump #2." A unique identifier is assigned to each hard point, along with device information. Hard points belonging to the same business logic, or hard points from multiple business logics, are grouped into a subnet. For example: Subnet 1: Nuclear steam supply system #1 and nuclear steam supply system #2 belong to the same subnet.

[0017] Subnet 2: The regular island system and the BOP system belong to the same subnet, or they can be two different subnets.

[0018] It can also assign a unique subnet number (such as SN001, SN002) to each subnet and record the list of hard points it contains and its logical affiliation.

[0019] The nuclear industry distributed control system database is divided into multiple physical partitions (e.g., Partition1 to PartitionN), each with independent storage and computing capabilities to host subnet data. Specifically, it can also record the initial load (e.g., initial capacity unit = 1) for each partition and establish a list of currently hosted subnets.

[0020] During subnet allocation, all subnets are traversed, and the real-time capacity load of each partition in each subnet is calculated. The partition with the lowest load is selected as the target partition (in particular, if there are multiple partitions with the lowest load, they can be selected randomly or in round-robin order of priority).

[0021] Bind the subnet number to the target partition and update the partition load (e.g., if SN003 is assigned to Partition2, then PartitionLoad(2) = 1 + 1 = 2).

[0022] When the high-temperature reactor enters the operational phase, the data generated by hard points within the subnet (such as neutron flux and coolant temperature) carries a subnet number identifier. Based on the subnet number, the pre-assigned partition is queried, and the data is directly written to the corresponding partition for storage. For example, data from SN001 (core power control) is written to Partition 1, and data from SN002 (cooling temperature monitoring) is written to Partition 3.

[0023] Therefore, subnetting based on business logic avoids data mixing between different functional hard points, improving fault isolation capabilities. A weighted round-robin algorithm balances partition load, preventing single partition overload and ensuring reliable real-time data writing. When adding a hard point or subnet, only the label and allocation rules need to be updated; there is no need to refactor the system architecture.

[0024] Furthermore, in a Distributed Control System (DCS), the hard points of different modules are divided and mapped to multiple tag points in multiple subnets during engineering configuration. At the system management level, each subnet acts as an independent control unit, with most related business logic concentrated within subnet interactions. Based on the DCS's association identifier convention of "subnet number—database table," a three-layer mapping relationship is constructed: "subnet number (database table)—partition ID—physical node" (all servers in this system are collectively referred to as physical nodes). That is, the subnet number is first mapped to a unique partition ID, and then associated with a specific physical node through the partition ID. For example, when subnet ID=3, its assigned partition is calculated using a weighted round-robin algorithm, ensuring that tag point data from the same subnet is always stored in a fixed partition, while also providing a basic identifier dimension for subsequent load calculations.

[0025] Optionally, in step 103, the real-time capacity load of each partition in the nuclear industry distributed control system database is dynamically calculated using a weighted round-robin algorithm, including: Step 1031: For any partition in the nuclear industry distributed control system database, calculate the real-time capacity load of the partition based on the initial load of the partition and the number of subnets currently being hosted.

[0026] In the above embodiments of this application, the real-time capacity load is quantified based on the initial load of the partition and the number of managed subnets, which can accurately reflect the actual load pressure of the partition and avoid the deviation caused by relying on only a single indicator (such as only the number of subnets or the initial load). This provides a more scientific allocation basis for the subsequent weighted round-robin algorithm, thereby improving the partition load balancing effect and ensuring the real-time performance and reliability of nuclear industry data storage.

[0027] Optionally, in step 1031, the real-time capacity load of the partition is calculated based on the initial load of the partition and the number of currently managed subnets, specifically including: Step 10311: Based on the initial load of the partition and the number of subnets currently hosted by the partition, construct a partition capacity load calculation formula. Based on the partition capacity load calculation formula, calculate the real-time capacity load of the partition. The partition capacity load calculation formula is as follows: PartitionLoad(i) = Initial load + Number of subnets currently managed by the partition; PartitionLoad(i) is the real-time capacity load of the i-th partition, with an initial load of 1.

[0028] In the above embodiments of this application, a lightweight partitioned load model can be designed to calculate the real-time capacity load of a partition. The core calculation formula is as follows: PartitionLoad(i) = Initial load + Number of subnets currently managed by the partition (which can be determined by the number of database tables).

[0029] The initial load can be set to 1, which represents the load value when the partition is first created.

[0030] Optionally, in step 103, the subnet is pre-allocated based on the real-time capacity load calculated for each partition, specifically including: Step 1032: For any subnet, pre-allocate the subnet to the partition with the lowest real-time capacity load in the nuclear industry distributed control system database.

[0031] In the above embodiments of this application, subnet allocation can be performed using the following mathematical model: PartitionSelection=argmin(PartitionLoad(n)).

[0032] Here, PartitionSelection represents partition selection, n is the partition ID, and the function argmin selects the partition with the lowest current load to place the data in that subnet, ensuring that resource utilization and processing capacity are matched. For example, if the Load value of partition 1 (hosting 1 subnet) is 2.0 and the Load value of partition 2 (hosting 2 subnets) is 3.0, then the new subnet will be preferentially allocated to partition 1.

[0033] Optionally, the nuclear industry distributed control system database is carried by multiple physical nodes. In step 103, after pre-allocating each subnet based on the real-time capacity load calculated for each partition, the method further includes: Step 104: Calculate the real-time capacity load of each physical node in the nuclear industry distributed control system database using the physical node capacity load calculation formula, and dynamically map the partitions containing subnets to the physical nodes with the lowest capacity load. Each partition has a primary replica and a secondary replica. Step 105: During dynamic mapping, the physical node with the lowest capacity load is selected to place the primary replica of the partition, and the secondary replica is placed on the other physical node with the lowest capacity load, excluding the physical node containing the primary replica. The formula for calculating the capacity load of a physical node is as follows: PNodeLoad(j) = Sum of capacity loads of managed partitions / Physical node performance coefficient; PNodeLoad(j) represents the real-time capacity load of the j-th physical node.

[0034] In the above embodiments of this application, a lightweight physical node load model is designed, and the core calculation formula is as follows: PNodeLoad(j) = Sum of the loads of all managed partitions / Physical node performance coefficient.

[0035] Among them, the node performance coefficient can be predefined according to the hardware configuration (such as the number of CPU cores and memory capacity), and high-performance nodes are assigned a higher coefficient.

[0036] When allocating partitions, a mathematical model can be used: PNodeSelection=argmin(PNodeLoad(j)).

[0037] Here, PNodeSelection represents the physical node selection, j is the ID of the physical node, and the function argmin is used to select the physical node with the lowest current load to place the primary replica data of the partition, ensuring that resource utilization and processing capacity are matched.

[0038] For example, if physical node A (performance coefficient 2, hosting 1 partition, with 3 subnets on each partition, resulting in a PartitionLoad of 4) has a Load value of 2.0, and physical node B (performance coefficient 4, hosting 2 partitions, with 2 subnets on each partition, resulting in a total PartitionLoad of 6) has a Load value of 1.5, then the new partition will be preferentially allocated to physical node B.

[0039] In particular, each partition of the distributed database supports multiple replicas, with 1 to 3 replicas available for configuration, and the number of replicas can be dynamically adjusted according to reliability requirements.

[0040] For selecting the storage location of the partition's primary replica, the node with the lowest load can be chosen using the PNodeSelection model. The partition's secondary replica calculation method can employ the "node mutual exclusion principle," with the calculation formula as follows: ReplicaNodeSelection(k)=argmin(PNodeLoad(j)); Where ReplicaNodeSelection represents, j is the physical node ID and j≠LeaderReplicaNodeID, LeaderReplicaNodeID is the node where the primary replica is located, k is the replica sequence number (1≤k≤R-1), and R is the number of replicas.

[0041] The slave replicas are placed outside the physical node where the primary replica is located, choosing the physical node with the lowest load, and then placing each slave replica in sequence.

[0042] To address this, the weighted round-robin algorithm dynamically calculates the load ratio, enabling fine-grained scheduling among nodes with varying performance levels and avoiding extreme situations such as "high-performance nodes idle" and "low-performance nodes overloaded." When the number of replicas is greater than one, high availability of the system during maintenance is guaranteed. If one data replica becomes unavailable, other data replicas can provide services, ensuring business continuity.

[0043] Furthermore, such as Figure 3 As shown, the real-time capacity load of a physical node is the sum of the partition loads of all partitions it hosts. For partition load, the initial load of a partition is 1 (at creation). The load increases by 1 for each new subnet allocated (e.g., initial load of a new partition PartitionX = 1; after allocating the first new subnet, PartitionLoad(X) = 2; after allocating the second new subnet, PartitionLoad(X) = 3).

[0044] Physical node load formula: NodeLoad = Σ (PartitionLoad of all partitions on this node). For example, if a new physical node NodeX hosts PartitionX (load 3) and PartitionY (load 2), then NodeLoad(X) = 3 + 2 = 5.

[0045] The core objective of dynamic mapping is to use incremental resources to support incremental services without migrating existing data (and without interfering with the operation of high-temperature reactors). Specific rules include: 1. Partition Master: Select the physical node with the lowest load. When a master replica needs to be assigned to a new partition (such as PartitionX created during expansion): traverse all physical nodes in the cluster and calculate the real-time load of each node; select the node with the lowest load as the master replica hosting node (with the most abundant resources, prioritizing the handling of new services). For example, if the initial load of the newly added physical node NodeX is 0 (no partitions / data), it is the lightest node in the cluster, therefore the master replica of PartitionX will be bound to NodeX first.

[0046] The partition selects the physical node with the lowest load other than the primary replica. To ensure high availability (avoid single point of failure), the replica needs to be deployed across physical nodes with the primary replica, that is, the node where the primary replica is located (such as NodeX) is excluded. The remaining nodes are traversed, and the node with the lowest load is selected as the replica hosting node.

[0047] When the high-temperature reactor control system needs to be expanded (e.g., by adding a new physical node NodeX), the strategy prioritizes the new partition / subnet to the new node through "zero data migration + incremental allocation" until its load approaches the cluster average. Specifically: 1. Initial state of a new node: NodeX initial load = 0 (no existing partitions / data).

[0048] 2. Binding a new partition to a new node: The system will assign the new partition (such as PartitionX) generated by the expansion to NodeX. At this time, PartitionLoad(X)=1 and NodeLoad(X)=1 (still the lowest in the cluster).

[0049] 2. New subnets are continuously assigned to new partitions: The first newly added subnet: Select the PartitionX (load 1) with the lowest load. After allocation, PartitionLoad(X)=2 and NodeLoad(X)=2. The second newly added subnet: If PartitionLoad(X)=2 is still the lowest in the cluster, continue to allocate to PartitionX, PartitionLoad(X)=3, NodeLoad(X)=3; This continues until the NodeX load approaches the cluster average level (at which point its load is no longer the lowest, and subsequent subnets will naturally flow to other partitions).

[0050] Optionally, the method further includes: Step 106: When expanding the high-temperature reactor control system, the newly added partitions are preferentially allocated to new physical nodes using a partitioned incremental allocation strategy until the capacity load of the newly added partitions reaches the average cluster level of the nuclear industry distributed control system database. The average cluster level is calculated using the cluster average load threshold calculation formula, which is: ClusterAvgLoad=avg(PNodeLoad(i)); ClusterAvgLoad is the average load threshold of the nuclear industry distributed control system database cluster, used to characterize the average level of the cluster, and PartitionLoad(i) is the real-time capacity load of the i-th partition.

[0051] In the above embodiments of this application, a "zero data migration" strategy is adopted when adding new physical nodes, and progressive load balancing is achieved through process design.

[0052] Specifically, the initial load of a newly added physical node is 0. The system will prioritize allocating subsequent newly added partitions to this physical node until its load approaches the cluster average level. Taking the addition of NodeX as an example, after the new partition PartitionX is allocated to NodeX, PartitionLoad(X) = 1. The newly added subnet will then be allocated to PartitionX, at which point PartitionLoad(X) = 2. When allocating the second newly added subnet, all partitions will be traversed and the partition with the lowest load will be found. Assuming PartitionLoad(X) = 2 is the lowest, the second subnet will still be allocated to PartitionX, at which point PartitionLoad(X) = 3. And so on. Existing partitions and subnets do not need to migrate existing data during the expansion process; expansion is completed only through incremental allocation. This mechanism minimizes the impact of expansion on business operations while achieving cluster load rebalancing through natural growth.

[0053] Furthermore, when the high-temperature reactor control system is expanded, the incremental partition allocation strategy uses the logic of "zero data migration + incremental resources prioritizing incremental services" to prioritize the allocation of new partitions to new physical nodes until their load approaches the average level of the cluster. The specific process can be as follows: When a new physical node (such as NodeX) is introduced, its initial load is 0 (no existing partitions / data, making it the "lightest" node in the cluster).

[0054] The newly created partition (such as PartitionX) generated during the expansion is directly assigned to the new node. At this time, the initial load of the partition is PartitionLoad(X)=1, making it one of the partitions with the lowest load in the cluster.

[0055] When allocating new subnets, the core rule of "traversing all partitions and selecting the one with the least load" is followed: The first newly added subnet: PartitionLoad(X)=1 is the smallest among all partitions, so it is assigned to PartitionX, and the load increases to 2; The second newly added subnet: If PartitionLoad(X)=2 is still the minimum for the cluster (the original partition has a higher load), continue to allocate to PartitionX, and the load will increase to 3; This process continues, with new subnets being assigned to new partitions on new nodes, until the load on that partition approaches the cluster average (at which point its load is no longer the lowest, and subsequent subnets will naturally flow to other partitions).

[0056] Therefore, by adopting the logic of "prioritizing new resources to carry incremental capacity", the idle capacity of new nodes is utilized while avoiding interference with existing operations, making it an efficient solution for expanding the high-temperature reactor control system.

[0057] Optionally, the cluster average level of the nuclear industry distributed control system database is characterized by the cluster average load threshold. In step 106, after prioritizing the allocation of new partitions to new physical nodes through a partition incremental allocation strategy, the method further includes: When the calculated average cluster load threshold is greater than or equal to the preset average cluster load warning threshold, a warning message is sent to the preset terminal so that the recipient of the preset terminal can adjust the physical node expansion or partitioning strategy based on the warning message.

[0058] In the above embodiments of this application, a preset cluster average load warning threshold T=3.0 can be defined.

[0059] For example, when 8 physical nodes host 16 partitions (each partition hosting one subnet), ClusterAvgLoad=2.0, triggering an alert upon reaching the threshold. If 2 more physical nodes are added, bringing the total number of nodes to 10, ClusterAvgLoad drops to 1.6, and the alert is automatically lifted. This alert mechanism monitors cluster capacity trends in real time, providing a basis for decision-making regarding system elastic scaling and preventing service degradation due to resource exhaustion.

[0060] To this end, a closed loop is formed through data interaction, a subnet awareness mechanism provides basic mapping, a weighted round-robin algorithm enables dynamic scheduling, zero-data migration and expansion ensures smooth system expansion, and a load warning mechanism monitors the operating status, together constructing a highly available and scalable distributed data partition management system.

[0061] By applying the technical solution of this embodiment, multi-dimensional optimization is achieved through a subnet-aware progressive weighted polling mechanism, demonstrating many beneficial effects in distributed data management in multi-reactor scenarios of nuclear industry DCS systems: First, it meets the demand for large capacity, supporting access to 80,000 hard points per unit (20,000 hard points per module) and 4 million real-time tag points; second, it adapts to modular phased construction, achieving smooth expansion from 2 modules (4 reactors) to 5 modules (10 reactors); and third, it ensures that the distributed real-time database service remains available during operation and maintenance.

[0062] Furthermore, by constructing a three-layer mapping relationship of "subnet number (database table) - partition ID - physical node" through a subnet-aware mechanism, combined with the load calculation model in the weighted round-robin algorithm, the system achieves ordered and correlated data storage as well as fine-grained load scheduling. This design enables the system to horizontally scale the distributed database as modules are added, effectively supporting the needs of managing large-capacity data. The zero-data migration expansion mechanism provides an efficient solution. This incremental allocation logic ensures smooth system expansion, allowing for gradual expansion without migrating existing data, effectively avoiding the business interruption caused by traditional expansion methods. An automatic maintenance mode switching strategy based on a multi-replica mechanism is designed. The "node mutual exclusion principle" ensures that replicas are stored in a distributed manner, avoiding single-point failures that could lead to data unavailability. When the node containing the primary replica is under maintenance, the distributed real-time database automatically promotes the secondary replica in the same partition to the primary replica, without affecting business continuity and ensuring high system availability.

[0063] In a specific embodiment, the implementation method for distributed database cluster management in the nuclear industry DCS business scenario is as follows: 1. System initialization configuration: In a nuclear industry DCS environment, system initialization configuration is the foundation for distributed data partitioning management, requiring the completion of three core tasks: physical node deployment, load table initialization, and performance coefficient calibration. Taking a typical nuclear industry control scenario as an example, the system initially deploys five physical nodes with a uniform hardware configuration of 64 CPU cores per node and 128GB of memory, forming a distributed processing cluster. The initial state of the node load table is set to [Node1:0, Node2:0, Node3:0, Node4:0, Node5:0], indicating that each node is running without load when the system starts.

[0064] The performance coefficient is defined based on hardware configuration: if a 16-core / 32GB memory server has a performance coefficient of 1, then a 64-core / 128GB memory server has a performance coefficient of 4. This coefficient will serve as the core parameter of the weighted round-robin algorithm, directly affecting the allocation ratio of data partitions.

[0065] 2. Database partition creation process: Database partition creation is a core component of data management in nuclear industry DCS systems. It requires a subnet-aware, progressive weighted round-robin strategy to achieve load balancing and high availability. The following details the specific steps involved in creating five partitions in a nuclear industry DCS system: (1) Basic zoning planning and initialization: The DCS system creates a database using the distributed real-time database API based on the current module size and number of servers, specifying the database name, number of partitions, and number of replicas. CreateDatabase(DatabaseName="NuclearDCS",PartitionNum=5,ReplicationNum=3).

[0066] (2) Primary replica allocation (subnet-aware weighted round-robin): Primary replicas are distributed based on real-time node load. Initially, all five nodes (PNode1-PNode5) have a load of 0. The allocation process follows the principle of least load priority. Process example: Partition 1—All nodes have a load of 0—assigned to PNode1; Partition 2—Minimum load is 0 (PNode2,3,4,5)—assigned to PNode2; Partition 3—Minimum load is 0 (PNode3,4,5)—is assigned to PNode3; Partition 4—Minimum load is 0 (PNode4,5)—assigned to PNode4; Partition 5—Minimum load is 0 (PNode5)—Assigned to PNode5; At this point, the initial load of PNode1-PNode5 is 1.

[0067] (3) Distribute from replica Each partition is configured with one primary replica and two secondary replicas. The secondary replica node is calculated using the formula: ReplicaNodeSelection(k) = argmin(PNodeLoad(j)) (j ≠ LeaderReplicaNodeIndex, k = 1, 2). Taking partition 1 as an example: Primary replica — PNode1 (LeaderReplicaNodeID=1); From replica 1—excluding PNode1 & minimum load is 1 (PNode2,3,4,5)—assign to PNode2; From replica 2—excluding PNode1 & minimum load is 1 (PNode3,4,5)—assign to PNode3.

[0068] This strategy ensures that replicas are distributed across different physical nodes, avoiding data unavailability due to a single point of failure.

[0069] (4) Global table update: After the replica allocation is completed, the system automatically updates the global metadata table.

[0070] The partition mapping table records the correspondence between partitions and nodes. The physical nodes where the three data replicas of each data partition are located are: partition 1 is in PNode{1, 2, 3}, partition 2 is in PNode{2, 4, 5}, partition 3 is in PNode{3, 4, 1}, partition 4 is in PNode{4, 5, 1}, and partition 5 is in PNode{5, 2, 3}.

[0071] The current load on each physical node is: Node 1 has PNodeLoad(1)=0.75, Node 2 has PNodeLoad(2)=0.75, Node 3 has PNodeLoad(3)=0.75, Node 4 has PNodeLoad(4)=0.75, and Node 5 has PNodeLoad(5)=0.75.

[0072] The partition load is: Partition 1 has PartitionLoad(1)=1, Partition 2 has PartitionLoad(2)=1, Partition 3 has PartitionLoad(3)=1, Partition 4 has PartitionLoad(4)=1, and Partition 5 has PartitionLoad(5)=1.

[0073] The above process achieves predictability and consistency in partition creation through mathematical load calculation and automated table updates, laying the foundation for subsequent data sharding and dynamic migration.

[0074] 3. Subnet online allocation mechanism: In distributed data partitioning management, the subnet allocation mechanism is a crucial element for achieving dynamic system expansion and load balancing. This mechanism, through a "subnet-partition" binding strategy, ensures that newly added business subnets are appropriately allocated to data partitions, while simultaneously achieving logical isolation between different subnets and parallel processing of global services across multiple subnets. The following section, using a phased construction scenario in the nuclear industry, details its implementation process.

[0075] 4. Modules are built in phases, with each module containing two heaps, and each heap corresponding to one subnet. Subnet binding is based on real-time load balancing of partitions. Initially, the load on all five partitions (Partition1-Partition5) is 0. The allocation process follows the principle of least load priority. Process example: Phase 1: Module 1 goes online – 2 subnets go online; Subnet 1—All partition load is 1—Assigned to partition 1; Subnet 2—minimum load is 1 (partitions 2, 3, 4, 5)—assigned to partition 2; Phase 2 Module 2 Launched – Two new subnets launched; Subnet 3—minimum load is 1 (partitions 3, 4, 5)—assigned to partition 3; Subnet 4—minimum load is 1 (partition 4, 5)—assigned to partition 4; Phase 3 Module 3 goes live—two new subnets are launched; Subnet 5—minimum load is 1 (partition 5)—assigned to partition 5; Subnet 6—all partitions have a load of 2—assigned to partition 1; Phase 4 Module 4 Launched – Two New Subnets Launched; Subnet 7—minimum load is 2 (partitions 2, 3, 4, 5)—assigned to partition 2; Subnet 8—minimum load is 2 (partitions 3, 4, 5)—assigned to partition 3.

[0076] Update partition load table: Partition 1 has PartitionLoad(1)=3 (managed subnets 1 and 6), Partition 2 has PartitionLoad(2)=3 (managed subnets 2 and 7), Partition 3 has PartitionLoad(3)=3 (managed subnets 3 and 8), Partition 4 has PartitionLoad(4)=2 (managed subnet 4), and Partition 5 has PartitionLoad(5)=2 (managed subnet 5).

[0077] Update the node load table: Node 1 has PNodeLoad(1)=2.0, Node 2 has PNodeLoad(2)=2.0, Node 3 has PNodeLoad(3)=2.0, Node 4 has PNodeLoad(4)=2.0, and Node 5 has PNodeLoad(5)=1.75.

[0078] Through this mechanism, the system can dynamically adjust data partitions according to the reactor module commissioning plan during the phased construction of the nuclear industry. This ensures rapid access for new services and achieves logical isolation of data from different reactor modules through the strong binding relationship between "subnet-partition", thus meeting the data security and independence requirements of nuclear power plants.

[0079] 5. Load warning and capacity expansion implementation: (1) Load warning: As business demand continues to grow, the distributed real-time database system calculates the new average cluster load in real time and triggers a load warning based on whether it exceeds the preset threshold T=2.0.

[0080] Process example: Currently, ClusterAvgLoad=avg(PNodeLoad(i))=1.95; Phase 5, Module 5 launched—two new subnets added; Subnet 9—minimum load is 2 (partitions 4, 5)—assigned to partition 4; Subnet 10—Minimum load is 2 (partition 5)—Assigned to partition 5; At this point, ClusterAvgLoad=avg(PNodeLoad(i))=2.25.

[0081] When this value exceeds the preset threshold of 2.0, some nodes may be approaching their performance bottleneck, triggering a load warning. The system then alerts the administrator that the current cluster load is high and suggests scaling up.

[0082] (2) Capacity expansion implementation: After receiving the alert, the administrator, based on business planning (such as future module deployments), decided to expand the database. Two new physical nodes, PNode6 and PNode7, were added, and the existing database partitions were expanded from 5 to 7. The newly created partitions were assigned to the new physical nodes. At this point, the global metadata table is: Update partition load table: Partition 1 has PartitionLoad(1)=3 (managed subnets 1 and 6), Partition 2 has PartitionLoad(2)=3 (managed subnets 2 and 7), Partition 3 has PartitionLoad(3)=3 (managed subnets 3 and 8), Partition 4 has PartitionLoad(4)=3 (managed subnets 4 and 9), Partition 5 has PartitionLoad(5)=3 (managed subnets 5 and 10), Partition 6 has PartitionLoad(6)=1, and Partition 7 has PartitionLoad(7)=1.

[0083] Update the node load table: Node 1 has PNodeLoad(1)=2.5, Node 2 has PNodeLoad(2)=2.5, Node 3 has PNodeLoad(3)=2.25, Node 4 has PNodeLoad(4)=2.25, Node 5 has PNodeLoad(5)=2.25, Node 6 has PNodeLoad(6)=0.5, and Node 7 has PNodeLoad(7)=0.5.

[0084] At this point, ClusterAvgLoad = avg(PNodeLoad(i)) = 1.82 The average load dropped from 2.25 to 1.82, the alarm was cleared, and we can continue to create new subnet data in the distributed real-time database.

[0085] Continue deploying modules, allocating them based on a weighted round-robin mechanism. Example process: Phase 6, Module 6 launched—two new subnets added; Subnet 11—minimum load is 1 (partitions 6, 7)—assigned to partition 6; Subnet 12—Minimum load is 1 (partition 7)—Assigned to partition 7.

[0086] Update partition load table: Partition 1 has PartitionLoad(1)=3 (managed subnets 1 and 6), Partition 2 has PartitionLoad(2)=3 (managed subnets 2 and 7), Partition 3 has PartitionLoad(3)=3 (managed subnets 3 and 8), Partition 4 has PartitionLoad(4)=3 (managed subnets 4 and 9), Partition 5 has PartitionLoad(5)=3 (managed subnets 5 and 10), Partition 6 has PartitionLoad(6)=2 (managed subnet 11), and Partition 7 has PartitionLoad(7)=2 (managed subnet 12).

[0087] Update the node load table: Node 1 has PNodeLoad(1)=2.75, Node 2 has PNodeLoad(2)=2.75, Node 3 has PNodeLoad(3)=2.25, Node 4 has PNodeLoad(4)=2.25, Node 5 has PNodeLoad(5)=2.25, Node 6 has PNodeLoad(6)=1, and Node 7 has PNodeLoad(7)=1.

[0088] At this time, ClusterAvgLoad=avg(PNodeLoad(i))=2.0, which is within the normal load range.

[0089] Therefore, this dynamic adjustment mechanism based on weighted round-robin not only avoids the lag of traditional static partitioning strategies, but also ensures the accuracy and efficiency of resource allocation through subnet awareness.

[0090] As can be seen from the above, this method achieves load balancing management of distributed systems in scenarios where the number of partitions changes dynamically through closed-loop control of "real-time load monitoring - early warning triggering - dynamic expansion - weight rebalancing", effectively improving the resource utilization and stability of the cluster.

[0091] Furthermore, as Figure 1 In terms of specific implementation, this application provides a subnet-aware distributed data partitioning management system, such as... Figure 4 As shown, the system includes: The logical attribution determination module 201 is used to determine the business logic attribution based on the functional rules and interaction processes of each high-temperature reactor control system during the on-site layout phase of the high-temperature reactor. The high-temperature reactor control system includes at least one of the following: nuclear steam supply system, conventional island system, nuclear facility supporting auxiliary system, and safety protection system. The subnet construction module 202 is used to treat various hardware devices at the high-temperature reactor site as field hard points, integrate field hard points through business logic affiliation, and construct a subnet based on field hard points belonging to the same business logic affiliation. Each field hard point in the subnet corresponds to a tag point, and the tag point is used to represent at least one of the measured value, control signal and intermediate calculated value of the hardware device. The weighted round-robin allocation module 203 is used to store subnets as independent management and control units in the nuclear industry distributed control system database. During the storage process, the real-time capacity load of each partition in the nuclear industry distributed control system database is dynamically calculated through the weighted round-robin algorithm. Based on the real-time capacity load calculated for each partition, each subnet is pre-allocated so that when the high-temperature reactor enters the operation stage, the real-time data generated by the field hard points in the subnet is stored in the pre-allocated partition of the subnet. The nuclear industry distributed control system database includes multiple partitions for hosting subnets. Each subnet in the nuclear industry distributed control system database is assigned a unique subnet number.

[0092] It should be noted that other corresponding descriptions of the functional units involved in the subnet-aware distributed data partitioning management system provided in this application embodiment can be found in the following references. Figures 1 to 3 The corresponding descriptions in the method will not be repeated here.

[0093] Based on the above, Figures 1 to 3 Accordingly, this application also provides a medium on which a computer program is stored, which, when executed by a processor, implements the above-described method. Figures 1 to 3 The subnet-aware distributed data partitioning management method is shown.

[0094] Based on this understanding, the technical solution of this application can be embodied in the form of a software product, which can be stored in a non-volatile medium (such as CD-ROM, USB flash drive, mobile hard drive, etc.) and includes several instructions to enable a device (such as personal computer, server, or network device, etc.) to execute the methods described in various implementation scenarios of this application.

[0095] Based on the above, Figures 1 to 3 The method shown, and Figure 3To achieve the above objectives, the virtual system embodiment shown in this application also provides a device, which may be a personal computer, server, network device, etc. This device includes a medium and a processor; the medium is used to store a computer program; the processor is used to execute the computer program to achieve the above-described objectives. Figures 1 to 3 The subnet-aware distributed data partitioning management method is shown.

[0096] Optionally, the 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 interfaces, card reader interfaces, etc. The network interface may optionally include standard wired interfaces, wireless interfaces (such as Bluetooth interfaces, Wi-Fi interfaces), etc.

[0097] Those skilled in the art will understand that the device structure provided in this embodiment does not constitute a limitation on the device, and may include more or fewer components, or combine certain components, or have different component arrangements.

[0098] The medium may also include an operating system and a network communication module. The operating system is a program that manages and stores the device's hardware and software resources, 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 medium, as well as communication with other hardware and software within the physical device.

[0099] Through the above description of the implementation methods, those skilled in the art can clearly understand that this application can be implemented using software plus necessary general-purpose hardware platforms, or it can be implemented through hardware during the on-site deployment phase of the high-temperature reactor. Various hardware devices at the high-temperature reactor site are treated as on-site hard points, and these hard points are integrated based on business logic affiliation. A subnet is constructed based on on-site hard points belonging to the same business logic affiliation. The subnet is stored as an independent management and control unit in the nuclear industry distributed control system database. During storage, the real-time capacity load of each partition in the nuclear industry distributed control system database is dynamically calculated using a weighted round-robin algorithm. Based on the calculated real-time capacity load of each partition, each subnet is pre-allocated, so that when the high-temperature reactor enters the operation phase, the real-time data generated by the on-site hard points within the subnet is stored in the pre-allocated partition of the subnet. This enables intelligent matching between subnets and partitions, balances capacity load, and ensures efficient and reliable storage of real-time data from the high-temperature reactor.

[0100] 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 system of the embodiment scenario can be distributed throughout the system of the embodiment scenario as described, or they can be modified to reside in one or more systems different from this embodiment scenario. The modules of the above-described embodiment scenario can be combined into one module, or further divided into multiple sub-modules.

[0101] 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 modifications that can be made by those skilled in the art should fall within the protection scope of this application.

Claims

1. A subnet-aware distributed data partitioning management method, characterized in that, The method includes: During the on-site setup phase of the high-temperature reactor, the business logic affiliation is determined based on the functional rules and interaction processes of each high-temperature reactor control system during operation. The high-temperature reactor control system includes at least one of the following: nuclear steam supply system, conventional island system, nuclear facility auxiliary system, and safety protection system. Various hardware devices at the high-temperature reactor site are treated as field hard points, and these field hard points are integrated by business logic affiliation. A subnet is constructed based on field hard points belonging to the same business logic affiliation. Each field hard point in the subnet corresponds to a tag point, which is used to represent at least one of the measured values, control signals, and intermediate calculated values ​​of the hardware device. Subnets are stored as independent management and control units in the nuclear industry distributed control system database. During the storage process, the real-time capacity load of each partition in the nuclear industry distributed control system database is dynamically calculated using a weighted round-robin algorithm. Based on the real-time capacity load calculated for each partition, each subnet is pre-allocated so that when the high-temperature reactor enters the operation phase, the real-time data generated by the field hard points within the subnet is stored in the pre-allocated partition of the subnet. The nuclear industry distributed control system database includes multiple partitions for hosting subnets, and each subnet is assigned a unique subnet number in the nuclear industry distributed control system database.

2. The method according to claim 1, characterized in that, The method of dynamically calculating the real-time capacity load of each partition in the nuclear industry distributed control system database using a weighted round-robin algorithm includes: For any partition in the nuclear industry distributed control system database, calculate the real-time capacity load of the partition based on the initial load of the partition and the number of subnets currently being managed.

3. The method according to claim 2, characterized in that, The calculation of the real-time capacity load of the partition based on its initial load and the number of currently managed subnets includes: Based on the initial load of the partition and the number of subnets currently hosted by the partition, a partition capacity load calculation formula is constructed. Based on the partition capacity load calculation formula, the real-time capacity load of the partition is calculated. The partition capacity load calculation formula is as follows: PartitionLoad(i) = Initial load + Number of subnets currently managed by the partition; PartitionLoad(i) is the real-time capacity load of the i-th partition, with an initial load of 1.

4. The method according to claim 1, characterized in that, The pre-allocation of capacity load to each subnet based on the real-time capacity load calculated for each partition includes: For any subnet, the subnet is pre-assigned to the partition with the lowest real-time capacity load in the nuclear industry distributed control system database.

5. The method according to claim 1, characterized in that, The nuclear industry distributed control system database is hosted by multiple physical nodes. After pre-allocating the real-time capacity load calculated based on each partition to each subnet, the method further includes: The real-time capacity load of each physical node in the nuclear industry distributed control system database is calculated using the physical node capacity load calculation formula. The partitions containing subnets are dynamically mapped to the physical nodes with the lowest capacity load. Each partition has a primary replica and a secondary replica. During dynamic mapping, the physical node with the lowest capacity load is selected to place the primary replica of the partition, and the secondary replica is placed on the other physical node with the lowest capacity load, excluding the physical node containing the primary replica. The formula for calculating the capacity load of physical nodes is as follows: PNodeLoad(j) = Sum of capacity loads of managed partitions / Physical node performance coefficient; PNodeLoad(j) represents the real-time capacity load of the j-th physical node.

6. The method according to claim 1, characterized in that, The method further includes: When expanding the high-temperature reactor control system, a partitioned incremental allocation strategy is used to prioritize the allocation of new partitions to new physical nodes until the capacity load of the new partitions reaches the average cluster level of the nuclear industry distributed control system database. The average cluster level is calculated using a cluster average load threshold calculation formula, which is as follows: ClusterAvgLoad=avg(PNodeLoad(i)); ClusterAvgLoad is the average load threshold of the nuclear industry distributed control system database cluster, used to characterize the average level of the cluster, and PartitionLoad(i) is the real-time capacity load of the i-th partition.

7. The method according to claim 6, characterized in that, The average cluster level of the nuclear industry distributed control system database is characterized by the average cluster load threshold. After prioritizing the allocation of new partitions to new physical nodes through a partition incremental allocation strategy, the method further includes: When the calculated average cluster load threshold is greater than or equal to the preset average cluster load warning threshold, a warning message is sent to the preset terminal so that the recipient of the preset terminal can adjust the physical node expansion or partitioning strategy based on the warning message.

8. A subnet-aware distributed data partitioning management system, characterized in that, The system includes: The logical attribution determination module is used to determine the business logic attribution during the on-site deployment phase of the high-temperature reactor based on the functional rules and interaction processes of each high-temperature reactor control system during the operation of the high-temperature reactor. The high-temperature reactor control system includes at least one of the following: nuclear steam supply system, conventional island system, nuclear facility supporting auxiliary system, and safety protection system. The subnet construction module is used to treat various hardware devices at the high-temperature reactor site as field hard points, and integrate the field hard points through business logic affiliation. A subnet is constructed based on the field hard points belonging to the same business logic affiliation. Each field hard point in the subnet corresponds to a tag point, which is used to represent at least one of the measured values, control signals and intermediate calculated values ​​of the hardware device. The weighted round-robin allocation module is used to store subnets as independent management and control units in the nuclear industry distributed control system database. During the storage process, the real-time capacity load of each partition in the nuclear industry distributed control system database is dynamically calculated through a weighted round-robin algorithm. Based on the real-time capacity load calculated for each partition, each subnet is pre-allocated so that when the high-temperature reactor enters the operation phase, the real-time data generated by the field hard points in the subnet is stored in the pre-allocated partition of the subnet. The nuclear industry distributed control system database includes multiple partitions for hosting subnets. Each subnet in the nuclear industry distributed control system database is assigned a unique subnet number.

9. A medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the subnet-aware distributed data partition management method according to any one of claims 1 to 7.

10. An apparatus comprising a medium, a processor, and a computer program stored on the medium and executable on the processor, characterized in that, When the processor executes the computer program, it implements the subnet-aware distributed data partition management method according to any one of claims 1 to 7.