Backup(
backup_id,
instance,
cluster_id=None,
table_id=None,
expire_time=None,
encryption_info=None,
)
Representation of a Google Cloud Bigtable Backup.
A :class: Backup
can be used to:
create
the backupupdate
the backupdelete
the backup
Parameters
Name | Description |
backup_id |
str
The ID of the backup. |
instance |
Instance
The Instance that owns this Backup. |
cluster_id |
str
(Optional) The ID of the Cluster that contains this Backup. Required for calling 'delete', 'exists' etc. methods. |
table_id |
str
(Optional) The ID of the Table that the Backup is for. Required if the 'create' method will be called. |
expire_time |
`datetime.datetime`
(Optional) The expiration time after which the Backup will be automatically deleted. Required if the |
Inheritance
builtins.object > BackupProperties
cluster
The ID of the [parent] cluster used in requests.
Type | Description |
str | The ID of the cluster containing the Backup. |
encryption_info
Encryption info for this Backup.
Type | Description |
EncryptionInfo | The encryption information for this backup. |
end_time
The time this Backup was finished.
Type | Description |
`datetime.datetime` | A 'datetime' object representing the time when the creation of this Backup was finished. |
expire_time
Expiration time used in the creation requests.
Type | Description |
`datetime.datetime` | A 'datetime' object representing the expiration time of this Backup. |
name
Backup name used in requests.
The Backup name is of the form
``"projects/../instances/../clusters/../backups/{backup_id}"``
Type | Description |
ValueError | If the 'cluster' has not been set. |
Type | Description |
str | The Backup name. |
parent
Name of the parent cluster used in requests.
The parent name is of the form
``"projects/{project}/instances/{instance_id}/clusters/{cluster}"``
Type | Description |
str | A full path to the parent cluster. |
size_bytes
The size of this Backup, in bytes.
Type | Description |
int | The size of this Backup, in bytes. |
source_table
The full name of the Table from which this Backup is created.
The table name is of the form
``"projects/../instances/../tables/{source_table}"``
Type | Description |
str | The Table name. |
start_time
The time this Backup was started.
Type | Description |
`datetime.datetime` | A 'datetime' object representing the time when the creation of this Backup had started. |
state
The current state of this Backup.
Type | Description |
State | The current state of this Backup. |
Methods
create
create(cluster_id=None)
Creates this backup within its instance.
Name | Description |
cluster_id |
str
(Optional) The ID of the Cluster for the newly created Backup. |
Type | Description |
Conflict | if the Backup already exists |
NotFound | if the Instance owning the Backup does not exist |
BadRequest | if the `table` or `expire_time` values are invalid, or `expire_time` is not set |
Type | Description |
`google.api_core.operation.Operation` | _OperationFuture instance, to be used to poll the status of the 'create' request |
delete
delete()
Delete this Backup.
exists
exists()
Tests whether this Backup exists.
Type | Description |
bool | True if the Backup exists, else False. |
from_pb
from_pb(backup_pb, instance)
Creates a Backup instance from a protobuf message.
Name | Description |
backup_pb |
`table.Backup`
A Backup protobuf object. |
instance |
Instance
The Instance that owns the Backup. |
Type | Description |
ValueError | If the backup name does not match the expected format or the parsed project ID does not match the project ID on the Instance's client, or if the parsed instance ID does not match the Instance ID. |
Type | Description |
Backup | The backup parsed from the protobuf response. |
get
get()
Retrieves metadata of a pending or completed Backup.
Type | Description |
google.api_core.exceptions.GoogleAPICallError | If the request failed for any reason. |
google.api_core.exceptions.RetryError | If the request failed due to a retryable error and retry attempts failed. |
ValueError | If the parameters are invalid. |
get_iam_policy
get_iam_policy()
Gets the IAM access control policy for this backup.
Type | Description |
Policy | The current IAM policy of this backup. |
reload
reload()
Refreshes the stored backup properties.
restore
restore(table_id, instance_id=None)
Creates a new Table by restoring from this Backup. The new Table
can be created in the same Instance as the Instance containing the
Backup, or another Instance whose ID can be specified in the arguments.
The returned Table long-running operation
can be used to track the
progress of the operation and to cancel it. The response
type is
Table
, if successful.
Name | Description |
table_id |
str
The ID of the Table to create and restore to. This Table must not already exist. |
instance_id |
str
(Optional) The ID of the Instance to restore the backup into, if different from the current one. |
Type | Description |
google.api_core.exceptions.AlreadyExists | If the table already exists. |
google.api_core.exceptions.GoogleAPICallError | If the request failed for any reason. |
google.api_core.exceptions.RetryError | If the request failed due to a retryable error and retry attempts failed. |
ValueError | If the parameters are invalid. |
Type | Description |
_OperationFuture | A future to be used to poll the status of the 'restore' request. |
set_iam_policy
set_iam_policy(policy)
Sets the IAM access control policy for this backup. Replaces any existing policy.
For more information about policy, please see documentation of
class google.cloud.bigtable.policy.Policy
Name | Description |
policy |
Policy
A new IAM policy to replace the current IAM policy of this backup. |
Type | Description |
Policy | The current IAM policy of this backup. |
test_iam_permissions
test_iam_permissions(permissions)
Tests whether the caller has the given permissions for this backup. Returns the permissions that the caller has.
Name | Description |
permissions |
list
The set of permissions to check for the |
Type | Description |
list | A List(string) of permissions allowed on the backup. |
update_expire_time
update_expire_time(new_expire_time)
Update the expire time of this Backup.
Name | Description |
new_expire_time |
`datetime.datetime`
the new expiration time timestamp |