Todos os produtos
Search
Central de documentação

Data Transmission Service:Inicialização de schema: Mapeamentos de tipos de dados

Última atualização: Oct 13, 2026

Bancos de dados heterogêneos utilizam tipos de dados distintos. Ao sincronizar informações entre esses bancos, o Data Transmission Service (DTS) converte os tipos do banco source para formatos compatíveis no banco de destino durante a inicialização do schema. Este tópico apresenta os mapeamentos detalhados de tipos de dados para ajudar você a avaliar o impacto da sincronização em seu negócio.

Visão geral

Os tópicos a seguir descrevem os mapeamentos de tipos de dados para sincronização entre bancos de dados heterogêneos.

Sincronizar dados do MySQL

A seguir, são apresentados os mapeamentos de tipos de dados entre um banco de dados MySQL source (como ApsaraDB RDS for MySQL, um banco de dados MySQL autogerenciado ou PolarDB for MySQL) e um banco de dados heterogêneo de destino (como AnalyticDB for MySQL e AnalyticDB for PostgreSQL).

Nota

Se o intervalo de valores dos dados a serem sincronizados da instância source exceder o intervalo suportado pelo DTS, os dados gravados na instância de destino terão precisão reduzida.

Instâncias de destino: AnalyticDB for MySQL e AnalyticDB for PostgreSQL

Nota

Ao sincronizar dados para o AnalyticDB for MySQL, observe o seguinte:

  • Se um campo source tiver o atributo AUTO_INCREMENT e for do tipo INT, o DTS o converterá para o tipo BIGINT durante a sincronização.

  • Caso as tabelas em uma operação JOIN contenham campos INT e BIGINT, recomenda-se usar consistentemente INT ou BIGINT no destino para evitar impactos no desempenho.

Tipo

Tipo de dados source

Intervalo de valores

Tipo do AnalyticDB for MySQL

Tipo do AnalyticDB for PostgreSQL

Tipos inteiros

BIT[(M)]

1 a 64

VARCHAR

BIT[(M)]

TINYINT[(M)]

-128 a 127

TINYINT

SMALLINT

TINYINT[(M)] [UNSIGNED]

0 a 255

SMALLINT

SMALLINT

SMALLINT[(M)]

-32768 a 32767

SMALLINT

SMALLINT

SMALLINT[(M)] [UNSIGNED]

0 a 65535

INT

INTEGER

MEDIUMINT[(M)]

-8388608 a 8388607

INT

INTEGER

MEDIUMINT[(M)] [UNSIGNED]

0 a 16777215

INT

INTEGER

INT[(M)]

-2147483648 a 2147483647

INT

INTEGER

INT[(M)] [UNSIGNED]

0 a 4294967295

BIGINT

BIGINT

BIGINT[(M)]

-9223372036854775808 a 9223372036854775807

BIGINT

BIGINT

BIGINT[(M)] [UNSIGNED]

0 a 18446744073709551615

DECIMAL(20,0)

NUMERIC(20)

Tipos decimais

DECIMAL[(M[,D])]

M: 0 a 65;

D: 0 a 30

DECIMAL[(M[,D])]

DECIMAL[(M[,D])]

FLOAT(p)

1.175494351E-38 a 3.402823466E+38

FLOAT

REAL

DOUBLE[(M,D)]

2.2250738585072014E-308 a 1.7976931348623157E+308

DOUBLE

DOUBLE PRECISION

Tipos de data e hora

DATE

1000-01-01 a 9999-12-31

Nota

Formato: AAAA-MM-DD.

DATE

DATE

DATETIME[(fsp)]

1000-01-01 00:00:00.000000 a 9999-12-31 23:59:59.999999

Nota

Formato: AAAA-MM-DD hh:mm:ss[.fração] (UTC).

DATETIME

TIMESTAMP

TIMESTAMP[(fsp)]

1970-01-01 00:00:01.000000 a 2038-01-19 03:14:07.999999

Nota

Formato: AAAA-MM-DD hh:mm:ss[.fração] (UTC).

TIMESTAMP

TIMESTAMP WITH TIME ZONE

TIME[(fsp)]

-838:59:59.000000 a 838:59:59.000000

Nota

Formato: hh:mm:ss[.fração] (UTC).

TIME

TIMESTAMP WITH TIME ZONE

YEAR[(4)]

1901 a 2155, ou 0000

INT

INTEGER

Tipos string

CHAR[(M)]

0 a 255 caracteres

VARCHAR

CHAR

VARCHAR(M)

0 a 65.535 caracteres

