BLAST program was not designed for search with short queries. Under the default setting, BLAST searches with short queries often find no hits at all. The possible factors contributing to this phenomnon are:
a. short alignments generated with short queries are of low scores and low statistical significance that are below the default Expect cutoff;
b. filter function masks part of the query so not enough of the query is left for use as alignment seed;
d. word size setting is too large for the query - not enough words are generated for database scan to find alignment seeds or word matches.
We need to adjust the settings of the relevant alignment parameters to optimize them for short query. Specifically, for short nucleotide query, we recommend the usage of 'FILTER=false', 'EXPECT=1000', and 'WORD_SIZE=7'. For short protein queries, we recommend 'FILTER=false', 'EXPECT=50000', 'WORD_SIZE=2', and 'COMPOSITION_BASED_STATISTICS=false'. Taking advantage of the newly introduced 'SHORT_QUERY_ADJUST' parameter, we can simply use:
'PROGRAM=blastn&SHORT_QUERY_ADJUST=true' for short nucleotide queries
'PROGRAM=blastp&SHORT_QUERY_ADJUST=true' for short protein queries
We need to make sure that the length of each query is 30 letters or shorter.