Data transmission calculation method, device and storage medium

By splitting the genome sequencing data into multiple sub-data segments and processing them in parallel on multiple computing devices, the time-consuming problem of transmitting gene sequencing data to cloud computing centers is solved, and the efficiency of data transmission and computing is improved.

CN114072878BActive Publication Date: 2025-04-25李雨澄
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202080030402.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-06-18
Publication Date
2025-04-25
Estimated Expiration
2040-06-18

AI Technical Summary

Technical Problem

In the prior art, it takes a lot of time to transmit the genome sequencing data measured by a gene sequencer to a cloud computing center, resulting in low data processing efficiency.

Method used

By splitting the genome sequencing data into multiple sub-data segments and sending it to multiple computing devices in preset order for data transmission and calculation, the parallel processing of data transmission and calculation is realized.

Benefits of technology

It significantly reduces the time of data transmission and calculation, and improves the efficiency of data transmission and calculation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114072878B_ABST
    Figure CN114072878B_ABST
Patent Text Reader

Abstract

A data transmission calculation method, device and storage medium, including: obtaining genome sequencing data; performing a first process on the genome sequencing data to obtain first sequencing data, wherein the first process is used to delete the joint sequence data and the sequence data with a quality value lower than a first preset value in the genome sequencing data, and at the same time split the first sequencing data into multiple sub-data segments; after compressing and encrypting the multiple sub-data segments, they are sent to a second device in a preset order. The second device performs a comparison calculation on the received data to obtain the position of each base sequence in the first sequencing data in the reference genome data, and then transmits it to a data processing device, such as a cloud computing center, for subsequent calculation. The method completes the comparison calculation during the data transmission process, reduces the time of data transmission calculation, and improves the overall calculation efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the field of communication technology, and in particular to a data transmission calculation method, device and storage medium. Background Art

[0002] Gene sequencers are instruments that measure the base sequence, type and quantity of DNA (DeoxyriboNucleic Acid) fragments. They generate a large amount of data, several terabytes of data every day. The large amount of genome sequencing data generated by the gene sequencer can be calculated locally or transmitted to a cloud computing center, where the computer in the cloud computing center will perform further calculations to obtain a variation file relative to the reference genome. Due to the current network speed and reliability, the method of mailing hard drives storing large amounts of genome sequencing data to cloud computing centers is usually used for data transmission. This method of data transmission consumes a lot of time, and it also takes a lot of time to calculate the data after it arrives at the cloud computing center, making the overall data processing efficiency low. Summary of the invention

[0003] In view of this, one of the technical problems solved by the embodiments of the present application is to provide a data transmission and calculation method, which uses multiple computing devices to perform data transmission and calculation at the same time, so as to overcome the defect in the prior art that it takes a lot of time to transmit the genome sequencing data measured by the gene sequencer to the cloud computing center, thereby improving the speed of data transmission and calculation.

[0004] In a first aspect, an embodiment of the present application provides a data transmission calculation method, which is applied to a first device that performs data transmission with a second device, and is characterized by comprising:

[0005] Obtain genome sequencing data;

[0006] Performing a first process on the genome sequencing data to obtain first sequencing data, wherein the first process is used to delete adapter sequence data and sequence data with a quality value lower than a first preset value in the genome sequencing data;

[0007] Splitting the first sequencing data into a plurality of sub-data segments;

[0008] The plurality of sub-data segments are sent to the second device in a preset order respectively.

[0009] Optionally, in one embodiment of the present application, sending the plurality of sub-data segments to the second device in a preset order respectively includes:

[0010] The plurality of sub-data segments are respectively sent to the second device in a preset order through point-to-point technology.

[0011] Optionally, in one embodiment of the present application, sending the plurality of sub-data segments to the second device in a preset order respectively includes:

[0012] The plurality of sub-data segments are respectively sent to a second device electrically connected to the first device in a preset order.

[0013] Optionally, in one embodiment of the present application, splitting the first sequencing data into a plurality of sub-data segments further comprises:

[0014] Compressing and encrypting the multiple sub-data segments respectively to obtain multiple compressed and encrypted sub-data segments;

[0015] Optionally, in one embodiment of the present application, sending the plurality of sub-data segments to the second device in a preset order respectively includes:

[0016] The plurality of compressed and encrypted sub-data segments are respectively sent to the second device through point-to-point technology.

[0017] In a second aspect, an embodiment of the present application provides a data transmission calculation method, which is applied to a second device that performs data transmission with a first device, and is characterized by comprising:

[0018] Reading the reference genome data and obtaining the sub-data segment sent by the first device;

[0019] Compare the reference genome data and the sub-data segment to obtain comparison data, where the comparison data is used to indicate the position of the base sequence in the sub-data segment in the reference genome data;

[0020] The comparison data is compressed and encrypted and then sent to the data processing equipment.

