A method and system for fast retrieval of atrial fibrillation electrocardiogram data
By grouping data and processing it in parallel across multiple nodes, combined with the Elasticsearch search engine and Term Index optimization, the problem of retrieving massive amounts of atrial fibrillation electrocardiogram data was solved, enabling fast retrieval and efficient analysis.
Patent Information
- Application Number
- CN202211586123.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-08
- Publication Date
- 2025-12-16
- Estimated Expiration
- 2042-12-08
AI Technical Summary
Existing technologies struggle to efficiently retrieve and analyze massive amounts of atrial fibrillation electrocardiogram data, resulting in long retrieval times, high server resource consumption, and difficulties due to the sheer volume of data.
By employing data grouping, multi-node parallel processing, and single-node memory index optimization techniques, and utilizing Elasticsearch to build a search engine, fast retrieval is achieved through data feature filtering and classification sorting, combined with Term Index and inverted chain merging.
It significantly improved the retrieval speed of atrial fibrillation data, reduced server resource consumption, and decreased the time cost for researchers.
Smart Images

Figure CN116150449B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of atrial fibrillation data processing, and particularly relates to a method and system for quickly searching atrial fibrillation electrocardiogram data. BACKGROUND
[0002] With the update iteration of wearable devices, there are currently dozens of devices supporting atrial fibrillation screening. When a watch or bracelet is used to monitor atrial fibrillation, it needs to be worn for a long time, and a large amount of data will be generated at a time. Storing these data requires a large amount of hard disk space. In the case of massive data, if a piece of data is searched, the time consumption will be very long. When there is a need for analysis, the data volume problem often leads to the inability to analyze or a very long time consumption. The data volume and search time consumption, analysis time consumption are positively correlated.
[0003] The defects of the prior art are that: it is very difficult to search the data stored in the traditional database when the data volume reaches the order of 100 million, and because the disk occupies a large amount of space, the search will be limited by the disk throughput; if the electrocardiogram data is stored in the form of a file on the hard disk, it is necessary to take out millions or even hundreds of millions of data when analyzing the data. The data taken out needs to be cached and processed using other tools, and the process is complex and low in efficiency; a method is needed that occupies moderate server resources and has high query and analysis efficiency. SUMMARY
[0004] The present application provides a method for quickly searching atrial fibrillation electrocardiogram data, comprising the following steps:
[0005] Data processing step: receiving electrocardiogram data transmitted by a wearable device, the received electrocardiogram data is referred to as original data, the characteristics of each piece of original data are identified, and the identified characteristics are referred to as data characteristics; identifying and filtering the original data and the data characteristics to screen out unqualified data; storing normal data in a search engine, the search engine is based on Elasticsearch, the query performance is optimized, the balance between search and analysis is achieved; each set of search engine is a node, and the data is stored according to the disk occupation of each node.
[0006] Quick search step: when data is stored, the unique identifier and disk information of the data are stored in the memory TermIndex, and each time the search is combined, the search of a single term is required before the search; when reading data, first sort the data characteristics, and put the data with unique data into the list in each category and record the hit number; according to the hit number, find the data with the highest hit rate in different categories, and perform a displacement operation according to the category: M=c&(a>>24), obtain the final matching degree, and filter out the data with the largest matching degree, M is the final matching degree, a is the value in different categories, and c is the hit number.
[0007] As a further improvement of the application, in the data processing step, the data characteristics include P wave, QRS wave, PR, QT, data length, and average amplitude.
[0008] As a further improvement of the application, in the data processing step, if the following conditions occur, the data is unqualified:
[0009] (1). The original data is discontinuous, and there is a segmented condition;
[0010] (2). The original data is obviously abnormal, and the amplitude is extremely small or extremely large;
[0011] (3). The original data length is less than 60s;
[0012] (4). The P wave is less than 0.1mV;
[0013] (5). The QRS wave is less than 0.01 or greater than 2s;
[0014] (6). The PR interval is less than 0.05 or greater than 1.5s;
[0015] (7). The QT interval is less than 0.01s.
[0016] As a further improvement of the application, when the search starts, a plurality of nodes respectively perform the quick search step, and finally the routing management terminal integrates the data of the plurality of nodes and outputs.
[0017] As a further improvement of the application, in the quick search step, the Term list with a correlation degree greater than a set value is found by binary search, the Term list is randomly sorted, and the Term Index is constructed for a single Term; then the block information is obtained from the Term, the position of the associated data on the disk is located, and the data is taken out from the disk and loaded into the memory for reading.
[0018] The application also provides a system for quickly searching atrial fibrillation electrocardiogram data, comprising:
[0019] The data processing module receives electrocardiogram (ECG) data transmitted from wearable devices, refers to the received ECG data as raw data, identifies the characteristics of each segment of raw data, and refers to the identified characteristics as data features; it identifies and filters the raw data and data features, removing unqualified data; it stores normal data into the retrieval engine, which is built on Elasticsearch and optimized for query performance to achieve a balance between retrieval and analysis; each retrieval engine is treated as a node, and data is stored evenly based on the disk usage of each node.
[0020] Fast retrieval module: During data storage, the unique identifier and disk information of the data are stored in the memory TermIndex. Each retrieval requires merging the inverted chains of multiple terms, and before that, a single term is retrieved. When reading data, numerous data features are first classified and sorted. In each category, unique data is placed in a list and the hit count is recorded. The data with the highest hit rate in each category is sorted by hit count, and the data with the highest hit rate in each category is found. The shift operation is performed according to the category: M = c & (a >> 24) to obtain the final matching degree. The data with the highest matching degree is then filtered out. M is the final matching degree, a is the value in different categories, and c is the hit count.
[0021] As a further improvement of the present invention, in the data processing module, the data features include P-wave, QRS wave, PR, QT, data duration, and average amplitude.
[0022] As a further improvement of the present invention, in the data processing module, the following conditions constitute invalid data:
[0023] (1) The original data is not continuous and has segments;
[0024] (2) The original data is obviously abnormal, with extremely small or extremely large amplitudes;
[0025] (3) The duration of the raw data is less than 60 seconds;
[0026] (4) The P-wave is less than 0.1mV;
[0027] (5) The QRS wave is less than 0.01 s or greater than 2 s;
[0028] (6) The PR interval is less than 0.05 s or greater than 1.5 s;
[0029] (7) The QT interval is less than 0.01s.
[0030] As a further improvement of the present invention, when the retrieval begins, multiple nodes perform fast retrieval steps respectively, and finally the routing management terminal integrates the data from multiple nodes and outputs it in a unified manner.
[0031] As a further improvement of the application, in the fast retrieval module, the Term list with a correlation degree greater than a set value is found by binary search, the Term list is randomly sorted, and the Term Index is constructed for a single Term; the block information is obtained from the Term, the location of the associated data on the disk is located, and the data is taken out from the disk and loaded into the memory for reading.
[0032] The beneficial effects of the application are: compared with the prior art, the application has significantly improved the retrieval speed of atrial fibrillation data and reduced the data processing cost and the time cost of related researchers by adopting data grouping, multi-node parallel processing, single-node memory index optimization and other technologies, and the server resource occupation. BRIEF DESCRIPTION OF DRAWINGS
[0033] Figure 1 is a flowchart of the application. DETAILED DESCRIPTION
[0034] As Figure 1 shown, the application discloses a method for quickly retrieving atrial fibrillation electrocardiogram data, aiming to improve the cost and efficiency of atrial fibrillation data retrieval and analysis.
[0035] The specific technical solutions are as follows:
[0036] I. Data requirements: the data source is a wearable device supporting atrial fibrillation screening, and the wearable device can transmit normal electrocardiogram data, the electrocardiogram data transmitted each time is longer than 60s, and the data is measured as much as possible in a stable posture, and the data is uninterrupted.
[0037] II. Data processing steps: receiving the electrocardiogram data transmitted by the wearable device, the received electrocardiogram data is called original data, the characteristics of each segment of original data are identified, and the identified characteristics are called data characteristics, the data characteristics include P wave, QRS wave, PR, QT, data duration, and average amplitude.
[0038] In order to avoid storing abnormal data into the database, the data needs to be identified and filtered before being stored, and unqualified data is screened out, and if the following conditions occur, it is unqualified data:
[0039] (1). The original data is discontinuous and has a segmented condition;
[0040] (2). The original data is obviously abnormal, and the amplitude is extremely small or extremely large;
[0041] (3). The original data duration is less than 60s;
[0042] (4). The P wave is less than 0.1mV;
[0043] (5). QRS wave less than 0.01 or greater than 2s;
[0044] (6). PR interval less than 0.05 or greater than 1.5s;
[0045] (7). QT interval less than 0.01s.
[0046] Normal data is stored in the retrieval engine, and the normal data contains data characteristics and original data; the retrieval engine is based on Elasticsearch, and the query performance is optimized to balance retrieval and analysis; each set of retrieval engine is a node, and the data is stored according to the disk occupation of each node.
[0047] III. Fast retrieval steps:
[0048] In order to realize fast retrieval, when storing data, remember the unique identifier of the data and the disk information stored in the memory TermIndex, and store other data in the disk;
[0049] Each retrieval needs to merge multiple Term's inverted chain, before which the single term is retrieved:
[0050] Find the Term list with high correlation degree (when the correlation degree is greater than the set value, it is considered that the correlation degree is high) through binary search;
[0051] Randomly sort the Term list to construct Term Index for single Term;
[0052] Get the block information from Term, locate the position of its associated data in the disk;
[0053] Load the data from the disk into the memory to read.
[0054] When reading data, first sort the numerous data characteristics, and put the data with uniqueness into the list in each category and record the hit frequency, at this time part of the results are as follows:
[0055]
[0056] According to the hit frequency, find the data with the highest hit rate in different categories, and do displacement operation according to the category: M = c & (a >> 24); M is the final matching degree, a is the value in different categories, and c is the hit frequency. Get the final matching degree, and filter out the data with the largest matching degree.
[0057] The original data value is too small, which is convenient for researchers to use after displacement operation.
[0058] As a distributed system, due to the possession of multiple nodes, the retrieval efficiency is proportional to the number of nodes, when retrieval starts, multiple nodes process the above operation respectively, and finally the route management terminal integrates the data of multiple nodes to unify and output.
[0059] Because of the support of multiple nodes, when storing data, the data can be backed up to low-frequency nodes to ensure data reliability, and if retrieval efficiency needs to be improved at a certain moment, more nodes can be added to improve overall efficiency.
[0060] Compared with the prior art, the application has obvious advantages in server resource occupation and atrial fibrillation data retrieval speed due to the adoption of data grouping, multi-node parallel processing, single-node memory index optimization and other technologies, and reduces data processing cost and time cost of related researchers.
[0061] The above is a further detailed description of the application in combination with specific preferred embodiments, and the specific implementation of the application cannot be limited to these descriptions. For ordinary skilled persons in the technical field to which the application belongs, some simple deductions or substitutions can be made without departing from the concept of the application, and all of them should be regarded as falling within the protection scope of the application.
Claims
1. A method for fast retrieval of atrial fibrillation electrocardiogram data, characterized by, Comprising the following steps: Data processing step: receiving electrocardiogram data transmitted by the wearable device, the received electrocardiogram data is referred to as raw data, identifying the characteristics of each piece of raw data, and the identified characteristics are referred to as data characteristics; Identify and filter the raw data and data characteristics to screen out unqualified data; Store the normal data in the search engine, which is based on Elasticsearch, optimize its query performance, and achieve a balance between search and analysis; each set of search engine as a node, data storage according to the disk occupation of each node Balanced storage; Fast search step: when storing data, remember the unique identifier and disk information of the data and store them in the memory Term Index; each search needs to merge multiple Term's inverted links, and search a single term before that; when reading data, first sort the numerous data characteristics, and put the unique data in the list and record the hit count in each category; Sort by hit count to find the highest hit rate data in different categories, and do displacement operation according to category: M = c & (a >> 24), get the final matching degree, filter out the data with the largest matching degree, M is the final matching degree, a is the value in different categories, and c is the hit count.
2. The method of claim 1, wherein, In the data processing step, the data characteristics include P wave, QRS wave, PR, QT, data length, and average amplitude.
3. The method of claim 2, wherein, In the data processing step, if the following conditions occur, it is unqualified data: (1). The raw data is discontinuous and segmented; (2). The raw data is obviously abnormal, with extremely small or large amplitude; (3). The raw data length is less than 60s; (4). P wave is less than 0.1mV; (5). QRS wave is less than 0.01 or greater than 2s; (6). PR interval is less than 0.05 or greater than 1.5s; (7). QT interval is less than 0.01s.
4. The method of claim 1, wherein, When the search starts, multiple nodes perform the fast search step, and finally the routing management terminal integrates the data of multiple nodes and outputs uniformly.
5. The method of claim 1, wherein, In the fast search step, find the Term list with a correlation greater than a set value through binary search, randomly sort the Term list to build TermIndex for a single Term; Then get the block information from Term to locate the position of its associated data on the disk; Load the data from the disk into the memory to read.
6. A system for fast retrieval of atrial fibrillation electrocardiogram data, characterized by Comprising: Data processing module: for receiving electrocardiogram data transmitted by the wearable device, the received electrocardiogram data is referred to as raw data, identifying the characteristics of each piece of raw data, and the identified characteristics are referred to as data characteristics; Identify and filter the raw data and data characteristics to screen out unqualified data; Store the normal data in the search engine, which is based on Elasticsearch, optimize its query performance, and achieve a balance between search and analysis; each set of search engine as a node, data storage according to the disk occupation of each node Balanced storage; Quick search module: when data is stored, the unique identifier and disk information of the data are stored in the memory Term Index. Each search needs to combine the inverted chain of multiple Terms, and search the single Term before that. When reading data, first sort the data features, and put the data with unique features into the list in each category and record the hit number. According to the hit number, find the data with the highest hit rate in different categories, and do displacement operation according to the category: M = c & (a >> 24), to get the final matching degree, and filter out the data with the largest matching degree. M is the final matching degree, a is the value in different categories, and c is the hit number.
7. The system of claim 6, wherein, In the data processing module, the data features include P wave, QRS wave, PR, QT, data length, and average amplitude.
8. The system of claim 7, wherein, In the data processing module, if the following conditions occur, the data is unqualified: (1). The original data is discontinuous and segmented; (2). The original data is obviously abnormal, with extremely small or large amplitude; (3). The original data length is less than 60s; (4). The P wave is less than 0.1mV; (5). The QRS wave is less than 0.01 or greater than 2s; (6). The PR interval is less than 0.05 or greater than 1.5s; (7). The QT interval is less than 0.01s.
9. The system of claim 6, wherein, When the search starts, multiple nodes perform the quick search step respectively, and finally the routing management terminal integrates the data of multiple nodes and outputs.
10. The system of claim 6, wherein, In the quick search module, the Term list with a correlation degree greater than the set value is found by binary search, the Term list is randomly sorted, and the Term Index is constructed for the single Term. Then the block information is obtained from the Term, the location of the associated data on the disk is located, and the data is taken out from the disk and loaded into the memory for reading.
Citation Information
Patent Citations
High-efficiency processing method and system for big data
CN104331421A
Method for implementing class memory database access and retrieval
CN1635494A