Memecache essas solicitações de pressionamento de tecla/respostas de banco de dados e evite a viagem para o banco de dados cada vez após a primeira.
Ou gere uma lista pré-compilada das possíveis frases de preenchimento automático, faça cache na memória e consulte isso em vez do banco de dados. Por que você precisa consultar o banco de dados para uma caixa de pesquisa? Gere uma lista aceitável e use-a em vez de fazer uma conexão entre camadas!
Ou verifique se há índices nas tabelas que sua consulta ao banco de dados faz.