Cloud Spanner Client - Class Instance (2.1.0-RC1)

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

Represents a Cloud Spanner instance

Example:

use Google\Cloud\Spanner\SpannerClient;

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

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

Namespace

Google \ Cloud \ Spanner

Methods

__construct

Create an object representing a Cloud Spanner instance.

Parameters
Name Description
spannerClient V1\Client\SpannerClient

The spanner client.

instanceAdminClient Admin\Instance\V1\Client\InstanceAdminClient

The instance admin client.

databaseAdminClient Admin\Database\V1\Client\DatabaseAdminClient

The database admin client.

serializer Serializer

The serializer instance to encode/decode messages.

projectId string

The project ID.

name string

The instance name or ID.

options array

Instance options

↳ directedReadOptions array

Directed read options. V1\DirectedReadOptions If using the replicaSelection::type setting, utilize the constants available in V1\DirectedReadOptions\ReplicaSelection\Type to set a value.

↳ isolationLevel int

The level of Isolation for the transactions executed by this Client's instance. Defaults to IsolationLevel::ISOLATION_LEVEL_UNSPECIFIED

↳ routeToLeader bool

Enable/disable Leader Aware Routing. Defaults to true (enabled).

↳ returnInt64AsObject bool

If true, 64 bit integers will be returned as a Google\Cloud\Core\Int64 object for 32 bit platform compatibility. Defaults to false.

↳ cacheItemPool CacheItemPool
↳ instance array

An array representation of the instance object.

name

Return the instance name.

Example:

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

info

Return the service representation of the instance.

This method may require a service call.

Example:

$info = $instance->info();
echo $info['nodeCount'];
Parameters
Name Description
options array

Configuration options

↳ fieldMask string|string[]

One or a list of Instance fields that should be returned. Eligible values are: name, displayName, endpointUris, labels, config, nodeCount, state. If absent, all fields are returned. Note: This parameter will only apply when service call is required (info values are not present).

Returns
Type Description
array

exists

Check if the instance exists.

This method requires a service call.

Example:

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

[optional] Configuration options.

Returns
Type Description
bool

reload

Parameters
Name Description
options array

Configuration options

↳ fieldMask string|string[]

One or a list of Instance fields that should be returned. Eligible values are: name, displayName, endpointUris, labels, config, nodeCount, state. If absent, all fields are returned.

Returns
Type Description
array

create

Parameters
Name Description
config InstanceConfiguration

The configuration to use

options array

Configuration options

↳ displayName string

Defaults to the value of $name.

↳ nodeCount int

Defaults to 1.

↳ processingUnits int

An alternative measurement to nodeCount that allows smaller increments.

↳ labels array

For more information, see Using labels to organize Google Cloud Platform resources.

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

state

Return the instance state.

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

Example:

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

[optional] Configuration options.

Returns
Type Description
int

update

Parameters
Name Description
options array

Configuration options

↳ displayName string

The descriptive name for this instance as it appears in UIs. Defaults to the value of $name.

↳ nodeCount int

The number of nodes allocated to this instance. Defaults to 1.

↳ processingUnits int

An alternative measurement to nodeCount that allows smaller increments.

↳ labels array

For more information, see Using labels to organize Google Cloud Platform resources.

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

delete

Parameter
Name Description
options array

[optional] Configuration options.

Returns
Type Description
void

createDatabase

Parameters
Name Description
name string

The database name.

options array

Configuration Options

↳ statements array

Additional DDL statements.

↳ protoDescriptors Google\Protobuf\FileDescriptorSet|string

The file descriptor set object to be used in the update, or alternatively, an absolute path to the generated file descriptor set. The descriptor set is only used during DDL statements, such as CREATE PROTO BUNDLE.

↳ sessionPool SessionPoolInterface

A pool used to manage sessions.

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

createDatabaseFromBackup

Create a database from a backup.

Example:

$operation = $instance->createDatabaseFromBackup('my-new-database', $backup);
Parameters
Name Description
name string

The database name.

backup Backup|string

The backup to restore, given as a Backup instance or a string of the form projects/<project>/instances/<instance>/backups/<backup>.

options array

[optional] Configuration options.

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

database

Lazily instantiate a database object

Example:

$database = $instance->database('my-database');

Database role configured on the database object will be applied to the session created by this object.

$database = $instance->database('my-database', ['databaseRole' => 'Reader']);
Parameters
Name Description
name string

The database name

options array

Configuration options.

↳ routeToLeader bool

Enable/disable Leader Aware Routing. Defaults to true (enabled).

↳ defaultQueryOptions array
↳ returnInt64AsObject bool

If true, 64 bit integers will be returned as a Google\Cloud\Core\Int64 object for 32 bit platform compatibility. Defaults to false.

↳ databaseRole string

The user created database role which creates the session.

↳ database array

The database info.

↳ session SessionCache
↳ lock LockInterface
↳ isolationLevel int

The IsolationLevel set for the transaction. Check V1\TransactionOptions\IsolationLevel for more details.

Returns
Type Description
Database

databases

Parameters
Name Description
options array

Configuration options.

↳ 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<Database>

backup

Lazily instantiate a backup object

Example:

$backup = $instance->backup('my-backup');
Parameters
Name Description
name string

The backup name.

backup array
Returns
Type Description
Backup

backups

Parameters
Name Description
options array

Configuration options.

↳ filter string

The standard list filter.

↳ pageSize int

The maximum number of resources contained in the underlying API response. The API may return fewer values in a page, even if there are additional values to be retrieved.

↳ resultLimit int

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

↳ pageToken string

A page token is used to specify a page of values to be returned. If no page token is specified (the default), the first page of values will be returned. Any page token used here must have been generated by a previous call to the API.

Returns
Type Description
Google\Cloud\Core\Iterator\ItemIterator<Backup>

backupOperations

Lists backup operations for the instance.

Example:

$backupOperations = $instance->backupOperations();
Parameters
Name Description
options array

Configuration options.

↳ pageSize int

The maximum number of resources contained in the underlying API response. The API may return fewer values in a page, even if there are additional values to be retrieved.

↳ resultLimit int

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

↳ pageToken string

A page token is used to specify a page of values to be returned. If no page token is specified (the default), the first page of values will be returned. Any page token used here must have been generated by a previous call to the API.

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

databaseOperations

Lists database operations for the instance.

Example:

$databaseOperations = $instance->databaseOperations();
Parameters
Name Description
options array

Configuration options.

↳ pageSize int

The maximum number of resources contained in the underlying API response. The API may return fewer values in a page, even if there are additional values to be retrieved.

↳ resultLimit int

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

↳ pageToken string

A page token is used to specify a page of values to be returned. If no page token is specified (the default), the first page of values will be returned. Any page token used here must have been generated by a previous call to the API.

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

iam

Manage the instance IAM policy

Example:

$iam = $instance->iam();
Returns
Type Description
Google\Cloud\Core\Iam\IamManager

directedReadOptions

Return the directed read options.

Example:

$name = $instance->directedReadOptions();
Returns
Type Description
array

resumeOperation

Resume a Long Running Operation

Example:

$operation = $instance->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 = $instance->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>

__debugInfo

Represent the class in a more readable and digestable fashion.

Constants

STATE_READY

Value: \Google\Cloud\Spanner\Admin\Instance\V1\Instance\State::READY

STATE_CREATING

Value: \Google\Cloud\Spanner\Admin\Instance\V1\Instance\State::CREATING

DEFAULT_NODE_COUNT

Value: 1