VARCHAR

VARCHAR

BINARY[(M)]

0 a 255 bytes

VARBINARY

BYTEA

VARBINARY(M)

0 a 65.535 bytes

VARBINARY

BYTEA

TINYBLOB

255 (2^8 - 1) bytes

VARBINARY

BYTEA

TINYTEXT

255 (2^8 - 1) caracteres

VARCHAR

TEXT

BLOB

65.535 (2^16 - 1) bytes

VARBINARY

BYTEA

TEXT

65.535 (2^16 - 1) caracteres

VARCHAR

TEXT

MEDIUMBLOB

16.777.215 (2^24 - 1) bytes

VARBINARY

BYTEA

MEDIUMTEXT

16.777.215 (2^24 - 1) caracteres

VARCHAR

TEXT

LONGBLOB

4.294.967.295 ou 4 GB (2^32 - 1) bytes

VARBINARY

BYTEA

LONGTEXT

4.294.967.295 ou 4 GB (2^32 - 1) caracteres

VARCHAR

TEXT

ENUM('value1','value2',...)

Até 65.535 valores de enumeração

VARCHAR

VARCHAR(128)

SET('value1','value2',...)

Até 64 membros

VARCHAR

VARCHAR(128)

Tipos espaciais

GEOMETRY

Um valor de qualquer tipo de geometria

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

Uma coleção de valores de qualquer tipo de geometria

VARBINARY

POLYGON

Tipo JSON

JSON

N/A

JSON

JSON

Instâncias de destino: DataHub e Kafka

Tipo

Tipo de origem

Faixa de valores

Tipo no DataHub

Tipo no Kafka

Inteiro

BIT[(M)]

1 a 64

BOOLEAN | STRING

Igual aos tipos de dados no MySQL e PolarDB for MySQL.

TINYINT[(M)]

-128 a 127

BIGINT

TINYINT[(M)] [UNSIGNED]

0 a 255

BIGINT

SMALLINT[(M)]

-32768 a 32767

BIGINT

SMALLINT[(M)] [UNSIGNED]

0 a 65535

BIGINT

MEDIUMINT[(M)]

-8388608 a 8388607

BIGINT

MEDIUMINT[(M)] [UNSIGNED]

0 a 16777215

BIGINT

INT[(M)]

-2147483648 a 2147483647

BIGINT

INT[(M)] [UNSIGNED]

0 a 4294967295

BIGINT

BIGINT[(M)]

-9223372036854775808 a 9223372036854775807

BIGINT

BIGINT[(M)] [UNSIGNED]

0 a 18446744073709551615

BIGINT

Decimal

DECIMAL[(M[,D])]

M: 0 a 65;

D: 0 a 30

DECIMAL

FLOAT(p)

1,175494351E-38 a 3,402823466E+38

DOUBLE

DOUBLE[(M,D)]

2,2250738585072014E-308 a 1,7976931348623157E+308

DOUBLE

Data e hora

DATE

1000-01-01 a 9999-12-31

Nota

Formato: YYYY-MM-DD.

TIMESTAMP

DATETIME[(fsp)]

1000-01-01 00:00:00.000000 a 9999-12-31 23:59:59.999999

Nota

Formato: YYYY-MM-DD hh:mm:ss[.fraction] (UTC).

TIMESTAMP

TIMESTAMP[(fsp)]

1970-01-01 00:00:01.000000 a 2038-01-19 03:14:07.999999

Nota

Formato: YYYY-MM-DD hh:mm:ss[.fraction] (UTC).

TIMESTAMP

TIME[(fsp)]

-838:59:59.000000 a 838:59:59.000000

Nota

Formato: hh:mm:ss[.fraction] (UTC).

STRING

YEAR[(4)]

1901 a 2155 ou 0000

STRING

String

CHAR[(M)]

0 a 255 caracteres

STRING

VARCHAR(M)

0 a 65.535 caracteres

STRING

BINARY[(M)]

0 a 255 bytes

STRING

VARBINARY(M)

0 a 65.535 bytes

STRING

TINYBLOB

255 (2^8 - 1) bytes

STRING

TINYTEXT

255 (2^8 - 1) caracteres

STRING

BLOB

65.535 (2^16 - 1) bytes

STRING

TEXT

65.535 (2^16 - 1) caracteres

STRING

MEDIUMBLOB

16.777.215 (2^24 - 1) bytes

STRING

MEDIUMTEXT

16.777.215 (2^24 - 1) caracteres

STRING

LONGBLOB

