Google Cloud Datastore Admin API.
The Datastore Admin API provides several admin services for Cloud Datastore.
Concepts: Project, namespace, kind, and entity as defined in the Google Cloud Datastore API.
Operation: An Operation represents work being performed in the background.
EntityFilter: Allows specifying a subset of entities in a project. This is specified as a combination of kinds and namespaces (either or both of which may be all).
Export/Import Service:
- The Export/Import service provides the ability to copy all or a subset of entities to/from Google Cloud Storage.
- Exported data may be imported into Cloud Datastore for any Google Cloud Platform project. It is not restricted to the export source project. It is possible to export from one project and then import into another.
- Exported data can also be loaded into Google BigQuery for analysis.
- Exports and imports are performed asynchronously. An Operation resource is created for each export/import. The state (including any errors encountered) of the export/import may be queried via the Operation resource.
Index Service:
- The index service manages Cloud Datastore composite indexes.
- Index creation and deletion are performed asynchronously. An Operation resource is created for each such asynchronous operation. The state of the operation (including any errors encountered) may be queried via the Operation resource.
Operation Service:
- The Operations collection provides a record of actions performed for the specified project (including any operations in progress). Operations are not created directly but through calls on other collections or resources.
- An operation that is not yet done may be cancelled. The request to cancel is asynchronous and the operation may continue to run for some time after the request to cancel is made.
- An operation that is done may be deleted so that it is no longer listed as part of the Operation collection.
- ListOperations returns all pending operations, but not completed operations.
- Operations are created by service DatastoreAdmin, but are accessed via service google.longrunning.Operations.
Equality
Instances of this class created via copy-construction or copy-assignment always compare equal. Instances created with equal std::shared_ptr<*Connection>
objects compare equal. Objects that compare equal share the same underlying resources.
Performance
Creating a new instance of this class is a relatively expensive operation, new objects establish new connections to the service. In contrast, copy-construction, move-construction, and the corresponding assignment operations are relatively efficient as the copies share all underlying resources.
Thread Safety
Concurrent access to different instances of this class, even if they compare equal, is guaranteed to work. Two or more threads operating on the same instance of this class is not guaranteed to work. Since copy-construction and move-construction is a relatively efficient operation, consider using such a copy when using this class from multiple threads.
Constructors
DatastoreAdminClient(DatastoreAdminClient const &)
Copy and move support
Parameter | |
---|---|
Name | Description |
|
DatastoreAdminClient const &
|
DatastoreAdminClient(DatastoreAdminClient &&)
Copy and move support
Parameter | |
---|---|
Name | Description |
|
DatastoreAdminClient &&
|
DatastoreAdminClient(std::shared_ptr< DatastoreAdminConnection >, Options)
Parameters | |
---|---|
Name | Description |
connection |
std::shared_ptr< DatastoreAdminConnection >
|
opts |
Options
|
Operators
operator=(DatastoreAdminClient const &)
Copy and move support
Parameter | |
---|---|
Name | Description |
|
DatastoreAdminClient const &
|
Returns | |
---|---|
Type | Description |
DatastoreAdminClient & |
operator=(DatastoreAdminClient &&)
Copy and move support
Parameter | |
---|---|
Name | Description |
|
DatastoreAdminClient &&
|
Returns | |
---|---|
Type | Description |
DatastoreAdminClient & |
Functions
ExportEntities(std::string const &, std::map< std::string, std::string > const &, google::datastore::admin::v1::EntityFilter const &, std::string const &, Options)
Exports a copy of all or a subset of entities from Google Cloud Datastore to another storage system, such as Google Cloud Storage.
Recent updates to entities may not be reflected in the export. The export occurs in the background and its progress can be monitored and managed via the Operation resource that is created. The output of an export may only be used once the associated operation is done. If an export operation is cancelled before completion it may leave partial data behind in Google Cloud Storage.
Parameters | |
---|---|
Name | Description |
project_id |
std::string const &
Required. Project ID against which to make the request. |
labels |
std::map< std::string, std::string > const &
Client-assigned labels. |
entity_filter |
google::datastore::admin::v1::EntityFilter const &
Description of what data from the project is included in the export. |
output_url_prefix |
std::string const &
Required. Location for the export metadata and data files. |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::datastore::admin::v1::ExportEntitiesResponse > > |
A |
ExportEntities(google::datastore::admin::v1::ExportEntitiesRequest const &, Options)
Exports a copy of all or a subset of entities from Google Cloud Datastore to another storage system, such as Google Cloud Storage.
Recent updates to entities may not be reflected in the export. The export occurs in the background and its progress can be monitored and managed via the Operation resource that is created. The output of an export may only be used once the associated operation is done. If an export operation is cancelled before completion it may leave partial data behind in Google Cloud Storage.
Parameters | |
---|---|
Name | Description |
request |
google::datastore::admin::v1::ExportEntitiesRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::datastore::admin::v1::ExportEntitiesResponse > > |
A |
ImportEntities(std::string const &, std::map< std::string, std::string > const &, std::string const &, google::datastore::admin::v1::EntityFilter const &, Options)
Imports entities into Google Cloud Datastore.
Existing entities with the same key are overwritten. The import occurs in the background and its progress can be monitored and managed via the Operation resource that is created. If an ImportEntities operation is cancelled, it is possible that a subset of the data has already been imported to Cloud Datastore.
Parameters | |
---|---|
Name | Description |
project_id |
std::string const &
Required. Project ID against which to make the request. |
labels |
std::map< std::string, std::string > const &
Client-assigned labels. |
input_url |
std::string const &
Required. The full resource URL of the external storage location. Currently, only Google Cloud Storage is supported. So input_url should be of the form: |
entity_filter |
google::datastore::admin::v1::EntityFilter const &
Optionally specify which kinds/namespaces are to be imported. If provided, the list must be a subset of the EntityFilter used in creating the export, otherwise a FAILED_PRECONDITION error will be returned. If no filter is specified then all entities from the export are imported. |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::datastore::admin::v1::ImportEntitiesMetadata > > |
A |
ImportEntities(google::datastore::admin::v1::ImportEntitiesRequest const &, Options)
Imports entities into Google Cloud Datastore.
Existing entities with the same key are overwritten. The import occurs in the background and its progress can be monitored and managed via the Operation resource that is created. If an ImportEntities operation is cancelled, it is possible that a subset of the data has already been imported to Cloud Datastore.
Parameters | |
---|---|
Name | Description |
request |
google::datastore::admin::v1::ImportEntitiesRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::datastore::admin::v1::ImportEntitiesMetadata > > |
A |
CreateIndex(google::datastore::admin::v1::CreateIndexRequest const &, Options)
Creates the specified index.
A newly created index's initial state is CREATING
. On completion of the returned google.longrunning.Operation, the state will be READY
. If the index already exists, the call will return an ALREADY_EXISTS
status.
During index creation, the process could result in an error, in which case the index will move to the ERROR
state. The process can be recovered by fixing the data that caused the error, removing the index with delete, then re-creating the index with [create] [google.datastore.admin.v1.DatastoreAdmin.CreateIndex].
Indexes with a single property cannot be created.
Parameters | |
---|---|
Name | Description |
request |
google::datastore::admin::v1::CreateIndexRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::datastore::admin::v1::Index > > |
A |
DeleteIndex(google::datastore::admin::v1::DeleteIndexRequest const &, Options)
Deletes an existing index.
An index can only be deleted if it is in a READY
or ERROR
state. On successful execution of the request, the index will be in a DELETING
state. And on completion of the returned google.longrunning.Operation, the index will be removed.
During index deletion, the process could result in an error, in which case the index will move to the ERROR
state. The process can be recovered by fixing the data that caused the error, followed by calling delete again.
Parameters | |
---|---|
Name | Description |
request |
google::datastore::admin::v1::DeleteIndexRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::datastore::admin::v1::Index > > |
A |
GetIndex(google::datastore::admin::v1::GetIndexRequest const &, Options)
Gets an index.
Parameters | |
---|---|
Name | Description |
request |
google::datastore::admin::v1::GetIndexRequest const &
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StatusOr< google::datastore::admin::v1::Index > |
the result of the RPC. The response message type (google.datastore.admin.v1.Index) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the |
ListIndexes(google::datastore::admin::v1::ListIndexesRequest, Options)
Lists the indexes that match the specified filters.
Datastore uses an eventually consistent query to fetch the list of indexes and may occasionally return stale results.
Parameters | |
---|---|
Name | Description |
request |
google::datastore::admin::v1::ListIndexesRequest
Unary RPCs, such as the one wrapped by this function, receive a single |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StreamRange< google::datastore::admin::v1::Index > |
a StreamRange to iterate of the results. See the documentation of this type for details. In brief, this class has |