[0021] Optionally, in one embodiment of the present application, the second device may be one or more mobile phones, laptop computers, desktop computers, servers, etc.

[0022] Optionally, in one embodiment of the present application, the data processing device is one or more of a cloud computing center, a mobile phone, a laptop computer, a desktop computer, and a server.

[0023] Optionally, in one embodiment of the present application, the comparison data is compressed and encrypted and then sent to a data processing device, including:

[0024] The comparison data is compressed and encrypted and then sent to the data processing equipment via point-to-point technology.

[0025] Optionally, in one embodiment of the present application, the comparison data is compressed and encrypted and then sent to a data processing device, including:

[0026] The comparison data is compressed and encrypted and then sent to a data processing device electrically connected to the second device.

[0027] In a third aspect, an embodiment of the present application provides a data transmission computing device, characterized in that it includes:

[0028] A data acquisition module, used to acquire genome sequencing data;

[0029] A first processing module, used to perform a first processing on the genome sequencing data to obtain first sequencing data, wherein the first processing is used to delete the adapter sequence data and the sequence data whose quality value is lower than a first preset value in the genome sequencing data;

[0030] A data splitting module, used for splitting the first sequencing data into multiple sub-data segments;

[0031] The data sending module is used to compress, encrypt and send the multiple sub-data segments to the second device in a preset order.

[0032] In a fourth aspect, an embodiment of the present application provides a data transmission computing device, characterized in that it includes:

[0033] A data acquisition module, used to read the reference genome data and acquire the sub-data segment sent by the first device;

[0034] A second processing module is used to compare the reference genome data and the sub-data segment to obtain comparison data, where the comparison data is used to indicate the position of each base sequence in the sub-data segment in the reference genome data;

[0035] The data sending module is used to compress and encrypt the comparison data and then send it to the data processing device.

[0036] In a fifth aspect, an embodiment of the present application provides a computer-readable storage medium having a computer program stored thereon, characterized in that when the program is executed by a processor, any method in the first aspect is implemented.

[0037] In a sixth aspect, an embodiment of the present application provides a computer-readable storage medium having a computer program stored thereon, characterized in that when the program is executed by a processor, any method in the second aspect is implemented.

[0038] The data processing method provided in the embodiment of the present application splits the genome sequencing data into multiple sub-data segments, and sends the multiple sub-data segments to the second device in a preset order. The second device calculates the received data and then sends the result to the data processing device. The present application completes data calculation during the data transmission process, reduces the time of data transmission calculation, and improves the efficiency of data transmission and calculation. BRIEF DESCRIPTION OF THE DRAWINGS

[0039] Hereinafter, some specific embodiments of the present application will be described in detail in an exemplary and non-limiting manner with reference to the accompanying drawings. The same reference numerals in the accompanying drawings indicate the same or similar components or parts. It should be understood by those skilled in the art that these drawings are not necessarily drawn to scale. In the accompanying drawings:

[0040] Figure 1 A flowchart of a data transmission calculation method provided in an embodiment of the present application;

[0041] Figure 2 A flowchart of another data transmission calculation method provided in an embodiment of the present application;

[0042] Figure 3 A schematic diagram of the structure of a data transmission computing device provided in an embodiment of the present application;

[0043] Figure 4 A schematic diagram of another data transmission computing device and a data processing device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0044] The implementation of any technical solution of the embodiments of the present application does not necessarily require achieving all of the above advantages at the same time.

[0045] In order to enable those skilled in the art to better understand the technical solutions in the embodiments of the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. All other embodiments obtained by ordinary technicians in this field based on the embodiments in the embodiments of the present application should fall within the scope of protection of the embodiments of the present application.

[0046] The specific implementation of the embodiment of the present application is further explained below in conjunction with the accompanying drawings of the embodiment of the present application.

[0047] Embodiment 1

[0048] See also Figure 1 , an embodiment of the present application provides a data transmission calculation method, which is applied to a first device that performs data transmission with a second device, including:

[0049] S101: Obtain genome sequencing data;

[0050] Specifically, the first device can be a computer, which can directly or indirectly obtain genome sequencing data through a gene sequencer. The genome data can be nucleotide sequence information or protein sequence information. The genome sequencing data can be stored in the first device in FASTA format or in FASTQ format. This application does not impose any restrictions on this.

[0051] S102: performing a first process on the genome sequencing data to obtain first sequencing data, wherein the first process is used to delete adapter sequence data and sequence data with a quality value lower than a first preset value in the genome sequencing data;

[0052] Specifically illustrate here, the adapter sequence data can be an adapter (Adapter) for connecting two nucleotide sequence information or protein sequence information, and the adapter refers to a short, chemically synthesized, double-stranded DNA molecule in genetic engineering, for connecting two other DNA molecule ends. The genome sequencing data obtained by the gene sequencer usually carries adapter sequence data, and deleting these adapter sequence data can reduce the data volume on the one hand, shorten the data transmission time, and also help improve the accuracy of the analysis result of the gene sequencing data on the other hand. Can modify and use software Trimmomatic or FASTP to delete the adapter sequence data, certainly can also use other software, the application is not limited to this, so can save time, save manpower, help improve efficiency.

