テーブルのフィールドに適切なデータ型を選択することで、データベースのパフォーマンスおよびストレージ効率が向上します。また、データ整合性、可読性、セキュリティ、一貫性の維持にも寄与します。本トピックでは、ApsaraDB for SelectDB でサポートされるデータ型について説明します。また、SHOW DATA TYPES; 文を実行することで、SelectDB でサポートされるすべてのデータ型をすばやく確認できます。
数値型
型名 | バイト数 | 説明 |
BOOLEAN | 1 | ブール値。 0:false 1:true |
TINYINT | 1 | 符号付き整数。 有効値範囲:[-128, 127] |
SMALLINT | 2 | 符号付き整数。 有効値範囲:[-32768, 32767] |
INT | 4 | 符号付き整数。 有効値範囲:[-2147483648, 2147483647] |
BIGINT | 8 | 符号付き整数。 有効値範囲:[-9223372036854775808, 9223372036854775807] |
LARGEINT | 16 | 符号付き整数。 有効値範囲:[-2^127 + 1 ~ 2^127 - 1] |
FLOAT | 4 | 浮動小数点数。 有効値範囲:[-3.4×10^38 ~ 3.4×10^38] |
DOUBLE | 8 | 浮動小数点数。 有効値範囲:[-1.79×10^308 ~ 1.79×10^308] |
DECIMAL | 4/8/16 | 高精度の固定小数点数。 定義形式:
|
日付型
型名 | バイト数 | 説明 |
DATE | 16 | 日付型。 有効値範囲:['0000-01-01', '9999-12-31'] デフォルト出力フォーマット: |
DATETIME | 16 | 日付と時刻の型。 定義形式: 説明 P:
有効値範囲:['0000-01-01 00:00:00[.000000]', '9999-12-31 23:59:59[.999999]'] デフォルト出力フォーマット: |
文字列型
型名 | バイト数 | 説明 |
CHAR | M | 固定長文字列。 定義形式: 説明 M は固定長文字列のバイト長を表します。 ストレージサイズ:1 ~ 255 バイト。 |
VARCHAR | 可変 | 可変長文字列。 定義形式: 説明
ストレージサイズ:1 ~ 65533 バイト。 |
STRING | 可変 | 可変長文字列。 デフォルト最小ストレージサイズ:1048576 バイト(1 MB) 最大ストレージサイズ:2147483643 バイト(2 GB) 重要
|
半構造化データ型
型名 | バイト数 | 説明 |
ARRAY | 可変 | 型 T の要素からなる配列。 定義形式:ARRAY<T> 説明
使用上の注意点:
|
MAP | 可変 | 型 K および V のキーと値のペアからなるマップ。 定義形式:MAP<K,V> 説明 K および V としてサポートされる型: 使用上の注意点:
|
STRUCT | 可変 | 複数のフィールドから構成される構造体。これは、複数の列の集合と見なすこともできます。 定義形式:STRUCT<field_name:field_type, ... > 説明
使用上の注意点:
|
JSON | 可変 | バイナリ JSON 形式で格納されます。内部フィールドへのアクセスには JSON 関数を使用します。 デフォルト対応ストレージサイズ:1048576 バイト(1 MB) 最大対応ストレージサイズ:2147483643 バイト(2 GB) 説明 パラメーター |
VARIANT | 可変 | JSON などの半構造化データを対象とした動的データ型です。有効な JSON 入力であれば何でも受け入れ、ストレージ効率とクエリ分析のパフォーマンスを向上させるために、JSON フィールドをサブカラムに自動的に分割します。VARIANT は、時間の経過とともに変化する可能性のある複雑なネスト構造の処理に特に有用です。詳細については、「VARIANT」をご参照ください。 重要 VARIANT は SelectDB カーネルバージョン |
集約型
型名 | バイト数 | 説明 |
HLL | 可変 | HLL は近似重複排除を提供します。大規模データセットにおいては、Count Distinct よりも優れたパフォーマンスを発揮します。 使用上の注意点:
|
BITMAP | 可変 | 正確な重複排除(例:UV 数カウント、オーディエンスセグメンテーション)に使用されます。 使用上の注意点:
|
QUANTILE_STATE | 可変 | 近似分位数の計算に使用されます。 データインジェスト時に、同じ Key を持つ異なる Values に対して事前集約が実行されます。
使用上の注意点:
|
AGG_STATE | 可変 | 集計関数 集計計算の高速化に使用されます。必ず 使用上の注意点:
|
IP 型
以下のデータ型は、SelectDB カーネルバージョン 4.0.0 以降でのみサポートされます。ご利用のインスタンスがそれより古いバージョンを実行している場合は、カーネルのスペックアップが必要です。詳細については、「カーネルバージョンのスペックアップ」をご参照ください。
型名 | バイト数 | 説明 |
IPv4 | 4 バイト | IPv4 アドレスを 4 バイトのバイナリ値として格納します。ipv4_* ファミリー関数と併用します。 |
IPv6 | 16 バイト | IPv6 アドレスを 16 バイトのバイナリ値として格納します。ipv6_* ファミリー関数と併用します。 |