As far as I know, the blast searches for homology in the way that indexing query(word list), scan database(automaton), extension and so on. Then why should we pre-process the database with formatdb.
I know there is another way that firstly indexing k-mer or word in database, and then looking for occurrences in database for each query like blat did and lastz did. And I was told by articles that is why blat is faster than blast, the former is O(1), and the latter is O(G) for time complexity given the database of size G when determining each query's location.
If you can show me a link or give a brief list, that'll be helpful.Thanks.
You might ask "what does makeblastdb do?" since formatdb has been superseded by it.