[0053] The quality of sequence data refers to the accuracy of the sequence data during sequencing. Software FastQC can be used to measure the quality value of sequence data and delete sequence data with a quality value lower than the first preset value. Of course, other software can also be used, and this application does not limit this, so that time can be saved, manpower can be saved, and efficiency can be improved. The first preset value can be a value set according to actual needs, and this application does not limit this. Deleting sequence data with a quality value lower than the first preset value will reduce the amount of data and shorten the data transmission time on the one hand, and on the other hand, it will also help improve the accuracy of the analysis results of gene sequencing data.

[0054] The genome sequencing data can be first processed by modifying the software Trimmomatic, FASTP or FastQC, which can save time and manpower and is beneficial to data processing and transmission efficiency.

[0055] S103: Splitting the first sequencing data into multiple sub-data segments;

[0056] Specifically, in a preferred embodiment, the first sequencing data is split into multiple sub-data segments, each sub-data segment contains multiple complete nucleotide sequence information or protein sequence information, that is, the first sequencing data is split into multiple sub-data segments without destroying the integrity of the nucleotide sequence information or protein sequence information, which is beneficial to subsequent data transmission and calculation.

[0057] Optionally, in one embodiment of the present application, splitting the first sequencing data into a plurality of sub-data segments further comprises:

[0058] Compressing and encrypting the multiple sub-data segments respectively to obtain multiple compressed and encrypted sub-data segments;

[0059] In detail, multiple sub-data segments can be compressed into compressed sub-data segments in bam format, compressed sub-data segments in ZIP format, compressed sub-data segments in RAR format, or compressed sub-data segments in 7Z format. In this way, the size of data to be transmitted can be reduced, the time of data transmission can be shortened, and the efficiency of data transmission can be improved.

[0060] It should be noted that step S102 and step S103 can be performed simultaneously, that is, after a first processing is performed on a segment of data of a preset length in the genome sequencing data to obtain the first sequencing data corresponding to the data of the preset length, the first sequencing data is used as a sub-data segment, and then the first processing is performed on the next segment of data of a preset length in the genome sequencing data, and so on until all the genome sequencing data are processed, so that the data processing efficiency can be improved; there are many ways to segment the data, which are only given as examples here, and do not mean that the present application is limited to this. Of course, after the first sequencing data corresponding to the entire genome sequencing data is obtained in step S102, the first sequencing data can be split to obtain multiple sub-data segments; step S102 and step S103 can also be performed synchronously on part of the genome sequencing data, and step S102 is completed on part of the genome sequencing data before step S103 is performed, and the present application does not limit this.

[0061] S104: Send the plurality of sub-data segments to the second device in a preset order respectively.

[0062] Specifically, the preset order may be an order that enables the sub-data segments to be evenly distributed to the second device. For example, assuming that there are x sub-data segments numbered a1, a2, a3, ..., a x , y available second devices are numbered b1, b2, b3, ..., b y , x is much greater than y, the preset order may be to send sub-segment a1 to the second device b1, send sub-segment a2 to the second device b2, send sub-segment a3 to the second device b3, ..., send sub-segment a x Send to the second device b x , and then sub-segment a x+1 Send to the second device b1, sub-segment a x+2The sub-segments are sent to the second device b2, and so on until all the sub-segments are sent. In this way, the sub-segments can be distributed as evenly as possible to all the second devices for processing, which is conducive to improving the efficiency of data transmission, shortening the time of data transmission, and improving the processing efficiency of data. Of course, the preset order can also be other orders that can make the sub-segments be distributed as evenly as possible to each second device. This is just an example and does not mean that the present application is limited to this.

[0063] Optionally, in one embodiment of the present application, sending the plurality of sub-data segments to the second device in a preset order respectively includes:

[0064] The plurality of sub-data segments are respectively sent to the second device in a preset order through point-to-point technology.

[0065] Specifically, peer-to-peer technology, also known as peer-to-peer (P2P for short), is an Internet system without a central server and relying on user groups (peers) to exchange information. Its role is to reduce the number of nodes in previous network transmissions to reduce the risk of data loss. Unlike a central network system with a central server, each user end of a peer-to-peer network is both a node and a server. Any node cannot directly find other nodes and must rely on its user group to exchange information. Peer-to-peer technology allows all clients to provide resources, including bandwidth, storage space, and computing power, and send multiple sub-data segments to the second device in a preset order through peer-to-peer technology, which increases the speed of data transmission, shortens the time of data transmission, and improves the efficiency of data transmission.

