public sealed class Type : IMessage<Type>, IEquatable<Type>, IDeepCloneable<Type>, IBufferMessage, IMessageReference documentation and code samples for the Google Bigtable v2 API 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/from the underlying data.
Each encoding also defines the following properties:
- Order-preserving: Does the encoded value sort consistently with the
original typed value? Note that Bigtable will always sort data based on
the raw encoded value, not the decoded type.
- Example: BYTES values sort in the same order as their raw encodings.
- Counterexample: Encoding INT64 as a fixed-width decimal string does
not preserve sort order when dealing with negative numbers.
INT64(1) > INT64(-1), butSTRING("-00001") > STRING("00001).
- Self-delimiting: If we concatenate two encoded values, can we always tell
where the first one ends and the second one begins?
- Example: If we encode INT64s to fixed-width STRINGs, the first value will always contain exactly N digits, possibly preceded by a sign.
- Counterexample: If we concatenate two UTF-8 encoded STRINGs, we have no way to tell where the first one ends.
- Compatibility: Which other systems have matching encoding schemes? For example, does this encoding have a GoogleSQL equivalent? HBase? Java?
Namespace
Google.Cloud.Bigtable.V2Assembly
Google.Cloud.Bigtable.V2.dll
Constructors
Type()
public Type()Type(Type)
public Type(Type other)| Parameter | |
|---|---|
| Name | Description |
other |
Type |
Properties
AggregateType
public Type.Types.Aggregate AggregateType { get; set; }Aggregate
| Property Value | |
|---|---|
| Type | Description |
TypeTypesAggregate |
|
ArrayType
public Type.Types.Array ArrayType { get; set; }Array
| Property Value | |
|---|---|
| Type | Description |
TypeTypesArray |
|
BoolType
public Type.Types.Bool BoolType { get; set; }Bool
| Property Value | |
|---|---|
| Type | Description |
TypeTypesBool |
|
BytesType
public Type.Types.Bytes BytesType { get; set; }Bytes
| Property Value | |
|---|---|
| Type | Description |
TypeTypesBytes |
|
DateType
public Type.Types.Date DateType { get; set; }Date
| Property Value | |
|---|---|
| Type | Description |
TypeTypesDate |
|
Float32Type
public Type.Types.Float32 Float32Type { get; set; }Float32
| Property Value | |
|---|---|
| Type | Description |
TypeTypesFloat32 |
|
Float64Type
public Type.Types.Float64 Float64Type { get; set; }Float64
| Property Value | |
|---|---|
| Type | Description |
TypeTypesFloat64 |
|
Int64Type
public Type.Types.Int64 Int64Type { get; set; }Int64
| Property Value | |
|---|---|
| Type | Description |
TypeTypesInt64 |
|
KindCase
public Type.KindOneofCase KindCase { get; }| Property Value | |
|---|---|
| Type | Description |
TypeKindOneofCase |
|
MapType
public Type.Types.Map MapType { get; set; }Map
| Property Value | |
|---|---|
| Type | Description |
TypeTypesMap |
|
StringType
public Type.Types.String StringType { get; set; }String
| Property Value | |
|---|---|
| Type | Description |
TypeTypesString |
|
StructType
public Type.Types.Struct StructType { get; set; }Struct
| Property Value | |
|---|---|
| Type | Description |
TypeTypesStruct |
|
TimestampType
public Type.Types.Timestamp TimestampType { get; set; }Timestamp
| Property Value | |
|---|---|
| Type | Description |
TypeTypesTimestamp |
|