Comprendre le stockage des données et des fichiers
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Pour stocker des données et des fichiers sur App Engine, vous pouvez utiliser les services Google Cloud ou tout autre service de stockage compatible avec votre langage et accessible depuis votre instance App Engine. Ces bases de données tierces peuvent être hébergées sur une autre solution cloud, sur site ou gérées par un fournisseur tiers.
Services de stockage Google Cloud
Pour les applications App Engine exécutées dans l'environnement standard Python 2, nous recommandons l'un des services de stockage Google Cloud suivants :
Nom |
Structure |
Cohérence |
Coût |
Firestore en mode Datastore |
Sans schéma (NoSQL) |
Fortement cohérent, sauf lors de l'exécution de requêtes globales |
Le mode Datastore propose un quota gratuit avec des limites journalières. Les comptes payants proposent un stockage ainsi que des opérations de lecture et d'écriture illimités. Pour en savoir plus, consultez la section des quotas de Datastore. |
Cloud SQL pour MySQL ou Cloud SQL pour PostgreSQL |
Relationnelle |
Fortement cohérent |
Google propose deux modes de facturation pour Google Cloud SQL : au forfait et à l'utilisation. Pour en savoir plus, consultez la page Tarifs de Cloud SQL. |
Cloud Storage |
Fichiers et métadonnées associées (stockage de fichiers dans le cloud) |
Fortement cohérent, sauf lors de l'exécution d'opérations de listes qui obtiennent la liste des buckets ou des objets |
Les appels vers Google Cloud Storage sont gratuits.
Toutefois, toutes les données stockées dans Google Cloud Storage sont facturées au tarif habituel de stockage de données de Google Cloud Storage.
Pour en savoir plus sur les prix de Cloud Storage, consultez la page Tarifs de Cloud Storage. |
Ces options ne s'excluent pas mutuellement. Par exemple, la même application peut à la fois stocker des informations dans une base de données Cloud SQL et stocker des fichiers dans un bucket Cloud Storage.
Consultez la liste complète des produits Google Cloud Storage sur la page Produits Cloud Storage.
Autres fournisseurs cloud
Les applications App Engine peuvent se connecter à des bases de données externes hébergées sur d'autres clouds publics, à condition que ces serveurs de base de données et votre pare-feu soient correctement configurés pour accepter les connexions. Votre application App Engine se connecte via Internet par le biais de l'adresse IP publique du service externe.
Bases de données gérées par un fournisseur tiers
De nombreux fournisseurs proposent des services de bases de données gérées tels que mLab pour MongoDB, ou Redis Labs et ses solutions hébergées de mise en cache Redis. Ces fournisseurs gèrent l'hébergement, la configuration et la maintenance des bases de données. App Engine peut se connecter à ces services externes via Internet de la même manière qu'avec les autres clouds publics, par le biais de leur adresse IP publique.
Bases de données sur site
Pour que votre application App Engine puisse accéder à vos bases de données existantes sur site, vous pouvez soit configurer votre réseau interne et votre pare-feu pour attribuer à la base de données une adresse IP publique, soit vous connecter via un réseau privé virtuel.
Considérations relatives à la production
App Engine peut être configuré pour effectuer un scaling automatique horizontal de votre application en fonction de diverses métriques. Contrairement aux applications Web, les bases de données nécessitent souvent des modifications complexes pour s'adapter au trafic. Dans les applications de production, App Engine peut rapidement surcharger une base de données lors de pics de trafic. C'est pourquoi, lorsque vous configurez et déployez une base de données, vous devez prendre en compte la charge de trafic moyenne prévue et la charge durant les pics d'activité.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2024/12/22 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2024/12/22 (UTC)."],[[["\u003cp\u003eApp Engine allows data storage through Google Cloud services, external cloud providers, third-party vendors, or on-premises databases.\u003c/p\u003e\n"],["\u003cp\u003eGoogle Cloud offers several storage options including Firestore in Datastore mode (NoSQL), Cloud SQL (relational), and Cloud Storage (file storage), each with unique consistency models and pricing structures.\u003c/p\u003e\n"],["\u003cp\u003eApp Engine apps can connect to external databases hosted on other cloud platforms or managed by third-party vendors, provided the servers and firewalls are configured to allow connections via public IP addresses.\u003c/p\u003e\n"],["\u003cp\u003eFor on-premises databases, connectivity to App Engine can be established by configuring a public IP address for the database or using a VPN.\u003c/p\u003e\n"],["\u003cp\u003eDatabase scalability should be carefully considered in production, as App Engine's ability to scale horizontally can lead to traffic spikes that overwhelm databases if they are not configured appropriately.\u003c/p\u003e\n"]]],[],null,["# Understanding Data and File Storage\n\nTo store data and files on App Engine, you can use Google Cloud services\nor any other storage service that is supported by your language and is\naccessible from your App Engine instance. Third-party databases\ncan be hosted on another cloud provider,\nhosted on premises, or managed by a third-party vendor.\n\nGoogle Cloud storage services\n-----------------------------\n\nFor App Engine apps running in the Python 2 standard environment, we recommend\none of the following Google Cloud storage services:\n\n\nThese options are not mutually exclusive. For example, the same application\ncan store information in a Cloud SQL database, and also store files in a Cloud\nStorage bucket.\n\n\u003cbr /\u003e\n\nSee a complete list of the Google Cloud storage products on the\n[Cloud Storage Products page](/products/storage).\n\nOther cloud providers\n---------------------\n\nApp Engine apps can connect to external databases that are hosted on\nother public clouds as long as those database servers and your firewall are\nconfigured properly to accept connections. Your App Engine app connects\nover the Internet using that external service's public IP address.\n\nDatabases managed by a third-party vendor\n-----------------------------------------\n\nThere are many vendors offering managed database services such as\n[mLab](/mongodb) for MongoDB, Redis Labs offers hosted\n[Redis caching](https://redislabs.com/redis-enterprise/cloud/). These vendors handle\nhosting, configuration, and maintenance of databases. App Engine can\nconnect to these external services over the Internet, in the same way as other\npublic clouds by using that service's public IP address.\n\nOn premises\n-----------\n\nIf you have existing on-premises databases that you want to make accessible to\nyour App Engine app, you can either configure your internal\nnetwork and firewall to give the database a public IP address or connect using a\nVPN.\n\nProduction considerations\n-------------------------\n\nApp Engine can be configured to automatically scale your application\n[horizontally](https://wikipedia.org/wiki/Scalability#Horizontal_and_vertical_scaling)\nbased on various metrics. Unlike web applications, databases often\nrequire non-trivial changes to respond to scale. In production applications,\nApp Engine can quickly overwhelm a database during traffic spikes. You\nshould take the anticipated average traffic load and load during spikes into\nconsideration when configuring and deploying databases."]]