[0066] Optionally, in one embodiment of the present application, sending the plurality of sub-data segments to the second device in a preset order respectively includes:

[0067] The plurality of sub-data segments are respectively sent to a second device electrically connected to the first device in a preset order.

[0068] Specifically, the second device may also be one or more computer devices, such as one or more mobile phones, laptops, desktop computers, servers, etc. The first device and the second device may be in the same computer device, or the first device and the second device may be in the same local area network, that is, the first device is electrically connected to the second device, and multiple sub-data segments may be sent to the second device in a preset order respectively through technologies such as shared memory, sockets, and RPC (Remote Procedure Call).

[0069] Optionally, in one embodiment of the present application, sending the plurality of sub-data segments to the second device in a preset order respectively includes:

[0070] The plurality of encrypted compressed sub-data segments are respectively sent to the second device through point-to-point technology.

[0071] In this way, the size of data to be transmitted can be reduced, the time of data transmission can be shortened, the security of the data transmission process can be increased, and the efficiency of data transmission can be improved.

[0072] Embodiment 2

[0073] See also Figure 2 The embodiment of the present application provides a data transmission calculation method, which is applied to a second device that performs data transmission with a first device, including:

[0074] S201: Read reference genome data and obtain a sub-data segment sent by a first device;

[0075] Specifically, the reference genome data is the reference genome of the species corresponding to the genome sequencing data. The required reference genome data can be downloaded from the Internet, saved in a second device, and read when needed. This application does not impose any restrictions on this.

[0076] S202: Compare the reference genome data and the sub-data segment to obtain comparison data, where the comparison data is used to indicate the position of the base sequence in the sub-data segment in the reference genome data;

[0077] Specifically, the seed-and-extend strategy can be used to obtain the position of the base sequence in the sub-data segment in the reference genome data. In the seed stage, the base fragments in the sub-data segment are read, accurately matched on the reference genome data, and the fragments that meet certain matching times and length requirements are selected as seeds. The core of the algorithm in this stage is the accurate matching based on FM-index; in the extend stage, the Smith-Waterman algorithm is used to extend the seed to both sides on the base sequence and the reference genome data, and then find the global match of the base sequence on the reference genome data that meets the conditions to obtain the comparison result data.

[0078] S203: compress and encrypt the comparison data and then send it to the data processing device.

[0079] In detail, the data processing device can be a cloud computing center (Cloud Computation Center). The cloud computing center is an institution or unit that provides computing resources, storage resources and other services based on a supercomputer system and is associated with cloud computing. It provides high-performance computing services to all walks of life based on high-performance computers. The data processing device can be a private cloud computing center or a public cloud computing center. This application does not limit this. Sending the comparison data to the cloud computing center and allowing the cloud computing center to analyze and calculate the data later is conducive to improving the computing efficiency of the data. Of course, this is just an example and does not mean that this application is limited to this. For example, the data processing device can also be a group of computers, such as one or more mobile phones, laptops, desktop computers, etc. The second device sends the comparison data to the data processing device in a preset order, and the data processing device performs subsequent analysis and calculation of the data. In this way, it is conducive to improving the efficiency of data transmission and shortening the time of the entire data processing.

[0080] In detail, the second device and the data processing device can be in the same computer device, or the second device and the data processing device can be in the same local area network, that is, the second device is electrically connected to the data processing device, and the comparison data can be sent to the data processing device in a preset order through shared memory, sockets, RPC (Remote Procedure Call) and other technologies.

[0081] Optionally, in one embodiment of the present application, sending the comparison data to the data processing device includes: compressing and encrypting the comparison data and then sending it to the data processing device through point-to-point technology.

[0082] In this way, the speed of data transmission can be increased, the time of data transmission can be shortened, and the speed of overall data processing can be improved.

[0083] Embodiment 3

[0084] See also Figure 3 , the embodiment of the present application provides a data transmission computing device 30, including:

[0085] A data acquisition module 301 is used to acquire genome sequencing data;

[0086] Specifically, the first device can be a computer, and the first device can directly or indirectly obtain genome sequencing data through a gene sequencer. The genome data can be nucleotide sequence information or protein sequence information. The genome sequencing data can be stored in the first device in FASTA format or in FASTQ format. This application does not impose any restrictions on this.

[0087] A first processing module 302 is used to perform a first processing on the genome sequencing data to obtain first sequencing data, wherein the first processing is used to delete the adapter sequence data and the sequence data whose quality value is lower than a first preset value in the genome sequencing data;

