Noções básicas sobre armazenamento de dados e arquivos

Para armazenar dados e arquivos no App Engine, use os serviços do Google Cloud ou qualquer outro serviço de armazenamento compatível com sua linguagem e que possa ser acessado na instância do App Engine. É possível hospedar bancos de dados de terceiros em outro provedor de nuvem e no local, além de poderem ser gerenciados por um fornecedor terceirizado.

Para informações sobre como ler e gravar arquivos temporários, consulte Como ler e gravar arquivos temporários.

Serviços de armazenamento do Google Cloud

Para aplicativos do App Engine em execução no ambiente padrão, recomendamos um destes serviços de armazenamento do Google Cloud:

Veja uma lista completa dos produtos de armazenamento do Google Cloud na página Produtos do Cloud Storage.

Outros provedores de nuvem

Os aplicativos do App Engine se conectam a bancos de dados externos, hospedados em outras nuvens públicas, se os servidores desses bancos e seu firewall estiverem configurados para aceitar conexões. O aplicativo do App Engine se conecta pela Internet usando o endereço IP público desse serviço externo.

Bancos de dados gerenciados por um fornecedor de terceiros

Muitos fornecedores oferecem serviços de banco de dados gerenciado, como o mLab para MongoDB (em inglês). O Redis Labs oferece armazenamento em cache hospedado do Redis (em inglês). Esses fornecedores administram a hospedagem, configuração e manutenção dos bancos de dados. O App Engine pode se conectar a esses serviços externos pela Internet, da mesma forma que a outras nuvens públicas, usando o endereço IP público desse serviço.

No local

Se você quiser tornar bancos de dados locais acessíveis a um aplicativo do App Engine, configure a rede interna e o firewall para informar um endereço IP público ao banco de dados ou conecte-se por meio da VPN.

Ao configurar o Cloud VPN, o aplicativo do App Engine acessa a rede no local sem expor diretamente o servidor de banco de dados à Internet pública. O App Engine e o Compute Engine usam a mesma infraestrutura de rede, por isso, use a conexão VPN para estabelecer uma conexão entre o aplicativo do App Engine e o banco de dados no local usando o endereço IP interno do servidor de banco de dados.

Considerações sobre produção

Configure o App Engine para fazer o escalonamento automático e horizontal do aplicativo com base em várias métricas. Ao contrário dos aplicativos da Web, os bancos de dados muitas vezes exigem mudanças não triviais para atender à escala. Em aplicativos de produção, o App Engine pode sobrecarregar rapidamente um banco de dados durante os picos de tráfego. Ao configurar e implantar bancos de dados, pense na carga média de tráfego estimada e a carga durante os picos.