Configures and manages Cloud Memorystore for Redis instances.
Google Cloud Memorystore for Redis v1
The redis.googleapis.com
service implements the Google Cloud Memorystore for Redis API and defines the following resource model for managing Redis instances:
- The service works with a collection of cloud projects, named:
/projects/*
- Each project has a collection of available locations, named:
/locations/*
- Each location has a collection of Redis instances, named:
/instances/*
- As such, Redis instances are resources of the form:
/projects/{project_id}/locations/{location_id}/instances/{instance_id}
Note that location_id must be referring to a GCP region
; for example:
projects/redpepper-1290/locations/us-central1/instances/my-redis
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
CloudRedisClient(CloudRedisClient const &)
Copy and move support
Parameter | |
---|---|
Name | Description |
|
CloudRedisClient const &
|
CloudRedisClient(CloudRedisClient &&)
Copy and move support
Parameter | |
---|---|
Name | Description |
|
CloudRedisClient &&
|
CloudRedisClient(std::shared_ptr< CloudRedisConnection >, Options)
Parameters | |
---|---|
Name | Description |
connection |
std::shared_ptr< CloudRedisConnection >
|
opts |
Options
|
Operators
operator=(CloudRedisClient const &)
Copy and move support
Parameter | |
---|---|
Name | Description |
|
CloudRedisClient const &
|
Returns | |
---|---|
Type | Description |
CloudRedisClient & |
operator=(CloudRedisClient &&)
Copy and move support
Parameter | |
---|---|
Name | Description |
|
CloudRedisClient &&
|
Returns | |
---|---|
Type | Description |
CloudRedisClient & |
Functions
ListInstances(std::string const &, Options)
Lists all Redis instances owned by a project in either the specified location (region) or all locations.
The location should have the following format:
projects/{project_id}/locations/{location_id}
If location_id
is specified as -
(wildcard), then all regions available to the project are queried, and the results are aggregated.
Parameters | |
---|---|
Name | Description |
parent |
std::string const &
Required. The resource name of the instance location using the form: |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StreamRange< google::cloud::redis::v1::Instance > |
a StreamRange to iterate of the results. See the documentation of this type for details. In brief, this class has |
ListInstances(google::cloud::redis::v1::ListInstancesRequest, Options)
Lists all Redis instances owned by a project in either the specified location (region) or all locations.
The location should have the following format:
projects/{project_id}/locations/{location_id}
If location_id
is specified as -
(wildcard), then all regions available to the project are queried, and the results are aggregated.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::redis::v1::ListInstancesRequest
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::cloud::redis::v1::Instance > |
a StreamRange to iterate of the results. See the documentation of this type for details. In brief, this class has |
GetInstance(std::string const &, Options)
Gets the details of a specific Redis instance.
Parameters | |
---|---|
Name | Description |
name |
std::string const &
Required. Redis instance resource name using the form: |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StatusOr< google::cloud::redis::v1::Instance > |
the result of the RPC. The response message type (google.cloud.redis.v1.Instance) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the |
GetInstance(google::cloud::redis::v1::GetInstanceRequest const &, Options)
Gets the details of a specific Redis instance.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::redis::v1::GetInstanceRequest 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::cloud::redis::v1::Instance > |
the result of the RPC. The response message type (google.cloud.redis.v1.Instance) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the |
GetInstanceAuthString(std::string const &, Options)
Gets the AUTH string for a Redis instance.
If AUTH is not enabled for the instance the response will be empty. This information is not included in the details returned to GetInstance.
Parameters | |
---|---|
Name | Description |
name |
std::string const &
Required. Redis instance resource name using the form: |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
StatusOr< google::cloud::redis::v1::InstanceAuthString > |
the result of the RPC. The response message type (google.cloud.redis.v1.InstanceAuthString) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the |
GetInstanceAuthString(google::cloud::redis::v1::GetInstanceAuthStringRequest const &, Options)
Gets the AUTH string for a Redis instance.
If AUTH is not enabled for the instance the response will be empty. This information is not included in the details returned to GetInstance.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::redis::v1::GetInstanceAuthStringRequest 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::cloud::redis::v1::InstanceAuthString > |
the result of the RPC. The response message type (google.cloud.redis.v1.InstanceAuthString) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the |
CreateInstance(std::string const &, std::string const &, google::cloud::redis::v1::Instance const &, Options)
Creates a Redis instance based on the specified tier and memory size.
By default, the instance is accessible from the project's default network.
The creation is executed asynchronously and callers may check the returned operation to track its progress. Once the operation is completed the Redis instance will be fully functional. Completed longrunning.Operation will contain the new instance object in the response field.
The returned operation is automatically deleted after a few hours, so there is no need to call DeleteOperation.
Parameters | |
---|---|
Name | Description |
parent |
std::string const &
Required. The resource name of the instance location using the form: |
instance_id |
std::string const &
Required. The logical name of the Redis instance in the customer project with the following restrictions:
|
instance |
google::cloud::redis::v1::Instance const &
Required. A Redis [Instance] resource |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::redis::v1::Instance > > |
A |
CreateInstance(google::cloud::redis::v1::CreateInstanceRequest const &, Options)
Creates a Redis instance based on the specified tier and memory size.
By default, the instance is accessible from the project's default network.
The creation is executed asynchronously and callers may check the returned operation to track its progress. Once the operation is completed the Redis instance will be fully functional. Completed longrunning.Operation will contain the new instance object in the response field.
The returned operation is automatically deleted after a few hours, so there is no need to call DeleteOperation.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::redis::v1::CreateInstanceRequest 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::cloud::redis::v1::Instance > > |
A |
UpdateInstance(google::protobuf::FieldMask const &, google::cloud::redis::v1::Instance const &, Options)
Updates the metadata and configuration of a specific Redis instance.
Completed longrunning.Operation will contain the new instance object in the response field. The returned operation is automatically deleted after a few hours, so there is no need to call DeleteOperation.
Parameters | |
---|---|
Name | Description |
update_mask |
google::protobuf::FieldMask const &
Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from Instance:
|
instance |
google::cloud::redis::v1::Instance const &
Required. Update description. Only fields specified in update_mask are updated. |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::redis::v1::Instance > > |
A |
UpdateInstance(google::cloud::redis::v1::UpdateInstanceRequest const &, Options)
Updates the metadata and configuration of a specific Redis instance.
Completed longrunning.Operation will contain the new instance object in the response field. The returned operation is automatically deleted after a few hours, so there is no need to call DeleteOperation.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::redis::v1::UpdateInstanceRequest 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::cloud::redis::v1::Instance > > |
A |
UpgradeInstance(std::string const &, std::string const &, Options)
Upgrades Redis instance to the newer Redis version specified in the request.
Parameters | |
---|---|
Name | Description |
name |
std::string const &
Required. Redis instance resource name using the form: |
redis_version |
std::string const &
Required. Specifies the target version of Redis software to upgrade to. |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::redis::v1::Instance > > |
A |
UpgradeInstance(google::cloud::redis::v1::UpgradeInstanceRequest const &, Options)
Upgrades Redis instance to the newer Redis version specified in the request.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::redis::v1::UpgradeInstanceRequest 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::cloud::redis::v1::Instance > > |
A |
ImportInstance(std::string const &, google::cloud::redis::v1::InputConfig const &, Options)
Import a Redis RDB snapshot file from Cloud Storage into a Redis instance.
Redis may stop serving during this operation. Instance state will be IMPORTING for entire operation. When complete, the instance will contain only data from the imported file.
The returned operation is automatically deleted after a few hours, so there is no need to call DeleteOperation.
Parameters | |
---|---|
Name | Description |
name |
std::string const &
Required. Redis instance resource name using the form: |
input_config |
google::cloud::redis::v1::InputConfig const &
Required. Specify data to be imported. |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::redis::v1::Instance > > |
A |
ImportInstance(google::cloud::redis::v1::ImportInstanceRequest const &, Options)
Import a Redis RDB snapshot file from Cloud Storage into a Redis instance.
Redis may stop serving during this operation. Instance state will be IMPORTING for entire operation. When complete, the instance will contain only data from the imported file.
The returned operation is automatically deleted after a few hours, so there is no need to call DeleteOperation.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::redis::v1::ImportInstanceRequest 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::cloud::redis::v1::Instance > > |
A |
ExportInstance(std::string const &, google::cloud::redis::v1::OutputConfig const &, Options)
Export Redis instance data into a Redis RDB format file in Cloud Storage.
Redis will continue serving during this operation.
The returned operation is automatically deleted after a few hours, so there is no need to call DeleteOperation.
Parameters | |
---|---|
Name | Description |
name |
std::string const &
Required. Redis instance resource name using the form: |
output_config |
google::cloud::redis::v1::OutputConfig const &
Required. Specify data to be exported. |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::redis::v1::Instance > > |
A |
ExportInstance(google::cloud::redis::v1::ExportInstanceRequest const &, Options)
Export Redis instance data into a Redis RDB format file in Cloud Storage.
Redis will continue serving during this operation.
The returned operation is automatically deleted after a few hours, so there is no need to call DeleteOperation.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::redis::v1::ExportInstanceRequest 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::cloud::redis::v1::Instance > > |
A |
FailoverInstance(std::string const &, google::cloud::redis::v1::FailoverInstanceRequest::DataProtectionMode, Options)
Initiates a failover of the primary node to current replica node for a specific STANDARD tier Cloud Memorystore for Redis instance.
Parameters | |
---|---|
Name | Description |
name |
std::string const &
Required. Redis instance resource name using the form: |
data_protection_mode |
google::cloud::redis::v1::FailoverInstanceRequest::DataProtectionMode
Optional. Available data protection modes that the user can choose. If it's unspecified, data protection mode will be LIMITED_DATA_LOSS by default. |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::redis::v1::Instance > > |
A |
FailoverInstance(google::cloud::redis::v1::FailoverInstanceRequest const &, Options)
Initiates a failover of the primary node to current replica node for a specific STANDARD tier Cloud Memorystore for Redis instance.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::redis::v1::FailoverInstanceRequest 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::cloud::redis::v1::Instance > > |
A |
DeleteInstance(std::string const &, Options)
Deletes a specific Redis instance.
Instance stops serving and data is deleted.
Parameters | |
---|---|
Name | Description |
name |
std::string const &
Required. Redis instance resource name using the form: |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::redis::v1::OperationMetadata > > |
A |
DeleteInstance(google::cloud::redis::v1::DeleteInstanceRequest const &, Options)
Deletes a specific Redis instance.
Instance stops serving and data is deleted.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::redis::v1::DeleteInstanceRequest 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::cloud::redis::v1::OperationMetadata > > |
A |
RescheduleMaintenance(std::string const &, google::cloud::redis::v1::RescheduleMaintenanceRequest::RescheduleType, google::protobuf::Timestamp const &, Options)
Reschedule maintenance for a given instance in a given project and location.
Parameters | |
---|---|
Name | Description |
name |
std::string const &
Required. Redis instance resource name using the form: |
reschedule_type |
google::cloud::redis::v1::RescheduleMaintenanceRequest::RescheduleType
Required. If reschedule type is SPECIFIC_TIME, must set up schedule_time as well. |
schedule_time |
google::protobuf::Timestamp const &
Optional. Timestamp when the maintenance shall be rescheduled to if reschedule_type=SPECIFIC_TIME, in RFC 3339 format, for example |
opts |
Options
Optional. Override the class-level options, such as retry and backoff policies. |
Returns | |
---|---|
Type | Description |
future< StatusOr< google::cloud::redis::v1::Instance > > |
A |
RescheduleMaintenance(google::cloud::redis::v1::RescheduleMaintenanceRequest const &, Options)
Reschedule maintenance for a given instance in a given project and location.
Parameters | |
---|---|
Name | Description |
request |
google::cloud::redis::v1::RescheduleMaintenanceRequest 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::cloud::redis::v1::Instance > > |
A |