4.294.967.295 (4 GB) (2^32 - 1) bytes

STRING

LONGTEXT

4.294.967.295 (4 GB) (2^32 - 1) caracteres

STRING

ENUM('value1','value2',...)

Uma coluna ENUM pode ter até 65.535 membros distintos.

STRING

SET('value1','value2',...)

Uma coluna SET pode ter até 64 membros distintos.

STRING

Espacial

GEOMETRY

Qualquer tipo de geometria.

STRING

POINT

N/A

STRING

LINESTRING

N/A

STRING

POLYGON

N/A

STRING

MULTIPOINT

N/A

STRING

MULTILINESTRING

N/A

STRING

MULTIPOLYGON

N/A

STRING

GEOMETRYCOLLECTION

Uma coleção de quaisquer tipos de geometria.

STRING

JSON

JSON

N/A

STRING

Bancos de dados de destino: MaxCompute, Elasticsearch e ClickHouse

Tipo

Tipo de origem

Faixa de valores

MaxCompute

Elasticsearch

ClickHouse

Inteiro

BIT[(M)]

1 a 64

BOOLEAN | STRING

BOOLEAN | LONG

Nota

Se o valor tiver 1 byte, recomendamos usar o tipo de dado BOOLEAN no Elasticsearch.

UInt8

TINYINT[(M)]

-128 a 127

BIGINT

SHORT

Int8

TINYINT[(M)] [UNSIGNED]

0 a 255

BIGINT

INTEGER

UInt8

SMALLINT[(M)]

-32768 a 32767

BIGINT

SHORT

Int16

SMALLINT[(M)] [UNSIGNED]

0 a 65535

BIGINT

INTEGER

UInt16

MEDIUMINT[(M)]

-8388608 a 8388607

BIGINT

INTEGER

Int32

MEDIUMINT[(M)] [UNSIGNED]

0 a 16777215

BIGINT

INTEGER

Int32

INT[(M)]

-2147483648 a 2147483647

BIGINT

INTEGER

Int32

INT[(M)] [UNSIGNED]

0 a 4294967295

BIGINT

LONG

UInt32

BIGINT[(M)]

-9223372036854775808 a 9223372036854775807

BIGINT

LONG

Int64

BIGINT[(M)] [UNSIGNED]

0 a 18446744073709551615

BIGINT

LONG

UInt64

Decimal

DECIMAL[(M[,D])]

M: 0 a 65;

D: 0 a 30

DOUBLE

DOUBLE

Nota

Se um valor DECIMAL contiver ponto decimal, recomendamos usar o tipo de dado TEXT no Elasticsearch para garantir a consistência dos dados.

DECIMAL

FLOAT(p)

1,175494351E-38 a 3,402823466E+38

DOUBLE

FLOAT

Float32

DOUBLE[(M,D)]

2,2250738585072014E-308 a 1,7976931348623157E+308

DOUBLE

DOUBLE

Float64

Data e hora

DATE

1000-01-01 a 9999-12-31

Nota

O formato é YYYY-MM-DD.

DATETIME

DATE

Nota

O formato é YYYY-MM-DD. Para mais informações, consulte formato de data.

DATE32

Nota

A faixa de valores do tipo de dado DATE no ClickHouse é menor que no MySQL. Se você usar o tipo de dado DATE no ClickHouse, as operações de gravação poderão falhar.

DATETIME[(fsp)]

1000-01-01 00:00:00.000000 a 9999-12-31 23:59:59.999999

Nota

O formato é YYYY-MM-DD hh:mm:ss[.fraction] (UTC).

DATETIME

DATE

Nota

O formato DATE é yyyy-MM-dd'T'HH:mm:ss (UTC). Para precisão de microssegundos, o formato é yyyy-MM-dd'T'HH:mm:ss.S. Para mais informações, consulte formato de data.

DATETIME64

Nota

A faixa de valores do tipo de dado DATETIME no ClickHouse é menor que no MySQL. Se você usar o tipo de dado DATETIME no ClickHouse, as operações de gravação poderão falhar.

TIMESTAMP[(fsp)]

1970-01-01 00:00:01.000000 a 2038-01-19 03:14:07.999999

Nota

O formato é YYYY-MM-DD hh:mm:ss[.fraction] (UTC).

DATETIME

DATE

Nota

O formato DATE é yyyy-MM-dd'T'HH:mm:ss (UTC). Para precisão de microssegundos, o formato é yyyy-MM-dd'T'HH:mm:ss.S. Para mais informações, consulte formato de data.

DATETIME

Nota

As informações de fuso horário não estão incluídas.

TIME[(fsp)]

-838:59:59.000000 a 838:59:59.000000

Nota

O formato é hh:mm:ss[.fraction] (UTC).

STRING

DATE

Nota

Para mais informações, consulte formato de data.

STRING

YEAR[(4)]

1901 a 2155 ou 0000

STRING

DATE

Nota

O formato DATE é yyyy. Para mais informações, consulte formato de data.

Int16

String

CHAR[(M)]

0 a 255 caracteres

STRING

KEYWORD

STRING

VARCHAR(M)

0 a 65.535 caracteres

STRING

  • Se a string tiver 255 caracteres ou menos: KEYWORD

  • Se a string tiver mais de 255 caracteres: TEXT

STRING

BINARY[(M)]

0 a 255 bytes

STRING

BINARY

STRING

VARBINARY(M)

0 a 65.535 bytes

STRING

BINARY

STRING

TINYBLOB

255 (2^8 - 1) bytes

STRING

BINARY

STRING

TINYTEXT

255 (2^8 - 1) caracteres

STRING

TEXT

STRING

BLOB

65.535 (2^16 - 1) bytes

STRING

BINARY

STRING

TEXT

65.535 (2^16 - 1) caracteres

STRING

TEXT

STRING

MEDIUMBLOB

16.777.215 (2^24 - 1) bytes

STRING

BINARY

STRING

MEDIUMTEXT

16.777.215 (2^24 - 1) caracteres

STRING

TEXT

STRING

LONGBLOB

4.294.967.295 ou 4 GB (2^32 - 1) bytes

STRING

BINARY

STRING

LONGTEXT

4.294.967.295 ou 4 GB (2^32 - 1) caracteres

STRING

TEXT

STRING

ENUM('value1','value2',...)

Até 65.535 valores enumerados

STRING

KEYWORD

ENUM

SET('value1','value2',...)

Até 64 membros

STRING

KEYWORD

STRING

Tipo espacial

GEOMETRY

Um valor de qualquer tipo de geometria

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

Nota

STRING

MULTILINESTRING

N/A

STRING

GEO_SHAPE

STRING

MULTIPOLYGON

N/A

STRING

GEO_SHAPE

STRING

GEOMETRYCOLLECTION

Uma coleção de valores de qualquer tipo de geometria

STRING

GEO_SHAPE

STRING

Tipo JSON

JSON

N/A

STRING

OBJECT

Nota

STRING

Instância de destino: Tablestore

Tipo da source

Tipo do 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 ou INTEGER

Nota

Padrão: 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

Instância de destino: Lindorm

Tipo da source

Tipo do Lindorm

BOOLEAN

BOOLEAN

BIT

BOOLEAN

TINYINT

TINYINT

SMALLINT

SMALLINT

INTEGER

INTEGER

BIGINT

BIGINT

BIGINT UNSIGNED

Importante

O Lindorm aceita apenas valores dentro do intervalo signed do BIGINT (-9223372036854775808 a 9223372036854775807).

BIGINT

FLOAT

FLOAT

DOUBLE

DOUBLE

DECIMAL

DECIMAL

Importante

A precisão deve corresponder à do campo da source.

CHAR/VARCHAR/TEXT/TINYTEXT/MEDIUMTEXT/LONGTEXT

CHAR/VARCHAR

BINARY

BINARY

BLOB

VARBINARY

VARBINARY

VARBINARY

TIMESTAMP

TIMESTAMP

YEAR

INTEGER

DATE

O tipo de dados mapeado depende da versão da instância Lindorm de destino.

  • Versão 2.8.0.2 ou posterior: DATE

  • Versões anteriores à 2.8.0.2: VARCHAR

DATETIME

VARCHAR

Importante
  • Recomendamos mapear este campo para o tipo de dados VARCHAR na instância de destino.

  • O mapeamento para o tipo de dados TIMESTAMP pode causar inconsistências devido a diferenças de fuso horário. Para evitar isso, utilize o recurso ETL ao configurar a tarefa de sincronização de dados.

TIME

O tipo de dados mapeado depende da versão da instância Lindorm de destino.

  • Versão 2.8.0.2 ou posterior: TIME

    Nota

    O formato é hh:mm:ss. Este mapeamento trunca as frações de segundo. Por exemplo, um valor da source de 08:11:15.354 torna-se 08:11:15 na instância de destino.

  • Versões anteriores à 2.8.0.2: VARCHAR

JSON

JSON

Instância de destino: Oracle

Tipo

