Class: Google::Apis::BigtableadminV2::MultiClusterRoutingUseAny
- Inherits:
-
Object
- Object
- Google::Apis::BigtableadminV2::MultiClusterRoutingUseAny
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/bigtableadmin_v2/classes.rb,
lib/google/apis/bigtableadmin_v2/representations.rb,
lib/google/apis/bigtableadmin_v2/representations.rb
Overview
Read/write requests are routed to the nearest cluster in the instance, and will fail over to the nearest cluster that is available in the event of transient errors or delays. Clusters in a region are considered equidistant. Choosing this option sacrifices read-your-writes consistency to improve availability.
Instance Attribute Summary collapse
-
#cluster_ids ⇒ Array<String>
The set of clusters to route to.
-
#row_affinity ⇒ Google::Apis::BigtableadminV2::RowAffinity
If enabled, the AFE will route the request based on the row key of the request, rather than randomly.
Instance Method Summary collapse
-
#initialize(**args) ⇒ MultiClusterRoutingUseAny
constructor
A new instance of MultiClusterRoutingUseAny.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ MultiClusterRoutingUseAny
Returns a new instance of MultiClusterRoutingUseAny.
2748 2749 2750 |
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 2748 def initialize(**args) update!(**args) end |
Instance Attribute Details
#cluster_ids ⇒ Array<String>
The set of clusters to route to. The order is ignored; clusters will be tried
in order of distance. If left empty, all clusters are eligible.
Corresponds to the JSON property clusterIds
2737 2738 2739 |
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 2737 def cluster_ids @cluster_ids end |
#row_affinity ⇒ Google::Apis::BigtableadminV2::RowAffinity
If enabled, the AFE will route the request based on the row key of the request,
rather than randomly. Instead, each row key will be assigned to a cluster,
and will stick to that cluster. If clusters are added or removed, then this
may affect which row keys stick to which clusters. To avoid this, users can
specify a group cluster.
Corresponds to the JSON property rowAffinity
2746 2747 2748 |
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 2746 def row_affinity @row_affinity end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2753 2754 2755 2756 |
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 2753 def update!(**args) @cluster_ids = args[:cluster_ids] if args.key?(:cluster_ids) @row_affinity = args[:row_affinity] if args.key?(:row_affinity) end |