Cloud Spanner Client - Class Backup (2.0.1-RC1)

Reference documentation and code samples for the Cloud Spanner Client class Backup.

Represents a Cloud Spanner Backup.

Example:

use Google\Cloud\Spanner\SpannerClient;

$spanner = new SpannerClient(['projectId' => 'my-project']);

$backup = $spanner->instance('my-instance')->backup('my-backup');

Namespace

Google \ Cloud \ Spanner

Methods

__construct

Create an object representing a Backup.

Parameters
Name Description
databaseAdminClient Admin\Database\V1\Client\DatabaseAdminClient

The database admin client to make backup RPC calls.

serializer Serializer

The serializer instance to encode/decode messages.

instance Instance

The instance in which the backup exists.

projectId string

The project ID.

name string

The backup name or ID.

options array

[Optional] { Backup options.

@type array $backup The backup info.

}

create

Create a Cloud Spanner backup for a database.

Example:

$operation = $backup->create('my-database', new \DateTime('+7 hours'));
Parameters
Name Description
database string

The name or id of the database that this backup is for.

expireTime DateTimeInterface

​The expiration time of the backup, with microseconds granularity that must be at least 6 hours and at most 366 days. Once the expireTime has passed, the backup is eligible to be automatically deleted by Cloud Spanner.

options array

Configuration Options.

↳ versionTime DateTimeInterface

The version time for the externally consistent copy of the database. If not present, it will be the same as the create time of the backup.

Returns
Type Description
Google\Cloud\Core\LongRunning\LongRunningOperation

createCopy

Create a copy of an existing backup in Cloud Spanner.

Example:

$sourceInstance = $spanner->instance('source-instance-id');
$destInstance = $spanner->instance('destination-instance-id');
$sourceBackup = $sourceInstance->backup('source-backup-id');
$destBackup = $destInstance->backup('new-backup-id');

$operation = $sourceBackup->createCopy($destBackup, new \DateTime('+7 hours'));
Parameters
Name Description
newBackup Backup

The backup object that needs to be created as a copy.

expireTime DateTimeInterface

The expiration time of the backup, with microseconds granularity that must be at least 6 hours and at most 366 days. Once the expireTime has passed, the backup is eligible to be automatically deleted by Cloud Spanner.

options array

Configuration Options.

Returns
Type Description
Google\Cloud\Core\LongRunning\LongRunningOperation

delete

Marks this backup for deletion.

Example:

$backup->delete();
Parameter
Name Description
options array

[optional] Configuration options.

Returns
Type Description
void

exists

Tests whether this backup exists.

This method sends a service call.

Example:

if ($backup->exists()) {
    echo 'Backup exists!';
}
Parameter
Name Description
options array

[optional] Configuration options.

Returns
Type Description
bool

info

Get info of a Cloud Spanner backup from cache or request.

Example:

$info = $backup->info();
Parameter
Name Description
options array

[optional] Configuration options.

Returns
Type Description
array

name

Return the backup name.

Example:

$name = $backup->name();
Returns
Type Description
string

reload

Reload the backup info from the Cloud Spanner API.

Example:

$info = $backup->reload();
Parameter
Name Description
options array

[optional] Configuration options.

Returns
Type Description
array

state

Return the backup state.

When backups are created, they may take some time before they are ready for use. This method allows for checking whether a backup is ready. Note that this value is cached within the class instance, so if you are polling it, first call Backup::reload() to refresh the cached value.

Example:

use Google\Cloud\Spanner\Backup;

if ($backup->state() === Backup::STATE_READY) {
    echo 'Backup is ready!';
}
Parameter
Name Description
options array

[optional] Configuration options.

Returns
Type Description
int|null

updateExpireTime

Update the expire time of this backup.

Example:

$info = $backup->updateExpireTime(new \DateTime("+ 7 hours"));
Parameters
Name Description
newTimestamp DateTimeInterface

New expire time.

options array

[optional] Configuration options.

Returns
Type Description
array

resumeOperation

Resume a Long Running Operation

Example:

$operation = $backup->resumeOperation($operationName);
Parameters
Name Description
operationName string

The Long Running Operation name.

options array
Returns
Type Description
Google\Cloud\Core\LongRunning\LongRunningOperation

longRunningOperations

List long running operations.

Example:

$operations = $backup->longRunningOperations();
Parameters
Name Description
options array

Configuration Options.

↳ name string

The name of the operation collection.

↳ filter string

The standard list filter.

↳ pageSize int

Maximum number of results to return per request.

↳ resultLimit int

Limit the number of results returned in total. Defaults to 0 (return all results).

↳ pageToken string

A previously-returned page token used to resume the loading of results from a specific point.

Returns
Type Description
Google\Cloud\Core\Iterator\ItemIterator<Google\Cloud\Core\LongRunning\LongRunningOperation>

Constants

STATE_READY

Value: \Google\Cloud\Spanner\Admin\Database\V1\Backup\State::READY

STATE_CREATING

Value: \Google\Cloud\Spanner\Admin\Database\V1\Backup\State::CREATING