A medical DRG data processing method, system and storage medium

By optimizing DRG data processing with three-dimensional sharding identifiers and a distributed Top-N algorithm, the problem of load imbalance in DRG grouping is solved, achieving efficient data sharding and load balancing of computing nodes, thereby improving the refinement and computational efficiency of DRG data processing.

CN120973529BActive Publication Date: 2026-02-17SICHUAN PROVINCIAL HEALTH INFORMATION CENT (SICHUAN PROVINCIAL HEALTH & MEDICAL BIG DATA CENT)
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202511090665.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-08-05
Publication Date
2026-02-17
Estimated Expiration
2045-08-05

AI Technical Summary

Technical Problem

Existing DRG grouping methods suffer from single-node overload in hot DRG groups, leading to uneven data distribution, load imbalance, and impacting computational efficiency and cross-institutional comparability of indicators.

Method used

Three-dimensional sharding identifiers are used to shard medical record data. An adaptive sharding strategy and a distributed Top-N algorithm are combined to dynamically adjust the distribution of shards among the least loaded computing nodes. Parallel processing is achieved through a Map-Reduce model, and a Bloom filter is used to optimize surgical marker matching.

Benefits of technology

It reduced the load deviation rate between computing nodes, improved the granularity of data sharding and computing efficiency, increased the speed of specialty classification and surgical marker matching, and realized real-time dynamic ranking of hospitals of the same level.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120973529B_ABST
    Figure CN120973529B_ABST
Patent Text Reader

Abstract

The application discloses a medical DRG data processing method and system and a storage medium, wherein the medical DRG data processing method comprises the following steps: generating a shard identifier based on a first preset key field of medical record data, and performing sharding on the medical record data according to the shard identifier; distributing the shard to a computing node with the lowest load, and calculating a load deviation rate according to a maximum shard quantity and a minimum shard quantity; when the load deviation rate is greater than a preset value, detecting an over-standard shard, splitting the over-standard shard, and re-distributing the sub-shard to the computing node with the lowest load; and when the load deviation rate is less than the preset value, if a total data quantity of adjacent shards is less than a preset data quantity, merging the adjacent shards to form a new shard, and distributing the new shard to the computing node with the lowest load. Through the implementation of monitoring the shard data quantity, the over-standard shard is split and intelligently distributed to an idle node, or the shards with small data quantity are merged, so that the resource idling or overloading phenomenon is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of data management, and in particular to a medical DRG data processing method and system and a storage medium. BACKGROUND

[0002] The existing DRG grouping relies on multi-source data (diagnosis code, surgical operation, patient characteristics), and needs to dynamically adapt to the update of the national grouping scheme (such as the ICD-10 coding system). Different medical institutions have non-uniform data standards, resulting in poor comparability of cross-institution indicators, and it is difficult to automatically realize the benchmarking analysis of hospitals at the same level.

[0003] For example, the patent number CN117976159A discloses a parallel fusion DRG analysis method and a corresponding system, which relates to the technical field of charge management. The DRG analysis method relies on the DRG analysis system deployed by the server. Each branch area and the central area push case information in real time through data interaction. The central area compares and analyzes the aggregated data and displays it. The method includes: initializing the processing rules, reading the encrypted rules, data files, single bill structure, function definition files, historical single bill data and value files into the memory; after starting the quality inspection, the DRG platform reads the memory to receive the single bill to be audited and the rule code to be executed through the thrift protocol, and queries all the historical data of the patient; read the rules in the memory to execute the corresponding processing logic in different processing stages; after all the rules are executed, if there is no violation rule, automatically save all the contents of this audit to the hard disk.

[0004] However, the existing technology has the following defects: the existing DRG will cause single node overload on the hot DRG group, resulting in uneven data distribution and load imbalance. SUMMARY

[0005] Therefore, in order to solve the above problems, the present application provides a medical DRG data processing method, system and storage medium to reduce the load deviation rate between computing nodes and reduce the phenomenon of resource idling or overload.

[0006] In one aspect, the present application provides a medical DRG data processing method, comprising:

[0007] Obtaining medical record data, identifying a first preset key field in the medical record data, generating a shard identifier based on the first preset key field of the medical record data, and performing sharding on the medical record data according to the shard identifier;

