

AWS Data Pipeline não está mais disponível para novos clientes. Os clientes existentes da AWS Data Pipeline podem continuar usando o serviço normalmente. [Saiba mais](https://aws.amazon.com/blogs/big-data/migrate-workloads-from-aws-data-pipeline/)

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Modelos do Amazon RDS para o Amazon Redshift
<a name="dp-template-redshift"></a>

Estes dois modelos copiam tabelas MySQL do Amazon RDS para o Amazon Redshift usando um script de conversão, que cria uma tabela do Amazon Redshift usando o esquema da tabela de origem com as seguintes ressalvas: 
+ Se uma chave de distribuição não for especificada, a primeira chave primária da tabela do Amazon RDS será definida como a chave de distribuição.
+ Você não pode ignorar uma coluna presente na tabela MySQL do Amazon RDS ao fazer uma cópia para o Amazon Redshift.
+ (Opcional) Você pode fornecer um MySQL do Amazon RDS para o mapeamento dos tipos de dados da coluna do Amazon Redshift como um dos parâmetros no modelo. Se isso for especificado, o script o usará para criar a tabela do Amazon Redshift.

Se o modo de inserção do Amazon Redshift de `Overwrite_Existing` estiver sendo usado:
+ Se uma chave de distribuição não for fornecida, será usada uma chave primária na tabela MySQL do Amazon RDS.
+ Se houver chaves primárias compostas na tabela, a primeira será usada como a chave de distribuição, se a chave de distribuição não for fornecida. Somente a primeira chave composta é definida como a chave primária na tabela do Amazon Redshift.
+ Se uma chave de distribuição não for fornecida e não houver chave primária na tabela MySQL do Amazon RDS, ocorrerá falha na operação de cópia.

Para obter mais informações sobre o Amazon Redshift, consulte os seguintes tópicos:
+ [Amazon Redshift cluster](https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-security-groups.html) (Cluster do Amazon Redshift)
+ [COPY](https://docs.aws.amazon.com/redshift/latest/dg/r_COPY.html) do Amazon Redshift 
+ [Estilos de distribuição](https://docs.aws.amazon.com/redshift/latest/dg/c_choosing_dist_sort.html) e [exemplos](https://docs.aws.amazon.com/redshift/latest/dg/c_Distribution_examples.html) DISTKEY
+ [Chaves de classificação](https://docs.aws.amazon.com/redshift/latest/dg/t_Sorting_data.html)

A seguinte tabela descreve como o script converte os tipos de dados:


**Conversões de tipo de dados entre MySQL e Amazon Redshift**  

| **Tipo de dados MySQL** | **Tipo de dados do Amazon Redshift** | **Observações** | 
| --- | --- | --- | 
| TINYINT,<br />TINYINT (size) | SMALLINT | MySQL: de -128 a 127. O número máximo de dígitos pode ser especificado entre parênteses.<br /> Amazon Redshift:. INT2 Número inteiro de dois bytes assinado | 
| TINYINT UNSIGNED,<br />TINYINT (size) UNSIGNED | SMALLINT | MySQL: de 0 a 255 UNSIGNED. O número máximo de dígitos pode ser especificado entre parênteses.<br />Amazon Redshift:. INT2 Número inteiro de dois bytes assinado | 
| SMALLINT,<br />SMALLINT(size) | SMALLINT | MySQL: de -32768 a 32767 normal. O número máximo de dígitos pode ser especificado entre parênteses.<br />Amazon Redshift:. INT2 Número inteiro de dois bytes assinado | 
| SMALLINT UNSIGNED,<br />SMALLINT(size) UNSIGNED, | INTEGER | MySQL: de 0 a 65535 UNSIGNED\*. O número máximo de dígitos pode ser especificado entre parênteses<br />Amazon Redshift:. INT4 Número inteiro de quatro bytes assinado | 
| MEDIUMINT,<br />MEDIUMINT(size) | INTEGER | MySQL: de 388608 a 8388607. O número máximo de dígitos pode ser especificado entre parênteses<br />Amazon Redshift:. INT4 Número inteiro de quatro bytes assinado | 
| MEDIUMINT UNSIGNED,<br />MEDIUMINT(size)<br />UNSIGNED | INTEGER | MySQL: de 0 a 16777215. O número máximo de dígitos pode ser especificado entre parênteses<br />Amazon Redshift:. INT4 Número inteiro de quatro bytes assinado | 
| INT,<br />INT(size) | INTEGER | MySQL: de 147483648 a 2147483647<br />Amazon Redshift:. INT4 Número inteiro de quatro bytes assinado | 
| INT UNSIGNED,<br />INT(size) UNSIGNED | BIGINT | MySQL: de 0 a 4294967295<br />Amazon Redshift:. INT8 Número inteiro de oito bytes assinado | 
| BIGINT<br />BIGINT(size) | BIGINT | Amazon Redshift:. INT8 Número inteiro de oito bytes assinado | 
| BIGINT UNSIGNED<br />BIGINT(size) UNSIGNED | VARCHAR(20\*4) | MySQL: de 0 a 18446744073709551615 <br />Amazon Redshift: Sem equivalente nativo. Por isso, usando char array. | 
| FLOAT<br />FLOAT(size,d)<br />FLOAT(size,d) UNSIGNED | REAL | O número máximo de dígitos pode ser especificado no parâmetro size. O número máximo de dígitos à direita da casa decimal é especificado no parâmetro d.<br />Amazon Redshift: FLOAT4 | 
| DOUBLE(size,d) | DOUBLE PRECISION | O número máximo de dígitos pode ser especificado no parâmetro size. O número máximo de dígitos à direita da casa decimal é especificado no parâmetro d.<br />Amazon Redshift: FLOAT8 | 
| DECIMAL(size,d) | DECIMAL(size,d) | Um DOUBLE armazenado como uma string, o que possibilita uma casa decimal fixa. O número máximo de dígitos pode ser especificado no parâmetro size. O número máximo de dígitos à direita da casa decimal é especificado no parâmetro d.<br />Amazon Redshift: sem equivalente nativo. | 
| CHAR(size) | VARCHAR(size\*4) | Mantém uma string de tamanho fixo, que pode conter letras, números e caracteres especiais. O tamanho fixo é especificado como o parâmetro entre parênteses. É possível armazenar até 255 caracteres.<br />Lado direito preenchido com espaços.<br />Amazon Redshift: o tipo de dados CHAR não dá suporte a caracteres multibyte, logo, VARCHAR é usado.<br />O número máximo de bytes por caractere é 4 de acordo com [RFC3629](http://tools.ietf.org/html/rfc3629), o que limita a tabela de caracteres a U\+10FFFF. | 
| VARCHAR(size) | VARCHAR(size\*4) | É possível armazenar até 255 caracteres.<br />VARCHAR não suporta os seguintes pontos de código UTF-8 inválidos: 0xD800- 0xDFFF, (Sequências de bytes: ED A0 80- ED BF BF), 0x FDD0 - 0xFDEF, 0xFFFE e 0xFFFF, (Sequências de bytes: EF B7 90- EF B7 AF, EF BF BE e EF BF BF) | 
| TINYTEXT | VARCHAR(255\*4) | Mantém uma string com um tamanho máximo de 255 caracteres | 
| TEXT | VARCHAR(máximo) | Mantém uma string com um tamanho máximo de 65.535 caracteres. | 
| MEDIUMTEXT | VARCHAR(máximo) | De 0 a 16.777.215 caracteres | 
| LONGTEXT | VARCHAR(máximo) | De 0 a 4.294.967.295 caracteres | 
| BOOLEAN<br />BOOL<br />TINYINT(1) | BOOLEAN | MySQL: esses tipos são sinônimos para [TINYINT (1)](http://dev.mysql.com/doc/refman/5.0/en/integer-types.html). Um valor zero é considerado falso. Valores diferente de zero são considerados verdadeiros. | 
| BINARY[(M)] | varchar(255) | M é de 0 a 255 bytes, FIXED | 
| VARBINARY(M) | VARCHAR(máximo) | 0 a 65,535 bytes | 
| TINYBLOB | VARCHAR (255) | 0 a 255 bytes | 
| BLOB | VARCHAR(máximo) | 0 a 65,535 bytes | 
| MEDIUMBLOB | VARCHAR(máximo) | 0 a 16,777,215 bytes | 
| LONGBLOB | VARCHAR(máximo) | 0 a 4,294,967,295 bytes | 
| ENUM | VARCHAR(255\*2) | O limite não está no tamanho da string enum literal, e sim na definição de tabela para o número de valores enum. | 
| SET | VARCHAR(255\*2) | Como enum. | 
| DATE | DATE | (YYYY-MM-DD)<br />De "1000-01-01" a "9999-12-31" | 
| TIME | VARCHAR(10\*4) | (hh:mm:ss)<br />De "-838:59:59" a "838:59:59" | 
| DATETIME | TIMESTAMP | (YYYY-MM-DD hh: mm: ss)<br />De 1000-01-01 00:00:00" a "9999-12-31 23:59:59" | 
| TIMESTAMP | TIMESTAMP | (YYYYMMDDhhmmss)<br />De 19700101000000 a 2037\+ | 
| YEAR | VARCHAR(4\*4) | (YYYY)<br />1900 – 2155 | 
| Coluna SERIAL | Geração de ID/Este atributo não é necessário para um data warehouse OLAP após a cópia da coluna.<br />A palavra-chave SERIAL não é adicionada durante a conversão. | Na verdade, SERIAL é uma entidade chamada SEQUENCE. Ela existe de maneira independente no restante da tabela.<br />Coluna GENERATED BY DEFAULT<br />equivale a:<br />Nome CREATE SEQUENCE; tabela CREATE TABLE (coluna INTEGER NOT NULL DEFAULT nextval(name) ); | 
| Coluna BIGINT UNSIGNED NOT NULL AUTO\_INCREMENT UNIQUE | Geração de ID/Este atributo não é necessário para um data warehouse OLAP após a cópia da coluna.<br />Dessa forma, a palavra-chave SERIAL não é adicionada durante a conversão. | Na verdade, SERIAL é uma entidade chamada SEQUENCE. Ela existe de maneira independente no restante da tabela.<br />Coluna GENERATED BY DEFAULT<br />equivale a:<br />Nome CREATE SEQUENCE; tabela CREATE TABLE (coluna INTEGER NOT NULL DEFAULT nextval(name) ); | 
| ZEROFILL | A palavra-chave ZEROFILL não é adicionada durante a conversão. | INT UNSIGNED ZEROFILL NOT NULL<br />ZEROFILL preenche o valor exibido do campo com zeros até a exibição da largura especificada na definição da coluna. Os valores maiores que a largura de exibição não são truncados. O uso de ZEROFILL também implica UNSIGNED. | 