CN110797085A - Method, system, equipment and storage medium for inquiring gene data - Google Patents
Method, system, equipment and storage medium for inquiring gene data Download PDFInfo
- Publication number
- CN110797085A CN110797085A CN201911025189.9A CN201911025189A CN110797085A CN 110797085 A CN110797085 A CN 110797085A CN 201911025189 A CN201911025189 A CN 201911025189A CN 110797085 A CN110797085 A CN 110797085A
- Authority
- CN
- China
- Prior art keywords
- sequence
- segment
- extension
- matching
- expansion
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B30/00—ICT specially adapted for sequence analysis involving nucleotides or amino acids
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B50/00—ICT programming tools or database systems specially adapted for bioinformatics
Landscapes
- Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Engineering & Computer Science (AREA)
- Medical Informatics (AREA)
- General Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Biotechnology (AREA)
- Evolutionary Biology (AREA)
- Biophysics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Bioethics (AREA)
- Databases & Information Systems (AREA)
- Chemical & Material Sciences (AREA)
- Analytical Chemistry (AREA)
- Proteomics, Peptides & Aminoacids (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
The application discloses a method for inquiring gene data, which comprises the following steps: dividing the sequence to be detected into x + t seed pieces equally, and dividing the reference sequence into x + t subsequences equally; determining each matching position of each seed; performing left extension and right extension on each determined matching position, and when extension in any direction is performed, ending the extension in the direction when the editing distance reaches x or extends to the tail of the sequence to be detected; determining an expansion quality score corresponding to each matching position according to the expansion length and the editing distance of each matching position; and filtering the matching positions with the expanded quality scores lower than a preset quality score threshold value, and determining the positioning of the sequence to be detected in the reference sequence based on each filtered matching position. By applying the scheme, the method and the device are beneficial to improving the query efficiency of the gene data and ensuring the precision. The application also provides a system, equipment and storage medium for inquiring the gene data, and the system, equipment and storage medium have corresponding effects.
Description
Technical Field
The invention relates to the technical field of gene data comparison, in particular to a method, a system, equipment and a storage medium for inquiring gene data.
Background
With the rapid development of second generation and third generation gene sequencing technologies, the amount of gene sequence data rapidly increases, and how to efficiently store, access and query the massive data is a major challenge in the industry at present.
The key requirement of gene sequencing application is that DNA subsequences need to be mapped onto reference genomes quickly and accurately, and gene data is usually compressed data which can be stored and transmitted conveniently, but when precise query is needed, the traditional query mode needs to be decompressed online, so that the mode has very low running performance and query time is very long.
At present, a group of schemes index data based on an integral compression method, and the method needs to perform integral compression indexing after connecting all gene sequences, so as to support quick query. However, such a scheme is very expensive to construct a gene sequence index. The other scheme is to construct a signature index based on a reference sequence, the reference sequence is usually indexed by a q-gram inverted index method, a query sequence is divided into subsequences with the length of q as the signature index, and the method has very small cost for constructing the index. However, the query length is required to be at least larger than q, and the value of q affects query precision and efficiency.
In summary, how to improve the query efficiency of gene data and realize high-precision query is a technical problem that needs to be solved urgently by those skilled in the art at present.
Disclosure of Invention
The invention aims to provide a method, a system, equipment and a storage medium for inquiring gene data so as to improve the inquiring efficiency of the gene data and realize high-precision inquiring.
In order to solve the technical problems, the invention provides the following technical scheme:
a method for querying gene data, comprising:
dividing the sequence to be detected into x + t seed pieces equally, and dividing the reference sequence into x + t subsequences equally; x is a preset editing distance threshold value, and t is a length adjusting parameter;
matching each seed with the reference sequence to determine each matching position;
performing left extension and right extension on each determined matching position, and when extension in any direction is performed, ending the extension in the direction when the editing distance reaches x or extends to the tail of the sequence to be detected;
determining an expansion quality score corresponding to each matching position according to the expansion length and the editing distance of each matching position;
and filtering the matching positions with the expanded quality scores lower than a preset quality score threshold, and determining the positioning of the sequence to be detected in the reference sequence based on each filtered matching position.
Preferably, the matching each seed with the reference sequence to determine each matching position includes:
and matching each seed with the reference sequence, and determining each matching position in a hash table look-up mode.
Preferably, the method further comprises the following steps:
and when the number of the determined matching positions is larger than a preset number threshold value y, reducing the value of t, returning to execute the operation of equally dividing the sequence to be detected into x + t seed pieces and equally dividing the reference sequence into x + t sub-sequences.
Preferably, the determining an extension quality score corresponding to each matching position according to the extension length and the edit distance of each matching position includes:
and determining the extension quality score corresponding to each matching position by taking the extension length as a first priority and the edit distance as a second priority.
Preferably, the method further comprises the following steps: presetting a fragment library comprising n sequence fragments, wherein each sequence fragment comprises first fragment information and second fragment information;
correspondingly, the performing left expansion and right expansion on each determined matching position includes:
performing left extension and right extension on each determined matching position, and when performing extension in any direction and when a sequence segment appearing during extension conforms to any one sequence segment in the segment library, calculating and storing an editing distance corresponding to the sequence segment, so that when the sequence segment appears again during subsequent extension, the calculation of the editing distance is replaced by the stored editing distance;
wherein the sequence fragment appearing during the expansion conforms to any one sequence fragment in the fragment library, and represents that: the segment information of the seed during the expansion accords with the first segment information of any sequence segment in the segment library, and the segment information of the corresponding subsequence of the reference sequence accords with the second segment information of the sequence segment in the segment library.
A system for querying genetic data, comprising:
the sequence dividing module is used for equally dividing the sequence to be detected into x + t seed pieces and equally dividing the reference sequence into x + t subsequences; x is a preset editing distance threshold value, and t is a length adjusting parameter;
the precise matching module is used for matching each seed with the reference sequence and determining each matching position;
the expansion module is used for performing left expansion and right expansion on each determined matching position, and ending the expansion in any direction when the editing distance reaches x or the editing distance reaches the tail of the sequence to be detected during the expansion in the direction;
the extended quality scoring module is used for determining an extended quality score corresponding to each matching position according to the extended length and the editing distance of each matching position;
and the filtering and positioning module is used for filtering the matching positions with the expanded quality scores lower than a preset quality score threshold value and determining the positioning of the sequence to be detected in the reference sequence based on the filtered matching positions.
Preferably, the precise matching module is specifically configured to:
and matching each seed with the reference sequence, and determining each matching position in a hash table look-up mode.
Preferably, the method further comprises the following steps: the fragment library presetting module is used for presetting a fragment library comprising n sequence fragments, wherein each sequence fragment comprises first fragment information and second fragment information;
correspondingly, the extension module is specifically configured to:
performing left extension and right extension on each determined matching position, and when extension in any direction is performed, ending the extension in the direction when the editing distance reaches x or extends to the tail of the sequence to be detected; when the sequence segment generated during the expansion accords with any one sequence segment in the segment library, the editing distance corresponding to the sequence segment is calculated and stored, so that when the sequence segment is generated again during the subsequent expansion, the calculation of the editing distance is replaced by the stored editing distance;
wherein the sequence fragment appearing during the expansion conforms to any one sequence fragment in the fragment library, and represents that: the segment information of the seed during the expansion accords with the first segment information of any sequence segment in the segment library, and the segment information of the corresponding subsequence of the reference sequence accords with the second segment information of the sequence segment in the segment library.
An apparatus for querying gene data, comprising:
a memory for storing a computer program;
a processor for executing the computer program to implement the steps of the method for querying gene data described in any one of the above.
A computer-readable storage medium having stored thereon a computer program which, when executed by a processor, implements the steps of the method of querying gene data as set forth in any one of the above.
By applying the technical scheme provided by the embodiment of the invention, the gene data does not need to be decompressed for accurate query, and the condition that query time is long due to decompression can be avoided. In the scheme of the application, optimization is carried out on the basis of a q-gram inverted index method, and accurate query is realized based on the pigeon loft principle. Specifically, according to the pigeon loft principle, when the edit distance between the sequence to be detected and the reference sequence does not exceed x, that is, the edit distance between the query sequence and the reference sequence does not exceed x, both the reference and the query are divided into x +1 subsequences, so that at least 1 subsequence of the query can be completely matched with a reference subsequence.
Therefore, the sequence to be detected is equally divided into x + t seed sequences, the reference sequence is equally divided into x + t subsequences, each seed sequence is matched with the reference sequence, at least one matching position can be determined, t is larger than or equal to 1, and the larger the value of t is, the more matching positions can be determined. Moreover, each matching position determined in the method is accurately matched, the query precision of the scheme of the method is guaranteed, and the operation time is short. Compared with the mode of compressing indexes integrally in the traditional scheme, the scheme of the application is to match each seed, namely to index based on the subsequence of the sequence to be detected, so that the cost for constructing the index is very small, and compared with the traditional q-gram reverse index method, the scheme of the application does not require the length of the query, namely to support the sequences to be detected with different lengths. After at least one matching position is determined, an extended quality score corresponding to the matching position is determined according to the extended length and the editing distance of each matching position, then the matching positions with the extended quality scores lower than a preset quality score threshold value can be filtered, and the positioning of the sequence to be detected in the reference sequence is determined based on the filtered matching positions. Because the matching positions are filtered and the matching positions are filtered to be lower than the preset quality score threshold, the scheme of the application is favorable for saving time consumed for subsequently determining the positioning of the sequence to be detected in the reference sequence on the premise of ensuring the query precision. In summary, the scheme of the application is beneficial to improving the query efficiency of gene data, is suitable for the sequences to be tested with different lengths, and can realize high-precision query.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
FIG. 1 is a flow chart of a method for querying gene data according to the present invention;
FIG. 2 is a schematic diagram of a gene data query system according to the present invention.
Detailed Description
The core of the invention is to provide an implementation flow chart of the gene data query method, which is beneficial to improving the query efficiency of the gene data, is suitable for sequences to be tested with different lengths and can realize high-precision query.
In order that those skilled in the art will better understand the disclosure, the invention will be described in further detail with reference to the accompanying drawings and specific embodiments. It is to be understood that the described embodiments are merely exemplary of the invention, and not restrictive of the full scope of the invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Referring to fig. 1, fig. 1 is a flowchart illustrating an implementation of a method for querying gene data according to the present invention, the method for querying gene data may include the following steps:
step S101: dividing the sequence to be detected into x + t seed pieces equally, and dividing the reference sequence into x + t subsequences equally; x is a preset edit distance threshold, and t is a length adjustment parameter.
In this application, the test sequence is referred to as query and the reference sequence is referred to as reference. Dividing query into x + t non-overlapping subsequences, each subsequence being a seed, and correspondingly dividing reference into x + t non-overlapping subsequences.
x and t are both positive integers, and generally, x can be set to a value of about 20, and can be set and adjusted according to needs.
Step S102: and matching each seed with the reference sequence to determine each matching position.
It should be noted that, matching each seed with the reference sequence is to perform precise matching, that is, for any seed, each segment identical to the seed in the reference needs to be found, and each segment is a matching position. And each determined matching position is a complete matching position. It will be appreciated that a seed may match to multiple reference locations simultaneously.
Because each determined matching position is accurate matching and each matching position of each seed is also found, the most appropriate positioning position can be located in the determined matching positions and cannot be influenced by the values of x and t, and the query precision of the application is guaranteed. No matter how x and t take values, the query precision of the scheme of the application is guaranteed by accurately searching each matching position of each seed.
Certainly, the larger the values of x and t are, the more the divided seed and reference subsequences are, the longer the time taken to determine the matching position and the time taken to extend each seed in the subsequent step are, therefore, in an embodiment of the present invention, after step S102, the method may further include:
and when the number of the determined matching positions is larger than a preset number threshold y, reducing the value of t, returning to execute the operation of equally dividing the sequence to be detected into x + t pieces of seed and equally dividing the reference sequence into x + t pieces of subsequences, namely returning to the step S101, and dividing the subsequences of the query and the reference again according to the new value of t.
In this embodiment, by reducing the value of t, the seed is lengthened, the number of divided seeds is more appropriate, and the situation that the time consumption of the scheme is longer due to the excessive number of seeds can be avoided. The value of y can be set and adjusted according to actual conditions.
It should be noted that, according to the pigeon loft principle, when the edit distance between the sequence to be detected and the reference sequence does not exceed x, that is, the edit distance between the query sequence and the reference sequence does not exceed x, both the reference and the query are divided into x +1 subsequences, so that at least 1 subsequence of the query can be completely matched with the reference subsequence. Therefore, the value of x cannot be set too small, and if the value of x is too small, the seed is long, and a situation that any matching position cannot be found when step S102 is executed may occur. Of course, in practical application, x set to about 20 does not usually cause the abnormal situation, and if x occurs, the value of x is appropriately increased to shorten the seed length, that is, the value of x should be such that a completely matched matching position of at least one seed can be found when t is any positive integer.
In addition, when step S102 is executed, a hash table lookup can be usually used to perform a complete matching, and such a method is also time-consuming. That is, step S102 may specifically be: and matching each seed with the reference sequence, and determining each matching position in a hash table look-up mode.
Step S103: and performing left extension and right extension on each determined matching position, and when extension in any direction is performed, ending the extension in the direction when the editing distance reaches x or when the editing distance extends to the tail of the sequence to be detected.
When each matching position is subjected to left expansion and right expansion, the left expansion can be performed first, and the right expansion can be performed first, so that the implementation of the method is not influenced.
For example, right expansion is performed first, and when right expansion is performed, the edit distance needs to be calculated. The edit distance refers to: the minimum number of editing operations required to change from one string to another string. It will be appreciated that the greater their edit distance, the more different they are. While the editing operations allowed include three types, one to replace a character with another, one to insert a character, and one to delete a character. For example, for a seed, the data to the right of the seed is 12356, and the data to the right of the matching position in the reference subsequence corresponding to the seed is 1256, only one editing operation needs to be performed, that is, one character 3 is inserted. Of course, this example is convenient for describing the description of editing operation with numbers, and in practical applications, both the seed and reference subsequences are binary data.
The editing distance is naturally gradually increased along with the continuous right expansion, the right expansion is ended when the editing distance reaches a preset editing distance threshold value x, and of course, if the end of the sequence to be detected, namely the rightmost end of the query is reached, the right expansion is also ended. After the right expansion is performed, the left expansion can be performed, and the same process as the right expansion is performed, and a description thereof is not repeated.
In an embodiment of the present invention, the method may further include: presetting a fragment library comprising n sequence fragments, wherein each sequence fragment comprises first fragment information and second fragment information;
correspondingly, the performing of the left expansion and the right expansion on each determined matching position described in step S103 may specifically include:
performing left extension and right extension on each determined matching position, and when performing extension in any direction and when a sequence segment appearing during extension conforms to any one sequence segment in the segment library, calculating and storing an editing distance corresponding to the sequence segment, so that when the sequence segment appears again during subsequent extension, the calculation of the editing distance is replaced by the stored editing distance;
wherein, the sequence fragment appeared during the expansion accords with any sequence fragment in the fragment library, and represents that: the segment information of the seed during the expansion conforms to the first segment information of any sequence segment in the segment library, and the segment information of the corresponding subsequence of the reference sequence conforms to the second segment information of the sequence segment in the segment library.
In this embodiment, considering that seed may completely match multiple reference subsequences and when extended for any one matching position, multiple identical sequence segments may be encountered, which would cause a large amount of repeated calculation if the edit distance is calculated as in the conventional manner during extension. Therefore, in this embodiment, a fragment library including n sequence fragments each including the first fragment information and the second fragment information is preset.
For example, a sequence segment is 0010-. When performing extension in any direction, for example, performing right extension, if a matching position of seed is right extended, 0010 appears, and the reference subsequence now matches 0000, it can be determined that a sequence fragment matches a sequence fragment in the fragment library when extending. The sequence fragment occurring in the extension described herein is a sequence fragment composed of both query and reference. In this example, the edit distance corresponding to the sequence segment can be calculated to be 1. In the subsequent expansion, if the query again appears 0010, and the corresponding position of reference is 0000, the edit distance calculation is not needed, but the edit distance of the sequence segment is directly determined to be 1.
In practical application, the saved edit distance may be correspondingly named as a prefix, and then only the same kind of items need to be merged according to the prefix, and of course, other saving manners may be available in other embodiments, and the implementation of the present invention is not affected.
It can be seen that, in this embodiment, the calculation of the edit distance during the expansion is optimized, which is beneficial to further reduce the time consumption of the scheme of the present application.
Step S104: and determining an expansion quality score corresponding to each matching position according to the expansion length and the editing distance of each matching position.
The extension length described here refers to the total length after left extension and right extension, the maximum length is equal to the length of query, and the edit distance refers to the sum of the edit distance of left extension and the edit distance of right extension, and is 2x at maximum. It will be appreciated that the longer the extension length, the higher the quality of the match, and the smaller the edit distance, the higher the quality of the match.
In a specific embodiment, the extension length may be used as a first priority, the edit distance may be used as a second priority, and the extension quality score corresponding to each matching position may be determined. For example, a total of 5 matching positions, from the highest spreading quality to the lowest spreading quality, will be sequentially divided into 100 points, 75 points, 50 points, 25 points and 0 points. And assuming that the extension lengths of the matching position No. 1 and the matching position No. 2 are both equal to the query length, but the editing distance of No. 1 is lower, and the matching positions No. 3, No. 4 and No. 5 are the same and lower than the query, and the editing distance is that No. 3 > No. 4 > No. 5, then the following matching positions can be sequentially classified into: 100 min, 75 min, 0 min, 25 min and 50 min.
Of course, in practical application, the score of the extended quality score may have other values, and may be set and adjusted according to practical situations, without affecting the implementation of the present invention.
Step S105: and filtering the matching positions with the expanded quality scores lower than a preset quality score threshold value, and determining the positioning of the sequence to be detected in the reference sequence based on each filtered matching position.
The preset quality score threshold value can also be set and adjusted as required, and it should be noted that, since the matching position where the extended quality score is lower than the preset quality score threshold value is filtered, the positioning position of the sequence to be measured in the reference sequence can be still remained in the matching position which is not filtered, that is, the precision is not reduced by the filtering operation performed in the present application. And because the filtering is carried out, the time consumption is reduced when the positioning of the sequence to be detected in the reference sequence is carried out.
When determining the location of the sequence to be detected in the reference sequence based on the filtered matching positions, an SW method may be generally adopted to score the identity of each filtered matching position, and finally determine a matching position, that is, the location of the sequence to be detected in the reference sequence.
By applying the technical scheme provided by the embodiment of the invention, the gene data does not need to be decompressed for accurate query, and the condition that query time is long due to decompression can be avoided. In the scheme of the application, optimization is carried out on the basis of a q-gram inverted index method, and accurate query is realized based on the pigeon loft principle. Specifically, according to the pigeon loft principle, when the edit distance between the sequence to be detected and the reference sequence does not exceed x, that is, the edit distance between the query sequence and the reference sequence does not exceed x, both the reference and the query are divided into x +1 subsequences, so that at least 1 subsequence of the query can be completely matched with a reference subsequence.
Therefore, the sequence to be detected is equally divided into x + t seed sequences, the reference sequence is equally divided into x + t subsequences, each seed sequence is matched with the reference sequence, at least one matching position can be determined, t is larger than or equal to 1, and the larger the value of t is, the more matching positions can be determined. Moreover, each matching position determined in the method is accurately matched, the query precision of the scheme of the method is guaranteed, and the operation time is short. Compared with the mode of compressing indexes integrally in the traditional scheme, the scheme of the application is to match each seed, namely to index based on the subsequence of the sequence to be detected, so that the cost for constructing the index is very small, and compared with the traditional q-gram reverse index method, the scheme of the application does not require the length of the query, namely to support the sequences to be detected with different lengths. After at least one matching position is determined, an extended quality score corresponding to the matching position is determined according to the extended length and the editing distance of each matching position, then the matching positions with the extended quality scores lower than a preset quality score threshold value can be filtered, and the positioning of the sequence to be detected in the reference sequence is determined based on the filtered matching positions. Because the matching positions are filtered and the matching positions are filtered to be lower than the preset quality score threshold, the scheme of the application is favorable for saving time consumed for subsequently determining the positioning of the sequence to be detected in the reference sequence on the premise of ensuring the query precision. In summary, the scheme of the application is beneficial to improving the query efficiency of gene data, is suitable for the sequences to be tested with different lengths, and can realize high-precision query.
Corresponding to the above method embodiments, the embodiments of the present invention further provide a system for querying gene data, which can be referred to above correspondingly.
Referring to fig. 2, a schematic structural diagram of a gene data query system according to the present invention is shown, including:
a sequence dividing module 201, configured to divide the sequence to be detected into x + t seed pieces equally, and divide the reference sequence into x + t sub-sequences equally; x is a preset editing distance threshold value, and t is a length adjusting parameter;
the precise matching module 202 is configured to match each seed with a reference sequence, and determine each matching position;
the expansion module 203 is configured to perform left expansion and right expansion on each determined matching position, and when expansion in any direction is performed, end the expansion in the direction when the edit distance reaches x or when the edit distance extends to the end of the sequence to be measured;
the extended quality scoring module 204 is configured to determine, according to the extended length and the edit distance of each matching position, an extended quality score corresponding to the matching position;
and the filtering and positioning module 205 is configured to filter matching positions where the extended quality score is lower than a preset quality score threshold, and determine the positioning of the sequence to be detected in the reference sequence based on each filtered matching position.
In an embodiment of the present invention, the precise matching module 202 is specifically configured to:
and matching each seed with the reference sequence, and determining each matching position in a hash table look-up mode.
In one embodiment of the present invention, the method further comprises:
and a matching position number adjusting module, configured to reduce the value of t when the number of the determined matching positions is greater than a preset number threshold y, and return to the trigger sequence dividing module 201.
In an embodiment of the present invention, the extended quality scoring module 204 is specifically configured to:
and determining the extension quality score corresponding to each matching position by taking the extension length as a first priority and the edit distance as a second priority.
In one embodiment of the present invention, the method further comprises: the fragment library presetting module is used for presetting a fragment library comprising n sequence fragments, wherein each sequence fragment comprises first fragment information and second fragment information;
correspondingly, the extension module 203 is specifically configured to:
performing left extension and right extension on each determined matching position, and when extension in any direction is performed, ending the extension in the direction when the editing distance reaches x or extends to the tail of the sequence to be detected; when the sequence segment appears during the expansion in any direction and accords with any sequence segment in the segment library, the editing distance corresponding to the sequence segment is calculated and stored, so that when the sequence segment appears again during the subsequent expansion, the calculation of the editing distance is replaced by the stored editing distance;
wherein, the sequence fragment appeared during the expansion accords with any sequence fragment in the fragment library, and represents that: the segment information of the seed during the expansion conforms to the first segment information of any sequence segment in the segment library, and the segment information of the corresponding subsequence of the reference sequence conforms to the second segment information of the sequence segment in the segment library.
Corresponding to the above method and system embodiments, the embodiments of the present invention also provide a query device for genetic data and a computer readable storage medium, which can be referred to in correspondence with the above.
The computer-readable storage medium has stored thereon a computer program which, when executed by a processor, implements the steps of the method for querying gene data in any of the above embodiments. A computer-readable storage medium as referred to herein may include Random Access Memory (RAM), memory, Read Only Memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.
The query device of the gene data may include:
a memory for storing a computer program;
a processor for executing a computer program to implement the steps of the method for querying gene data in any of the above embodiments.
Those of skill would further appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both, and that the various illustrative components and steps have been described above generally in terms of their functionality in order to clearly illustrate this interchangeability of hardware and software. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
The principle and the implementation of the present invention are explained in the present application by using specific examples, and the above description of the embodiments is only used to help understanding the technical solution and the core idea of the present invention. It should be noted that, for those skilled in the art, it is possible to make various improvements and modifications to the present invention without departing from the principle of the present invention, and those improvements and modifications also fall within the scope of the claims of the present invention.
Claims (10)
1. A method for querying gene data, comprising:
dividing the sequence to be detected into x + t seed pieces equally, and dividing the reference sequence into x + t subsequences equally; x is a preset editing distance threshold value, and t is a length adjusting parameter;
matching each seed with the reference sequence to determine each matching position;
performing left extension and right extension on each determined matching position, and when extension in any direction is performed, ending the extension in the direction when the editing distance reaches x or extends to the tail of the sequence to be detected;
determining an expansion quality score corresponding to each matching position according to the expansion length and the editing distance of each matching position;
and filtering the matching positions with the expanded quality scores lower than a preset quality score threshold, and determining the positioning of the sequence to be detected in the reference sequence based on each filtered matching position.
2. The method for querying gene data according to claim 1, wherein the matching each seed with the reference sequence to determine each matching position comprises:
and matching each seed with the reference sequence, and determining each matching position in a hash table look-up mode.
3. The method for searching gene data according to claim 1, further comprising:
and when the number of the determined matching positions is larger than a preset number threshold value y, reducing the value of t, returning to execute the operation of equally dividing the sequence to be detected into x + t seed pieces and equally dividing the reference sequence into x + t sub-sequences.
4. The method for querying gene data according to claim 1, wherein the determining an expansion quality score corresponding to each matching position according to the expansion length and the edit distance of the matching position comprises:
and determining the extension quality score corresponding to each matching position by taking the extension length as a first priority and the edit distance as a second priority.
5. The method for searching gene data according to any one of claims 1 to 4, further comprising: presetting a fragment library comprising n sequence fragments, wherein each sequence fragment comprises first fragment information and second fragment information;
correspondingly, the performing left expansion and right expansion on each determined matching position includes:
performing left extension and right extension on each determined matching position, and when performing extension in any direction and when a sequence segment appearing during extension conforms to any one sequence segment in the segment library, calculating and storing an editing distance corresponding to the sequence segment, so that when the sequence segment appears again during subsequent extension, the calculation of the editing distance is replaced by the stored editing distance;
wherein the sequence fragment appearing during the expansion conforms to any one sequence fragment in the fragment library, and represents that: the segment information of the seed during the expansion accords with the first segment information of any sequence segment in the segment library, and the segment information of the corresponding subsequence of the reference sequence accords with the second segment information of the sequence segment in the segment library.
6. A system for querying gene data, comprising:
the sequence dividing module is used for equally dividing the sequence to be detected into x + t seed pieces and equally dividing the reference sequence into x + t subsequences; x is a preset editing distance threshold value, and t is a length adjusting parameter;
the precise matching module is used for matching each seed with the reference sequence and determining each matching position;
the expansion module is used for performing left expansion and right expansion on each determined matching position, and ending the expansion in any direction when the editing distance reaches x or the editing distance reaches the tail of the sequence to be detected during the expansion in the direction;
the extended quality scoring module is used for determining an extended quality score corresponding to each matching position according to the extended length and the editing distance of each matching position;
and the filtering and positioning module is used for filtering the matching positions with the expanded quality scores lower than a preset quality score threshold value and determining the positioning of the sequence to be detected in the reference sequence based on the filtered matching positions.
7. The system for querying gene data according to claim 6, wherein the precise matching module is specifically configured to:
and matching each seed with the reference sequence, and determining each matching position in a hash table look-up mode.
8. The system for searching genetic data according to claim 6 or 7, further comprising: the fragment library presetting module is used for presetting a fragment library comprising n sequence fragments, wherein each sequence fragment comprises first fragment information and second fragment information;
correspondingly, the extension module is specifically configured to:
performing left extension and right extension on each determined matching position, and when extension in any direction is performed, ending the extension in the direction when the editing distance reaches x or extends to the tail of the sequence to be detected; when the sequence segment generated during the expansion accords with any one sequence segment in the segment library, the editing distance corresponding to the sequence segment is calculated and stored, so that when the sequence segment is generated again during the subsequent expansion, the calculation of the editing distance is replaced by the stored editing distance;
wherein the sequence fragment appearing during the expansion conforms to any one sequence fragment in the fragment library, and represents that: the segment information of the seed during the expansion accords with the first segment information of any sequence segment in the segment library, and the segment information of the corresponding subsequence of the reference sequence accords with the second segment information of the sequence segment in the segment library.
9. An apparatus for searching gene data, comprising:
a memory for storing a computer program;
a processor for executing the computer program to implement the steps of the method of querying genetic data as claimed in any one of claims 1 to 5.
10. A computer-readable storage medium, characterized in that a computer program is stored thereon, which, when being executed by a processor, implements the steps of the method for query of genetic data according to any one of claims 1 to 5.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911025189.9A CN110797085B (en) | 2019-10-25 | 2019-10-25 | Method, system, equipment and storage medium for inquiring gene data |
PCT/CN2020/092824 WO2021077741A1 (en) | 2019-10-25 | 2020-05-28 | Gene data query method, system and device, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911025189.9A CN110797085B (en) | 2019-10-25 | 2019-10-25 | Method, system, equipment and storage medium for inquiring gene data |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110797085A true CN110797085A (en) | 2020-02-14 |
CN110797085B CN110797085B (en) | 2022-07-08 |
Family
ID=69441375
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911025189.9A Active CN110797085B (en) | 2019-10-25 | 2019-10-25 | Method, system, equipment and storage medium for inquiring gene data |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110797085B (en) |
WO (1) | WO2021077741A1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112712850A (en) * | 2020-12-29 | 2021-04-27 | 中南大学 | Seed sequence positioning method applicable to infectious disease pathogen sequencing read mapping |
WO2021077741A1 (en) * | 2019-10-25 | 2021-04-29 | 浪潮(北京)电子信息产业有限公司 | Gene data query method, system and device, and storage medium |
WO2021169387A1 (en) * | 2020-02-28 | 2021-09-02 | 苏州浪潮智能科技有限公司 | Sequence alignment method, apparatus and device, and medium |
CN116665772A (en) * | 2023-05-30 | 2023-08-29 | 之江实验室 | Genome map analysis method, device and medium based on memory calculation |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103793627A (en) * | 2012-10-29 | 2014-05-14 | 三星Sds株式会社 | System and method for aligning genome sequence |
US20160364523A1 (en) * | 2015-06-11 | 2016-12-15 | Seven Bridges Genomics Inc. | Systems and methods for identifying microorganisms |
CN106909806A (en) * | 2015-12-22 | 2017-06-30 | 广州华大基因医学检验所有限公司 | The method and apparatus of fixed point detection variation |
CN108280325A (en) * | 2017-12-08 | 2018-07-13 | 北京雅康博生物科技有限公司 | Processing method, processing unit, storage medium and the processor of high-flux sequence data |
CN109326325A (en) * | 2018-07-25 | 2019-02-12 | 郑州云海信息技术有限公司 | A kind of method, system and associated component that gene order compares |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017091811A2 (en) * | 2015-11-25 | 2017-06-01 | Integrated Dna Technologies, Inc. | Methods for variant detection |
CN108520002A (en) * | 2018-03-12 | 2018-09-11 | 平安科技(深圳)有限公司 | Data processing method, server and computer storage media |
CN110797085B (en) * | 2019-10-25 | 2022-07-08 | 浪潮(北京)电子信息产业有限公司 | Method, system, equipment and storage medium for inquiring gene data |
-
2019
- 2019-10-25 CN CN201911025189.9A patent/CN110797085B/en active Active
-
2020
- 2020-05-28 WO PCT/CN2020/092824 patent/WO2021077741A1/en active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103793627A (en) * | 2012-10-29 | 2014-05-14 | 三星Sds株式会社 | System and method for aligning genome sequence |
US20160364523A1 (en) * | 2015-06-11 | 2016-12-15 | Seven Bridges Genomics Inc. | Systems and methods for identifying microorganisms |
CN106909806A (en) * | 2015-12-22 | 2017-06-30 | 广州华大基因医学检验所有限公司 | The method and apparatus of fixed point detection variation |
CN108280325A (en) * | 2017-12-08 | 2018-07-13 | 北京雅康博生物科技有限公司 | Processing method, processing unit, storage medium and the processor of high-flux sequence data |
CN109326325A (en) * | 2018-07-25 | 2019-02-12 | 郑州云海信息技术有限公司 | A kind of method, system and associated component that gene order compares |
Non-Patent Citations (2)
Title |
---|
SONGBO HUANG ET AL.: ""Indexing Similar DNA Sequences"", 《INTERNATIONAL CONFERENCE ON ALGORITHMIC APPLICATIONS IN MANAGEMENT》 * |
王佳英 等: ""面向压缩生物基因数据的高效的查询方法"", 《软件学报》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021077741A1 (en) * | 2019-10-25 | 2021-04-29 | 浪潮(北京)电子信息产业有限公司 | Gene data query method, system and device, and storage medium |
WO2021169387A1 (en) * | 2020-02-28 | 2021-09-02 | 苏州浪潮智能科技有限公司 | Sequence alignment method, apparatus and device, and medium |
CN112712850A (en) * | 2020-12-29 | 2021-04-27 | 中南大学 | Seed sequence positioning method applicable to infectious disease pathogen sequencing read mapping |
CN116665772A (en) * | 2023-05-30 | 2023-08-29 | 之江实验室 | Genome map analysis method, device and medium based on memory calculation |
CN116665772B (en) * | 2023-05-30 | 2024-02-13 | 之江实验室 | Genome map analysis method, device and medium based on memory calculation |
Also Published As
Publication number | Publication date |
---|---|
WO2021077741A1 (en) | 2021-04-29 |
CN110797085B (en) | 2022-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110797085B (en) | Method, system, equipment and storage medium for inquiring gene data | |
US20170277599A1 (en) | Data boundary identification for identifying variable size data chunks | |
CN103150260B (en) | Data de-duplication method and device | |
US20180205393A1 (en) | Encoding method and apparatus | |
CN107797765B (en) | Method for prolonging service life of electrically erasable storage element | |
EP2592559A1 (en) | Method of calculating feature-amount of digital sequence, and apparatus for calculating feature-amount of digital sequence | |
WO2012033498A1 (en) | Systems and methods for data compression | |
CN103870514A (en) | Repeating data deleting method and device | |
NL2011817C2 (en) | A method of generating a reference index data structure and method for finding a position of a data pattern in a reference data structure. | |
CN111859033B (en) | IP library query method and device and IP library compression method and device | |
CN110618974A (en) | Data storage method, device, equipment and storage medium | |
CN106933927B (en) | Data table connection method and device | |
US11360940B2 (en) | Method and apparatus for biological sequence processing fastq files comprising lossless compression and decompression | |
WO2017000859A1 (en) | Leaping search algorithm for similar sub-sequences in character sequence and application thereof in searching in biological sequence database | |
CN113641681B (en) | Space self-adaptive mass data query method | |
NL2014199B1 (en) | A computer implemented method for generating a variant call file. | |
CN117539925A (en) | Data processing method, device, medium and equipment | |
CN111916155B (en) | Gene data compression and reduction method, system and medium without reference gene sequence | |
CN112434085A (en) | Roaring Bitmap-based user data statistical method | |
CN109947776B (en) | Data compression and decompression method and device | |
CN116150179A (en) | Method and device for comparing data consistency between databases | |
CN110990640B (en) | Data determination method, device, equipment and computer readable storage medium | |
CN104866535A (en) | Compression method and device of number segment records | |
CN113886491A (en) | Distributed data processing method and device, electronic equipment and storage medium | |
CN118132553A (en) | Pre-aggregate storage table creation method and device, electronic equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |