異種データベースは異なるデータ型をサポートしています。Data Transmission Service (DTS) が異種データベース間でデータを同期する際、スキーマ初期化中にソースデータベースのデータ型を宛先データベースで互換性のあるものに変換します。本トピックでは、詳細なデータ型マッピングを提供し、データ同期がビジネスに与える影響を評価するのに役立ちます。
概要
以下のトピックでは、異種データベース間でのデータ同期におけるデータ型マッピングについて説明します。
MySQL からのデータ同期
以下は、ApsaraDB RDS for MySQL、自己管理 MySQL データベース、または PolarDB for MySQL などのソース MySQL データベースと、AnalyticDB for MySQL や AnalyticDB for PostgreSQL などの宛先異種データベース間のデータ型マッピングです。
ソースインスタンスから同期されるデータの値範囲が DTS がサポートする範囲を超える場合、宛先インスタンスに書き込まれるデータの精度が低下する可能性があります。
宛先インスタンス: AnalyticDB for MySQL および AnalyticDB for PostgreSQL
AnalyticDB for MySQL にデータを同期する際は、以下の点にご注意ください。
-
ソースフィールドが
AUTO_INCREMENT属性を持ち、かつINT型の場合、DTS は同期中にそれをBIGINT型に変換します。 -
JOIN操作を行うテーブルにINT型およびBIGINT型の両方のフィールドが含まれている場合、パフォーマンスへの影響を回避するために、宛先で一貫してINT型またはBIGINT型を使用することを推奨します。
|
型 |
ソースデータ型 |
有効値 |
AnalyticDB for MySQL 型 |
AnalyticDB for PostgreSQL 型 |
|
整数型 |
BIT[(M)] |
1 ~ 64 |
VARCHAR |
BIT[(M)] |
|
TINYINT[(M)] |
-128 ~ 127 |
TINYINT |
SMALLINT |
|
|
TINYINT[(M)] [UNSIGNED] |
0 ~ 255 |
SMALLINT |
SMALLINT |
|
|
SMALLINT[(M)] |
-32768 ~ 32767 |
SMALLINT |
SMALLINT |
|
|
SMALLINT[(M)] [UNSIGNED] |
0 ~ 65535 |
INT |
INTEGER |
|
|
MEDIUMINT[(M)] |
-8388608 ~ 8388607 |
INT |
INTEGER |
|
|
MEDIUMINT[(M)] [UNSIGNED] |
0 ~ 16777215 |
INT |
INTEGER |
|
|
INT[(M)] |
-2147483648 ~ 2147483647 |
INT |
INTEGER |
|
|
INT[(M)] [UNSIGNED] |
0 ~ 4294967295 |
BIGINT |
BIGINT |
|
|
BIGINT[(M)] |
-9223372036854775808 ~ 9223372036854775807 |
BIGINT |
BIGINT |
|
|
BIGINT[(M)] [UNSIGNED] |
0 ~ 18446744073709551615 |
DECIMAL(20,0) |
NUMERIC(20) |
|
|
小数型 |
DECIMAL[(M[,D])] |
M:0 ~ 65; D:0 ~ 30 |
DECIMAL[(M[,D])] |
DECIMAL[(M[,D])] |
|
FLOAT(p) |
1.175494351E-38 ~ 3.402823466E+38 |
FLOAT |
REAL |
|
|
DOUBLE[(M,D)] |
2.2250738585072014E-308 ~ 1.7976931348623157E+308 |
DOUBLE |
DOUBLE PRECISION |
|
|
日付時刻型 |
DATE |
1000-01-01 ~ 9999-12-31 説明
フォーマット:YYYY-MM-DD。 |
DATE |
DATE |
|
DATETIME[(fsp)] |
1000-01-01 00:00:00.000000 ~ 9999-12-31 23:59:59.999999 説明
フォーマット:YYYY-MM-DD hh:mm:ss[.fraction] (協定世界時 (UTC))。 |
DATETIME |
TIMESTAMP |
|
|
TIMESTAMP[(fsp)] |
1970-01-01 00:00:01.000000 ~ 2038-01-19 03:14:07.999999 説明
フォーマット:YYYY-MM-DD hh:mm:ss[.fraction] (協定世界時 (UTC))。 |
TIMESTAMP |
TIMESTAMP WITH TIME ZONE |
|
|
TIME[(fsp)] |
-838:59:59.000000 ~ 838:59:59.000000 説明
フォーマット:hh:mm:ss[.fraction] (協定世界時 (UTC))。 |
TIME |
TIMESTAMP WITH TIME ZONE |
|
|
YEAR[(4)] |
1901 ~ 2155、または 0000 |
INT |
INTEGER |
|
|
文字列型 |
CHAR[(M)] |
0 ~ 255 文字 |
VARCHAR |
CHAR |
|
VARCHAR(M) |
0 ~ 65,535 文字 |
VARCHAR |
VARCHAR |
|
|
BINARY[(M)] |
0 ~ 255 バイト |
VARBINARY |
BYTEA |
|
|
VARBINARY(M) |
0 ~ 65,535 バイト |
VARBINARY |
BYTEA |
|
|
TINYBLOB |
255 (2^8 - 1) バイト |
VARBINARY |
BYTEA |
|
|
TINYTEXT |
255 (2^8 - 1) 文字 |
VARCHAR |
TEXT |
|
|
BLOB |
65,535 (2^16 - 1) バイト |
VARBINARY |
BYTEA |
|
|
TEXT |
65,535 (2^16 - 1) 文字 |
VARCHAR |
TEXT |
|
|
MEDIUMBLOB |
16,777,215 (2^24 - 1) バイト |
VARBINARY |
BYTEA |
|
|
MEDIUMTEXT |
16,777,215 (2^24 - 1) 文字 |
VARCHAR |
TEXT |
|
|
LONGBLOB |
4,294,967,295 または 4 GB (2^32 - 1) バイト |
VARBINARY |
BYTEA |
|
|
LONGTEXT |
4,294,967,295 または 4 GB (2^32 - 1) 文字 |
VARCHAR |
TEXT |
|
|
ENUM('value1','value2',...) |
最大 65,535 の列挙値 |
VARCHAR |
VARCHAR(128) |
|
|
SET('value1','value2',...) |
最大 64 メンバー |
VARCHAR |
VARCHAR(128) |
|
|
空間型 |
GEOMETRY |
任意のジオメトリ型の値 |
VARBINARY |
POLYGON |
|
POINT |
N/A |
VARBINARY |
POINT |
|
|
LINESTRING |
N/A |
VARBINARY |
PATH |
|
|
POLYGON |
N/A |
VARBINARY |
POLYGON |
|
|
MULTIPOINT |
N/A |
VARBINARY |
POLYGON |
|
|
MULTILINESTRING |
N/A |
VARBINARY |
PATH |
|
|
MULTIPOLYGON |
N/A |
VARBINARY |
POLYGON |
|
|
GEOMETRYCOLLECTION |
任意のジオメトリ型の値のコレクション |
VARBINARY |
POLYGON |
|
|
JSON 型 |
JSON |
N/A |
JSON |
JSON |
宛先インスタンス:DataHub および Kafka
|
型 |
ソース型 |
有効値 |
DataHub 型 |
Kafka 型 |
|
整数 |
|
1 ~ 64 |
|
MySQL および PolarDB for MySQL のデータ型と同じです。 |
|
|
-128 ~ 127 |
|
||
|
|
0 ~ 255 |
|
||
|
|
-32768 ~ 32767 |
|
||
|
|
0 ~ 65535 |
|
||
|
|
-8388608 ~ 8388607 |
|
||
|
|
0 ~ 16777215 |
|
||
|
|
-2147483648 ~ 2147483647 |
|
||
|
|
0 ~ 4294967295 |
|
||
|
|
-9223372036854775808 ~ 9223372036854775807 |
|
||
|
|
0 ~ 18446744073709551615 |
|
||
|
小数 |
|
M:0 ~ 65; D:0 ~ 30 |
|
|
|
|
1.175494351E-38 ~ 3.402823466E+38 |
|
||
|
|
2.2250738585072014E-308 ~ 1.7976931348623157E+308 |
|
||
|
日付時刻 |
|
1000-01-01 ~ 9999-12-31 説明
フォーマット: |
|
|
|
|
1000-01-01 00:00:00.000000 ~ 9999-12-31 23:59:59.999999 説明
フォーマット: |
|
||
|
|
1970-01-01 00:00:01.000000 ~ 2038-01-19 03:14:07.999999 説明
フォーマット: |
|
||
|
|
-838:59:59.000000 ~ 838:59:59.000000 説明
フォーマット: |
|
||
|
|
1901 ~ 2155、または 0000 |
|
||
|
文字列 |
|
0 ~ 255 文字 |
|
|
|
|
0 ~ 65,535 文字 |
|
||
|
|
0 ~ 255 バイト |
|
||
|
|
0 ~ 65,535 バイト |
|
||
|
|
255 (2^8 - 1) バイト |
|
||
|
|
255 (2^8 - 1) 文字 |
|
||
|
|
65,535 (2^16 - 1) バイト |
|
||
|
|
65,535 (2^16 - 1) 文字 |
|
||
|
|
16,777,215 (2^24 - 1) バイト |
|
||
|
|
16,777,215 (2^24 - 1) 文字 |
|
||
|
|
4,294,967,295 (4 GB) (2^32 - 1) バイト |
|
||
|
|
4,294,967,295 (4 GB) (2^32 - 1) 文字 |
|
||
|
|
|
|
||
|
|
|
|
||
|
空間 |
|
任意のジオメトリ型。 |
|
|
|
|
N/A |
|
||
|
|
N/A |
|
||
|
|
N/A |
|
||
|
|
N/A |
|
||
|
|
N/A |
|
||
|
|
N/A |
|
||
|
|
任意のジオメトリ型のコレクション。 |
|
||
|
JSON |
|
N/A |
|
ターゲットデータベース:MaxCompute、Elasticsearch、および ClickHouse
|
型 |
ソース型 |
有効値 |
MaxCompute |
Elasticsearch |
ClickHouse |
|
整数 |
BIT[(M)] |
1 ~ 64 |
BOOLEAN | STRING |
BOOLEAN | LONG 説明
値が 1 バイトの場合、Elasticsearch では BOOLEAN データ型を使用することを推奨します。 |
UInt8 |
|
TINYINT[(M)] |
-128 ~ 127 |
BIGINT |
SHORT |
Int8 |
|
|
TINYINT[(M)] [UNSIGNED] |
0 ~ 255 |
BIGINT |
INTEGER |
UInt8 |
|
|
SMALLINT[(M)] |
-32768 ~ 32767 |
BIGINT |
SHORT |
Int16 |
|
|
SMALLINT[(M)] [UNSIGNED] |
0 ~ 65535 |
BIGINT |
INTEGER |
UInt16 |
|
|
MEDIUMINT[(M)] |
-8388608 ~ 8388607 |
BIGINT |
INTEGER |
Int32 |
|
|
MEDIUMINT[(M)] [UNSIGNED] |
0 ~ 16777215 |
BIGINT |
INTEGER |
Int32 |
|
|
INT[(M)] |
-2147483648 ~ 2147483647 |
BIGINT |
INTEGER |
Int32 |
|
|
INT[(M)] [UNSIGNED] |
0 ~ 4294967295 |
BIGINT |
LONG |
UInt32 |
|
|
BIGINT[(M)] |
-9223372036854775808 ~ 9223372036854775807 |
BIGINT |
LONG |
Int64 |
|
|
BIGINT[(M)] [UNSIGNED] |
0 ~ 18446744073709551615 |
BIGINT |
LONG |
UInt64 |
|
|
小数 |
DECIMAL[(M[,D])] |
M:0 ~ 65; D:0 ~ 30 |
DOUBLE |
DOUBLE 説明
DECIMAL 値に小数点が含まれる場合、データ整合性を確保するために Elasticsearch では TEXT データ型を使用することを推奨します。 |
DECIMAL |
|
FLOAT(p) |
1.175494351E-38 ~ 3.402823466E+38 |
DOUBLE |
FLOAT |
Float32 |
|
|
DOUBLE[(M,D)] |
2.2250738585072014E-308 ~ 1.7976931348623157E+308 |
DOUBLE |
DOUBLE |
Float64 |
|
|
日付時刻 |
DATE |
1000-01-01 ~ 9999-12-31 説明
フォーマットは YYYY-MM-DD です。 |
DATETIME |
DATE 説明
フォーマットは YYYY-MM-DD です。詳細については、「date format」をご参照ください。 |
DATE32 説明
ClickHouse の DATE データ型の有効値は、MySQL のそれよりも小さいです。ClickHouse で DATE データ型を使用すると、書き込み操作が失敗する可能性があります。 |
|
DATETIME[(fsp)] |
1000-01-01 00:00:00.000000 ~ 9999-12-31 23:59:59.999999 説明
フォーマットは YYYY-MM-DD hh:mm:ss[.fraction] (協定世界時 (UTC)) です。 |
DATETIME |
DATE 説明
DATE フォーマットは yyyy-MM-dd'T'HH:mm:ss (協定世界時 (UTC)) です。マイクロ秒精度の場合、フォーマットは yyyy-MM-dd'T'HH:mm:ss.S です。詳細については、「date format」をご参照ください。 |
DATETIME64 説明
ClickHouse の DATETIME データ型の有効値は、MySQL のそれよりも小さいです。ClickHouse で DATETIME データ型を使用すると、書き込み操作が失敗する可能性があります。 |
|
|
TIMESTAMP[(fsp)] |
1970-01-01 00:00:01.000000 ~ 2038-01-19 03:14:07.999999 説明
フォーマットは YYYY-MM-DD hh:mm:ss[.fraction] (協定世界時 (UTC)) です。 |
DATETIME |
DATE 説明
DATE フォーマットは yyyy-MM-dd'T'HH:mm:ss (協定世界時 (UTC)) です。マイクロ秒精度の場合、フォーマットは yyyy-MM-dd'T'HH:mm:ss.S です。詳細については、「date format」をご参照ください。 |
DATETIME 説明
タイムゾーン情報は含まれません。 |
|
|
TIME[(fsp)] |
-838:59:59.000000 ~ 838:59:59.000000 説明
フォーマットは hh:mm:ss[.fraction] (協定世界時 (UTC)) です。 |
STRING |
DATE 説明
詳細については、「date format」をご参照ください。 |
STRING |
|
|
YEAR[(4)] |
1901 ~ 2155、または 0000 |
STRING |
DATE 説明
DATE フォーマットは yyyy です。詳細については、「date format」をご参照ください。 |
Int16 |
|
|
文字列 |
CHAR[(M)] |
0 ~ 255 文字 |
STRING |
KEYWORD |
STRING |
|
VARCHAR(M) |
0 ~ 65,535 文字 |
STRING |
|
STRING |
|
|
BINARY[(M)] |
0 ~ 255 バイト |
STRING |
BINARY |
STRING |
|
|
VARBINARY(M) |
0 ~ 65,535 バイト |
STRING |
BINARY |
STRING |
|
|
TINYBLOB |
255 (2^8 - 1) バイト |
STRING |
BINARY |
STRING |
|
|
TINYTEXT |
255 (2^8 - 1) 文字 |
STRING |
TEXT |
STRING |
|
|
BLOB |
65,535 (2^16 - 1) バイト |
STRING |
BINARY |
STRING |
|
|
TEXT |
65,535 (2^16 - 1) 文字 |
STRING |
TEXT |
STRING |
|
|
MEDIUMBLOB |
16,777,215 (2^24 - 1) バイト |
STRING |
BINARY |
STRING |
|
|
MEDIUMTEXT |
16,777,215 (2^24 - 1) 文字 |
STRING |
TEXT |
STRING |
|
|
LONGBLOB |
4,294,967,295 または 4 GB (2^32 - 1) バイト |
STRING |
BINARY |
STRING |
|
|
LONGTEXT |
4,294,967,295 または 4 GB (2^32 - 1) 文字 |
STRING |
TEXT |
STRING |
|
|
ENUM('value1','value2',...) |
最大 65,535 の列挙値 |
STRING |
KEYWORD |
ENUM |
|
|
SET('value1','value2',...) |
最大 64 メンバー |
STRING |
KEYWORD |
STRING |
|
|
空間型 |
GEOMETRY |
任意のジオメトリ型の値 |
STRING |
GEO_SHAPE |
STRING |
|
POINT |
N/A |
STRING |
GEO_POINT |
STRING |
|
|
LINESTRING |
N/A |
STRING |
GEO_SHAPE |
STRING |
|
|
POLYGON |
N/A |
STRING |
GEO_SHAPE |
STRING |
|
|
MULTIPOINT |
N/A |
STRING |
GEO_SHAPE 説明
|
STRING |
|
|
MULTILINESTRING |
N/A |
STRING |
GEO_SHAPE |
STRING |
|
|
MULTIPOLYGON |
N/A |
STRING |
GEO_SHAPE |
STRING |
|
|
GEOMETRYCOLLECTION |
任意のジオメトリ型の値のコレクション |
STRING |
GEO_SHAPE |
STRING |
|
|
JSON 型 |
JSON |
N/A |
STRING |
OBJECT 説明
|
STRING |
宛先インスタンス:Tablestore
|
ソース型 |
Tablestore 型 |
|
INTEGER |
INTEGER |
|
INT |
INTEGER |
|
SMALLINT |
INTEGER |
|
TINYINT |
INTEGER |
|
MEDIUMINT |
INTEGER |
|
BIGINT |
INTEGER |
|
DECIMAL |
DOUBLE |
|
NUMERIC |
DOUBLE |
|
FLOAT |
DOUBLE |
|
DOUBLE |
DOUBLE |
|
BIT |
BOOLEAN |
|
DATE |
STRING または INTEGER 説明
デフォルト:STRING。 |
|
TIMESTAMP |
|
|
DATETIME |
|
|
TIME |
|
|
YEAR |
|
|
CHAR |
STRING |
|
VARCHAR |
STRING |
|
BINARY |
BINARY |
|
VARBINARY |
BINARY |
|
TINYBLOB/BLOB/MEDIUMBLOB/LONGBLOB |
BINARY |
|
TINYTEXT/TEXT/MEDIUMTEXT/LONGTEXT |
STRING |
|
ENUM |
STRING |
|
SET |
STRING |
|
GEOMETRY |
STRING |
|
POINT |
STRING |
|
LINESTRING |
STRING |
|
POLYGON |
STRING |
|
MULTIPOINT |
STRING |
|
MULTILINESTRING |
STRING |
|
MULTIPOLYGON |
STRING |
|
GEOMETRYCOLLECTION |
STRING |
|
JSON |
STRING |
ターゲットインスタンス:Lindorm
|
ソース型 |
Lindorm 型 |
|
BOOLEAN |
BOOLEAN |
|
BIT |
BOOLEAN |
|
TINYINT |
TINYINT |
|
SMALLINT |
SMALLINT |
|
INTEGER |
INTEGER |
|
BIGINT |
BIGINT |
|
BIGINT UNSIGNED 重要
Lindorm は符号付き BIGINT 範囲 (-9223372036854775808 ~ 9223372036854775807) 内の値のみをサポートしています。 |
BIGINT |
|
FLOAT |
FLOAT |
|
DOUBLE |
DOUBLE |
|
DECIMAL |
DECIMAL 重要
精度はソースフィールドの精度と一致している必要があります。 |
|
CHAR/VARCHAR/TEXT/TINYTEXT/MEDIUMTEXT/LONGTEXT |
CHAR/VARCHAR |
|
BINARY |
BINARY |
|
BLOB |
VARBINARY |
|
VARBINARY |
VARBINARY |
|
TIMESTAMP |
TIMESTAMP |
|
YEAR |
INTEGER |
|
DATE |
マッピングされたデータ型は、ターゲット Lindorm インスタンスのバージョンによって異なります。
|
|
DATETIME |
VARCHAR 重要
|
|
TIME |
マッピングされたデータ型は、ターゲット Lindorm インスタンスのバージョンによって異なります。
|
|
JSON |
JSON |
ターゲットインスタンス:Oracle
|
型 |
ソースデータ型 |
値の範囲 |
Oracle データ型 |
|
整数型 |
BIT[(M)] |
1 ~ 64 |
NUMBER(2,0) |
|
TINYINT[(M)] |
-128 ~ 127 |
NUMBER(3,0) |
|
|
TINYINT[(M)] [UNSIGNED] |
0 ~ 255 |
NUMBER(3,0) |
|
|
SMALLINT[(M)] |
-32768 ~ 32767 |
NUMBER(5,0) |
|
|
SMALLINT[(M)] [UNSIGNED] |
0 ~ 65535 |
NUMBER(5,0) |
|
|
MEDIUMINT[(M)] |
-8388608 ~ 8388607 |
NUMBER(7,0) |
|
|
MEDIUMINT[(M)] [UNSIGNED] |
0 ~ 16777215 |
NUMBER(7,0) |
|
|
INT[(M)] |
-2147483648 ~ 2147483647 |
INT |
|
|
INT[(M)] [UNSIGNED] |
0 ~ 4294967295 |
NUMBER(10,0) |
|
|
BIGINT[(M)] |
-9223372036854775808 ~ 9223372036854775807 |
NUMBER(20,0) |
|
|
BIGINT[(M)] [UNSIGNED] |
0 ~ 18446744073709551615 |
NUMBER(20,0) |
|
|
小数型 |
DECIMAL[(M[,D])] |
M:0 ~ 65; D:0 ~ 30 |
NUMBER(M,D) 説明
精度とスケールが省略された場合、データ型はデフォルトで |
|
FLOAT(p) |
1.175494351E-38 ~ 3.402823466E+38 |
FLOAT |
|
|
DOUBLE[(M,D)] |
2.2250738585072014E-308 ~ 1.7976931348623157E+308 |
DOUBLE |
|
|
日付時刻型 |
DATE |
1000-01-01 ~ 9999-12-31 説明
フォーマット:YYYY-MM-DD。 |
DATE |
|
DATETIME[(fsp)] |
1000-01-01 00:00:00.000000 ~ 9999-12-31 23:59:59.999999 説明
フォーマット:YYYY-MM-DD hh:mm:ss[.fraction] (協定世界時 (UTC))。 |
TIMESTAMP[(fsp)] 説明
精度が省略された場合、データ型はデフォルトで |
|
|
TIMESTAMP[(fsp)] |
1970-01-01 00:00:01.000000 ~ 2038-01-19 03:14:07.999999 説明
フォーマット:YYYY-MM-DD hh:mm:ss[.fraction] (協定世界時 (UTC))。 |
TIMESTAMP[(fsp)] WITH LOCAL TIME ZONE 説明
精度が省略された場合、データ型はデフォルトで |
|
|
TIME[(fsp)] |
-838:59:59.000000 ~ 838:59:59.000000 説明
フォーマット:hh:mm:ss[.fraction] (協定世界時 (UTC))。 |
サポートされていません |
|
|
YEAR[(4)] |
1901 ~ 2155、または 0000 |
INT |
|
|
文字列型 |
CHAR[(M)] |
0 ~ 255 文字 |
CHAR[(M)] 説明
長さが省略された場合、データ型はデフォルトで |
|
VARCHAR(M) |
0 ~ 65,535 文字 |
VARCHAR(M) |
|
|
BINARY[(M)] |
0 ~ 255 バイト |
RAW(M) 説明
長さが省略された場合、データ型はデフォルトで |
|
|
VARBINARY(M) |
0 ~ 65,535 バイト |
RAW(M) |
|
|
TINYBLOB |
255 (2^8 - 1) バイト |
BLOB |
|
|
TINYTEXT |
255 (2^8 - 1) 文字 |
CLOB |
|
|
BLOB |
65,535 (2^16 - 1) バイト |
BLOB |
|
|
TEXT |
65,535 (2^16 - 1) 文字 |
CLOB |
|
|
MEDIUMBLOB |
16,777,215 (2^24 - 1) バイト |
BLOB |
|
|
MEDIUMTEXT |
16,777,215 (2^24 - 1) 文字 |
CLOB |
|
|
LONGBLOB |
4,294,967,295 (2^32 - 1) バイト |
BLOB |
|
|
LONGTEXT |
4,294,967,295 (2^32 - 1) 文字 |
CLOB |
|
|
ENUM('value1','value2',...) |
最大 65,535 の列挙値 |
サポートされていません |
|
|
SET('value1','value2',...) |
最大 64 メンバー |
サポートされていません |
|
|
空間型 |
GEOMETRY |
任意のジオメトリ型の値 |
サポートされていません |
|
POINT |
N/A |
サポートされていません |
|
|
LINESTRING |
N/A |
サポートされていません |
|
|
POLYGON |
N/A |
サポートされていません |
|
|
MULTIPOINT |
N/A |
サポートされていません |
|
|
MULTILINESTRING |
N/A |
サポートされていません |
|
|
MULTIPOLYGON |
N/A |
サポートされていません |
|
|
GEOMETRYCOLLECTION |
任意のジオメトリ型の値のコレクション |
サポートされていません |
|
|
JSON 型 |
JSON |
N/A |
CLOB |
Oracle からのデータ同期
自己管理 Oracle データベースから AnalyticDB for PostgreSQL などの異種宛先インスタンスにデータを同期する場合、データ型は次のようにマッピングされます。
ソースデータの有効値が DTS がサポートする範囲を超える場合、宛先インスタンスに書き込まれるデータの精度が低下する可能性があります。
|
型 |
Oracle データ型 |
値の範囲 |
MySQL、PolarDB for MySQL、および PolarDB-X |
AnalyticDB for PostgreSQL |
|
数値型 |
NUMBER(p,s) |
ストレージ:1 ~ 22 バイト。
|
DECIMAL[(p[,s])] 説明
精度とスケールが指定されていない場合、DTS はデータ型を DECIMAL(65,30) にマッピングします。 |
DECIMAL | TINYINT | SMALLINT | INTEGER | BIGINT |
|
FLOAT(p) |
ストレージ:1 ~ 22 バイト。
|
DOUBLE |
DOUBLE PRECISION |
|
|
BINARY_FLOAT |
4 バイト、32 ビットの単精度浮動小数点数。 |
FLOAT |
DOUBLE PRECISION |
|
|
BINARY_DOUBLE |
8 バイト、64 ビットの倍精度浮動小数点数。 |
DOUBLE |
DOUBLE PRECISION |
|
|
日付時刻型 |
DATE |
N/A |
DATETIME |
TIMESTAMP(0) |
|
TIMESTAMP [(fractional_seconds_precision)] |
N/A |
DATETIME[(fractional_seconds_precision)] |
TIMESTAMP |
|
|
TIMESTAMP [(fractional_seconds_precision)] WITH TIME ZONE |
N/A |
DATETIME[(fractional_seconds_precision)] |
TIMESTAMP WITH TIME ZONE |
|
|
TIMESTAMP [(fractional_seconds_precision)] WITH LOCAL TIME ZONE |
N/A |
DATETIME[(fractional_seconds_precision)] |
TIMESTAMP WITH TIME ZONE |
|
|
INTERVAL YEAR [(year_precision)] TO MONTH |
N/A |
サポートされていません |
VARCHAR(32) |
|
|
INTERVAL DAY [(day_precision)] TO SECOND [(fractional_seconds_precision)] |
N/A |
サポートされていません |
VARCHAR(32) |
|
|
文字列型 |
CHAR [(size [BYTE | CHAR])] |
最大サイズ:2,000 バイト。 |
CHAR[(n)] 説明
サイズが指定されていない場合、DTS はデータ型を CHAR(1) にマッピングします。 |
CHAR |
|
NCHAR[(size)] |
最大サイズ:2,000 バイト。 |
NATIONAL CHAR[(n)] 説明
サイズが指定されていない場合、DTS はデータ型を NATIONAL CHAR(1) にマッピングします。 |
VARCHAR |
|
|
VARCHAR(size [BYTE | CHAR]) |
|
VARCHAR(n) |
VARCHAR(n) |
|
|
VARCHAR2(size [BYTE | CHAR]) |
|
VARCHAR(n) |
VARCHAR |
|
|
NVARCHAR2(size) |
|
NATIONALVARCHAR[(n)] |
VARCHAR |
|
|
LONG |
最大サイズ:2 GB (2^31 - 1 バイト)。 |
LONGTEXT |
TEXT |
|
|
RAW(size) |
最大サイズ:32,767 バイトまたは 2,000 バイト。 |
BINARY(2*size) |
BYTEA |
|
|
LONG RAW |
最大サイズ:2 GB。 |
LONGBLOB |
BYTEA |
|
|
CLOB |
最大サイズ:(4 GB - 1) × DB_BLOCK_SIZE。 |
LONGTEXT |
TEXT |
|
|
NCLOB |
最大サイズ:(4 GB - 1) × DB_BLOCK_SIZE。 |
LONGTEXT |
TEXT |
|
|
BLOB |
最大サイズ:(4 GB - 1) × DB_BLOCK_SIZE。 |
LONGBLOB |
BYTEA |
|
|
BFILE |
最大サイズ:4 GB。 |
サポートされていません |
サポートされていません |
|
|
JSON 型 |
JSON |
最大サイズ:32 MB。 |
サポートされていません |
JSON |
|
ROWID 型 |
ROWID |
64 文字。 |
サポートされていません |
OID |
|
UROWID |
64 文字。 |
サポートされていません |
サポートされていません |
|
|
空間型 |
カスタマイズが必要です |
サポートされていません |
||
AnalyticDB for PostgreSQL で Oracle データ型がサポートされていない場合、DTS はそれを BYTEA に変換します。変換に失敗した場合は、対応するフィールドの値を NULL に設定します。
PostgreSQL ソースからのデータ同期
このセクションでは、自己管理 PostgreSQL および ApsaraDB RDS for PostgreSQL を含むソース PostgreSQL インスタンスから AnalyticDB for PostgreSQL などの異種宛先インスタンスにデータを同期する際のデータ型マッピングを示します。
ソースインスタンスからのデータの有効値が DTS がサポートする範囲を超える場合、宛先インスタンスのデータ精度が低下します。
|
型 |
PostgreSQL データ型 |
値の範囲 |
宛先データ型 |
|
整数型 |
SMALLINT |
-32768 ~ +32767 |
SMALLINT |
|
INTEGER |
-2147483648 ~ +2147483647 |
INTEGER |
|
|
BIGINT |
-9223372036854775808 ~ +9223372036854775807 |
BIGINT |
|
|
小数型 |
DECIMAL |
小数点より前の桁数は最大 131,072 桁、小数点以下の桁数は最大 16,383 桁。 |
DECIMAL |
|
NUMERIC |
小数点より前の桁数は最大 131,072 桁、小数点以下の桁数は最大 16,383 桁。 |
NUMERIC |
|
|
REAL |
精度は 6 桁。 |
REAL |
|
|
DOUBLE PRECISION |
精度は 15 桁。 |
DOUBLE PRECISION |
|
|
通貨型 |
MONEY |
-92233720368547758.08 ~ +92233720368547758.07 |
MONEY |
|
文字列型 |
CHARACTER VARYING(n) |
N/A |
CHARACTER VARYING(n) |
|
CHARACTER(n) |
N/A |
CHARACTER(n) |
|
|
TEXT |
N/A |
TEXT |
|
|
CHAR |
デフォルト長:1 バイト |
CHAR |
|
|
NAME |
最大長:64 バイト |
NAME |
|
|
テキスト検索型 |
TSQUERY |
テキストクエリ。 |
TEXT |
|
TSVECTOR |
テキスト検索用に最適化されたドキュメント。 |
TEXT |
|
|
バイナリデータ型 |
BYTEA |
1 または 4 バイト + 実際のバイナリ文字列。 |
BYTEA |
|
日付時刻型 |
TIMESTAMP [ (p) ] [ WITHOUT TIME ZONE ] |
タイムゾーンなしの日付時刻。ストレージサイズ:8 バイト。 |
TIMESTAMP [ (p) ] [ WITHOUT TIME ZONE ] |
|
TIMESTAMP [ (p) ] WITH TIME ZONE |
タイムゾーン付きの日付時刻。ストレージサイズ:8 バイト。 |
TIMESTAMP [ (p) ] WITH TIME ZONE |
|
|
DATE |
日付。ストレージサイズ:4 バイト。 |
DATE |
|
|
TIME [ (p) ] [ WITHOUT TIME ZONE ] |
タイムゾーンなしの時刻。ストレージサイズ:8 バイト。 |
TIME [ (p) ] [ WITHOUT TIME ZONE ] |
|
|
TIME [ (p) ] WITH TIME ZONE |
タイムゾーン付きの時刻。ストレージサイズ:12 バイト。 |
TIME [ (p) ] WITH TIME ZONE |
|
|
interval [ fields ] [ (p) ] |
時間間隔。ストレージサイズ:16 バイト。 |
interval [ fields ] [ (p) ] |
|
|
ブール型 |
BOOLEAN |
1 バイト |
BOOLEAN 重要
宛先インスタンスが ClickHouse の場合、DTS はこのデータ型を STRING にマッピングします。 |
|
列挙型 |
カスタム列挙 |
N/A |
VARCHAR(128) |
|
空間型 |
POINT |
平面上の点。ストレージサイズ:16 バイト。 |
POINT |
|
LINE |
無限直線。ストレージサイズ:32 バイト。 |
LINE |
|
|
LSEG |
有限線分。ストレージサイズ:32 バイト。 |
LSEG |
|
|
BOX |
長方形ボックス。ストレージサイズ:32 バイト。 |
BOX |
|
|
PATH |
パス。ストレージサイズ:16 + 16n バイト。 |
PATH |
|
|
POLYGON |
ポリゴン(閉じたパスに類似)。ストレージサイズ:40 + 16n バイト。 |
POLYGON |
|
|
CIRCLE |
円。ストレージサイズ:24 バイト。 |
CIRCLE |
|
|
ネットワークアドレス型 |
CIDR |
IPv4 および IPv6 ネットワーク。ストレージサイズ:7 または 19 バイト。 |
CIDR |
|
INET |
IPv4 および IPv6 ホストおよびネットワーク。ストレージサイズ:7 または 19 バイト。 |
INET |
|
|
MACADDR |
MAC アドレス。ストレージサイズ:6 バイト。 |
MACADDR |
|
|
MACADDR8 |
MAC アドレス (EUI-64 形式)。ストレージサイズ:8 バイト。 |
MACADDR8 |
|
|
ビット文字列型 |
Bit (n) |
N/A |
Bit (n) |
|
BIT VARYING (n) |
N/A |
BIT VARYING (n) |
|
|
UUID 型 |
UUID |
N/A |
VARCHAR(64) |
|
XML 型 |
XML |
N/A |
XML |
|
JSON 型 |
JSON |
N/A |
JSON |
|
JSONB |
N/A |
JSONB |
SQL Server からのデータ同期
ソースインスタンスが SQL Server(セルフマネージド SQL Server または ApsaraDB RDS for SQL Server インスタンスを含む)で、送信先が AnalyticDB for MySQL、AnalyticDB for PostgreSQL、PostgreSQL、MySQL、または PolarDB for MySQL クラスターなどの異種データベースである場合、以下のデータ型マッピングが適用されます。
ソースインスタンスからのデータの有効値が DTS がサポートする範囲を超える場合、宛先インスタンスに書き込まれる際の精度が低下します。
|
型 |
SQL Server 型 |
範囲 |
AnalyticDB for MySQL 型 |
PostgreSQL および AnalyticDB for PostgreSQL 型 |
MySQL および PolarDB for MySQL 型 |
|
整数 |
BIT |
1、0、または NULL の整数。 |
BOOLEAN |
BIT(1) |
BIT(1) |
|
TINYINT |
0 ~ 255 |
TINYINT |
SMALLINT |
TINYINT UNSIGNED |
|
|
SMALLINT |
-2^15 (-32,768) ~ 2^15-1 (32,767) |
SMALLINT |
SMALLINT |
SMALLINT |
|
|
INT |
-2^31 (-2,147,483,648) ~ 2^31-1 (2,147,483,647) |
INTEGER |
INTEGER |
INT |
|
|
BIGINT |
-2^63 (-9,223,372,036,854,775,808) ~ 2^63-1 (9,223,372,036,854,775,807) |
BIGINT |
BIGINT |
BIGINT |
|
|
小数 |
NUMERIC[ ( |
-10^38 + 1 ~ 10^38 - 1;1 <= |
DECIMAL |
DECIMAL |
DECIMAL[ ( |
|
DECIMAL[ ( |
-10^38 + 1 ~ 10^38 - 1;1 <= |
DECIMAL |
DECIMAL |
DECIMAL[ ( |
|
|
FLOAT |
-1.79E+308 ~ -2.23E-308、0、および 2.23E-308 ~ 1.79E+308 |
DOUBLE |
DOUBLE PRECISION |
DOUBLE |
|
|
REAL |
-3.40E+38 ~ -1.18E-38、0、および 1.18E-38 ~ 3.40E+38 |
FLOAT |
REAL |
DOUBLE |
|
|
通貨 |
MONEY |
-922,337,203,685,477.5808 ~ 922,337,203,685,477.5807 |
DECIMAL(19, 4) |
DECIMAL(19, 4) |
DECIMAL(19, 4) |
|
SMALLMONEY |
-214,748.3648 ~ 214,748.3647 |
DECIMAL(10, 4) |
DECIMAL(10, 4) |
DECIMAL(10, 4) |
|
|
日付時刻 |
DATE |
0001-01-01 ~ 9999-12-31 |
DATE |
DATE |
DATE |
|
DATETIME |
日付範囲:1753 年 1 月 1 日 ~ 9999 年 12 月 31 日 時刻範囲:00:00:00 ~ 23:59:59.997 |
DATETIME |
TIMESTAMP(3) WITHOUT TIME ZONE |
DATETIME(3) |
|
|
DATETIME2[ (fractional seconds precision) ] |
日付範囲:西暦 1 年 1 月 1 日 ~ 西暦 9999 年 12 月 31 日 時刻範囲:00:00:00 ~ 23:59:59.9999999 |
DATETIME |
TIMESTAMP(7) WITHOUT TIME ZONE |
DATETIME( 説明
デフォルトの精度は 6 です。 |
|
|
DATETIMEOFFSET [ (fractional seconds precision) ] |
日付範囲:西暦 1 年 1 月 1 日 ~ 西暦 9999 年 12 月 31 日 時刻範囲:00:00:00 ~ 23:59:59.9999999 タイムゾーンオフセット範囲:-14:00 ~ +14:00 |
TIMESTAMP |
TIMESTAMP(7) WITH TIME ZONE |
DATETIME( 説明
デフォルトの精度は 6 です。 |
|
|
SMALLDATETIME |
秒は常にゼロ (:00) で、小数部はありません。 |
DATETIME |
TIMESTAMP WITHOUT TIME ZONE |
DATETIME |
|
|
TIME [ (fractional second scale) ] |
00:00:00.0000000 ~ 23:59:59.9999999 |
TIME |
TIME(7) WITH TIME ZONE |
TIME( |
|
|
TIMESTAMP[( |
1970-01-01 00:00:01.000000 ~ 2038-01-19 03:14:07.999999 説明
フォーマット:YYYY-MM-DD hh:mm:ss[.fraction] (協定世界時 (UTC))。 |
VARBINARY(8) |
BYTEA |
VARBINARY(8) |
|
|
文字列 |
BINARY [ ( |
|
VARBINARY |
BYTEA |
|
|
VARBINARY [ ( |
|
VARBINARY |
BYTEA |
|
|
|
CHAR [ ( |
|
VARCHAR |
CHARACTER |
|
|
|
VARCHAR [ ( |
|
VARCHAR |
CHARACTER |
|
|
|
NCHAR [ ( |
|
VARCHAR |
CHARACTER VARYING |
VARCHAR(200) |
|
|
NVARCHAR [ ( |
|
VARCHAR |
CHARACTER VARYING |
|
|
|
NTEXT |
最大文字列長が 2^30-1 (1,073,741,823) 文字の可変長 Unicode データ。 |
VARCHAR |
TEXT |
LONGTEXT |
|
|
TEXT |
最大文字列長は 2^31-1 (2,147,483,647) バイトです。 |
VARCHAR |
TEXT |
LONGTEXT |
|
|
IMAGE |
0 ~ 2^31-1 (2,147,483,647) バイトの可変長バイナリデータ。 |
VARBINARY |
BYTEA |
LONGBLOB |
|
|
空間型 (geography および geometry) |
GEOGRAPHY |
N/A |
VARCHAR |
サポートされていません |
BLOB |
|
GEOMETRY |
N/A |
VARCHAR |
サポートされていません |
BLOB |
|
|
XML |
XML ( [ CONTENT | DOCUMENT ] xml_schema_collection ) |
N/A |
VARCHAR |
XML |
LONGTEXT |
|
その他 |
UNIQUEIDENTIFIER |
N/A |
VARCHAR |
CHARACTER(36) |
CHAR(36) |
|
SQL_VARIANT |
N/A |
サポートされていません |
サポートされていません |
VARCHAR(200) |
|
|
HIERARCHYID |
N/A |
サポートされていません |
サポートされていません |
VARCHAR(200) |
|
|
SYSNAME |
N/A |
VARCHAR |
CHARACTER VARYING(128) |
VARCHAR(200) |
Db2 for LUW からのデータ同期
以下の表は、Db2 for LUW ソースインスタンスから MySQL などの異種宛先インスタンスにデータを同期する際のデータ型マッピングを示しています。
ソースインスタンスからのデータが Data Transmission Service (DTS) がサポートする有効値を超える場合、DTS は宛先インスタンスのデータ精度を低下させます。
|
型 |
Db2 for LUW 型 |
値 |
MySQL 型 |
|
整数 |
SMALLINT |
-32,768 ~ +32,767 |
SMALLINT |
|
INTEGER |
-2,147,483,648 ~ +2,147,483,647 |
INT |
|
|
BIGINT |
-9,223,372,036,854,775,808 ~ +9,223,372,036,854,775,807 |
BIGINT |
|
|
小数 |
DECIMAL(precision-integer, scale-integer) |
p <= 38 |
DECIMAL |
|
FLOAT(integer) |
有効値:1 ~ 53。1 ~ 24 の値は単精度を示します。25 ~ 53 の値は倍精度を示します。 |
FLOAT |
|
|
DECFLOAT(precision-integer) |
N/A |
DECIMAL(65,10) |
|
|
日付時刻 |
DATE |
0001-01-01 ~ 9999-12-31 |
DATE |
|
TIME |
00:00:00 ~ 24:00:00 |
TIME |
|
|
TIMESTAMP(integer) |
0001-01-01-00.00.00.000000000000 ~ 9999-12-31-24.00.00.000000000000;0 <= p <= 12 |
DATETIME |
|
|
文字列 |
CHARACTER(integer) |
254 |
CHAR | VARCHAR |
|
VARCHAR(integer) |
32,672 |
VARCHAR |
|
|
CHARACTER(integer) FOR BIT DATA |
254 |
BLOB |
|
|
CLOB |
2,147,483,647 |
LONGTEXT |
|
|
GRAPHIC(integer) |
127 |
CHAR(length*4) |
|
|
VARGRAPHIC(integer) |
16,336 |
CHAR(length*4) |
|
|
DBCLOB(integer) |
1,073,741,823 |
VARCHAR | LONGTEXT |
|
|
BLOB |
2,147,483,647 |
LONGBLOB |
|
|
その他の型 |
XML |
2,147,483,647 |
VARCHAR | LONGTEXT |
Db2 for i からのデータ同期
このトピックでは、Db2 for i ソースインスタンスから MySQL などの異種宛先インスタンスにデータを同期する際のデータ型マッピングについて説明します。
ソースインスタンスからのデータの有効値が DTS がサポートする範囲を超える場合、宛先インスタンスに書き込まれるデータの精度が低下する可能性があります。
|
型 |
Db2 for i |
値の範囲 |
MySQL |
|
整数型 |
SMALLINT |
-32,768 ~ +32,767 |
SMALLINT |
|
INTEGER |
-2,147,483,648 ~ +2,147,483,647 |
INT |
|
|
BIGINT |
-9,223,372,036,854,775,808 ~ +9,223,372,036,854,775,807 |
BIGINT |
|
|
小数型 |
DECIMAL(precision-integer, scale-integer) |
p <= 63 |
DECIMAL |
|
NUMERIC |
N/A |
DECIMAL |
|
|
FLOAT(integer) |
N/A |
FLOAT |
|
|
DECFLOAT(precision-integer) |
N/A |
DECIMAL(65,10) |
|
|
日付時刻型 |
DATE |
0001-01-01 ~ 9999-12-31 |
DATE |
|
TIME |
00:00:00 ~ 24:00:00 |
TIME |
|
|
TIMESTAMP(integer) |
0001-01-01-00.00.00.000000000000 ~ 9999-12-31-24.00.00.000000000000;0 <= p <= 12 |
DATETIME |
|
|
文字列型 |
CHAR(integer) |
32,765 |
CHAR | VARCHAR |
|
VARCHAR(integer) |
32,739 |
VARCHAR |
|
|
CHAR(integer) FOR BIT DATA |
N/A |
BLOB |
|
|
CLOB |
2,147,483,647 |
LONGTEXT |
|
|
GRAPHIC(integer) |
16,382 |
CHAR |
|
|
VARGRAPHIC(integer) |
16,369 |
VARCHAR |
|
|
DBCLOB(integer) |
1,073,741,823 |
LONGTEXT |
|
|
BINARY |
32,765 |
BINARY |
|
|
VARBIN |
32,739 |
VARBINARY |
|
|
BLOB |
2,147,483,647 |
LONGBLOB |
|
|
その他の型 |
DATALINK |
N/A |
VARCHAR | LONGTEXT |
|
ROWID |
40 |
VARCHAR | LONGTEXT |
|
|
XML |
2,147,483,647 |
VARCHAR | LONGTEXT |
TiDB からのデータ同期
自己管理 TiDB ソースインスタンスから AnalyticDB for MySQL 3.0 または Lindorm などの異種宛先インスタンスにデータを同期する際、データ型は次のようにマッピングされます。
TiDB データ型 | MySQL データ型 |
BIGINT | BIGINT |
BIGINT UNSIGNED | DECIMAL(20,0) |
BINARY | BINARY |
BIT | BIT |
BOOL\ BOOLEAN | TINYINT |
CHAR | CHAR |
DATE | DATE |
DATETIME | DATETIME |
DECIMAL | DECIMAL |
DOUBLE | DOUBLE |
ENUM | ENUM |
FLOAT | FLOAT |
INT | INT |
INT UNSIGNED | BIGINT |
INTEGER | INTEGER |
JSON | JSON |
MEDIUMBLOB/LONGBLOB TINYBLOB / BLOB | MEDIUMBLOB/LONGBLOB TINYBLOB または BLOB |
MEDIUMINT | MEDIUMINT |
SET | SET |
SMALLINT | SMALLINT |
SMALLINT UNSIGNED | INT |
TEXT/LONGTEXT | TEXT/LONGTEXT |
TIME | TIME |
TIMESTAMP | TIMESTAMP |
TINYINT | TINYINT |
TINYINT UNSIGNED | SMALLINT |
VARBINARY | VARBINARY |
VARCHAR | VARCHAR |
YEAR | YEAR |