[0088] Specifically illustrate here, the adapter sequence data can be an adapter for connecting two nucleotide sequence information or protein sequence information, and the adapter refers to a short, chemically synthesized, double-stranded DNA molecule in genetic engineering, which is used to connect two other DNA molecule ends. The genome sequencing data obtained by the first device through the gene sequencer usually carries adapter sequence data, and deleting these adapter sequence data can reduce the amount of data and shorten the data transmission time on the one hand, and also help improve the accuracy of the analysis results of the gene sequencing data on the other hand. The adapter sequence data can be modified to delete the software Trimmomatic or FASTP, and other software can certainly be used, and the application is not limited to this, so that time can be saved, manpower can be saved, and efficiency can be improved.

[0089] The quality of sequence data refers to the accuracy of the sequence data during sequencing. Software FastQC can be used to measure the quality value of sequence data and delete sequence data with a quality value lower than the first preset value. Of course, other software can also be used, and this application does not limit this, so that time can be saved, manpower can be saved, and efficiency can be improved. The first preset value can be a value set according to actual needs, and this application does not limit this. Deleting sequence data with a quality value lower than the first preset value will reduce the amount of data and shorten the data transmission time on the one hand, and on the other hand, it will also help improve the accuracy of the analysis results of gene sequencing data.

[0090] The genome sequencing data can be first processed by using the modification software Trimmomatic or FastQC, FASTP, which can save time and manpower and is beneficial to data processing and transmission efficiency.

[0091] A data splitting module 303, used to split the first sequencing data into multiple sub-data segments;

[0092] Specifically, in a preferred embodiment, the first device splits the first sequencing data into multiple sub-data segments, each sub-data segment contains multiple complete nucleotide sequence information or protein sequence information, that is, the first sequencing data is split into multiple sub-data segments without destroying the integrity of the nucleotide sequence information or protein sequence information, which is beneficial to subsequent data transmission and calculation.

[0093] It should be noted that the processing of the genome sequencing data by the first processing module 302 and the data splitting module 303 can be performed synchronously, that is, after the first processing module 302 performs the first processing on a segment of data of a preset length in the genome sequencing data to obtain the first sequencing data corresponding to the data of the preset length, the data splitting module 303 uses the first sequencing data as a sub-data segment, and then the first processing module 302 performs the first processing on the next segment of data of a preset length in the genome sequencing data, and so on until all the genome sequencing data are processed, so that the data processing efficiency can be improved; the data splitting module can have a variety of methods for data segmentation, which is only an example here, and does not mean that the present application is limited to this. Of course, after the first processing module 302 completes the processing to obtain the first sequencing data corresponding to the entire genome sequencing data, the data splitting module 303 can split the first sequencing data to obtain multiple sub-data segments; the data processing of the first processing module 302 and the data processing of the data splitting module 303 can also be performed synchronously on part of the genome sequencing data, and the data processing of the first processing module 302 is first performed on part of the genome sequencing data, and then the data processing of the data splitting module 303 is performed, and the present application does not limit this.

[0094] The data sending module 304 is used to compress, encrypt and send the multiple sub-data segments to the second device in a preset order.

[0095] Specifically, the preset order may be an order that enables the sub-data segments to be evenly distributed to the second device. For example, assuming that there are x sub-data segments numbered a1, a2, a3, ..., a x , y available second devices are numbered b1, b2, b3, ..., b y , x is much greater than y, the preset order may be to send sub-segment a1 to the second device b1, send sub-segment a2 to the second device b2, send sub-segment a3 to the second device b3, ..., send sub-segment a x Send to the second device b x , and then sub-segment a x+1 Send to the second device b1, sub-segment a x+2 The sub-segments are sent to the second device b2, and so on until all the sub-segments are sent. In this way, the sub-segments can be distributed as evenly as possible to all the second devices for processing, which is conducive to improving the efficiency of data transmission, shortening the time of data transmission, and improving the processing efficiency of data. Of course, the preset order can also be other orders that can make the sub-segments be distributed as evenly as possible to each second device. This is just an example and does not mean that the present application is limited to this.

[0096] It should be noted that the data acquisition module 301, the first processing module 302, the data splitting module 303 and the data sending module 304 divide the data transmission computing device 30 into four virtual modules according to different functions, and do not represent its actual hardware structure.

[0097] Embodiment 4

[0098] See also Figure 4 , the embodiment of the present application provides a data transmission computing device 40, including:

[0099] The data acquisition module 401 is used to read the reference genome data and acquire the sub-data segment sent by the first device.

[0100] Specifically, the reference genome data is the reference genome of the species corresponding to the genome sequencing data. The required reference genome data can be downloaded from the Internet, saved in a second device, and read when needed. This application does not impose any restrictions on this.

[0101] A second processing module 402 is used to compare the reference genome data and the sub-data segment to obtain comparison data, where the comparison data is used to indicate the position of the base sequence in the sub-data segment in the reference genome data;

