Class: Google::Apis::BigtableadminV2::AppProfile

Inherits:
Object
  • Object
show all
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

A configuration object describing how Cloud Bigtable should treat traffic from a particular end user application.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ AppProfile

Returns a new instance of AppProfile.



87
88
89
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 87

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#data_boost_isolation_read_onlyGoogle::Apis::BigtableadminV2::DataBoostIsolationReadOnly

Data Boost is a serverless compute capability that lets you run high- throughput read jobs and queries on your Bigtable data, without impacting the performance of the clusters that handle your application traffic. Data Boost supports read-only use cases with single-cluster routing. Corresponds to the JSON property dataBoostIsolationReadOnly



36
37
38
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 36

def data_boost_isolation_read_only
  @data_boost_isolation_read_only
end

#descriptionString

Long form description of the use case for this AppProfile. Corresponds to the JSON property description

Returns:

  • (String)


41
42
43
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 41

def description
  @description
end

#etagString

Strongly validated etag for optimistic concurrency control. Preserve the value returned from GetAppProfile when calling UpdateAppProfile to fail the request if there has been a modification in the mean time. The update_mask of the request need not include etag for this protection to apply. See Wikipedia and RFC 7232 for more details. Corresponds to the JSON property etag

Returns:

  • (String)


51
52
53
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 51

def etag
  @etag
end

#multi_cluster_routing_use_anyGoogle::Apis::BigtableadminV2::MultiClusterRoutingUseAny

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. Corresponds to the JSON property multiClusterRoutingUseAny



60
61
62
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 60

def multi_cluster_routing_use_any
  @multi_cluster_routing_use_any
end

#nameString

The unique name of the app profile. Values are of the form projects/project/ instances/instance/appProfiles/_a-zA-Z0-9*. Corresponds to the JSON property name

Returns:

  • (String)


66
67
68
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 66

def name
  @name
end

#priorityString

This field has been deprecated in favor of standard_isolation.priority. If you set this field, standard_isolation.priority will be set instead. The priority of requests sent using this app profile. Corresponds to the JSON property priority

Returns:

  • (String)


73
74
75
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 73

def priority
  @priority
end

#single_cluster_routingGoogle::Apis::BigtableadminV2::SingleClusterRouting

Unconditionally routes all read/write requests to a specific cluster. This option preserves read-your-writes consistency but does not improve availability. Corresponds to the JSON property singleClusterRouting



80
81
82
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 80

def single_cluster_routing
  @single_cluster_routing
end

#standard_isolationGoogle::Apis::BigtableadminV2::StandardIsolation

Standard options for isolating this app profile's traffic from other use cases. Corresponds to the JSON property standardIsolation



85
86
87
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 85

def standard_isolation
  @standard_isolation
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



92
93
94
95
96
97
98
99
100
101
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 92

def update!(**args)
  @data_boost_isolation_read_only = args[:data_boost_isolation_read_only] if args.key?(:data_boost_isolation_read_only)
  @description = args[:description] if args.key?(:description)
  @etag = args[:etag] if args.key?(:etag)
  @multi_cluster_routing_use_any = args[:multi_cluster_routing_use_any] if args.key?(:multi_cluster_routing_use_any)
  @name = args[:name] if args.key?(:name)
  @priority = args[:priority] if args.key?(:priority)
  @single_cluster_routing = args[:single_cluster_routing] if args.key?(:single_cluster_routing)
  @standard_isolation = args[:standard_isolation] if args.key?(:standard_isolation)
end