- 1.104.0 (latest)
- 1.103.0
- 1.102.0
- 1.101.0
- 1.100.0
- 1.98.0
- 1.97.0
- 1.96.0
- 1.95.0
- 1.94.0
- 1.93.1
- 1.92.1
- 1.91.0
- 1.90.0
- 1.89.0
- 1.88.0
- 1.87.0
- 1.86.0
- 1.85.0
- 1.84.0
- 1.83.0
- 1.82.0
- 1.81.0
- 1.80.0
- 1.79.0
- 1.78.0
- 1.77.0
- 1.76.1
- 1.68.0
- 1.67.0
- 1.66.0
- 1.65.0
- 1.64.0
- 1.63.2
- 1.62.1
- 1.61.0
- 1.60.0
- 1.59.0
- 1.58.4
- 1.57.0
- 1.56.0
- 1.55.0
- 1.54.2
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 Google\Cloud\Spanner\Batch\Google\Cloud\Spanner\Batch\QueryPartition::serialize() .
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 Google\Cloud\Spanner\Batch\Google\Cloud\Spanner\Batch\BatchClient .
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
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 10000
.
↳ 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 1000000000
(i.e. 1 GiB).
↳ parameters
array
A key/value array of Query Parameters, where the key is represented in the query string prefixed by a @
symbol.
↳ 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 Google\Cloud\Spanner\Batch\Google\Cloud\Spanner\ValueMapper
, and are as follows: Database::TYPE_BOOL
, Database::TYPE_INT64
, Database::TYPE_FLOAT64
, Database::TYPE_TIMESTAMP
, Database::TYPE_DATE
, Database::TYPE_STRING
, Database::TYPE_BYTES
, Database::TYPE_ARRAY
and Database::TYPE_STRUCT
. If the parameter type is an array, the type should be given as an array, where the first element is Database::TYPE_ARRAY
and the second element is the array type, for instance [Database::TYPE_ARRAY, Database::TYPE_INT64]
.
sql
Returns the SQL query string.
Example:
$sql = $partition->sql();
string
serialize
Return a stringified representation of the QueryPartition object.
Example:
$partitionString = $partition->serialize();
string
hydrate
Create a QueryPartition object from a deserialized array of partition data.
data
array
The partition data.