[0102] Specifically, the seed-and-extend strategy can be used to obtain the position of the base sequence in the sub-data segment in the reference genome data. In the seed stage, the base fragments in the sub-data segment are read, accurately matched on the reference genome data, and the fragments that meet certain matching times and length requirements are selected as seeds. The core of the algorithm in this stage is the accurate matching based on FM-index; in the extend stage, the Smith-Waterman algorithm is used to extend the seed to both sides on the base sequence and the reference genome data, and then find the global match of the base sequence on the reference genome data that meets the conditions to obtain the comparison result data.

[0103] The data sending module 403 is used to compress and encrypt the comparison data and then send it to the data processing device.

[0104] In detail, the data processing device can be a cloud computing center (Cloud ComputatioCenter). The cloud computing center is an institution or unit that provides computing resources, storage resources and other services based on a supercomputer system and is associated with cloud computing. It provides high-performance computing services to all walks of life based on high-performance computers. The data processing device can be a private cloud computing center or a public cloud computing center. This application does not limit this. Sending the comparison data to the cloud computing center and allowing the cloud computing center to analyze and calculate the data later is conducive to improving the computing efficiency of the data. Of course, this is just an example and does not mean that this application is limited to this. For example, the data processing device can also be a group of computers, such as one or more mobile phones, laptops, desktop computers, etc. The second device sends the comparison data to the data processing device in a preset order, and the data processing device performs subsequent analysis and calculation of the data. This is conducive to improving the efficiency of data transmission, shortening the time of data transmission, and improving the processing efficiency of data.

[0105] In detail, the second device and the data processing device can be in the same computer device, or the second device and the data processing device can be in the same local area network, that is, the second device is electrically connected to the data processing device, and the comparison data can be sent to the data processing device in a preset order through shared memory, sockets, RPC (Remote Procedure Call) and other technologies.

[0106] It should be noted that the data acquisition module 401 , the second processing module 402 and the data sending module 403 divide the data transmission computing device 40 into four virtual modules according to different functions, and do not represent the actual hardware structure.

[0107] Embodiment 5

[0108] An embodiment of the present application provides a computer-readable storage medium having a computer program stored thereon, wherein the program, when executed by a processor, implements any method in the first embodiment.

[0109] Embodiment 6

[0110] An embodiment of the present application provides a computer-readable storage medium having a computer program stored thereon, wherein the program, when executed by a processor, implements any of the methods in Embodiment 2.

[0111] The above-mentioned product can execute the method provided in the embodiment of the present application, and has the functional modules and beneficial effects corresponding to the execution method. For technical details not fully described in this embodiment, please refer to the method provided in the embodiment of the present application.

[0112] The storage medium of the embodiment of the present application exists in various forms, including but not limited to:

[0113] (1) Mobile communication devices: These devices are characterized by their mobile communication functions and their main purpose is to provide voice and data communications. These terminals include: smart phones (such as iPhone), multimedia phones, functional phones, and low-end phones.

[0114] (2) Ultra-mobile personal computer devices: These devices fall into the category of personal computers, have computing and processing capabilities, and generally also have mobile Internet access features. These terminals include: PDA, MID and UMPC devices, such as iPad.

[0115] (3) Portable entertainment devices: These devices can display and play multimedia content. They include audio and video players (such as iPods), handheld game consoles, e-books, as well as smart toys and portable car navigation devices.

[0116] (4) Server: A device that provides computing services. The server consists of a processor 810, a hard disk, memory, a system bus, etc. The server is similar to a general computer architecture, but because it needs to provide highly reliable services, it has higher requirements in terms of processing power, stability, reliability, security, scalability, and manageability.

[0117] (5) Other electronic devices with data interaction functions.

[0118] Thus far, specific embodiments of the subject matter have been described. Other embodiments are within the scope of the appended claims. In some cases, the actions recited in the claims may be performed in a different order and still achieve the desired results. Additionally, the processes depicted in the accompanying drawings do not necessarily require the specific order or sequential order shown to achieve the desired results. In some embodiments, multitasking and parallel processing may be advantageous.

[0119] In the 1990s, improvements to a technology could be clearly distinguished as hardware improvements (for example, improvements to the circuit structure of diodes, transistors, switches, etc.) or software improvements (improvements to the method flow). However, with the development of technology, many improvements to the method flow today can be regarded as direct improvements to the hardware circuit structure. Designers almost always obtain the corresponding hardware circuit structure by programming the improved method flow into the hardware circuit. Therefore, it cannot be said that an improvement in a method flow cannot be implemented using a hardware entity module. For example, a programmable logic device (PLD) (such as a field programmable gate array (FPGA)) is such an integrated circuit whose logical function is determined by the user's programming of the device. Designers can "integrate" a digital system on a PLD by programming it themselves, without having to ask a chip manufacturer to design and produce a dedicated integrated circuit chip. Moreover, nowadays, instead of manually making integrated circuit chips, this kind of programming is mostly implemented by "logic compiler" software, which is similar to the software compiler used when developing and writing programs, and the code before compilation must also be written in a specific programming language, which is called hardware description language (HDL). There is not only one HDL, but many kinds, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, RHDL (Ruby Hardware Description Language), etc. The most commonly used ones are VHDL (Very-High-Speed ​​Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art should also know that it is only necessary to program the method flow slightly in the above-mentioned hardware description languages ​​and program it into the integrated circuit, and then it is easy to obtain the hardware circuit that implements the logic method flow.

