Patent ID: 7058634

Claim:
A distributed BLAST processing system, comprising: a pre-processing system coupled to a BLAST sequence database and configured to generate a plurality of data segments, each segment including a portion of the BLAST sequence database, and configured to determine a sequence correlation term based upon properties of the BLAST sequence database; and a server system configured to communicate with a plurality of distributed client systems, the server system further being configured to send data segments, query sequences, and the sequence correlation term to the distributed client systems and to receive BLAST result data from the distributed client systems without requiring the distributed client systems to access the BLAST sequence database; and a plurality of distributed client systems configured to communicate with the server system through a network, each client system further being configured to receive at least one data segment and the sequence correlation term from the server system and being configured to conduct BLAST processing on the data segment utilizing the sequence correlation term without requiring access to the BLAST sequence database, wherein the server system is further configured to send a client agent component and a BLAST work engine component to the plurality of distributed client systems, and wherein the pre-processing system is further configured to determine a number of preceding wildcard basepairs associated with each data segment, wherein the server system is further configured to send a preceding wildcard number along with each data segment, and wherein the BLAST work engine comprises a wildcard basepair replacement routine that utilizes the preceding wildcard number to choose where to start in a predetermined string of replacement basepairs.