App Engine에 데이터와 파일을 저장하려면 Google Cloud 서비스 또는 사용자 언어가 지원되고 App Engine 인스턴스에서 액세스할 수 있는 다른 스토리지 서비스를 사용하면 됩니다. 타사 데이터베이스는 다른 클라우드 제공업체에서 호스팅되거나, 온프레미스로 호스팅되거나, 타사 공급업체에서 관리될 수 있습니다.
App Engine 앱은 다른 퍼블릭 클라우드에 호스팅된 외부 데이터베이스에 연결될 수 있습니다. 단, 해당 데이터베이스 서버와 방화벽이 연결을 허용하도록 적절히 구성되어 있어야 합니다. App Engine 앱은 해당 외부 서비스의 공개 IP 주소를 사용하여 인터넷을 통해 연결됩니다.
타사 공급업체가 관리하는 데이터베이스
다수의 공급업체가 MongoDB용 mLab과 같은 관리형 데이터베이스 서비스를 제공하며, Redis Labs는 호스팅된 Redis 캐싱을 제공합니다. 이러한 공급업체는 데이터베이스의 호스팅, 구성, 유지보수를 담당합니다. App Engine은 다른 퍼블릭 클라우드와 마찬가지로 해당 서비스의 공개 IP 주소를 사용하여 인터넷을 통해 외부 서비스에 연결될 수 있습니다.
온프레미스
기존 온프레미스 데이터베이스가 App Engine 앱에 액세스할 수 있도록 하려면 내부 네트워크와 방화벽을 구성하여 데이터베이스에 공개 IP 주소를 부여하거나 VPN을 사용하여 연결할 수 있습니다.
Cloud VPN을 설정하면 데이터베이스 서버를 공개 인터넷에 직접 노출하지 않고 App Engine 앱이 온프레미스 네트워크에 액세스할 수 있습니다. App Engine과 Compute Engine은 동일한 네트워킹 인프라를 사용하므로, VPN 연결과 데이터베이스 서버의 내부 IP 주소를 사용하여 App Engine 앱과 온프레미스 데이터베이스 간의 연결을 설정할 수 있습니다.
프로덕션 고려사항
다양한 측정항목에 따라 애플리케이션이 수평적으로 자동 확장되도록 App Engine을 구성할 수 있습니다. 웹 애플리케이션과 달리 데이터베이스는 확장에 대응하기 위해 까다로운 변경을 거쳐야 하는 경우가 많습니다. 프로덕션 애플리케이션에서 App Engine은 트래픽 급증 시 데이터베이스를 빠르게 가득 채울 수 있습니다. 따라서 데이터베이스를 구성하고 배포할 때 예상되는 평균 트래픽 부하뿐만 아니라 급증 시 부하도 고려해야 합니다.
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["이해하기 어려움","hardToUnderstand","thumb-down"],["잘못된 정보 또는 샘플 코드","incorrectInformationOrSampleCode","thumb-down"],["필요한 정보/샘플이 없음","missingTheInformationSamplesINeed","thumb-down"],["번역 문제","translationIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2025-09-04(UTC)"],[[["\u003cp\u003eApp Engine can use Google Cloud storage services like Firestore in Datastore mode, Cloud SQL for MySQL or PostgreSQL, and Cloud Storage for various storage needs.\u003c/p\u003e\n"],["\u003cp\u003eApp Engine apps can connect to external databases hosted on other public clouds, provided the database servers and firewalls are properly configured for connection.\u003c/p\u003e\n"],["\u003cp\u003eThird-party vendor managed databases, such as mLab for MongoDB or Redis Labs for Redis, can be connected to App Engine over the Internet using the service's public IP address.\u003c/p\u003e\n"],["\u003cp\u003eOn-premises databases can be accessed by App Engine apps through either a public IP address or a secure VPN connection, such as Cloud VPN, allowing access to the database server's internal IP address.\u003c/p\u003e\n"],["\u003cp\u003eProduction environments require careful database configuration to handle traffic spikes, as App Engine's automatic horizontal scaling can overwhelm databases if not properly prepared.\u003c/p\u003e\n"]]],[],null,["# Understanding data and file storage\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\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.\nFor information about reading and writing temporary files, see [Reading and\nWriting Temporary Files](/appengine/docs/standard/using-temp-files).\n\nGoogle Cloud storage services\n-----------------------------\n\nFor App Engine apps running in the standard environment, we recommend\none of the following Google Cloud storage services:\n\n- [Firestore in Datastore mode](/appengine/docs/standard/using-firestore-in-datastore-mode) to store data in a NoSQL database.\n- [Cloud SQL for MySQL](/sql/docs/mysql/connect-app-engine-standard) to store data in a MySQL database.\n- [Cloud SQL for PostgreSQL](/sql/docs/postgres/connect-app-engine-standard) to store data in a PostgreSQL database.\n- [Cloud Storage](/appengine/docs/standard/using-cloud-storage) to read and write files in the runtime environment, as well as [store and serve static files](/appengine/docs/standard/serving-static-files), such as movies or images or other static content.\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\nSetting up [Cloud VPN](/network-connectivity/docs/vpn) allows your App Engine\napp to access your on-premises network without directly exposing the\ndatabase server to the public internet. Because App Engine and\nCompute Engine use the same networking infrastructure, you can use the VPN\nconnection to establish a connection between the App Engine app\nand your on-premises database using the database server's internal IP address.\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."]]