Compreender o armazenamento de dados e ficheiros

Para armazenar dados e ficheiros no App Engine, pode usar Google Cloud serviços ou qualquer outro serviço de armazenamento suportado pelo seu idioma e acessível a partir da sua instância do App Engine. As bases de dados de terceiros podem ser alojadas no Compute Engine, noutro fornecedor de nuvem, no local ou geridas por um fornecedor externo.

Google Cloud serviços de armazenamento

Para apps do App Engine executadas no ambiente flexível, recomendamos um dos seguintes Google Cloud serviços de armazenamento:

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

Alojamento no Compute Engine

As instâncias do App Engine fazem parte da mesma rede interna privada que as instâncias do Compute Engine. A sua app do App Engine pode comunicar com serviços alojados no Compute Engine no mesmo projeto sem passar pela Internet pública. Em muitos casos, a sua app liga-se ao serviço através do endereço IP interno da instância sem precisar de atribuir à base de dados um endereço IP público externo. Se quiser, pode atribuir um endereço IP público para permitir o acesso à base de dados a partir de fora de Google Cloud.

Muitas bases de dados populares de terceiros, como Redis, MongoDB, PostgreSQL, Cassandra, Hadoop e Microsoft SQL Server, podem ser implementadas rapidamente no Compute Engine através do Google Cloud Marketplace. Consulte os seguintes guias para ver detalhes sobre a implementação do MySQL ou do PostgreSQL.

Outros fornecedores de nuvem

As apps do App Engine podem estabelecer ligação a bases de dados externas alojadas noutras nuvens públicas, desde que esses servidores de bases de dados e a sua firewall estejam configurados corretamente para aceitar ligações. A sua app do App Engine estabelece ligação através da Internet com o endereço IP público desse serviço externo.

Bases de dados geridas por um fornecedor externo

Existem muitos fornecedores que oferecem serviços de base de dados geridos, como o mLab para o MongoDB, e a Redis Labs oferece cache do Redis alojada. Estes fornecedores processam o alojamento, a configuração e a manutenção de bases de dados. O App Engine pode ligar-se a estes serviços externos através da Internet, da mesma forma que outras nuvens públicas, usando o endereço IP público desse serviço.

Nas instalações

Se tiver bases de dados nas instalações existentes que queira tornar acessíveis à sua app do App Engine, pode configurar a sua rede interna e firewall para atribuir um endereço IP público à base de dados ou estabelecer ligação através de uma VPN.

A configuração da VPN na nuvem permite que a sua app do App Engine aceda à sua rede no local sem expor diretamente o servidor de base de dados à Internet pública. Uma vez que o App Engine e o Compute Engine usam a mesma infraestrutura de rede, pode usar a ligação VPN para estabelecer uma ligação entre a app App Engine e a sua base de dados no local através do endereço IP interno do servidor de base de dados.

Considerações de produção

O App Engine pode ser configurado para dimensionar automaticamente a sua aplicação horizontalmente com base em várias métricas. Ao contrário das aplicações Web, as bases de dados requerem frequentemente alterações não triviais para responder à escalabilidade. Em aplicações de produção, o App Engine pode sobrecarregar rapidamente uma base de dados durante picos de tráfego. Deve ter em consideração a carga de tráfego média prevista e a carga durante os picos ao configurar e implementar bases de dados.