Reference documentation and code samples for the Cloud Spanner Client class ReadPartition.
Represents a Read Partition.
Partitions can be shared with other servers or processes by casting the
object to a string, or by calling ReadPartition::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
BatchClient.
Example:
use Google\Cloud\Spanner\KeySet;
use Google\Cloud\Spanner\SpannerClient;
$spanner = new SpannerClient();
$batch = $spanner->batch('instance-id', 'database-id');
$snapshot = $batch->snapshot();
$keySet = new KeySet(['all' => true]);
$columns = ['id', 'firstName', 'lastName'];
$partitions = $snapshot->partitionRead('Users', $keySet, $columns);
// Serialize a partition to share it with another worker.
$partitionString = (string) $partition;
// Calling ReadPartition::serialize() has the same effect.
$partitionString = $partition->serialize();
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 to10000.
↳ 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 to1000000000 (i.e. 1 GiB).
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[],[],null,["# Cloud Spanner Client - Class ReadPartition (1.104.0)\n\nVersion latestkeyboard_arrow_down\n\n- [1.104.0 (latest)](/php/docs/reference/cloud-spanner/latest/Batch.ReadPartition)\n- [1.103.0](/php/docs/reference/cloud-spanner/1.103.0/Batch.ReadPartition)\n- [1.102.0](/php/docs/reference/cloud-spanner/1.102.0/Batch.ReadPartition)\n- [1.101.0](/php/docs/reference/cloud-spanner/1.101.0/Batch.ReadPartition)\n- [1.100.0](/php/docs/reference/cloud-spanner/1.100.0/Batch.ReadPartition)\n- [1.98.0](/php/docs/reference/cloud-spanner/1.98.0/Batch.ReadPartition)\n- [1.97.0](/php/docs/reference/cloud-spanner/1.97.0/Batch.ReadPartition)\n- [1.96.0](/php/docs/reference/cloud-spanner/1.96.0/Batch.ReadPartition)\n- [1.95.0](/php/docs/reference/cloud-spanner/1.95.0/Batch.ReadPartition)\n- [1.94.0](/php/docs/reference/cloud-spanner/1.94.0/Batch.ReadPartition)\n- [1.93.1](/php/docs/reference/cloud-spanner/1.93.1/Batch.ReadPartition)\n- [1.92.1](/php/docs/reference/cloud-spanner/1.92.1/Batch.ReadPartition)\n- [1.91.0](/php/docs/reference/cloud-spanner/1.91.0/Batch.ReadPartition)\n- [1.90.0](/php/docs/reference/cloud-spanner/1.90.0/Batch.ReadPartition)\n- [1.89.0](/php/docs/reference/cloud-spanner/1.89.0/Batch.ReadPartition)\n- [1.88.0](/php/docs/reference/cloud-spanner/1.88.0/Batch.ReadPartition)\n- [1.87.0](/php/docs/reference/cloud-spanner/1.87.0/Batch.ReadPartition)\n- [1.86.0](/php/docs/reference/cloud-spanner/1.86.0/Batch.ReadPartition)\n- [1.85.0](/php/docs/reference/cloud-spanner/1.85.0/Batch.ReadPartition)\n- [1.84.0](/php/docs/reference/cloud-spanner/1.84.0/Batch.ReadPartition)\n- [1.83.0](/php/docs/reference/cloud-spanner/1.83.0/Batch.ReadPartition)\n- [1.82.0](/php/docs/reference/cloud-spanner/1.82.0/Batch.ReadPartition)\n- [1.81.0](/php/docs/reference/cloud-spanner/1.81.0/Batch.ReadPartition)\n- [1.80.0](/php/docs/reference/cloud-spanner/1.80.0/Batch.ReadPartition)\n- [1.79.0](/php/docs/reference/cloud-spanner/1.79.0/Batch.ReadPartition)\n- [1.78.0](/php/docs/reference/cloud-spanner/1.78.0/Batch.ReadPartition)\n- [1.77.0](/php/docs/reference/cloud-spanner/1.77.0/Batch.ReadPartition)\n- [1.76.1](/php/docs/reference/cloud-spanner/1.76.1/Batch.ReadPartition)\n- [1.68.0](/php/docs/reference/cloud-spanner/1.68.0/Batch.ReadPartition)\n- [1.67.0](/php/docs/reference/cloud-spanner/1.67.0/Batch.ReadPartition)\n- [1.66.0](/php/docs/reference/cloud-spanner/1.66.0/Batch.ReadPartition)\n- [1.65.0](/php/docs/reference/cloud-spanner/1.65.0/Batch.ReadPartition)\n- [1.64.0](/php/docs/reference/cloud-spanner/1.64.0/Batch.ReadPartition)\n- [1.63.2](/php/docs/reference/cloud-spanner/1.63.2/Batch.ReadPartition)\n- [1.62.1](/php/docs/reference/cloud-spanner/1.62.1/Batch.ReadPartition)\n- [1.61.0](/php/docs/reference/cloud-spanner/1.61.0/Batch.ReadPartition)\n- [1.60.0](/php/docs/reference/cloud-spanner/1.60.0/Batch.ReadPartition)\n- [1.59.0](/php/docs/reference/cloud-spanner/1.59.0/Batch.ReadPartition)\n- [1.58.4](/php/docs/reference/cloud-spanner/1.58.4/Batch.ReadPartition)\n- [1.57.0](/php/docs/reference/cloud-spanner/1.57.0/Batch.ReadPartition)\n- [1.56.0](/php/docs/reference/cloud-spanner/1.56.0/Batch.ReadPartition)\n- [1.55.0](/php/docs/reference/cloud-spanner/1.55.0/Batch.ReadPartition)\n- [1.54.2](/php/docs/reference/cloud-spanner/1.54.2/Batch.ReadPartition) \nReference documentation and code samples for the Cloud Spanner Client class ReadPartition.\n\nRepresents a Read Partition.\n\nPartitions can be shared with other servers or processes by casting the\nobject to a string, or by calling [ReadPartition::serialize()](/php/docs/reference/cloud-spanner/latest/Batch.ReadPartition#_Google_Cloud_Spanner_Batch_ReadPartition__serialize__).\n\nNote that when reading or querying against a partition, the request MUST be\nmade using the same Batch Snapshot with which the partition was initialized.\nIn practice, this means that a shared partition must be accompanied by its\ncorresponding snapshot. For more information, refer to usage notes on\n[BatchClient](/php/docs/reference/cloud-spanner/latest/Batch.BatchClient).\n\nExample: \n\n use Google\\Cloud\\Spanner\\KeySet;\n use Google\\Cloud\\Spanner\\SpannerClient;\n\n $spanner = new SpannerClient();\n $batch = $spanner-\u003ebatch('instance-id', 'database-id');\n $snapshot = $batch-\u003esnapshot();\n\n $keySet = new KeySet(['all' =\u003e true]);\n $columns = ['id', 'firstName', 'lastName'];\n $partitions = $snapshot-\u003epartitionRead('Users', $keySet, $columns);\n\n // Serialize a partition to share it with another worker.\n $partitionString = (string) $partition;\n\n // Calling ReadPartition::serialize() has the same effect.\n $partitionString = $partition-\u003eserialize();\n\nNamespace\n---------\n\nGoogle \\\\ Cloud \\\\ Spanner \\\\ Batch\n\nMethods\n-------\n\n### __construct\n\n### table\n\nReturn the table name.\n\nExample: \n\n $table = $partition-\u003etable();\n\n### keySet\n\nReturn the KeySet.\n\nExample: \n\n $keySet = $partition-\u003ekeySet();\n\n### columns\n\nReturn the list of columns.\n\nExample: \n\n $columns = $partition-\u003ecolumns();\n\n### serialize\n\nReturn a stringified representation of the ReadPartition object.\n\nExample: \n\n $partitionString = $partition-\u003eserialize();\n\n### static::hydrate\n\nCreate a ReadPartition object from a deserialized array of partition data."]]