[0008] Obtaining the load state of the computing nodes, assigning the shards to the computing nodes with the lowest load, and the initial number of shards is X = NK, wherein X is the initial number of shards, N is the number of computing nodes, and K is a adjustable parameter;

[0009] Real-time acquisition of each slice data volume, determination of maximum slice volume and minimum slice volume, calculation of load deviation rate according to the maximum slice volume and the minimum slice volume, detection of an over-standard slice when the load deviation rate is greater than a preset value, splitting of the over-standard slice in a preset time window to obtain a sub-slice, and re-distribution of the sub-slice to a computing node with the lowest load; when the load deviation rate is less than the preset value, detection of the total data volume of adjacent slices, and merging of adjacent slices to form a new slice if the total data volume of the adjacent slices is less than a preset data volume,

[0010] Distribution of the new slice to a computing node with the lowest load;

[0011] Each computing node independently performs DRG index calculation, specialty classification and surgery flag update of the slice loaded thereon in parallel to obtain DRG index calculation results, specialty classification results and surgery flag update results, and aggregates the DRG index calculation results, the specialty classification results and the surgery flag update results to obtain a specialty capability matrix.

[0012] Classify all sample medical institutions based on medical institution levels to form multiple independent computing pools, and rank hospitals of the same level based on the specialty capability matrix using a distributed Top-N algorithm.

[0013] Further, the calculation method of the adjustable parameter K is:

[0014] K=max(3,min(5,round(η*γ)));

[0015] Wherein, η is an adaptive conversion coefficient; γ is a data entropy.

[0016] Further, η is calibrated every preset time interval, and the specific calibration method is as follows:

[0017] η=argmin[∑(K a -ηEntropy) 2 ];

[0018] Wherein, K a is the optimal K value recorded in the historical data; Entropy is the entropy value of the system.

[0019] Further, the calculation method of the data entropy γ is as follows:

[0020]

[0021] Wherein, R is the number of MDC categories; p j is the probability of the jth MDC category;

[0022] The calculation method of p j is as follows:

[0023] Among them, S j denoted as , where is the number of cases in the j-th MDC category; S is the total number of cases across all categories.

[0024] Furthermore, ranking hospitals of the same level using a distributed Top-N algorithm includes:

[0025] Each computing node maintains a min-heap data structure, traverses the specialty capability matrix of each hospital within its data shard, scores each hospital's performance indicators based on DRG indicators, and calculates capability scores, standardized scores, and total scores based on the performance indicator scores.

[0026] Each node calculates the ranking of each hospital for each indicator based on the performance indicator scores and total scores in the specialty capability matrix, stores the D hospitals with the highest ranking in the current shard, aggregates the storage results from all nodes, and uses the min-heap algorithm to merge and generate the Top-G ranking.

[0027] Furthermore, the memory retrieval structure is a Bloom filter.

[0028] Furthermore, the specialized classification adopts the Map-Reduce model.

[0029] On the other hand, the present invention also provides a medical DRG data processing system for performing the above-described data processing method, the data processing system comprising:

[0030] The data receiving module is used to receive and acquire medical record data from multiple medical institutions.

[0031] The initial segmentation module is used to acquire medical record data, identify the first preset key field in the medical record data, generate segmentation identifiers based on the first preset key field of the medical record data, and segment the medical record data according to the segmentation identifiers.

[0032] Sharding allocation module: Obtains the load status of compute nodes and allocates shards to the compute nodes with the lowest load;

[0033] The parallel computing module is used to independently perform DRG index calculation, specialty classification and surgical marker update for its loaded slices in parallel, and obtain DRG index calculation results, specialty classification results and surgical marker update results. The DRG index calculation results, specialty classification results and surgical marker update results are aggregated to obtain the specialty capability matrix.

[0034] The dynamic sharding module is used to acquire the data volume of each shard in real time, determine the maximum and minimum shard size, calculate the load deviation rate based on the maximum and minimum shard size, and detect shards exceeding the preset value when the load deviation rate is greater than a preset value. These shards are then split into sub-shards within a preset time window and redistributed to the compute nodes with the lowest load. When the load deviation rate is less than the preset value, the total data volume of adjacent shards is detected. If the total data volume of adjacent shards is less than a preset data volume, the adjacent shards are merged to form a new shard, which is then allocated to the compute nodes with the lowest load.

