Informazioni sull'archiviazione di file e dati

Per archiviare dati e file su App Engine, puoi utilizzare i servizi Google Cloud o qualsiasi altro servizio di archiviazione supportato dalla tua lingua e accessibile dall'istanza App Engine. I database di terze parti possono essere ospitati su un altro provider cloud, on-premise o gestiti da un fornitore di terze parti.

Servizi di archiviazione Google Cloud

Per le app App Engine in esecuzione nell'ambiente standard Python 2, consigliamo uno dei seguenti servizi di archiviazione Google Cloud:

Nome Strutturazione Coerenza Costo
Firestore in modalità Datastore Senza schema (NoSQL) Elevata coerenza, tranne quando vengono eseguite query globali. La modalità Datastore offre una quota gratuita con limiti giornalieri. Gli account a pagamento offrono spazio di archiviazione illimitato, operazioni di lettura e scrittura. Ulteriori informazioni sono disponibili nella pagina Quote di Datastore.
Cloud SQL per MySQL o
Cloud SQL per PostgreSQL
Relazionale Coerenza elevata Google offre due piani di fatturazione per Google Cloud SQL: pacchetti e per uso. Ulteriori informazioni sono disponibili nel Listino prezzi di Cloud SQL.
Cloud Storage File e metadati associati (archiviazione dei file su Cloud) Molto coerente, tranne quando vengono eseguite operazioni di elenco che restituiscono un elenco di bucket o oggetti. Non sono previsti costi associati alle chiamate a Google Cloud Storage. Tuttavia, per tutti i dati archiviati in Google Cloud Storage vengono addebitate le normali tariffe di archiviazione dei dati di Google Cloud Storage.

I prezzi di Cloud Storage sono disponibili nel listino prezzi di Cloud Storage.

Queste opzioni non si escludono a vicenda. Ad esempio, la stessa applicazione può archiviare informazioni in un database Cloud SQL e anche i file in un ambiente Cloud Storage.

Consulta un elenco completo dei prodotti di archiviazione Google Cloud nella pagina Prodotti Cloud Storage.

Altri cloud provider

Le app di App Engine possono connettersi a database esterni ospitati su in altri cloud pubblici, purché i server del database e il firewall siano configurate correttamente per accettare connessioni. L'app App Engine si connette tramite internet utilizzando l'indirizzo IP pubblico del servizio esterno.

Database gestiti da un fornitore di terze parti

Esistono molti fornitori che offrono servizi di database gestiti, come mLab per MongoDB, mentre Redis Labs offre memorizzazione nella cache Redis ospitata. Questi fornitori gestiscono l'hosting, la configurazione e la manutenzione dei database. App Engine può collegarsi a questi servizi esterni tramite internet, come gli altri cloud pubblici, utilizzando l'indirizzo IP pubblico del servizio.

On-premise

Se hai già dei database on-premise che vuoi rendere accessibili alla tua app App Engine, puoi configurare la rete e il firewall interni in modo da assegnare al database un indirizzo IP pubblico o connetterti tramite una VPN.

Considerazioni sulla produzione

App Engine può essere configurato per scalare automaticamente l'applicazione orizzontalmente in base a varie metriche. A differenza delle applicazioni web, i database spesso richiedono modifiche non banali per rispondere alla scalabilità. Nelle applicazioni di produzione, App Engine può sovraccaricare rapidamente un database durante i picchi di traffico. Devi tenere conto del carico medio del traffico previsto e del carico durante i picchi quando configuri e implementi i database.