English ▼
Skip to page content Skip to main navigation
e.g. "templates" or "datastore"

# Storing Data

The App Engine environment provides a range of options for storing your data:

- App Engine Datastore provides a NoSQL schemaless object datastore, with a query engine and atomic transactions.
- Google Cloud SQL provides a relational SQL database for your App Engine application, based on the familiar MySQL database.
- Google Cloud Storage provides a storage service for objects and files up to terabytes in size.

This section details the API for accessing the App Engine Datastore from Python. For details of the other storage options, see the documentation for Cloud SQL and Storage.

## The Datastore Python API

The App Engine datastore is a schemaless object datastore, with a query engine and atomic transactions. The Python interface includes a rich data modeling API and a SQL-like query language called GQL.

The High Replication datastore provides an even more reliable storage solution with no planned downtime, higher availability of reads and writes, eventual consistency for all queries except ancestor queries, and strong consistency for reads and ancestor queries.

This reference describes the Python API for the App Engine datastore. It has the following sections:

- Datastore Overview
- Entities
- Queries
- Transactions
- Data Modeling
- GQL Reference
- Choosing a Datastore
- Using the High Replication Datastore
- Metadata Queries
- Statistics
- Async API
- Reference
  - Types and Property Classes
  - GQL Reference
  - Model
  - Expando
  - PolyModel
  - Property
  - Query
  - GqlQuery
  - Metadata Entities
  - Key
  - Functions
  - Exceptions
- NDB
  - NDB Overview
  - Entities and Keys
  - Properties
  - Writing Property Subclasses
  - Queries
  - Transactions
  - Administration
  - Asynchronous Operation
  - Caching
  - Reference
    - Context
    - Future
    - Key
    - Model
    - Query
    - PolyModel
    - Metadata
    - functions
- Google Cloud Storage
  - Overview
  - Functions
  - Exceptions