[0035] The hierarchical ranking module is used to classify all sample medical institutions based on their level, forming multiple independent computing pools, and using a distributed Top-N algorithm to rank hospitals of the same level.

[0036] On the other hand, the present invention also provides a storage medium having a computer program stored thereon, which is executed by a processor to implement the above-described medical DRG data processing method.

[0037] The present invention has the following advantages:

[0038] This invention monitors the amount of fragmented data, splits excessive fragments and intelligently allocates them to idle nodes, or merges fragments with small amounts of data, thereby reducing resource idleness or overload. Simultaneously, this invention fragments medical record data based on three-dimensional fragment identifiers, transforming the medical classification system into computational parameters, mitigating the inherent long-tail distribution problem of medical data, improving the granularity of fragmentation, and enhancing data locality and computational efficiency. By employing a MapReduce model to achieve parallel processing of specialty classification, the speed of specialty classification for complex cases is improved. Using a Bloom filter for surgical marker matching increases the matching speed of surgical markers, reduces the false positive rate of surgical type markers, and reduces memory consumption. A distributed Top-N algorithm combined with DRG indicators such as CMI and cost consumption index is used to achieve real-time dynamic updates of the ranking of hospitals at the same level. Attached Figure Description

[0039] Figure 1 This is a flowchart illustrating the medical DRG data processing method;

[0040] Figure 2 This is a logical diagram of a medical DRG data processing system;

[0041] Figure 3 yes Figure 2 The diagram shows the logic of the parallel computing module in the medical DRG data processing system.

[0042] 100. Medical Institution Database; 200. Data Receiving Module; 300. Initial Segmentation Module; 400. Parallel Computing Module; 500. Hierarchical Ranking Module; 600. Segmentation Detection Module; 700. Segmentation Allocation Module;

[0043] 410. Computation node; 420. Aggregation unit. Detailed Implementation

[0044] 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 intended to explain this application, and should not be construed as limiting this application.

[0045] In this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, without necessarily requiring or implying any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus.

[0046] As described in the background section, existing DRGs can experience single-node overload in hotspot DRG groups, resulting in uneven data distribution and load imbalance.

[0047] Example 1:

[0048] Therefore, in order to solve the above-mentioned technical problems existing in the prior art, this embodiment provides a medical DRG data processing method, including:

[0049] S100: Acquire medical record data, identify the first preset key field in the medical record data, generate a segmentation identifier based on the first preset key field of the medical record data, and segment the medical record data according to the segmentation identifier;

[0050] Specifically, the first preset key fields include: diagnosis code, DRG group code, and admission time; the segmentation identifier can be: MDC category: DRG interval: time suffix. This embodiment segments medical record data based on a three-dimensional segmentation identifier, transforming the medical classification system into computational parameters, reducing the inherent long-tail distribution problem of medical data, improving the segmentation refinement of medical record data, and enhancing data locality and computational efficiency.

[0051] The generation of fragment identifiers based on key fields of medical record data includes:

[0052] S110: Generate MDC category identifiers based on preset mapping rules and diagnostic codes;

[0053] S120: Divide the coding interval into M consecutive DRG groups and generate DRG interval identifiers by combining the category identifier;

[0054] S130: Based on the admission time, a time suffix value is calculated using a hash function to generate a time suffix identifier; the specific calculation method for the time suffix value is as follows:

[0055] A = (12y + m) mod 16;

[0056] Where A is the time suffix value; y is the year; m is the month; and mod is the modulo operator.

[0057] S140: A fragment identifier is formed based on the MDC category identifier, DTG range identifier, and time suffix identifier.

[0058] For example, the diagnosis code is "I21.9", the DRG group is "B023", and the admission date is "2023-03-15". I21.9 maps to a circulatory system disease, and its corresponding MDC starts with the letter B. DRG group B023 falls within the interval B001-B050. Therefore, its DRG interval identifier is B001-B050. Finally, the time suffix value is calculated to be 7 using a hash function, generating the time suffix identifier: T07. The final fragment identifier is (B:

[0059] B001-B050:T07).

[0060] S200: Obtain the load status of the compute nodes and allocate shards to the compute nodes with the lowest load. The initial number of shards is:

[0061] X = NK;

[0062] Where X is the initial number of shards, N is the number of compute nodes, and K is an adjustable parameter.

[0063] Specifically, the adjustable parameter K is calculated as follows:

[0064] K=max(3, min(5, round(η*γ)));

