メインコンテンツまでスキップ
メインコンテンツまでスキップ

カラムタイプ

一般的な参照については データタイプ を参照してください。

数値タイプ

ヒント

数値タイプのエンコーディングは、AMD64 や ARM64 のリトルエンディアン CPU のメモリ配置に一致します。

これにより、非常に効率的なエンコーディングとデコーディングを実装できます。

整数

Int および UInt の 8、16、32、64、128 または 256 ビットのリトルエンディアン形式の文字列。

浮動小数点

IEEE 754 バイナリ表現の Float32 および Float64。

文字列

単に String の配列、すなわち (len, value)。

FixedString(N)

N バイトのシーケンスの配列。

IP

IPv4 は UInt32 数値タイプのエイリアスであり、UInt32 として表現されます。

IPv6 は FixedString(16) のエイリアスであり、直接バイナリとして表現されます。

タプル

タプルは単にカラムの配列です。たとえば、Tuple(String, UInt8) は二つのカラムを 連続してエンコードしたものです。

マップ

Map(K, V) は三つのカラムから構成されます: Offsets ColUInt64, Keys K, Values V

KeysValues カラムの行数は Offsets の最後の値です。

配列

Array(T) は二つのカラムから構成されています: Offsets ColUInt64, Data T

Data の行数は Offsets の最後の値です。

Nullable

Nullable(T)Nulls ColUInt8, Values T で同じ行数を持ちます。

UUID

FixedString(16) のエイリアスで、UUID 値はバイナリとして表現されます。

列挙型

Int8 または Int16 のエイリアスですが、各整数は特定の String 値にマッピングされます。

ローカルディクショナリ

LowCardinality(T)Index T, Keys K から構成されます。 ここで、KIndex のサイズに応じて (UInt8, UInt16, UInt32, UInt64) のいずれかです。

ブール値

UInt8 のエイリアスで、0 は false、1 は true です。