Class: Google::Apis::BigtableadminV2::GoogleBigtableAdminV2TypeMap

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 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

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleBigtableAdminV2TypeMap

Returns a new instance of GoogleBigtableAdminV2TypeMap.



2006
2007
2008
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 2006

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

Instance Attribute Details

#key_typeGoogle::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



1984
1985
1986
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 1984

def key_type
  @key_type
end

#value_typeGoogle::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



2004
2005
2006
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 2004

def value_type
  @value_type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2011
2012
2013
2014
# File 'lib/google/apis/bigtableadmin_v2/classes.rb', line 2011

def update!(**args)
  @key_type = args[:key_type] if args.key?(:key_type)
  @value_type = args[:value_type] if args.key?(:value_type)
end