Paquete com.google.appengine.api.datastore

El almacén de datos proporciona almacenamiento permanente para aplicaciones App Engine, utilizadas tanto directamente como a través de las interfaces JDO o JPA proporcionadas.

Consulta:
          Descripción

Resumen de interfaz
DatastoreConfig Propiedades del almacén de datos que puede configurar el usuario.
DatastoreService El servicio de almacén de datos (DatastoreService) otorga acceso a un sistema de almacenamiento de datos sin esquema.
PreparedQuery Contiene métodos para extraer y devolver entidades a partir de Query.
Transaction Describe una unidad lógica de trabajo que se va a llevar a cabo conforme al almacén de datos.
 

Resumen de clase
Blob Blob contiene un conjunto de bytes de tamaño ilimitado.
DatastoreServiceFactory Crea implementaciones del servicio DatastoreService.
DataTypeTranslator DataTypeTranslator es una clase de utilidad para realizar conversiones entre los búfer de protocolo Property del almacén de datos y las clases generadas por el usuario (String, User, etc.).
DataTypeTranslator.ComparableByteArray Un envoltorio para un byte byte[] que implementa Comparable.
DataTypeUtils DataTypeUtils presenta una interfaz más sencilla que permite al código de usuario determinar las clases que se pueden almacenar de forma segura como propiedades en el almacén de datos.
Entity La entidad Entity es la unidad fundamental del almacenamiento de datos.
EntityTranslator EntityTranslator contiene la lógica para traducir una entidad Entity en los búfers de protocolo que se utilizan para transmitirla a la implementación del API.
FetchOptions Describe el límite, la desviación y el tamaño de fragmento que se van a aplicar al ejecutar PreparedQuery.
FetchOptions.Builder Contiene métodos de creación estáticos para FetchOptions.
Key La clave principal de una entidad del almacén de datos.
KeyFactory Permite crear objetos Key arbitrarios en el grupo del grupo de la entidad raíz (no entidad principal).
KeyFactory.Builder Clase de ayuda que asiste en la construcción de claves Keys con ancestros.
Link Un enlace Link es una URL de una longitud limitada.
Query Query incluye una solicitud de cero o más objetos Entity del almacén de datos.
Query.FilterPredicate FilterPredicate es un contenedor de datos que aloja un predicado de filtro único.
Query.SortPredicate SortPredicate es un contenedor de datos que aloja un predicado de orden único.
ShortBlob ShortBlob contiene un conjunto de bytes inferior a DataTypeUtils.MAX_SHORT_BLOB_PROPERTY_LENGTH.
Text Text envuelve una cadena de tamaño ilimitado.
 

Resumen de enumeración
ImplicitTransactionManagementPolicy Describe las diversas políticas que el almacén de datos puede seguir para la administración de transacciones implícita.
Query.FilterOperator FilterOperator especifica el tipo de operación que desees aplicar a tu filtro.
Query.SortDirection SortDirection controla el orden de una clasificación.
 

Resumen de excepción
DatastoreFailureException DatastoreFailureException se genera cuando se produce algún error desconocido al intentar establecer comunicación con el almacén de datos.
DatastoreNeedIndexException DatastoreNeedIndexException se genera cuando no se encuentra ningún índice coincidente para una consulta que requiere un índice.
DatastoreTimeoutException La excepciónDatastoreTimeoutException se genera cuando una operación del almacén de datos sobrepasa el tiempo límite.
EntityNotFoundException La excepción EntityNotFoundException se genera cuando no se ha podido encontrar ninguna entidad Entity con la clave Key especificada.
PreparedQuery.TooManyResultsException Indica que se han encontrado demasiados resultados para PreparedQuery.asSingleEntity().
 

Paquete com.google.appengine.api.datastore Descripción

El almacén de datos proporciona almacenamiento permanente para aplicaciones App Engine, utilizadas tanto directamente como a través de las interfaces JDO o JPA proporcionadas. Proporciona almacenamiento innecesario para la tolerancia de errores. Dispones de más información en la documentación online.

Este paquete contiene un API de nivel inferior para el almacén de datos que está destinada principalmente a autores de frameworks. Los autores de aplicaciones deberían considerar el uso de las interfaces JDO o JPA proporcionadas para el almacén de datos. En caso de utilizar el API del almacén de datos de forma directa, a continuación se indica un patrón de uso habitual.

 // Get a handle on the datastore itself
 DatastoreService datastore = DatastoreServiceFactory.getDatastoreService();

 // Lookup data by known key name
 Entity userEntity = datastore.get(KeyFactory.createKey("UserInfo", email));

 // Or perform a query
 Query query = new Query("Task", userEntity);
 query.addFilter("dueDate", Query.FilterOperator.LESS_THAN, today);
 for (Entity taskEntity : datastore.prepare(query).asIterable()) {
   if ("done".equals(taskEntity.getProperty("status"))) {
     datastore.delete(taskEntity);
   } else {
     taskEntity.setProperty("status", "overdue");
     datastore.put(taskEntity);
   }
 }
 
Esto ilustra diversos puntos básicos:

Durante la producción, las consultas no triviales no se pueden llevar a cabo hasta que se han generado uno o más índices para garantizar que las consultas individuales se pueden procesar de forma eficaz. Puedes especificar el conjunto de índices que requiere tu aplicación en un archivo WEB-INF/datastore-indexes.xml o pueden generarse de forma automática mientras compruebas tu aplicación en el servidor de desarrollo. Si una consulta requiere un índice que no se ha podido encontrar, se generará una excepción DatastoreNeedIndexException durante la ejecución.

Aunque Google App Engine permite que se pueda acceder a muchas versiones de tu aplicación, sólo existe un almacén de datos para tu aplicación, que comparten todas las versiones. De forma similar, todas las versiones de la aplicación comparten el conjunto de índices.