[0120] The controller can be implemented in any appropriate manner, for example, the controller can take the form of a microprocessor or processor and a computer-readable medium storing a computer-readable program code (such as software or firmware) that can be executed by the (micro)processor, a logic gate, a switch, an application-specific integrated circuit (ASIC), a programmable logic controller, and an embedded microcontroller. Examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicone Labs C8051F320. The memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art also know that in addition to implementing the controller in a purely computer-readable program code manner, the controller can be implemented in the form of a logic gate, a switch, an application-specific integrated circuit, a programmable logic controller, and an embedded microcontroller by logically programming the method steps. Therefore, this controller can be considered as a hardware component, and the devices included therein for implementing various functions can also be regarded as structures within the hardware component. Or even, the devices for implementing various functions can be regarded as both software modules for implementing the method and structures within the hardware component.

[0121] The systems, devices, modules or units described in the above embodiments may be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, the computer may be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.

[0122] For the convenience of description, the above device is described in various units according to their functions. Of course, when implementing the present application, the functions of each unit can be implemented in the same or multiple software and / or hardware.

[0123] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented in one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that include computer-usable program code.

[0124] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0125] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0126] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.

[0127] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0128] The memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. The memory is an example of a computer-readable medium.

[0129] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.

[0130] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.

[0131] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.

[0132] The present application may be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform specific transactions or implement specific abstract data types. The present application may also be practiced in distributed computing environments where transactions are performed by remote processing devices connected through a communication network. In a distributed computing environment, program modules may be located in local and remote computer storage media, including storage devices.

[0133] Each embodiment in this specification is described in a progressive manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.

[0134] The above is only an embodiment of the present application and is not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the scope of the claims of the present application.

Claims

1. A data transmission calculation method, applied to a first device performing data transmission with a second device, characterized in that: include: Obtain genome sequencing data; Performing a first processing on the genome sequencing data to obtain first sequencing data, wherein the first processing is used to delete the adapter sequence data and the sequence data with a quality value lower than a first preset value in the genome sequencing data; wherein performing the first processing on the genome sequencing data comprises: performing the first processing on the genome sequencing data by modifying the software Trimmomatic, FASTP or FastQC; Splitting the first sequencing data into a plurality of sub-data segments, each sub-data segment comprising a plurality of complete nucleotide sequence information or protein sequence information; Sending the plurality of sub-data segments to a second device in a preset order, respectively, so that the second device compares the reference genome data with the received sub-data segments to obtain comparison data and sends the comparison data to a cloud computing center; Wherein, after the first device performs a first process on a segment of data of a preset length in the genome sequencing data to obtain first sequencing data corresponding to the segment of data of the preset length, while sending the first sequencing data as a sub-data segment to the second device, the first device performs a first process on the next segment of data of the preset length in the genome sequencing data, and so on until the genome sequencing data is processed; The second devices are multiple computer devices electrically connected to the first device; correspondingly, the multiple sub-data segments are sent to the second devices respectively in a preset order, including: using the first device to send the multiple sub-data segments to the multiple computer devices respectively in a preset order through one of shared memory, socket or remote procedure call technology, and the preset order is an order that can evenly distribute the multiple sub-data segments to the multiple computer devices.

2. The method according to claim 1, characterized in that The method further comprises: sending the plurality of sub-data segments to the second device in a preset order respectively; The multiple sub-data segments are sent to the second device respectively in a preset order through point-to-point technology.

3. The method according to claim 1, characterized in that Splitting the first sequencing data into a plurality of sub-data segments further comprises: The multiple sub-data segments are compressed and encrypted respectively to obtain multiple compressed and encrypted sub-data segments.

4. The method according to claim 3, characterized in that The method further comprises: sending the plurality of sub-data segments to the second device in a preset order respectively; The multiple compressed and encrypted sub-data segments are sent to the second device respectively through point-to-point technology.

