Class: Google::Apis::BigtableadminV2::GoogleBigtableAdminV2TypeMap
- Inherits:
-
Object
- Object
- Google::Apis::BigtableadminV2::GoogleBigtableAdminV2TypeMap
- 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 mapping of keys to values of a given type. Values of type Map are stored
in a Value.array_value where each entry is another Value.array_value with
two elements (the key and the value, in that order). Normally encoded Map
values won't have repeated keys, however, clients are expected to handle the
case in which they do. If the same key appears multiple times, the last
value takes precedence.
Instance Attribute Summary collapse
-
#key_type ⇒ Google::Apis::BigtableadminV2::Type
Typerepresents the type of data that is written to, read from, or stored in Bigtable. -
#value_type ⇒ Google::Apis::BigtableadminV2::Type
Typerepresents the type of data that is written to, read from, or stored in Bigtable.
Instance Method Summary collapse
-
#initialize(**args) ⇒ GoogleBigtableAdminV2TypeMap
constructor
A new instance of GoogleBigtableAdminV2TypeMap.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ GoogleBigtableAdminV2TypeMap
Returns a new instance of GoogleBigtableAdminV2TypeMap.
2282 2283 2284 |
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 2282 def initialize(**args) update!(**args) end |
Instance Attribute Details
#key_type ⇒ Google::Apis::BigtableadminV2::Type
Type represents the type of data that is written to, read from, or stored in
Bigtable. It is heavily based on the GoogleSQL standard to help maintain
familiarity and consistency across products and features. For compatibility
with Bigtable's existing untyped APIs, each Type includes an Encoding
which describes how to convert to or from the underlying data. Each encoding
can operate in one of two modes: - Sorted: In this mode, Bigtable guarantees
that Encode(X) <= Encode(Y) if and only if X <= Y. This is useful anywhere
sort order is important, for example when encoding keys. - Distinct: In this
mode, Bigtable guarantees that if X != Y then Encode(X) != Encode(Y).
However, the converse is not guaranteed. For example, both 'foo': '1', 'bar':
'2' and 'bar': '2', 'foo': '1' are valid encodings of the same JSON
value. The API clearly documents which mode is used wherever an encoding can
be configured. Each encoding also documents which values are supported in
which modes. For example, when encoding INT64 as a numeric STRING, negative
numbers cannot be encoded in sorted mode. This is because INT64(1) > INT64(-1)
, but STRING("-00001") > STRING("00001").
Corresponds to the JSON property keyType
2260 2261 2262 |
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 2260 def key_type @key_type end |
#value_type ⇒ Google::Apis::BigtableadminV2::Type
Type represents the type of data that is written to, read from, or stored in
Bigtable. It is heavily based on the GoogleSQL standard to help maintain
familiarity and consistency across products and features. For compatibility
with Bigtable's existing untyped APIs, each Type includes an Encoding
which describes how to convert to or from the underlying data. Each encoding
can operate in one of two modes: - Sorted: In this mode, Bigtable guarantees
that Encode(X) <= Encode(Y) if and only if X <= Y. This is useful anywhere
sort order is important, for example when encoding keys. - Distinct: In this
mode, Bigtable guarantees that if X != Y then Encode(X) != Encode(Y).
However, the converse is not guaranteed. For example, both 'foo': '1', 'bar':
'2' and 'bar': '2', 'foo': '1' are valid encodings of the same JSON
value. The API clearly documents which mode is used wherever an encoding can
be configured. Each encoding also documents which values are supported in
which modes. For example, when encoding INT64 as a numeric STRING, negative
numbers cannot be encoded in sorted mode. This is because INT64(1) > INT64(-1)
, but STRING("-00001") > STRING("00001").
Corresponds to the JSON property valueType
2280 2281 2282 |
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 2280 def value_type @value_type end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2287 2288 2289 2290 |
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 2287 def update!(**args) @key_type = args[:key_type] if args.key?(:key_type) @value_type = args[:value_type] if args.key?(:value_type) end |