Hologres は PostgreSQL のデータ型と互換性があり、そのサブセットをサポートしています。このページでは、ネイティブデータ型、1次元配列型、および MaxCompute、Flink、MySQL、DLF、Hive、Hudi、Delta Lake、Paimon、Iceberg などのアップストリームシステムからの型マッピングについて説明します。
データ型
次の表に、Hologres でサポートされているすべてのデータ型を示します。すべての型名とエイリアスは SQL では大文字と小文字を区別しませんが、慣例により大文字で表示されます。
名前 | エイリアス | ストレージサイズ | 説明 | 値の範囲 | 例 |
INTEGER | INT, INT4 | 4 バイト | 一般的な整数。 | -2,147,483,648 ~ +2,147,483,647 | 2147483647 |
BIGINT | INT8 | 8 バイト | 広範囲の整数。 | -9,223,372,036,854,775,808 ~ +9,223,372,036,854,775,807 | 9223372036854775807 |
SMALLINT | — | 2 バイト | 小範囲の整数。 | -32,768 ~ +32,767 | 32767 |
REAL | FLOAT4 | 4 バイト | 可変精度の浮動小数点数、不正確。PostgreSQL エコシステムでは、精度が指定されていない | 10進数で 6 桁の精度 | 123.123 |
DOUBLE PRECISION | FLOAT8 | 8 バイト | 可変精度の浮動小数点数、不正確。 | 10進数で 15 桁の精度 | 123.123456789123 |
DECIMAL | NUMERIC | 可変 | 正確な数値。PRECISION (合計桁数、0~38) と SCALE (小数点以下の桁数、0~PRECISION) の両方を指定します。V4.2 から、高精度モードは最大 76 桁をサポートします:PRECISION (0~76) および SCALE (0~PRECISION)。 | 小数点の前後に最大 38 桁。V4.2 から、高精度で最大 76 桁をサポートします。 | DECIMAL(38, 10) |
BOOLEAN | BOOL | 1 バイト | ブール値。 | True / False | True |
TEXT | — | 可変 | 可変長の文字列。最大限の柔軟性を得るには、VARCHAR(n) や CHAR(n) よりも TEXT を使用することを推奨します。 | なし | abcdefg |
CHAR(n) | — | 固定、最大 n 文字 | 固定長の文字列。ストレージサイズは 1 GB を超えません。 | 最大 n 文字 | abcd |
VARCHAR(n) | — | 可変、最大 n 文字 | 文字数制限のある可変長の文字列。ストレージサイズは 1 GB を超えません。 | 最大 n 文字 | abcdefg |
TIMESTAMP WITH TIME ZONE | TIMESTAMPTZ | 8 バイト | タイムゾーン付きのタイムスタンプで、ミリ秒精度で格納されます。タイムゾーンオフセットが指定されていない場合、システムは自動的にデフォルトのタイムゾーンをデータに追加します。 | 紀元前 4713 年から西暦 294276 年まで | 2004-10-19 10:23:54+02 |
TIMESTAMP | — | 8 バイト | タイムゾーンなしのタイムスタンプで、マイクロ秒精度で格納されます。 | 紀元前 4713 年から西暦 5874897 年まで | 2020-01-01 01:01:01.123456 |
DATE | — | 4 バイト | 日付、日単位の粒度。 | 紀元前 4713 年から西暦 5874897 年まで | 2004-10-19 |
TIME | — | 8 バイト | タイムゾーンなしの時刻、マイクロ秒精度。 | 00:00:00 ~ 24:00:00 | 12:00:00 |
TIMETZ | — | 12 バイト | タイムゾーン付きの時刻、マイクロ秒精度。 | 00:00:00 ~ 24:00:00 | 12:00:00+08 |
INTERVAL | — | 16 バイト | 時間間隔。 | -178,000,000 年 ~ 178,000,000 年 | interval '1 year' |
JSON | — | 可変 | JSON 型。詳細については、「」をご参照ください。 | なし | なし |
JSONB | — | 可変 | バイナリ JSON 型。詳細については、「」をご参照ください。 | なし | なし |
BYTEA | — | 可変 | 可変長のバイナリ文字列。ストレージサイズは 1 GB を超えません。詳細については、「バイナリデータ型」をご参照ください。 | なし | なし |
BIT(n) | — | n ビット | 固定長のビット文字列。ストレージサイズは 1 GB を超えません。 | なし | なし |
VARBIT(n) | — | 可変、最大 n ビット | 可変長のビット文字列。ストレージサイズは 1 GB を超えません。 | なし | なし |
INET | — | 可変 | IPv4 または IPv6 ホストアドレス。詳細については、「ネットワークアドレス型」をご参照ください。 | なし | 192.168.100.128/25 |
MONEY | — | 8 バイト | 固定小数点精度の通貨額。詳細については、「通貨型」をご参照ください。 | -92,233,720,368,547,758.08 ~ +92,233,720,368,547,758.07 | 12.34 USD |
OID | — | 4 バイト | 数値オブジェクト識別子。 | なし | 1024 |
UUID | — | 16 バイト | 汎用一意識別子 (UUID)、固定長 128 ビット値。uuid-ossp アルゴリズムは現在サポートされていません。 | 00000000-0000-0000-0000-000000000000 ~ ffffffff-ffff-ffff-ffff-ffffffffffff | a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11 |
SERIAL | — | 可変 | 自動増分シーケンス。詳細については、「自動増分シーケンス」をご参照ください。 | なし | なし |
RoaringBitmap | — | 可変 | 定数配列のビットマップ操作をサポートする効率的な INT 配列。詳細については、「RoaringBitmap 関数」をご参照ください。 | なし | なし |
RoaringBitmap64 | — | 可変 | 定数配列のビットマップ操作をサポートする効率的な BIGINT 配列。詳細については、「RoaringBitmap 関数」をご参照ください。 | なし | なし |
GEOMETRY and GEOGRAPHY | — | 可変。詳細については、「PostGIS ベースの地理空間分析」をご参照ください。 | PostGIS は PostgreSQL の空間拡張であり、空間オブジェクト、空間インデックス、空間操作関数、および空間演算子を提供します。パフォーマンスは V1.3 から向上しています。 | なし | なし |
バージョンの可用性:すべてのバージョンで利用可能ではない型は、特定のリリースで追加されました:
型 | 追加バージョン |
DATE, TIMESTAMP, CHAR(n), VARCHAR(n), SERIAL | Hologres V0.8 |
SMALLINT, JSON, JSONB, BYTEA, BIT(n), VARBIT(n), TIMETZ, TIME, INET, MONEY, OID, UUID | Hologres V0.9 |
RoaringBitmap | Hologres V0.10 |
RoaringBitmap64 | Hologres V3.1 |
残りのすべての型 | すべての Hologres バージョン |
例
以下の例は、選択された型に対する一般的な DDL および DML 操作を示しています。
DECIMAL256 の使用法と例
使用制限:
DECIMAL256 は Hologres V4.2 以降でのみサポートされます。
DECIMAL256 は、分散キー、クラスタリングキー、パーティションキー、セグメントキー、ビットマップ索引、または辞書エンコーディング列として使用することはできません。
CREATE TABLE および CREATE DYNAMIC TABLE (完全および増分更新) 文でサポートされています。
行指向、列指向、および行列ハイブリッドストレージでサポートされています。
サポートされている関数:算術演算、比較演算、SUM、AVG、MIN、MAX、CAST、および TRY_CAST。
例:
-- DECIMAL256 列を持つテーブルを作成
CREATE TABLE financial_transactions (
id INT PRIMARY KEY,
-- 標準 DECIMAL(38,19): 最大 38 桁をサポート
amount_standard DECIMAL(38, 19),
-- DECIMAL256(76,38): 最大 76 桁をサポート
amount_high_precision DECIMAL(76, 38),
description TEXT
);
-- 高精度の値を挿入
INSERT INTO financial_transactions VALUES
(1,
1234567890123456789.1234567890123456789, -- 38-digit precision
'12345678901234567890123456789012345678.12345678901234567890123456789012345678', -- 76-digit precision
'High-precision transaction amount'
);
-- データをクエリ
SELECT * FROM financial_transactions;
id | amount_standard | amount_high_precision | description
----+-----------------------------------------+-------------------------------------------------------------------------------+----------------------------------
1 | 1234567890123456789.1234567890123456789 | 12345678901234567890123456789012345678.12345678901234567890123456789012345678 | High-precision transaction amount
(1 row)時間型の例
TIMESTAMPTZ, DATE, and DECIMAL:
CREATE TABLE test_data_type (
tswtz_column TIMESTAMP WITH TIME ZONE,
date_column DATE,
decimal_column DECIMAL(38, 10),
char_column CHAR(20),
varchar_column VARCHAR(225)
);
INSERT INTO test_data_type
VALUES ('2004-10-19 08:08:08', '2004-10-19', 123.456, 'abcd', 'a');
SELECT * FROM test_data_type;
tswtz_column | date_column | decimal_column | char_column | varchar_column
------------------------+-------------+----------------+----------------------+----------------
2004-10-19 08:08:08+08 | 2004-10-19 | 123.4560000000 | abcd | a
(1 row)BIT, VARBIT, and BYTEA:
-- BIT and VARBIT
CREATE TABLE test (a BIT(3), b BIT VARYING(5));
INSERT INTO test VALUES (B'101', B'00');
INSERT INTO test VALUES (B'10', B'101');
ERROR: bit string length 2 does not match type bit(3)
INSERT INTO test VALUES (B'10'::bit(3), B'101');
SELECT * FROM test;
a | b
-----+-----
101 | 00
100 | 101
-- BYTEA (escape output format)
SET bytea_output = 'escape';
SELECT 'abc \153\154\155 \052\251\124'::bytea;
bytea
----------------
abc klm *\251T
RESET bytea_output; -- 'hex' is the default
SELECT 'abc \153\154\155 \052\251\124'::bytea;
bytea
--------------------------
\x616263206b6c6d202aa954
(1 row)配列型
Hologres は 1次元配列のみをサポートします。次の表は、サポートされている配列型と、その宣言および使用構文を示しています。
型 | 説明 | DDL での宣言 | ARRAY キーワードで挿入 | {} 構文で挿入 | 単一要素のクエリ | 範囲のクエリ |
int4[] | 1次元整数配列 |
|
|
|
|
|
int8[] | 1次元 bigint 配列 |
|
|
|
|
|
float4[] | 1次元 real 配列 |
|
|
|
|
|
float8[] | 1次元 double precision 配列 |
|
|
|
|
|
boolean[] | 1次元 boolean 配列 |
|
|
|
|
|
text[] | 1次元 text 配列 |
|
|
|
|
|
完全な例:
-- 宣言
CREATE TABLE array_example(
int4_array int4[],
int8_array int8[],
float4_array float4[],
float8_array float8[],
boolean_array boolean[],
text_array text[]
);
-- ARRAY キーワードを使用して挿入
INSERT INTO array_example(int4_array, int8_array, float4_array, float8_array, boolean_array, text_array)
VALUES (
ARRAY[1, 2, 3, 4],
ARRAY[1, 2, 3, 4],
ARRAY[1.0, 2.0],
ARRAY[1.0, 2.0, 3.0],
ARRAY[true, true, false],
ARRAY['foo1', 'foo2', 'foo3']
);
-- {} 構文を使用して挿入
INSERT INTO array_example(int4_array, int8_array, float4_array, float8_array, boolean_array, text_array)
VALUES (
'{1, 2, 3, 4}',
'{1, 2, 3, 4}',
'{1.0, 2.0}',
'{1.0, 2.0, 3.0}',
'{true, true, false}',
'{"foo1", "foo2", "foo3"}'
);
-- 単一要素のクエリ (1ベースのインデックス)
SELECT int4_array[3] FROM array_example;
-- 範囲のクエリ
SELECT int4_array[1:2] FROM array_example;MaxCompute と Hologres 間のデータ型マッピング
次の表は、MaxCompute 外部テーブルを作成する際の MaxCompute の型と Hologres の型とのマッピングを示しています。
MaxCompute テーブルにサポートされていない型のフィールドが含まれている場合でも、クエリがサポートされていないフィールドにアクセスしない限り、サポートされているフィールドをクエリできます。
MaxCompute の型 | Hologres の型 | 提供開始 | 注 |
JSON | JSONB | Hologres V4.1 | — |
STRING, VARCHAR | TEXT | すべてのバージョン | — |
BIGINT | INT8 | すべてのバージョン | — |
INT | INT4, INT | すべてのバージョン | — |
FLOAT | FLOAT4, REAL | すべてのバージョン | — |
DOUBLE | FLOAT, FLOAT8 | すべてのバージョン | — |
BOOLEAN | BOOL | すべてのバージョン | — |
DATETIME | TIMESTAMP WITH TIME ZONE | すべてのバージョン | MaxCompute の DATETIME は中国標準時 (UTC+8) を使用します。範囲:0000年1月1日から9999年12月31日まで、ミリ秒精度。 |
DECIMAL | NUMERIC | すべてのバージョン | 指定しない場合、デフォルトの精度は (38,18) です。IMPORT FOREIGN SCHEMA を使用してテーブルを作成すると、システムは自動的に精度を変換します。 |
TIMESTAMP | TIMESTAMP WITH TIME ZONE | Hologres V0.8 | MaxCompute の TIMESTAMP の範囲:0000-01-01 00:00:00.000000000 ~ 9999-12-31 23:59:59.999999999 (ナノ秒精度)。Hologres の TIMESTAMPTZ はミリ秒精度を使用し、読み取り時に精度が自動的に変換されます。 |
CHAR(n) | CHAR(n) (デフォルト); TEXT (オプション) | Hologres V0.8 | 固定長の文字型。n は長さで、最大 255 です。n より短い場合はスペースで埋められます。TEXT にマッピングするには、 |
VARCHAR(n) | VARCHAR(n) (デフォルト); TEXT (オプション) | Hologres V0.8 | 可変長の文字型。n の範囲は 1 から 65,535 です。TEXT にマッピングするには、 |
DATE | DATE | Hologres V0.8 | — |
SMALLINT | INT2 (デフォルト); INT8 (オプション) | すべてのバージョン (V0.8 では INT4、V0.9 では INT2) | INT8 にマッピングするには、 |
TINYINT | INT2 (デフォルト); INT8 (オプション) | すべてのバージョン (V0.8 では INT4、V0.9 では INT2) | INT8 にマッピングするには、 |
CHAR (長さなし) | サポートされていません | サポートされていません | — |
ARRAY\<INT\> | INT4[] | Hologres V0.8 | — |
ARRAY\<BIGINT\> | INT8[] | Hologres V0.8 | — |
ARRAY\<FLOAT\> | FLOAT4[] | Hologres V0.8 | — |
ARRAY\<DOUBLE\> | FLOAT8[] | Hologres V0.8 | — |
ARRAY\<BOOLEAN\> | BOOLEAN[] | Hologres V0.8 | — |
ARRAY\<STRING\> | TEXT[] | Hologres V0.8 | — |
BINARY | BYTEA | Hologres V0.9 | — |
ARRAY\<TINYINT\> | サポートされていません | サポートされていません | — |
ARRAY\<SMALLINT\> | サポートされていません | サポートされていません | — |
Blink/Flink と Hologres 間のデータ型マッピング
次の表は、Flink の型が Hologres の型にどのようにマッピングされるかを示しています。
Binlog ソーステーブルは、データ型の一部のみをサポートします。詳細については、「Flink/Blink を使用して Hologres Binlog をリアルタイムで消費する」をご参照ください。
Flink の型 | Hologres の型 | サポートされている Hologres バージョン | サポートされている Flink バージョン |
INT | INT4, INT | すべてのバージョン | すべてのバージョン |
BIGINT | INT8 | すべてのバージョン | すべてのバージョン |
VARCHAR | TEXT | すべてのバージョン | すべてのバージョン |
DOUBLE | FLOAT, FLOAT8, DOUBLE PRECISION | すべてのバージョン | すべてのバージョン |
BOOLEAN | BOOL | すべてのバージョン | すべてのバージョン |
DECIMAL | NUMERIC | すべてのバージョン | すべてのバージョン |
DATE | DATE | Hologres V0.8 | すべてのバージョン |
TIMESTAMP | TIMESTAMP WITH TIME ZONE, TIMESTAMPTZ | すべてのバージョン | すべてのバージョン |
TIMESTAMP | TIMESTAMP WITHOUT TIME ZONE, TIMESTAMP | すべてのバージョン | すべてのバージョン。注:Fixed Plan は現在 TIME 型をサポートしていません。詳細については、「Fixed Plan」をご参照ください。 |
FLOAT | FLOAT4, REAL | すべてのバージョン | すべてのバージョン |
TINYINT | SMALLINT | すべてのバージョン | シンク:VVR-4.0.13-Flink-1.13 以降。RPC モードはサポートされていません。ソース:VVR-6.0.3-Flink-1.15 以降。RPC モードはサポートされていません。ディメンション:VVR-4.0.13-Flink-1.13 以降。RPC モードはサポートされていません。 |
SMALLINT | SMALLINT | すべてのバージョン | シンク:すべてのバージョン。ソース:VVR-6.0.3-Flink-1.15 以降。RPC モードはサポートされていません。ディメンション:すべてのバージョン。 |
TIME | TIME and TIMETZ | すべてのバージョン。Hologres V2.1.24 から、Fixed Plan は TIME と TIMETZ をサポートします。 | シンク:VVR-4.0.13-Flink-1.13 以降。RPC モードはサポートされていません。ソース:VVR-6.0.3-Flink-1.15 以降。RPC モードはサポートされていません。ディメンション:VVR-4.0.13-Flink-1.13 以降。RPC モードはサポートされていません。 説明 Fixed Plan は TIME 型をサポートしていません。可能な限りこの型を避けてください。詳細については、「Fixed Plan」をご参照ください。 |
VARCHAR | JSONB | Hologres V0.10 | シンク:VVR-4.0.12-Flink-1.13 以降。RPC モードはサポートされていません。ソース:VVR-6.0.3-Flink-1.15 以降。RPC モードはサポートされていません。ディメンション:VVR-4.0.12-Flink-1.13 以降。RPC モードはサポートされていません。 |
VARCHAR | JSON | Hologres V0.9 | シンク:VVR-4.0.12-Flink-1.13 以降。RPC モードはサポートされていません。ソース:VVR-6.0.3-Flink-1.15 以降。RPC モードはサポートされていません。ディメンション:VVR-4.0.12-Flink-1.13 以降。RPC モードはサポートされていません。 |
BYTES | RoaringBitmap | Hologres V0.10 | シンク:VVR-4.0.12-Flink-1.13 以降。RPC モードはサポートされていません。ソース:VVR-6.0.3-Flink-1.15 以降。RPC モードはサポートされていません。ディメンション:VVR-4.0.12-Flink-1.13 以降。RPC モードはサポートされていません。 |
VARCHAR | GEOMETRY and GEOGRAPHY | すべてのバージョン。Hologres V2.1 から、Fixed Plan は GEOMETRY および GEOGRAPHY データの書き込みをサポートします。 | シンク:VVR-4.0.13-Flink-1.13 以降。RPC モードはサポートされていません。ソース:サポートされていません。ディメンション:サポートされていません。 |
ARRAY\<INT\> | int4[] | Hologres V0.8 | シンク:すべてのバージョン。ソース:VVR-6.0.3-Flink-1.15 以降。RPC モードはサポートされていません。ディメンション:すべてのバージョン。 |
ARRAY\<BIGINT\> | int8[] | Hologres V0.8 | シンク:すべてのバージョン。ソース:VVR-6.0.3-Flink-1.15 以降。RPC モードはサポートされていません。ディメンション:すべてのバージョン。 |
ARRAY\<FLOAT\> | float4[] | Hologres V0.8 | シンク:すべてのバージョン。ソース:VVR-6.0.3-Flink-1.15 以降。RPC モードはサポートされていません。ディメンション:すべてのバージョン。 |
ARRAY\<DOUBLE\> | float8[] | Hologres V0.8 | シンク:すべてのバージョン。ソース:VVR-6.0.3-Flink-1.15 以降。RPC モードはサポートされていません。ディメンション:すべてのバージョン。 |
ARRAY\<BOOLEAN\> | boolean[] | Hologres V0.8 | シンク:すべてのバージョン。ソース:VVR-6.0.3-Flink-1.15 以降。RPC モードはサポートされていません。ディメンション:すべてのバージョン。 |
ARRAY\<VARCHAR\> | TEXT[] | Hologres V0.8 | シンク:すべてのバージョン。ソース:VVR-6.0.3-Flink-1.15 以降。RPC モードはサポートされていません。ディメンション:すべてのバージョン。 |
ARRAY\<VARCHAR\> | VARCHAR[] | Hologres V0.8 | シンク:すべてのバージョン。ソース:Hologres V4.0.19 以降、Flink エンジン VVR-11.6-JDK11-Flink-1.20。ディメンション:すべてのバージョン。 |
CHAR | サポートされていません | サポートされていません | サポートされていません |
BINARY | サポートされていません | サポートされていません | サポートされていません |
CTAS を使用してデータを Hologres に同期する場合、DECIMAL 型のプライマリキーは TEXT にマッピングされ、プライマリキーでない DECIMAL 型フィールドは DECIMAL にマッピングされます。詳細については、「なぜ、bigint unsigned の MySQL テーブルのプライマリキーは、Flink Catalog を登録する際には decimal になるのに、CTAS を使用して Hologres に同期した後は text になるのですか?
MySQL と Hologres 間のデータ型マッピング
移行のウォークスルーについては、「MySQL から Hologres への移行」をご参照ください。
MySQL の型 | Hologres の型 |
BIGINT | BIGINT |
BINARY(n) | BYTEA |
BIT | BOOLEAN |
CHAR(n), CHARACTER(n) | CHAR(n), CHARACTER(n) |
DATE | DATE |
DATETIME | TIMESTAMP WITHOUT TIME ZONE |
DECIMAL(p,s), DEC(p,s) | DECIMAL(p,s), DEC(p,s) |
DOUBLE | DOUBLE PRECISION |
FLOAT | REAL |
INT, INTEGER | INT, INTEGER |
MEDIUMINT | INTEGER |
NUMERIC(p,s) | NUMERIC(p,s) |
SMALLINT | SMALLINT |
TINYBLOB, BLOB, MEDIUMBLOB, LONGBLOB | BYTEA |
TINYINT | SMALLINT |
TINYTEXT, TEXT, MEDIUMTEXT, LONGTEXT | TEXT |
TIME | TIME WITHOUT TIME ZONE |
TIMESTAMP | TIMESTAMP WITH TIME ZONE |
VARBINARY(n), VARBINARY(max) | BYTEA |
VARCHAR(n) | VARCHAR(n) |
VARCHAR(max) | TEXT |
DLF と Hologres 間のデータ型マッピング
DLF の型 | Hologres の型 |
TINYINT | SMALLINT |
SMALLINT | SMALLINT |
INT | INT |
BIGINT | BIGINT |
BOOLEAN | BOOLEAN |
FLOAT | REAL |
DOUBLE | DOUBLE PRECISION |
DATE | DATE |
TIMESTAMP | TIMESTAMP WITHOUT TIME ZONE |
STRING | TEXT |
BINARY | BYTEA |
DECIMAL(m,n) | NUMERIC(m,n) |
VARCHAR(n) | CHARACTER VARYING(n) |
CHAR(n) | CHAR(n) |
ARRAY\<type\> | ARRAY\<hologres_data_type\>。サポートされている要素型:INT, BIGINT, FLOAT, BOOLEAN, DOUBLE, STRING |
Hive と Hologres 間のデータ型マッピング
Hive の型 | Hologres の型 |
TINYINT | SMALLINT |
SMALLINT | SMALLINT |
INT | INT |
BIGINT | BIGINT |
FLOAT | REAL |
DOUBLE | DOUBLE PRECISION |
DECIMAL | NUMERIC |
NUMERIC | NUMERIC |
DATE | DATE |
TIMESTAMP | TIMESTAMP WITHOUT TIME ZONE |
STRING | TEXT |
VARCHAR | VARCHAR |
CHAR | CHAR |
BINARY | BYTEA |
BOOL | BOOLEAN |
ARRAY\<type\> | ARRAY\<hologres_data_type\>。サポートされている要素型:INT, BIGINT, FLOAT, BOOLEAN, DOUBLE PRECISION, STRING |
Hudi と Hologres 間のデータ型マッピング
このマッピングは Hologres V1.3 以降でサポートされています。
Hudi の型 | Hologres の型 |
IntegerType | INT |
LongType | BIGINT |
FloatType | REAL |
DoubleType | DOUBLE PRECISION |
DecimalType | NUMERIC |
TimestampType | TIMESTAMP WITHOUT TIME ZONE |
DateType | DATE |
YearMonthIntervalType | サポートされていません |
DayTimeIntervalType | サポートされていません |
StringType | TEXT |
VarcharType | サポートされていません |
CharType | サポートされていません |
BooleanType | BOOL |
BinaryType | BYTEA |
ByteType | サポートされていません |
ShortType | サポートされていません |
ArrayType(elementType, containsNull) | ARRAY\<hologres_data_type\>。サポートされている要素型:INT, BIGINT, FLOAT, BOOLEAN, DOUBLE PRECISION, STRING |
Delta Lake と Hologres 間のデータ型マッピング
このマッピングは Hologres V1.3 以降でサポートされています。
Delta Lake の型 | Hologres の型 |
TINYINT | SMALLINT |
SMALLINT | SMALLINT |
INT | INT |
BIGINT | BIGINT |
FLOAT | REAL |
DOUBLE | DOUBLE PRECISION |
DECIMAL(p,s) | NUMERIC |
TIMESTAMP | TIMESTAMP WITHOUT TIME ZONE |
DATE | DATE |
INTERVAL intervalQualifier | サポートされていません |
STRING | TEXT |
BOOLEAN | BOOLEAN |
BINARY | BYTEA |
ARRAY\<elementType\> | ARRAY\<hologres_data_type\>。サポートされている要素型:INT, BIGINT, FLOAT, BOOLEAN, DOUBLE PRECISION, STRING |
Paimon と Hologres 間のデータ型マッピング
Paimon の型 | Hologres の型 |
TINYINT | SMALLINT |
SMALLINT | SMALLINT |
INT | INT |
BIGINT | BIGINT |
FLOAT | REAL |
DOUBLE | DOUBLE PRECISION |
DECIMAL(p,s) | DECIMAL |
TIMESTAMP | TIMESTAMP WITHOUT TIME ZONE |
DATE | DATE |
CHAR | CHAR |
VARCHAR | VARCHAR |
BINARY | BYTEA |
BLOB | BYTES (V4.2 からサポート) |
ARRAY | ARRAY\<hologres_data_type\>。サポートされている要素型:INT, BIGINT, FLOAT, BOOLEAN, DOUBLE PRECISION, STRING |
Iceberg と Hologres 間のデータ型マッピング
Iceberg の型 | Hologres の型 |
BOOLEAN | BOOLEAN |
INT | INTEGER |
LONG | BIGINT |
FLOAT | REAL |
DOUBLE | DOUBLE PRECISION |
DECIMAL(P,S) | NUMERIC(P,S) |
DATE | DATE |
TIME | TEXT (Spark は TIME 型をサポートしていません。Flink の TIME 型は DLF に書き込まれると STRING になります。) |
TIMESTAMP | TIMESTAMP WITHOUT TIME ZONE |
TIMESTAMPTZ | サポートされていません |
STRING | TEXT |
UUID | サポートされていません (Flink と Spark はこの型を書き込めません。) |
FIXED(L) | BYTEA |
BINARY | BYTEA |
LIST | ARRAY\<hologres_data_type\>。サポートされている要素型:INT, BIGINT, FLOAT, BOOLEAN, DOUBLE PRECISION, STRING |
STRUCT | サポートされていません |
MAP | サポートされていません |