# Teradata

O Teradata está disponível como destino apenas em projetos de replicação de dados do Qlik Talend Cloud. A conexão usa a API do Teradata Parallel Transporter (TPT) para carregamento de dados e o ODBC para consultas de metadados, solicitações DDL e informações de tabelas de erros do Teradata.

## Configurar a conexão

Antes de criar uma tarefa de replicação, crie e teste uma conexão com o destino Teradata.

1. Em Conexões, clique em Criar conexão.
2. Selecione o conector de destino Teradata.
3. Insira as propriedades de conexão descritas em [Propriedades de conexão do Teradata](https://help.qlik.com/pt-BR/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/TargetConnections/teradata-target.htm#ConnectionProperties).
4. Clique em Testar conexão e resolva quaisquer erros relatados.
5. Salve a conexão.

## Propriedades da conexão Teradata

Configure as seguintes propriedades para a conexão de destino do Teradata:

Propriedades da conexão de destino Teradata

| Seção | Propriedade | Descrição |
| --- | --- | --- |
| Destino de dados | Gateway de dados (obrigatório) | Selecione o gateway de dados que possa acessar o servidor Teradata e tenha os componentes de cliente do Teradata necessários instalados. |
| Propriedades da conexão | Servidor(es) Teradata (obrigatório) | Insira o nome do servidor Teradata ou o endereço IP. Certifique-se de que o servidor esteja acessível a partir do gateway de dados selecionado. |
| Propriedades da conta | Usuário (obrigatório) | Insira o nome de usuário do banco de dados Teradata. Esta é uma credencial do banco de dados, não a string da conta. |
| Senha (obrigatório) | Insira a senha do usuário do banco de dados do servidor Teradata. Esta é uma credencial do banco de dados, não a string da conta. |  |
| String da conta | Insira a string de conta que o administrador do banco de dados Teradata atribuiu ao usuário. Esta é a conta de login do servidor de banco de dados e é distinta das credenciais de Usuário e Senha. |  |
| Propriedades do banco de dados | Inserir nome do banco de dados manualmente | Selecione esta opção para inserir o nome do banco de dados. |
| Banco de dados padrão (obrigatório) | Insira o banco de dados Teradata onde os dados são replicados. O banco de dados deve estar acessível ao usuário especificado. |  |
| Carregar bancos de dados | Clique para descobrir os bancos de dados disponíveis para o usuário especificado. A lista depende de uma conectividade bem-sucedida e das permissões do usuário no banco de dados. |  |
| Propriedades adicionais de conexão | Propriedades do ODBC | Insira propriedades adicionais de conexão ODBC como pares de Nome e Valor. Confirme os nomes e valores das propriedades com o seu administrador do Teradata ou ODBC. |

## Pré-requisitos

Prepare o ambiente Teradata e o acesso exigido pela conexão antes de criar a conexão de destino.

* Certifique-se de que o servidor Teradata esteja instalado em sua rede e acessível a partir do computador que executa o gateway de dados selecionado.
* Instale e configure o driver ODBC do Teradata e os componentes necessários do cliente Teradata no gateway de dados. Não presuma que um driver instalado em outro computador esteja disponível para o gateway.
* Solicite a um administrador de banco de dados Teradata que crie ou identifique um usuário do banco de dados e forneça a senha e a string de conta do usuário, quando necessário.

Se você estiver adaptando a capacidade de destino do Teradata ao seu ambiente, solicite a um administrador de banco de dados do Teradata que verifique se os seguintes privilégios são necessários para sua tarefa. As concessões se aplicam ao banco de dados de destino, a menos que indicado de outra forma; elas não são necessariamente as permissões mínimas para cada tarefa do Qlik Talend Cloud:

* `GRANT SELECT ON <database>`
* `GRANT INSERT ON <database>`
* `GRANT DELETE ON <database>`
* `GRANT UPDATE ON <database>`
* `GRANT EXECUTE ON <database>`
* `GRANT EXECUTE FUNCTION ON <database>`
* `GRANT EXECUTE PROCEDURE ON <database>`
* `GRANT CREATE TABLE ON <database>`
* `GRANT DROP TABLE ON <database>`
* `GRANT CREATE VIEW ON <database>`
* `GRANT DROP VIEW ON <database>`
* `GRANT NONTEMPORAL ON <database>`
* `GRANT CHECKPOINT ON <database>`

O usuário do banco de dados também pode precisar da seguinte concessão para o processamento de fluxo:

* `GRANT CREATE MACRO ON <database>`

## Fornecer acesso ao banco de dados Teradata

O usuário inserido na propriedade User da conexão deve estar registrado como usuário no banco de dados Teradata. Um administrador de banco de dados Teradata deve conceder acesso a esse mesmo usuário antes de você configurar a conexão de destino e o banco de dados Teradata. Use as credenciais deste usuário registrado nas propriedades Usuário e Senha da conexão.

Para as concessões necessárias, consulte a lista de concessões existentes nos [pré-requisitos](https://help.qlik.com/pt-BR/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/TargetConnections/teradata-target.htm#Prerequisites).

## Edite o arquivo hosts

Para permitir que o gateway de dados selecionado acesse o banco de dados Teradata, adicione o mapeamento do Teradata ao arquivo hosts na máquina do gateway de dados.

1. Na máquina do gateway de dados selecionada, abra o arquivo hosts do Windows ou do Linux. Os caminhos padrão são:

   * Windows: `~:\Windows\System32\drivers\etc\hosts`
   * Linux: `/etc/hosts`

2. Adicione o mapeamento do Teradata no seguinte formato. Inclua o sufixo `cop1` após o nome do banco de dados:

   `<Teradata Database IP address/hostname> <Teradata Database name>cop1`

   Por exemplo: `123.123.123.1 teradatadbonecop1`

   Certifique-se de que o nome do banco de dados no arquivo hosts corresponda à propriedade de conexão Banco de dados padrão.

3. Salve as alterações.

## Solucionar erros de conexão

Se o teste de conexão falhar, analise o erro relatado e verifique os seguintes itens antes de testar a conexão novamente:

* **Gateway ou rede:** Confirme se o gateway de dados selecionado está em execução e pode alcançar o servidor Teradata. Verifique o nome do servidor ou o endereço IP e quaisquer regras de rede entre o gateway e o servidor.
* **Driver ou cliente:** Confirme se o driver ODBC do Teradata e os componentes de cliente necessários estão instalados e configurados no gateway selecionado. Um driver instalado no computador local não é utilizado por um gateway remoto.
* **Credenciais ou permissões:** Confirme o Usuário e a Senha sensíveis a maiúsculas e minúsculas, a String de conta opcional e os privilégios de banco de dados necessários com um DBA.
* **Descoberta de bancos de dados:** Se Carregar bancos de dados não retornar nenhum banco de dados ou retornar um erro, teste primeiro a conectividade e, em seguida, confirme se o usuário consegue descobrir e acessar os bancos de dados. Você pode inserir um banco de dados conhecido com Inserir nome do banco de dados manualmente, se apropriado.
* **Propriedades ODBC:** Verifique cada par de Nome e Valor quanto à ortografia, valores com suporte e conflitos com a configuração do driver. Remova uma propriedade opcional que faz com que o teste de conexão falhe, ou peça a um administrador ODBC para verificá-la.

## Tipos de dados do .

A tabela a seguir descreve os mapeamentos padrão dos tipos de dados do Qlik Talend Cloud para os tipos de dados do Teradata.

Nota informativa

O Teradata não oferece suporte à aplicação de alterações em tipos de dados binários no modo Aplicação otimizada em lote.

Mapeamentos de tipos de dados do destino Teradata

| Tipo de dados do Qlik Talend Cloud | Tipo de dados do Teradata |
| --- | --- |
| BOOLEAN | BYTEINT |
| BYTES | VARBYTE (tamanho). O tamanho máximo são 640.000 bytes. |
| DATE | DATE |
| TIME | TIME (precisão) |
| DATETIME | TIMESTAMP (precisão) |
| INT1 | BYTEINT |
| INT2 | SMALLINT |
| INT4 | INTEGER |
| INT8 | BIGINT |
| NUMERIC | Se a escala for de 0 a 37, NUMERIC (precisão, escala). Se a escala for 38 ou maior, VARCHAR (45). |
| REAL4 | FLOAT. O FLOAT do Teradata é equivalente a REAL e DOUBLE PRECISION. |
| REAL8 | FLOAT |
| STRING | VARCHAR (tamanho), até 64.000 bytes. Se o subtipo for JSON, o JSON é usado em vez disso. |
| UINT1 | BYTEINT |
| UINT2 | SMALLINT |
| UINT4 | INTEGER |
| UINT8 | BIGINT |
| WSTRING | VARCHAR (tamanho), até 640.000 bytes. Se o subtipo for JSON, o JSON é usado em vez disso. |
| BLOB | VARBYTE(${MAX\_LOB\_SIZE}). MAX\_LOB\_SIZE é o tamanho máximo de LOB especificado para o processamento de LOB de tamanho limitado. |
| [](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/TargetConnections/teradata-target.htm)CLOB | VARCHAR(${MAX\_LOB\_SIZE}), usando um conjunto de caracteres Unicode que não diferencia maiúsculas de minúsculas. MAX\_LOB\_SIZE é o tamanho máximo de LOB especificado para o processamento de LOB de tamanho limitado. Se o subtipo for JSON, o JSON é usado em vez disso. |
| NCLOB | VARCHAR(${MAX\_LOB\_SIZE}), usando um conjunto de caracteres que não diferencia maiúsculas de minúsculas. MAX\_LOB\_SIZE é o tamanho máximo de LOB especificado para o processamento de LOB de tamanho limitado. Se o subtipo for JSON, o JSON é usado em vez disso. |

Nota informativa

**Limitações de LOB:** O Teradata não oferece suporte a tipos de dados LOB completos. O destino usa mapeamentos de LOB de tamanho limitado em vez disso. O tamanho total de uma linha do Teradata não pode exceder 64 KB, portanto, inclua os tamanhos de todas as colunas ao definir o tamanho máximo do LOB.

Para colunas CLOB e NCLOB, os comprimentos de caracteres são multiplicados por três por padrão para oferecer suporte a NLS. Isso pode aumentar os tamanhos resultantes das colunas e linhas do Teradata.

O tipo de dados PERIOD do Teradata não é suportado.

## Limitações e considerações

* Os modos de replicação disponíveis são Carga total, Aplicar alterações e Armazenar alterações.
* Para tarefas que usam Aplicar alterações ou Armazenar alterações, operações de DDL e evolução automática de esquema não são suportadas. Esta limitação não se aplica a uma tarefa somente de Carga total.
* Para o modo Carregamento, a tabela de destino deve estar vazia e não deve ter índices secundários. Selecione Stream quando a tarefa exigir processamento DML contínuo ou consultas simultâneas à tabela.

## Informações relacionadas

* [Criando um projeto de replicação](https://help.qlik.com/pt-BR/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Replicating/data-replication-task.htm)