Biochemical analysis instrument
Abstract
An analysis instrument comprises plural modules connected together over a data network, each module comprising an analysis apparatus operable to perform biochemical analysis of a sample. Each module comprises a control unit that controls the operation of the analysis apparatus. The control units are addressable to select an arbitrary number of modules to operate as a cluster for performing a common biochemical analysis. The control units communicate over the data network, repeatedly during the performance of the common biochemical analysis, to determine the operation of the analysis apparatus of each module required to meet the global performance targets, on the basis of measures of performance derived from the output data produced by the modules. The arrangement of the instrument as modules interacting in this manner provides a scalable analysis instrument.
Claims
exact text as granted — not AI-modified1 - 46 . (canceled)
47 . A method for processing streaming data from a sequencer, the method comprising:
receiving multiple sequences from the sequencer; storing each of the multiple sequences as data records on a database, each of the multiple sequences being associated with a counter indicative of a number of times the associated sequence has been sequenced; progressively receiving a further sequence as streaming data from the sequencer; while receiving the further sequence, matching the streaming data against each of the multiple sequences in the database to determine a matching score for each of the multiple sequences in the records of the database; upon the matching score exceeding a matching threshold for one of the multiple sequences in the database, selecting the one of the multiple sequences in the database based on the matching score; storing the further sequence on non-volatile memory where the counter value associated with the selected sequence is below a saturation threshold; and terminating the receiving of the further sequence where the counter value associated with the selected sequence is above the saturation threshold.
48 . The method of claim 47 , wherein terminating the receiving of the further sequence comprises sending a reject signal to the sequencer to abort sequencing the further sequence before the sequencer reaches the end of the further sequence and to allow a next sequence to be sequenced before the further sequence is fully sequenced.
49 . The method of claim 47 , wherein storing the sequence as data records in the database is conditional on the matching score being below the matching threshold for the sequences stored in the database.
50 . The method of claim 47 , wherein storing the sequence as data records in the database comprises storing a digital representation of an electric signal received from the sequencer.
51 . The method of claim 50 , wherein matching the streaming data comprises matching a digital representation of an electric signal indicative of the further sequence against the digital representation of the electric signal stored on the database.
52 . The method of claim 51 , wherein determining a matching score comprises performing dynamic time warping.
53 . The method of claim 52 , wherein performing dynamic time warping comprises selectively calculating cells in an associated dynamic programming matrix that are within a specified range or value.
54 . The method of claim 47 , further comprising upon the matching score exceeding a matching threshold for one of the multiple sequences in the database incrementing the counter for the one of the multiple sequences.
55 . The method of claim 47 , wherein matching the streaming data comprises matching the streaming data against a subset of the multiple sequences in the database, wherein the subset is based on the counter.
56 . The method of claim 55 , wherein the subset includes sequences for which the associated counter is above an abundance threshold.
57 . The method of claim 47 , wherein the sequencer comprises a nanopore.
58 . The method of claim 47 , further comprising:
monitoring the counters in the database to determine whether one or more counters exceed a depth threshold; and upon determining that one or more counters exceed a depth threshold, creating an alert that sufficient sequences have been sequenced.
59 . The method of claim 47 , wherein the data records form an associative array, each record comprises a key/value pair and the value comprises the sequence and the counter.
60 . The method of claim 47 , wherein receiving the multiple sequences comprises using an application programming interface (API) to receive the multiple sequences.
61 . The method of claim 47 , wherein storing the sequence as data records in the database comprises storing a digital representation of a nucleic acid sequence.
62 . The method of claim 61 , further comprising performing base calling on the further sequence while receiving the further sequence.
63 . The method of claim 62 , wherein determining the matching score comprises performing sequence alignment or comparison.
64 . The method of claim 48 , wherein storing the sequence as data records in the database is conditional on the matching score being below the matching threshold for the sequences stored in the database.
65 . A computer system for processing streaming data from a sequencer, the computer system comprising:
a data port to receive multiple sequences from the sequencer; a database to store each of the multiple sequences as data records on a database, each of the multiple sequences being associated with a counter indicative of a number of times the associated sequence has been sequenced; a processor to:
while progressively receiving a further sequence as streaming data from the sequencer, match the streaming data against each of the multiple sequences in the records of the database to determine a matching score for each of the multiple sequences in the records of the database;
upon the matching score exceeding a matching threshold for one of the multiple sequences in the database, select the one of the multiple sequences in the database based on the matching score;
store the further sequence on non-volatile memory where the counter value associated with the selected sequence is below a saturation threshold; and
terminate the receiving of the further sequence where the counter value associated with the selected sequence is above the saturation threshold.Join the waitlist — get patent alerts
Track US2019265193A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.