Reference documentation and code samples for the Cloud Bigtable V2 Client class 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 ifX <= Y
. This is useful anywhere sort order is important, for example when encoding keys. - Distinct: In this mode, Bigtable guarantees that if
X != Y
thenEncode(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 becauseINT64(1) > INT64(-1)
, butSTRING("-00001") > STRING("00001")
.
Generated from protobuf message google.bigtable.admin.v2.Type
Namespace
Google \ Cloud \ Bigtable \ Admin \ V2Methods
__construct
Constructor.
data
array
Optional. Data for populating the Message object.
↳ bytes_type
↳ string_type
↳ int64_type
↳ float32_type
↳ float64_type
↳ bool_type
↳ timestamp_type
↳ date_type
↳ aggregate_type
↳ struct_type
↳ array_type
↳ map_type
↳ proto_type
↳ enum_type
getBytesType
Bytes
hasBytesType
setBytesType
Bytes
$this
getStringType
String
hasStringType
setStringType
String
$this
getInt64Type
Int64
hasInt64Type
setInt64Type
Int64
$this
getFloat32Type
Float32
hasFloat32Type
setFloat32Type
Float32
$this
getFloat64Type
Float64
hasFloat64Type
setFloat64Type
Float64
$this
getBoolType
Bool
hasBoolType
setBoolType
Bool
$this
getTimestampType
Timestamp
hasTimestampType
setTimestampType
Timestamp
$this
getDateType
Date
hasDateType
setDateType
Date
$this
getAggregateType
Aggregate
hasAggregateType
setAggregateType
Aggregate
$this
getStructType
Struct
hasStructType
setStructType
Struct
$this
getArrayType
Array
hasArrayType
setArrayType
Array
$this
getMapType
Map
hasMapType
setMapType
Map
$this
getProtoType
Proto
hasProtoType
setProtoType
Proto
$this
getEnumType
Enum
hasEnumType
setEnumType
Enum
$this
getKind
string