[0065] Where η is the adaptive transformation coefficient; γ is the data entropy;

[0066] η is calibrated at preset intervals, and the specific calibration method is as follows:

[0067] η=argmin[∑(K a -ηEntropy)2 ];

[0068] Where b is the current period; K a K is the optimal value recorded in historical data; Entropy is the entropy value of the system.

[0069] The data entropy γ is calculated as follows:

[0070]

[0071] Where R is the number of species in the MDC; p j The probability of the j-th MDC category;

[0072] In this embodiment, the p j The calculation method is as follows:

[0073]

[0074] Among them, S j Let S be the number of cases in the j-th MDC category; S is the total number of cases across all categories.

[0075] This embodiment employs an entropy-driven adaptive partitioning strategy to match the initial number of partitions with the data complexity, thereby improving parallel computing efficiency.

[0076] S300: Real-time acquisition of data volume for each shard, determination of maximum and minimum shard size, calculation of load deviation rate based on maximum and minimum shard size, detection of shards exceeding the preset value, splitting of shards exceeding the preset time window to obtain sub-shards, and redistributing the sub-shards to the compute nodes with the lowest load; when the load deviation rate is less than the preset value, detection of total data volume of adjacent shards, if the total data volume of adjacent shards is less than the preset data volume, merging adjacent shards to form new shards, and allocating the new shards to the compute nodes with the lowest load.

[0077] Specifically, the calculation method for the load deviation rate based on the maximum and minimum fragmentation amounts is as follows:

[0078]

[0079] Where δ is the load deviation rate; n max n is the maximum number of fragments. min This is the minimum number of fragments.

[0080] The specific method for detecting substandard segments is as follows:

[0081] d e >μ+α t σ;

[0082] Where, d e Let be the data size of the e-th segment; μ be the average data size of all segments; σ be the standard deviation of the data size of the detected segment from the average data size of all segments; α be the data size of the segment being tested; μ be the average data size of all segments; σ be the standard deviation of the data size of the segment being tested from the average data size of all segments; α be the data size of the segment being tested; μ be the average data size of all segments; σ be the standard deviation of the data size of the segment t Let be the sensitivity factor for piecewise splitting at time t.

[0083] Where, α t The calculation method is as follows:

[0084]

[0085] Where, α t-1 β is the sensitivity factor for piecewise splitting at time t-1; E is the adjustment coefficient; Δ The number of recent load imbalance events; H is the total number of shards; α min The minimum value of the partitioning sensitivity factor; α max This represents the maximum value of the sharding sensitivity factor.

[0086] The average value of all data fragments is calculated as follows:

[0087]

[0088] Where f is the total number of shards.

[0089] The standard deviation of the detected data segment size from the average of all data segment sizes is calculated as follows:

[0090]

[0091] The above method is used to detect excessive levels in the fragmentation. If d e If the value is greater than μ+2σ, then the detected fragment is an out-of-range fragment.

[0092] This embodiment reduces the load deviation rate between computing nodes by monitoring the amount of fragmented data and using a dynamic load balancing algorithm. By splitting fragments that exceed the limit and intelligently allocating them to idle nodes or merging fragments with less data, resource idleness or overload can be reduced.

[0093] S400: Each computing node independently and in parallel performs DRG index calculation, specialty classification and surgical marker update for its assigned slice, and obtains DRG index calculation results, specialty classification results and surgical marker update results. The DRG index calculation results, specialty classification results and surgical marker update results are aggregated to obtain the specialty capability matrix.

