Hi all,
I'm currently updating my BLAST application from the legacy BLAST to BLAST+. It seems that BLAST+ expects 'version 4' database files. Which my blast DB's apparently are not.
Is there a way to use makeblastdb, or any other utility, to update the version of a blast db that was created using formatdb?
Thanks in advance, and my apologies if this has been addressed on this forum previously.
Regards,
Brandon Wilson
2 answers
They musy be quite old BLAST databases. All recent versions of BLAST formatdb can create databases that can be used by the new BLAST+ makeblastdb.
I think you can convert old databases using makeblastdb, as it supports 'blastdb' as an input type, not just the traditional 'fasta'.
makeblastdb -in <legacy-db> -out /newdir/newdbname
If that doesn't work, you can reverse the old database and reindex it:
fastacmd -d <legacy-db> -D 1 | makeblastdb -dbtype nucl -out <newfolder/newname>
The -D 1 dumps the database as fasta. You'll need to change nucl to prot depending. Make sure you put the new databases in a separate folder.
Blast+ will work with your "legacy" blast DB.
Log in to answer this question.
I do have a set of sequence reads (5k) and did a read-to-read comparison.I ran both formatdb and makeblastdb but it gave different answer. Why would it gave different answer?
Below is the different result between two different version of BLASTN (megablast)
This is my command-line:
This is my command-line: