# Storing Data - Google App Engine - Google Code

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 Java. For details of the other storage options, see the documentation for Cloud SQL and Cloud Storage.

## The Datastore Java API

The App Engine datastore is a schemaless object datastore, with a query engine and atomic transactions. The Java SDK includes implementations of the Java Data Objects (JDO) and Java Persistence API (JPA) interfaces, as well as a low-level datastore API.

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 Java interfaces for the App Engine datastore, with an emphasis on JDO. It has the following sections:

- Overview
- Entities
- Queries
- Transactions
- Choosing a Datastore
- Using the High Replication Datastore
- Metadata Queries
- Statistics
- Async API
- Callbacks
- JDO
  - Overview
  - Defining Data Classes with JDO
  - Creating, Getting, and Deleting Data in JDO
  - Entity Relationships in JDO
  - Queries in JDO
- JPA
  - Overview
- Google Cloud Storage
  - Overview
  - API Reference

- Javadoc Reference