5. A data transmission calculation method, applied to a second device that performs data transmission with a first device, characterized in that: include: Reading the reference genome data and obtaining the sub-data segment sent by the first device; Compare the reference genome data and the sub-data segment to obtain comparison data, wherein the comparison data is used to indicate the position of the base sequence in the sub-data segment in the reference genome data; The comparison data is compressed and encrypted and then sent to a data processing device, wherein the data processing device is a cloud computing center; The sub-data segment sent by the first device is first sequencing data corresponding to a segment of data of a preset length obtained after the first device performs a first processing on the segment of data of a preset length in the genome sequencing data. When the first device sends the first sequencing data as a sub-data segment to the second device, the first device performs a first processing on the next segment of data of the preset length in the genome sequencing data, and so on until the genome sequencing data is processed; The sub-data segment sent by the first device is first sequencing data corresponding to a segment of data of a preset length obtained after the first device performs a first processing on the segment of data of a preset length in the genome sequencing data, including: performing a first processing on the genome sequencing data by modifying the software Trimmomatic, FASTP or FastQC; each sub-data segment contains a plurality of complete nucleotide sequence information or protein sequence information; The second devices are multiple computer devices electrically connected to the first device; correspondingly, reading the reference genome data and obtaining the sub-data segments sent by the first device includes: receiving the multiple sub-data segments sent by the first device in a preset order through the multiple computer devices through one of the technologies of shared memory, socket or remote procedure call technology, and the preset order is an order that can evenly distribute the multiple sub-data segments to the multiple computer devices.

6. The method according to claim 5, characterized in that The comparison data is compressed and encrypted and then sent to a data processing device, including: The comparison data is compressed and encrypted and then sent to the data processing device through point-to-point technology.

7. The method according to claim 5, characterized in that The comparison data is compressed and encrypted and then sent to a data processing device, including: The comparison data is compressed and encrypted and then sent to a data processing device electrically connected to the second device.

8. A data transmission computing device, applied to a first device performing data transmission with a second device, characterized in that: include: A data acquisition module, used to acquire genome sequencing data; A first processing module is used to perform a first processing on the genome sequencing data to obtain first sequencing data, wherein the first processing is used to delete the adapter sequence data and the sequence data whose quality value is lower than a first preset value in the genome sequencing data; wherein the first processing on the genome sequencing data comprises: performing the first processing on the genome sequencing data using software Trimmomatic, FASTP or FastQC; A data splitting module, used for splitting the first sequencing data into a plurality of sub-data segments, each sub-data segment comprising a plurality of complete nucleotide sequence information or protein sequence information; A data sending module, used for compressing and encrypting the multiple sub-data segments in a preset order, and sending them to a second device respectively, so that the second device compares the reference genome data with the received sub-data segments to obtain comparison data and send the comparison data to a cloud computing center; Wherein, after the first device performs a first process on a segment of data of a preset length in the genome sequencing data to obtain first sequencing data corresponding to the segment of data of the preset length, while sending the first sequencing data as a sub-data segment to the second device, the first device performs a first process on the next segment of data of the preset length in the genome sequencing data, and so on until the genome sequencing data is processed; The second devices are multiple computer devices electrically connected to the first device; correspondingly, the multiple sub-data segments are sent to the second devices respectively in a preset order, including: using the first device to send the multiple sub-data segments to the multiple computer devices respectively in a preset order through one of shared memory, socket or remote procedure call technology, and the preset order is an order that can evenly distribute the multiple sub-data segments to the multiple computer devices.

9. A data transmission computing device, applied to a second device that performs data transmission with a first device, characterized in that: include: A data acquisition module, used to read the reference genome data and acquire the sub-data segment sent by the first device; A second processing module is used to compare the reference genome data and the sub-data segment to obtain comparison data, wherein the comparison data is used to indicate the position of each base sequence in the sub-data segment in the reference genome data; A data sending module, used for compressing and encrypting the comparison data and then sending it to a data processing device, wherein the data processing device is a cloud computing center; The sub-data segment sent by the first device is first sequencing data corresponding to a segment of data of a preset length obtained after the first device performs a first processing on the segment of data of a preset length in the genome sequencing data. When the first device sends the first sequencing data as a sub-data segment to the second device, the first device performs a first processing on the next segment of data of the preset length in the genome sequencing data, and so on until the genome sequencing data is processed; The sub-data segment sent by the first device is first sequencing data corresponding to a segment of data of a preset length obtained after the first device performs a first processing on the segment of data of a preset length in the genome sequencing data, including: performing a first processing on the genome sequencing data using software Trimmomatic, FASTP or FastQC; each sub-data segment contains a plurality of complete nucleotide sequence information or protein sequence information; The second devices are multiple computer devices electrically connected to the first device; correspondingly, reading the reference genome data and obtaining the sub-data segments sent by the first device includes: receiving the multiple sub-data segments sent by the first device in a preset order through the multiple computer devices through one of the technologies of shared memory, socket or remote procedure call technology, and the preset order is an order that can evenly distribute the multiple sub-data segments to the multiple computer devices.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the method according to any one of claims 1 to 4 is implemented.

11. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the method according to any one of claims 5 to 7 is implemented.

Citation Information

Patent Citations

  • Cluster-based high-throughput data analyzing method

    CN106407743A

  • Whole genome re-sequencing analysis and method for whole genome re-sequencing analysis

    CN110797088A