- 2.1.0 (latest)
- 2.1.0-RC1
- 2.0.1-RC1
- 1.106.0
- 1.105.1
- 1.104.1
- 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 V1 Client class RoutingHint.
RoutingHint can be optionally added to location-aware Spanner
requests. It gives the server hints that can be used to route the request to
an appropriate server, potentially significantly decreasing latency and
improving throughput. To achieve improved performance, most fields must be
filled in with accurate values.
The presence of a valid RoutingHint tells the server that the client
is location-aware.
RoutingHint does not change the semantics of the request; it is
purely a performance hint; the request will perform the same actions on the
database's data as if RoutingHint were not present. However, if
the RoutingHint is incomplete or incorrect, the response may include
a CacheUpdate the client can use to correct its location cache.
Generated from protobuf message google.spanner.v1.RoutingHint
Namespace
Google \ Cloud \ Spanner \ V1Methods
__construct
Constructor.
| Parameters | |
|---|---|
| Name | Description |
data |
array
Optional. Data for populating the Message object. |
↳ operation_uid |
int|string
A session-scoped unique ID for the operation, computed client-side. Requests with the same |
↳ database_id |
int|string
The database ID of the database being accessed, see |
↳ schema_generation |
string
The schema generation of the recipe that was used to generate |
↳ key |
string
The key / key range that this request accesses. For operations that access a single key, |
↳ limit_key |
string
If this request targets a key range, this is the exclusive end of the range. See |
↳ group_uid |
int|string
The group UID of the group that the client believes serves the range defined by |
↳ split_id |
int|string
The split ID of the split that the client believes contains the range defined by |
↳ tablet_uid |
int|string
The tablet UID of the tablet from group |
↳ skipped_tablet_uid |
array<RoutingHint\SkippedTablet>
If the client had multiple options for tablet selection, and some of its first choices were unhealthy (e.g., the server is unreachable, or |
↳ client_location |
string
If present, the client's current location. In the Spanner managed service, this should be the name of a Google Cloud zone or region, such as "us-central1". In Spanner Omni, this should correspond to a previously created location. If absent, the client's location will be assumed to be the same as the location of the server the client ends up connected to. Locations are primarily valuable for clients that connect from regions other than the ones that contain the Spanner database. |
getOperationUid
A session-scoped unique ID for the operation, computed client-side.
Requests with the same operation_uid should have a shared 'shape',
meaning that some fields are expected to be the same, such as the SQL
query, the target table/columns (for reads) etc. Requests with the same
operation_uid are meant to differ only in fields like keys/key
ranges/query parameters, transaction IDs, etc.
operation_uid must be non-zero for RoutingHint to be valid.
| Returns | |
|---|---|
| Type | Description |
int|string |
|
setOperationUid
A session-scoped unique ID for the operation, computed client-side.
Requests with the same operation_uid should have a shared 'shape',
meaning that some fields are expected to be the same, such as the SQL
query, the target table/columns (for reads) etc. Requests with the same
operation_uid are meant to differ only in fields like keys/key
ranges/query parameters, transaction IDs, etc.
operation_uid must be non-zero for RoutingHint to be valid.
| Parameter | |
|---|---|
| Name | Description |
var |
int|string
|
| Returns | |
|---|---|
| Type | Description |
$this |
|
getDatabaseId
The database ID of the database being accessed, see
CacheUpdate.database_id. Should match the cache entries that were used
to generate the rest of the fields in this RoutingHint.
| Returns | |
|---|---|
| Type | Description |
int|string |
|
setDatabaseId
The database ID of the database being accessed, see
CacheUpdate.database_id. Should match the cache entries that were used
to generate the rest of the fields in this RoutingHint.
| Parameter | |
|---|---|
| Name | Description |
var |
int|string
|
| Returns | |
|---|---|
| Type | Description |
$this |
|
getSchemaGeneration
The schema generation of the recipe that was used to generate key and
limit_key. See also RecipeList.schema_generation.
| Returns | |
|---|---|
| Type | Description |
string |
|
setSchemaGeneration
The schema generation of the recipe that was used to generate key and
limit_key. See also RecipeList.schema_generation.
| Parameter | |
|---|---|
| Name | Description |
var |
string
|
| Returns | |
|---|---|
| Type | Description |
$this |
|
getKey
The key / key range that this request accesses. For operations that
access a single key, key should be set and limit_key should be empty.
For operations that access a key range, key and limit_key should both
be set, to the inclusive start and exclusive end of the range respectively.
The keys are encoded in "sortable string format" (ssformat), using a
KeyRecipe that is appropriate for the request. See KeyRecipe for more
details.
| Returns | |
|---|---|
| Type | Description |
string |
|
setKey
The key / key range that this request accesses. For operations that
access a single key, key should be set and limit_key should be empty.
For operations that access a key range, key and limit_key should both
be set, to the inclusive start and exclusive end of the range respectively.
The keys are encoded in "sortable string format" (ssformat), using a
KeyRecipe that is appropriate for the request. See KeyRecipe for more
details.
| Parameter | |
|---|---|
| Name | Description |
var |
string
|
| Returns | |
|---|---|
| Type | Description |
$this |
|
getLimitKey
If this request targets a key range, this is the exclusive end of the
range. See key for more details.
| Returns | |
|---|---|
| Type | Description |
string |
|
setLimitKey
If this request targets a key range, this is the exclusive end of the
range. See key for more details.
| Parameter | |
|---|---|
| Name | Description |
var |
string
|
| Returns | |
|---|---|
| Type | Description |
$this |
|
getGroupUid
The group UID of the group that the client believes serves the range
defined by key and limit_key. See Range.group_uid for more details.
| Returns | |
|---|---|
| Type | Description |
int|string |
|
setGroupUid
The group UID of the group that the client believes serves the range
defined by key and limit_key. See Range.group_uid for more details.
| Parameter | |
|---|---|
| Name | Description |
var |
int|string
|
| Returns | |
|---|---|
| Type | Description |
$this |
|
getSplitId
The split ID of the split that the client believes contains the range
defined by key and limit_key. See Range.split_id for more details.
| Returns | |
|---|---|
| Type | Description |
int|string |
|
setSplitId
The split ID of the split that the client believes contains the range
defined by key and limit_key. See Range.split_id for more details.
| Parameter | |
|---|---|
| Name | Description |
var |
int|string
|
| Returns | |
|---|---|
| Type | Description |
$this |
|
getTabletUid
The tablet UID of the tablet from group group_uid that the client
believes is best to serve this request. See Group.local_tablet_uids and
Group.leader_tablet_uid.
| Returns | |
|---|---|
| Type | Description |
int|string |
|
setTabletUid
The tablet UID of the tablet from group group_uid that the client
believes is best to serve this request. See Group.local_tablet_uids and
Group.leader_tablet_uid.
| Parameter | |
|---|---|
| Name | Description |
var |
int|string
|
| Returns | |
|---|---|
| Type | Description |
$this |
|
getSkippedTabletUid
If the client had multiple options for tablet selection, and some of its
first choices were unhealthy (e.g., the server is unreachable, or
Tablet.skip is true), this field will contain the tablet UIDs of those
tablets, with their incarnations. The server may include a CacheUpdate
with new locations for those tablets.
| Returns | |
|---|---|
| Type | Description |
Google\Protobuf\Internal\RepeatedField |
|
setSkippedTabletUid
If the client had multiple options for tablet selection, and some of its
first choices were unhealthy (e.g., the server is unreachable, or
Tablet.skip is true), this field will contain the tablet UIDs of those
tablets, with their incarnations. The server may include a CacheUpdate
with new locations for those tablets.
| Parameter | |
|---|---|
| Name | Description |
var |
array<RoutingHint\SkippedTablet>
|
| Returns | |
|---|---|
| Type | Description |
$this |
|
getClientLocation
If present, the client's current location. In the Spanner managed service, this should be the name of a Google Cloud zone or region, such as "us-central1". In Spanner Omni, this should correspond to a previously created location.
If absent, the client's location will be assumed to be the same as the location of the server the client ends up connected to. Locations are primarily valuable for clients that connect from regions other than the ones that contain the Spanner database.
| Returns | |
|---|---|
| Type | Description |
string |
|
setClientLocation
If present, the client's current location. In the Spanner managed service, this should be the name of a Google Cloud zone or region, such as "us-central1". In Spanner Omni, this should correspond to a previously created location.
If absent, the client's location will be assumed to be the same as the location of the server the client ends up connected to. Locations are primarily valuable for clients that connect from regions other than the ones that contain the Spanner database.
| Parameter | |
|---|---|
| Name | Description |
var |
string
|
| Returns | |
|---|---|
| Type | Description |
$this |
|