[0094] Specifically, the DRG indicators include: CMI (Case Mix Index, which represents the technical difficulty level of treating cases and is related to factors such as the difficulty of the patients' conditions admitted to the hospital and the composition of the patients), Time Consumption Index (representing the time spent treating similar diseases), Cost Consumption Index (representing the cost spent treating similar diseases), and Mortality Rate of Low-to-Medium Risk Groups (representing the mortality rate of low-to-medium risk groups with an extremely low probability of death due to the disease itself).

[0095] For example, a hospital's CMI (Case Mix Index) = total weights of the hospital / total number of cases in the hospital, where the total weights represent the total output of inpatient services. The provincial weights W for each DRG group are calculated based on medical expenses. c If we use n1, n2, ..., n respectively... k Let represent the number of cases covered by each DRG in this hospital, then the total weight of this hospital is:

[0096]

[0097] Where k is the number of DRGs; W c Weight for the entire province; n c This represents the number of cases covered by the c-th DRG group.

[0098] For example, the specific algorithm for the time consumption index is as follows:

[0099] Calculate the average length of hospital stay for each DRG in the entire sample;

[0100] Calculate the average length of stay for each DRG in this hospital;

[0101] Calculate the ratio of hospitals to the entire sample;

[0102] Calculate the time consumption index;

[0103]

[0104] Among them, E h This refers to the time consumption index; n is the ratio of the average length of stay for the l-th DRG in this hospital to the average length of stay for the corresponding DRG in the entire sample; l This represents the number of cases covered by the l-th DRG group;

[0105] The time consumption index is obtained through the above calculation method. The time consumption index is used to evaluate the hospital's performance. For example, the average level of a certain region is 1. If the calculated value is 1, it means that the hospital is close to the average level; less than 1 means that the hospital stay is short; greater than 1 means that the hospital stay is long.

[0106] For example, the cost expenditure index is constructed by standardizing medical expenses using DRGs. The specific calculation method is as follows:

[0107] Calculate the average cost per case for each DRG in the entire sample;

[0108] Calculate the average cost per case for each DRG in this hospital;

[0109] Calculate the ratio of hospitals to the entire sample;

[0110]

[0111] in, For cost ratio; g l This is the average cost per case for the first DRG in our hospital; This represents the average cost per instance of the l-th DRG in the entire sample.

[0112] Calculate the cost consumption index;

[0113]

[0114] The cost consumption index is used to evaluate hospital performance. For example, the average level in a certain region is 1. If the calculated value is 1, it means that the cost is close to the average level; less than 1 means that the cost of medical care is low; and greater than 1 means that the cost of medical care is high.

[0115] For example, the mortality rate of the low-to-medium risk group represents a mortality rate where the disease itself results in an extremely low probability of death. The in-hospital mortality rate of DRG cases is used to classify the mortality risk of different DRGs. The specific calculation method is as follows:

[0116] Calculate the in-hospital mortality rate M for each DRG. i , for M i Take the logarithm lnM i Calculate lnM i mean and standard deviation s i Finally, a risk score is calculated based on the above parameters.

[0117] For example, a mortality risk score of "0" indicates that no deaths occurred among the cases belonging to these DRGs; a score below "mean - standard deviation" indicates low risk; and a score between "mean - standard deviation" and "mean" indicates low to medium risk.

[0118] Values ​​between the "average" and the "mean plus standard deviation" are considered medium to high risk.

[0119] A value higher than "mean + standard deviation" indicates high risk.

[0120] The definitions of each "mortality risk level" are shown in Table 2:

[0121] Table 2: Mortality Risk Score and its Definition

[0122]

[0123] The specialized subject classification adopts the Map-Reduce model, and the specific classification method is as follows:

[0124] The preset field of the discharge department item in the medical record data is extracted as the classification label. The first and second processing are performed in parallel according to the classification label. The results of the first and second processing are merged to form the specialty classification result.

[0125] The first processing step addresses cases where the specialty category is not obstetrics and gynecology or traditional Chinese medicine, specifically including:

[0126] Exclude data from the default DRG group;

[0127] Further exclude data where the specialty category in the rule table is empty, or data where the specialty category in the rule table is Obstetrics and Gynecology or Traditional Chinese Medicine;

[0128] When the specialty category in the rule table is empty and the discharge code in the DRG details table is a specific code, the specialty category is pediatric surgery or integrated traditional Chinese and Western medicine. For the rest, the specialty category in the rule table is used as the specialty category.

[0129] When the specialty category is pediatrics and the corresponding conditions are met, it is included in the specialty analysis.

[0130] The second treatment involves cases where the specialty is obstetrics and gynecology or traditional Chinese medicine, specifically including:

[0131] Exclude data where the DRG group is a related group;

[0132] The specialty category in the rule table is Obstetrics and Gynecology, or the discharge department in the DRG details table begins with a specific code;

[0133] When the discharge department in the DRG details table starts with a specific code, it is included in the Traditional Chinese Medicine department analysis; the rest are Obstetrics and Gynecology departments.

[0134] This embodiment uses the MapReduce model to achieve parallel processing of specialty classification, thereby improving the speed of specialty classification for complex cases.

[0135] In this embodiment, the surgical marker is updated as follows: a surgical code retrieval structure is constructed, the surgical operation fields of the case are traversed, surgical type matching is performed through memory retrieval, and if the surgical type matches, the surgical marker is updated.

[0136] Specifically, the memory retrieval structure is a Bloom filter.

[0137] For example, if the preset surgical types include Level 4 surgery, minimally invasive surgery, and interventional surgery, a Bloom filter is used to match whether the surgeries and procedures in the medical record data fall within the scope of Level 4 surgery, minimally invasive surgery, or interventional surgery. If any surgery or procedure matches Level 4 surgery, minimally invasive surgery, or interventional surgery, the corresponding Level 4 surgery, minimally invasive surgery, or interventional surgery flag is updated.

[0138] This embodiment uses a Bloom filter for surgical marker matching, which can improve the matching speed of surgical markers, reduce the misjudgment rate of surgical type markers, and reduce memory usage.

[0139] S500: All sample medical institutions are classified according to their level to form multiple independent computing pools, and a distributed Top-N algorithm is used to rank hospitals of the same level.

[0140] Specifically, ranking hospitals of the same level using a distributed Top-N algorithm includes:

[0141] S510: Each computing node maintains a min-heap data structure, traverses the specialty capability matrix of each hospital within its data shard, scores each hospital's performance indicators based on the DRG index, and calculates capability score, standardized score, and total score based on the performance indicator score.

[0142] Specifically, the scoring method for the performance indicators is as follows:

[0143] Diagnosis-related group score: number of diagnosis-related groups in the hospital itself / mean number of diagnosis-related groups in all hospitals in the same category;

[0144] CMI score: Hospital's own CMI / mean CMI of all hospitals in the same category;

[0145] Total weight score: The hospital's own total weight / the average of the total weights of all hospitals in the same category;

[0146] Time Consumption Index Score: The reciprocal of the hospital's own time consumption index;

[0147] Cost Consumption Index Score: The reciprocal of the hospital's own cost consumption index;

[0148] Mortality score for low-to-medium risk groups: I. Case fatality rate <0.3 (historical coefficient in the DRG score coefficient table), 5 points (historical coefficient); II. Case fatality rate ≥0.3, 5 - 5 * (0.3 - case fatality rate) / (0.3 - MAX(case fatality rate))

[0149] Standardized mortality rate score: I. Standardized case fatality rate < 4.5 (historical coefficient), 5 points (historical coefficient); II. Standardized case fatality rate ≥ 4.5, 5 - 5 * (4.5 - standardized case fatality rate) / (4.5 - MAX (standardized case fatality rate));

[0150] The specific methods for calculating the ability score, standardized score, and total score are as follows:

[0151] Competency score = Diagnosis-related group score (number of diagnosis-related groups / average number of diagnosis-related groups in the province) * 0.45 (historical coefficient) + Total weight score (total weight / average total weight in the province) * 0.1 (historical coefficient) + CMI score (CMI / average CMI in the province) * 0.45 (historical coefficient);

[0152] Standardized competence score = competence score / maximum competence score in the hospital * 70 (historical coefficient);

[0153] Standardized efficiency score = Time score / Maximum time score in the hospital * 15 (historical coefficient);

[0154] Standardized cost score = Cost score / Maximum cost score in hospitals * 5 (historical coefficient);

[0155] Total score = Standardization capability score + Standardization cost score + Standardization efficiency score + Standardized mortality rate score for low-to-medium risk + Standardized mortality rate score;

[0156] S520: Each node calculates the ranking of each hospital for each indicator based on the performance indicator scores and total scores in the specialty capability matrix, stores the D hospitals with the highest ranking in the current shard, aggregates the storage results in all nodes, and uses the min-heap algorithm to merge and generate the Top-G ranking.

[0157] This embodiment uses a distributed Top-N algorithm combined with DRG indicators such as CMI and cost consumption index to achieve real-time dynamic updates of the ranking of hospitals of the same level.

[0158] Example 2:

[0159] This embodiment provides a medical DRG data processing system, which uses the medical DRG data processing method described in Embodiment 1. The data processing system includes:

[0160] Data receiving module 200, which is used to receive and acquire medical record data from multiple medical institutions 100;

[0161] The initial segmentation module 300 is used to acquire medical record data, identify the first preset key field in the medical record data, generate a segmentation identifier based on the first preset key field of the medical record data, and segment the medical record data according to the segmentation identifier.

[0162] Sharding allocation module 700: Obtains the load status of the compute nodes and allocates shards to the compute nodes with the lowest load;

[0163] Parallel computing module 400 is used to independently perform DRG index calculation, specialty classification and surgical marker update of its loaded slice in parallel, obtain DRG index calculation results, specialty classification results and surgical marker update results, and aggregate the DRG index calculation results, specialty classification results and surgical marker update results to obtain specialty capability matrix.

[0164] The dynamic sharding module 600 is used to acquire the data volume of each shard in real time, determine the maximum and minimum shard size, calculate the load deviation rate based on the maximum and minimum shard size, detect excessive shards when the load deviation rate is greater than a preset value, split the excessive shards into sub-shards within a preset time window, and redistribute the sub-shards to the computing nodes with the lowest load; when the load deviation rate is less than the preset value, detect the total data volume of adjacent shards, and if the total data volume of adjacent shards is less than the preset data volume, merge the adjacent shards to form a new shard, and allocate the new shard to the computing nodes with the lowest load;

[0165] The hierarchical ranking module 500 is used to classify all sample medical institutions based on the medical institution level to form multiple independent computing pools, and uses a distributed Top-N algorithm to rank hospitals of the same level.

[0166] In this embodiment, the parallel computing module includes multiple computing nodes 410, each of which can independently and in parallel perform DRG index calculation, specialty classification, and surgical marker update for its assigned slice. Each computing node includes a DRG index calculation unit, a specialty classification unit, and a surgical marker update unit. The DRG index calculation unit is used for calculating the DRG index for its assigned slice, the specialty classification unit is used for specialty classification of its assigned slice, and the surgical marker update unit is used for updating the surgical marker for its assigned slice.

[0167] The parallel computing module may also include an aggregation unit 420, which aggregates the DRG index calculation results, specialty classification results, and surgical marker update results to obtain a specialty capability matrix.

[0168] It should be noted that in the above embodiments, the descriptions of each embodiment have their own emphasis. For parts that are not described in detail in a certain embodiment, please refer to the relevant descriptions in other embodiments.

[0169] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-readable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-readable program code.

[0170] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create a machine for implementing the flowchart illustrations. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0171] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0172] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0173] This application also provides a computer-readable storage medium storing a computer program thereon, which is executed by a processor to implement the above-described medical DRG data processing method.

