Reference documentation and code samples for the Cloud Spanner Client class QueryPartition.
Represents a Query Partition.
Partitions can be shared with other servers or processes by casting the object to a string, or by calling {@see}.
Note that when reading or querying against a partition, the request MUST be made using the same Batch Snapshot with which the partition was initialized. In practice, this means that a shared partition must be accompanied by its corresponding snapshot. For more information, refer to usage notes on {@see}.
Example:
use Google\Cloud\Spanner\SpannerClient;
$spanner = new SpannerClient();
$batch = $spanner->batch('instance-id', 'database-id');
$snapshot = $batch->snapshot();
$partitions = $snapshot->partitionQuery(
'SELECT * FROM Users WHERE firstName = @firstName AND location = @location',
[
'parameters' => [
'firstName' => 'John',
'location' => 'USA'
]
]
);
// Serialize a partition to share it with another worker.
$partitionString = (string) $partition;
// Calling QueryPartition::serialize() has the same effect.
$partitionString = $partition->serialize();
Methods
__construct
Parameters | |
---|---|
Name | Description |
token |
string
The token identifying the partition. |
sql |
string
The query string to execute. |
options |
array
Configuration Options |
↳ maxPartitions |
int
The desired maximum number of partitions to return. For example, this may be set to the number of workers available. The maximum value is currently 200,000. This is only a hint. The actual number of partitions returned may be smaller than this maximum count request. Defaults to |
↳ partitionSizeBytes |
int
The desired data size for each partition generated. This is only a hint. The actual size of each partition may be smaller or larger than this size request. Defaults to |
↳ parameters |
array
A key/value array of Query Parameters, where the key is represented in the query string prefixed by a |
↳ types |
array
A key/value array of Query Parameter types. Generally, Google Cloud PHP can infer types. Explicit type definitions are only necessary for null parameter values. Accepted values are defined as constants on {@see}, and are as follows: |
sql
Returns the SQL query string.
Example:
$sql = $partition->sql();
Returns | |
---|---|
Type | Description |
string |
serialize
Return a stringified representation of the QueryPartition object.
Example:
$partitionString = $partition->serialize();
Returns | |
---|---|
Type | Description |
string |
hydrate
Create a QueryPartition object from a deserialized array of partition data.
Parameter | |
---|---|
Name | Description |
data |
array
The partition data. |
Returns | |
---|---|
Type | Description |
Google\Cloud\Spanner\Batch\QueryPartition |