O BigTable, que é o back-end do banco de dados do App Engine, será escalado para milhões de registros. Devido a isso, o App Engine não permitirá que você faça nenhuma consulta que resultará em uma verificação de tabela, pois o desempenho seria terrível para uma tabela bem preenchida.
Em outras palavras, toda consulta deve usar um índice. É por isso que você só pode fazer =
, >
e <
consultas. (Na verdade, você também pode fazer isso, !=
mas a API faz isso usando uma combinação de >
e <
consultas.) É também por isso que o ambiente de desenvolvimento monitora todas as consultas que você faz e adiciona automaticamente quaisquer índices ausentes ao seuindex.yaml
arquivo.
Não há como indexar uma LIKE
consulta, portanto ela simplesmente não está disponível.
Assista a esta sessão de IO do Google para obter uma explicação muito melhor e mais detalhada sobre isso.