[0174] If the modules / units integrated in the medical DRG data processing system / terminal device are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the methods of the above embodiments of the present invention can also be implemented by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above.

[0175] The computer program includes computer program code, which can be in the form of source code, object code, executable file, or some intermediate form. The computer-readable medium can include: any entity or device capable of carrying the computer program code, recording media, USB flash drive, portable hard drive, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc. It should be noted that the content included in the computer-readable medium can be appropriately added or removed according to the requirements of legislation and patent practice in the jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, computer-readable media do not include electrical carrier signals and telecommunication signals.

[0176] In the several embodiments provided in this application, it should be understood that the disclosed devices, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.

[0177] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0178] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0179] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this application. The above embodiments are only used to illustrate the technical solution of this application and are not intended to limit it. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the various embodiments of this application.

[0180] The above description of the disclosed embodiments enables those skilled in the art to make or use the invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the invention. Therefore, the invention is not to be limited to the embodiments shown herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A medical DRG data processing method characterized by, The method comprises the following steps: Obtaining medical record data, identifying a first preset key field in the medical record data, generating a shard identifier based on the first preset key field of the medical record data, and performing sharding on the medical record data according to the shard identifier; Obtaining the load state of the computing nodes, and distributing the shards to the computing nodes with the lowest load, wherein the initial number of shards is X = NK, wherein X is the initial number of shards, N is the number of computing nodes, and K is an adjustable parameter; Real-time acquisition of the data volume of each shard, determination of the maximum shard volume and the minimum shard volume, calculation of the load deviation rate according to the maximum shard volume and the minimum shard volume, detection of an out-of-standard shard when the load deviation rate is greater than a preset value, splitting of the out-of-standard shard in a preset time window to obtain a sub-shard, and re-distribution of the sub-shard to the computing node with the lowest load; when the load deviation rate is less than the preset value, detecting the total data volume of adjacent shards, and merging the adjacent shards to form a new shard when the total data volume of the adjacent shards is less than a preset data volume, and distributing the new shard to the computing node with the lowest load; Each computing node independently performs DRG index calculation, specialty classification, and surgery mark update on the shard loaded thereon to obtain DRG index calculation results, specialty classification results, and surgery mark update results, and aggregates the DRG index calculation results, the specialty classification results, and the surgery mark update results to obtain a specialty capability matrix; Classifying all sample medical institutions based on the level of medical institutions to form multiple independent computing pools, and ranking the hospitals of the same level based on the specialty capability matrix by using a distributed Top-N algorithm. 2.The medical DRG data processing method of claim 1, wherein, The calculation method of the adjustable parameter K is as follows: K = max(3, min(5, round(η * γ))); Wherein, η is an adaptive conversion coefficient; γ is a data entropy. 3.The medical DRG data processing method of claim 2, wherein, Calibrate η every preset time interval, and the specific calibration method is as follows: η = argmin [∑(K a -ηEntropy) 2 ] ; where K a is the optimal K value recorded in the historical data; and Entropy is the entropy value of the system. 4.The medical DRG data processing method of claim 2, wherein, The calculation method of the data entropy γ is as follows: where R is the number of classes of MDCs; p j is the probability of the jth class of MDCs. The p j The calculation is as follows: where S j is the number of cases in the jth MDC category; S is the total number of cases across all categories.