Tipo de dados da source

Intervalo de valores

Tipo de dados do Oracle

Tipo inteiro

BIT[(M)]

1 a 64

NUMBER(2,0)

TINYINT[(M)]

-128 a 127

NUMBER(3,0)

TINYINT[(M)] [UNSIGNED]

0 a 255

NUMBER(3,0)

SMALLINT[(M)]

-32768 a 32767

NUMBER(5,0)

SMALLINT[(M)] [UNSIGNED]

0 a 65535

NUMBER(5,0)

MEDIUMINT[(M)]

-8388608 a 8388607

NUMBER(7,0)

MEDIUMINT[(M)] [UNSIGNED]

0 a 16777215

NUMBER(7,0)

INT[(M)]

-2147483648 a 2147483647

INT

INT[(M)] [UNSIGNED]

0 a 4294967295

NUMBER(10,0)

BIGINT[(M)]

-9223372036854775808 a 9223372036854775807

NUMBER(20,0)

BIGINT[(M)] [UNSIGNED]

0 a 18446744073709551615

NUMBER(20,0)

Tipo decimal

DECIMAL[(M[,D])]

M: 0 a 65;

D: 0 a 30

NUMBER(M,D)

Nota

Se a precisão e a escala forem omitidas, o tipo de dados assumirá o padrão NUMBER.

FLOAT(p)

1.175494351E-38 a 3.402823466E+38

FLOAT

DOUBLE[(M,D)]

2.2250738585072014E-308 a 1.7976931348623157E+308

DOUBLE

Tipo de data e hora

DATE

1000-01-01 a 9999-12-31

Nota

Formato: AAAA-MM-DD.

DATE

DATETIME[(fsp)]

1000-01-01 00:00:00.000000 a 9999-12-31 23:59:59.999999

Nota

Formato: AAAA-MM-DD hh:mm:ss[.fração] (UTC).

TIMESTAMP[(fsp)]

Nota

Se a precisão for omitida, o tipo de dados assumirá o padrão TIMESTAMP(0).

TIMESTAMP[(fsp)]

1970-01-01 00:00:01.000000 a 2038-01-19 03:14:07.999999

Nota

Formato: AAAA-MM-DD hh:mm:ss[.fração] (UTC).

TIMESTAMP[(fsp)] WITH LOCAL TIME ZONE

Nota

Se a precisão for omitida, o tipo de dados assumirá o padrão TIMESTAMP(0) WITH LOCAL TIME ZONE.

TIME[(fsp)]

-838:59:59.000000 a 838:59:59.000000

Nota

Formato: hh:mm:ss[.fração] (UTC).

Não suportado

YEAR[(4)]

1901 a 2155, ou 0000

INT

Tipo string

CHAR[(M)]

0 a 255 caracteres

CHAR[(M)]

Nota

Se o comprimento for omitido, o tipo de dados assumirá o padrão CHAR(1).

VARCHAR(M)

0 a 65.535 caracteres

VARCHAR(M)

BINARY[(M)]

0 a 255 bytes

RAW(M)

Nota

Se o comprimento for omitido, o tipo de dados assumirá o padrão RAW(1).

VARBINARY(M)

0 a 65.535 bytes

RAW(M)

TINYBLOB

255 (2^8 - 1) bytes

BLOB

TINYTEXT

255 (2^8 - 1) caracteres

CLOB

BLOB

65.535 (2^16 - 1) bytes

BLOB

TEXT

65.535 (2^16 - 1) caracteres

CLOB

MEDIUMBLOB

16.777.215 (2^24 - 1) bytes

BLOB

MEDIUMTEXT

16.777.215 (2^24 - 1) caracteres

CLOB

LONGBLOB

4.294.967.295 (2^32 - 1) bytes

BLOB

LONGTEXT

4.294.967.295 (2^32 - 1) caracteres

CLOB

ENUM('value1','value2',...)

Até 65.535 valores de enumeração

Não suportado

SET('value1','value2',...)

Até 64 membros

Não suportado

Tipo espacial

GEOMETRY

Um valor de qualquer tipo geométrico

Não suportado

POINT

N/A

Não suportado

LINESTRING

N/A

Não suportado

POLYGON

N/A

Não suportado

MULTIPOINT

N/A

Não suportado

MULTILINESTRING

N/A

Não suportado

MULTIPOLYGON

N/A

Não suportado

GEOMETRYCOLLECTION

Uma coleção de valores de qualquer tipo geométrico

Não suportado

Tipo JSON

JSON

N/A

CLOB