< Back

データ・タイプのマッピング:
MySQL

FlyData Sync における MySQL と Redshift (ver. 0.3.17) のデータ型のマッピング

MySQL と Amazon Redshift には、データ型の違いがあります。いくつかのフォーマットはサポートされますが、いくつかはサポートされません。
MySQL と Redshift のスムーズなレプリケートを行うため、FlyData では Amazon Redshift がサポートする型の中で、MySQL のデータ型と最もよく似た相当するデータ型に自動的に変換します。

以下がデータ型変換のマッピングとなります。

MySQL データ型 Redshift データ型 Agent version 注釈
BIGINT INT8
BIGINT UNSIGNED NUMERIC(20, 0) *1
BINARY VARCHAR *2, *3
BIT INT8 *11
BLOB VARCHAR(65535)
BOOL or BOOLEAN INT2
CHAR VARCHAR *3, *4
DATE DATE *5
DATETIME TIMESTAMP *5
DEC or DECIMAL NUMERIC *6
DEC or DECIMAL UNSIGNED NUMERIC *6
DOUBLE [PRECISION] FLOAT8
DOUBLE [PRECISION] UNSIGNED FLOAT8 *1
ENUM VARCHAR *7
FIXED NUMERIC *6
FIXED UNSIGNED NUMERIC *6
FLOAT FLOAT4
INT or INTEGER INT4
INT or INTEGER UNSIGNED INT8 *1
LONGBLOB VARCHAR *2, *3
LONGTEXT VARCHAR(MAX) *3, *4
MEDIUMBLOB VARCHAR *2, *3
MEDIUMINT INT4
MEDIUMINT UNSIGNED INT4 *1
MEDIUMTEXT VARCHAR(MAX) *3, *4
NUMERIC NUMERIC
SET VARCHAR *7
SMALLINT INT2
SMALLINT UNSIGNED INT4 *1
TEXT VARCHAR(MAX) *3, *4
TIME TIMESTAMP *8, *9, *10
TIMESTAMP TIMESTAMP *5
TINYBLOB VARCHAR *2
TINYINT INT2
TINYINT UNSIGNED INT2
TINYTEXT VARCHAR(MAX) *4
VARBINARY VARCHAR(MAX) *2, *3
VARCHAR VARCHAR *3, *4
YEAR DATE 0.3.10 *12
GEOMETRY, POINT, LINESTRING, POLYGON (サポート対象外)
MULTIPOINT, MULTILINESTRING, MULTIPOLYGON, GEOMETRYCOLLECTION (サポート対象外)

Notes

*1) Redshift は unsigned 型をサポートしません
*2) バイナリデータは “0xFFFF…” のような文字列型に変換されます 例) Binary 40bc8f => “0x40bc8f”
*3) Redshift の VARCHAR型の上限である、65,535桁で切り捨てられます
*4) 文字列は UTF-8 に変換されます
*5) ‘0000-00-00’ は ‘0001-01-01’ となります
*6) 最大 (precision, scale) は (38, 37) となります
*7) ラベルテキストは varchar 文字列として格納されます
*8) ‘00:00:00’ は ‘0001-01-01 00:00:00’ に変換されます
*9) 負の値は ‘0001-01-01 00:00:00’ からの値として変換されます。例えば、 ‘-01:00:00’ は ‘0001-12-31 23:00:00 BC’ となります
*10) 時の部分で23を超えるものは、日の部分として使用されます。例えば、 ‘25:00:00’ は ‘0001-01-02 01:00:00’ となります
*11) 例: b’101’ は Redshift では 5 となります
*12) DATE(2) と DATE(4) はサポートされます