5. The medical DRG data processing method of claim 1, wherein, Ranking the hospitals of the same level by using a distributed Top-N algorithm comprises the following steps: Each computing node maintains a minimum heap data structure, traverses the specialty capability matrix of each hospital in the data shard, scores the performance indicators of each hospital according to the DRG index, and calculates the ability score, the standardized score, and the total score according to the performance indicator score; Each node ranks each hospital according to the performance indicator score and the total score in the specialty capability matrix, stores the D hospitals with the highest ranking in the current shard, aggregates the storage results in all nodes, and combines to generate a Top-G ranking by using a minimum heap algorithm.

6. The medical DRG data processing method of claim 1, wherein, The memory retrieval structure is a Bloom filter.

7. The medical DRG data processing method of claim 1, wherein, The specialty classification adopts a Map-Reduce model.

8. A medical DRG data processing system characterized by, The data processing system is used to execute the medical DRG data processing method of any one of claims 1-7, and the data processing system comprises: A data receiving module for receiving medical record data of multiple medical institutions; An initial sharding module for obtaining medical record data, identifying a first preset key field in the medical record data, generating a shard identifier based on the first preset key field of the medical record data, and performing sharding on the medical record data according to the shard identifier; The slice allocation module acquires the load state of the computing nodes and allocates the slices to the computing nodes with the lowest load. The parallel computing module is used for parallel independent DRG index calculation, specialty classification and operation mark updating of the loaded slices, and obtains DRG index calculation results, specialty classification results and operation mark updating results. The DRG index calculation results, specialty classification results and operation mark updating results are aggregated to obtain a specialty capability matrix. The dynamic slice module is used for real-time acquisition of the data volume of each slice, determination of the maximum slice volume and the minimum slice volume, calculation of the load deviation rate according to the maximum slice volume and the minimum slice volume, detection of an out-of-standard slice when the load deviation rate is greater than a preset value, splitting of the out-of-standard slice in a preset time window to obtain a sub-slice, and re-allocation of the sub-slice to the computing node with the lowest load. When the load deviation rate is less than the preset value, the total data volume of adjacent slices is detected. If the total data volume of the adjacent slices is less than a preset data volume, the adjacent slices are combined to form a new slice, and the new slice is allocated to the computing node with the lowest load. The hierarchical ranking module is used for classification of all sample medical institutions based on medical institution grade conditions to form a plurality of independent computing pools, and ranking of the same level hospitals by using a distributed Top-N algorithm.

9. A storage medium having stored thereon a computer program, characterized in that The program is executed by the processor to implement the medical DRG data processing method according to any one of claims 1-7.

Citation Information

Patent Citations

  • Parallel fusion DRG analysis method and corresponding system

    CN117976159A

  • Patient data storage method and system based on big data

    CN118098472A

  • Data fragmentation processing method and device, computer equipment and storage medium

    CN119473616A