Compartilhar via


Configurar o banco de dados Oracle em uma atividade de cópia

Este artigo descreve como usar a atividade de cópia no pipeline de dados para copiar dados de e para o banco de dados Oracle.

Configuração com suporte

Para a configuração de cada guia em atividade Copy, vá para as seções a seguir, respectivamente.

Geral

Consulte as diretrizes de Configurações Geraispara definir a guia Configurações Gerais.

Origem

As propriedades a seguir são suportadas para o banco de dados Oracle na guia Origem de uma atividade de cópia.

Captura de tela mostrando a guia de origem e a lista de propriedades.

As seguintes propriedades são necessárias:

  • Conexão: selecione uma conexão do banco de dados Oracle na lista de conexões. Se não existir uma conexão, crie uma conexão de banco de dados Oracle selecionando Mais na parte inferior da lista de conexões.
  • Usar consulta: selecione Tabela ou Consulta.
    • Se você selecionar Tabela:

      • Tabela: especifique o nome da tabela no banco de dados Oracle para ler os dados. Selecione sua tabela na lista suspensa ou selecione Inserir manualmente para inserir o esquema e o nome da tabela.

        Captura de tela mostrando Usar consulta - Tabela.

    • Se você selecionar Consulta:

      • Consulta: Especifique a consulta SQL personalizada para ler os dados. Por exemplo: SELECT * FROM MyTable.

        Ao habilitar a carga particionada, você precisa vincular todos os parâmetros de partição internos correspondentes na consulta. Confira a seção Cópia paralela do banco de dados Oracle para ver exemplos.

        Captura de tela mostrando Usar consulta - Consulta.

Em Avançado, você pode especificar os seguintes campos:

  • Opção de partição: especifica as opções de particionamento de dados usadas para carregar dados do banco de dados Oracle. Quando uma opção de partição está ativada (ou seja, não é Nenhum), o grau de paralelismo para carregar dados simultaneamente de um banco de dados Oracle é controlado pelo Grau de paralelismo de cópia na guia de configurações da atividade de cópia.

    Caso selecioneNenhum, você optará por não usar a partição.

    Caso selecione Partições físicas da tabela:

    • Nomes de partição: Especifique a lista de partições físicas que precisam ser copiadas.

      Se você usar uma consulta para recuperar os dados de origem, conecte ?DfTabularPartitionName na cláusula WHERE. Para obter um exemplo, veja a seção Cópia paralela do banco de dados Oracle.

      Captura de tela que mostra a configuração quando você seleciona partições físicas da tabela.

    Caso selecione intervalo dinâmico:

    • Nome da coluna de partição: especifique o nome da coluna de origem no tipo inteiro que será usado pelo particionamento de intervalos da cópia paralela. Se não especificado, a chave primária da tabela será detectada automaticamente e usada como a coluna de partição.

      Se você usar uma consulta para recuperar os dados de origem, conecte ?DfRangePartitionColumnName na cláusula WHERE. Para obter um exemplo, veja a seção Cópia paralela do banco de dados Oracle.

    • Limite superior da partição: especifique o valor máximo da coluna de partição para copiar os dados.

      Se você usar uma consulta para recuperar os dados de origem, conecte ?DfRangePartitionUpbound na cláusula WHERE. Para obter um exemplo, consulte Cópia paralela na seção Cópia paralela do banco de dados Oracle.

    • Limite inferior da partição: especifique o valor mínimo da coluna de partição para copiar os dados.

      Se você usar uma consulta para recuperar os dados de origem, conecte ?DfRangePartitionLowbound na cláusula WHERE. Para obter um exemplo, consulte Cópia paralela na seção Cópia paralela do banco de dados Oracle.

      Captura de tela que mostra a configuração quando você seleciona Intervalo dinâmico.

  • Tempo limite da consulta (minutos): especifique o tempo limite para a execução do comando de consulta, o padrão é 120 minutos. Se um parâmetro for definido para essa propriedade, os valores permitidos serão timespan, como "02:00:00" (120 minutos).

  • Colunas adicionais: adicione colunas de dados adicionais para armazenar o caminho relativo ou o valor estático dos arquivos de origem. A expressão tem suporte para o último.

Destino

As seguintes propriedades são compatíveis com o banco de dados Oracle na guia Destino de uma atividade de cópia.

Captura de tela mostrando a guia Destino.

As seguintes propriedades são necessárias:

  • Conexão: selecione uma conexão do banco de dados Oracle na lista de conexões. Se a conexão não existir, crie uma conexão de banco de dados Oracle selecionando Mais na parte inferior da lista de conexões.
  • Tabela: selecione a tabela em seu banco de dados na lista suspensa. Ou marque Inserir manualmente para inserir o esquema e o nome da tabela.

Em Avançado, você pode especificar os seguintes campos:

  • Script de pré-cópia: especifique uma consulta SQL para a atividade de cópia, a ser executada antes de gravar dados no banco de dados Oracle em cada execução. Você pode usar essa propriedade para limpar os dados previamente carregados.
  • Tempo limite do lote de gravação: o tempo de espera para que a operação de inserção em lote termine antes de atingir o tempo limite. O valor permitido é timespan. Um exemplo é 00:30:00 (30 minutos).
  • Tamanho do lote de gravação: especifique o número de linhas a serem inseridas na tabela do banco de dados Oracle por lote. O valor permitido é inteiro (número de linhas). O valor padrão é 10.000.
  • Máximo de conexões simultâneas: o limite superior de conexões simultâneas estabelecidas para o armazenamento de dados durante a execução da atividade. Especifique um valor somente quando desejar limitar as conexões simultâneas.

Mapeamento

Para Configuração da guia Mapeamento, acesseConfigurar seus mapeamentos na guia mapeamento.

Configurações

Para a configuração da guia Configurações, confira Definir suas outras configurações na guia configurações.

Cópia paralela do banco de dados Oracle

O conector do banco de dados Oracle fornece particionamento de dados interno para copiar dados do banco de dados Oracle em paralelo. Você pode encontrar opções de particionamento de dados na guia Origem da atividade de cópia.

Quando você habilita a cópia particionada, o serviço executa consultas paralelas com relação à sua fonte do banco de dados Oracle para carregar dados por partições. O grau paralelo é controlado pela configuração Grau de paralelismo de cópia na guia configurações de atividade de cópia. Por exemplo, ao definir Grau de paralelismo de cópia como quatro, o serviço gera e executa simultaneamente quatro consultas com base na opção de partição especificada e nas configurações, e cada consulta recupera uma parte dos dados do Oracle.

É recomendável habilitar a cópia paralela com o particionamento de dados, especialmente quando você carrega grandes quantidades de dados do banco de dados Oracle. Veja a seguir as configurações sugeridas para cenários diferentes. Ao copiar dados para o armazenamento de dados baseado em arquivo, recomendamos gravá-los em uma pasta como vários arquivos (apenas especifique o nome da pasta) para ter um desempenho melhor do que gravar em um arquivo.

Cenário Configurações sugeridas
Carregamento completo de uma tabela grande com partições físicas. Opção de partição: partições físicas da tabela.

Durante a execução, o serviço detecta automaticamente as partições físicas e copia os dados por partição.
Carregamento completo de uma tabela grande, sem partições físicas e com uma coluna de inteiro ou para o particionamento de dados. Opções de partição: partição de intervalo dinâmico.
Coluna de partição: especifique a coluna usada para particionar dados. Se não for especificada, a coluna de chave primária será usada.
Carregue uma grande quantidade de dados usando uma consulta personalizada, com partições físicas. Opção de partição: partições físicas da tabela.
Consulta: SELECT * FROM <TABLENAME> PARTITION("?DfTabularPartitionName") WHERE <your_additional_where_clause>.

Nome da partição: especifique os nomes de partição dos quais copiar dados. Se não for especificado, o serviço detectará automaticamente as partições físicas na tabela que você especificou nos dados do banco de dados Oracle.
Durante a execução, o serviço substitui ?DfTabularPartitionName pelo nome real da partição e envia ao banco de dados Oracle.
Carregue uma grande quantidade de dados usando uma consulta personalizada, sem partições físicas, com uma coluna de inteiro para o particionamento de dados. Opções de partição: partição de intervalo dinâmico.
Consulta: SELECT * FROM <TABLENAME> WHERE ?DfRangePartitionColumnName <= ?DfRangePartitionUpbound AND ?DfRangePartitionColumnName >= ?DfRangePartitionLowbound AND <your_additional_where_clause>.
Coluna de partição: especifique a coluna usada para particionar dados. Você pode particionar em relação à coluna com tipo de dados Integer.
Limite superior da partição e Limite inferior da partição: especifique se quiser filtrar a coluna de partição para recuperar dados somente entre os intervalos inferior e superior.

Durante a execução, o serviço substitui ?DfRangePartitionColumnName, ?DfRangePartitionUpbound e ?DfRangePartitionLowbound pelo nome real da coluna e os intervalos de valores de cada partição e envia ao banco de dados Oracle.
Por exemplo, se a coluna de partição "ID" for definida com o limite inferior de 1 e o limite superior de 80, com a cópia paralela definida como 4, o serviço recuperará dados por 4 partições. Suas IDs estão entre [1, 20], [21, 40], [41, 60] e [61, 80], respectivamente.

Dica

Ao copiar dados de uma tabela não particionada, você pode usar a opção de partição “Intervalo dinâmico” para particionar em uma coluna de inteiros. Se os dados de origem não tiverem esse tipo de coluna, você poderá aproveitar a função ORA_HASH na consulta de origem para gerar uma coluna e usá-la como coluna de partição.

Resumo da tabela

As tabelas a seguir contêm mais informações sobre a atividade de cópia no banco de dados Oracle.

Informações de origem

Nome Descrição Valor Obrigatório Propriedade do script JSON
Conexão Sua conexão com o armazenamento de dados de origem. <sua conexão do banco de dados Oracle.> Sim connection
Usar a consulta A maneira de ler dados do banco de dados Oracle. Aplique Tabela para ler dados da tabela especificada ou aplicar Consulta para ler dados usando consultas SQL. Tabela
Consulta
Sim /
Em Tabela
nome do esquema Nome do esquema. < o nome do esquema > Não esquema
nome da tabela Nome da tabela. < seu nome de tabela > Não tabela
Para Consulta
Consulta Utiliza a consulta SQL personalizada para ler os dados. Um exemplo é SELECT * FROM MyTable.
Ao habilitar a carga particionada, você precisa vincular todos os parâmetros de partição internos correspondentes na consulta. Confira a seção Cópia paralela do banco de dados Oracle para ver exemplos.
< Consultas SQL > Não oracleReaderQuery
Opção de partição As opções de particionamento de dados usadas para carregar dados do banco de dados Oracle. Nenhum (padrão)
Partições físicas da tabela
Intervalo dinâmico
Não /
Para Partições físicas da tabela
Nomes de partição A lista de partições físicas que precisam ser copiadas. Se você usar uma consulta para recuperar os dados de origem, conecte ?DfTabularPartitionName na cláusula WHERE. < seus nomes de partição > Não partitionNames
Para faixa dinâmica
Nome da coluna de partição Especifique o nome da coluna de origem no tipo de inteiro que será usado pelo particionamento de intervalo para cópia paralela. Se não especificado, a chave primária da tabela será detectada automaticamente e usada como a coluna de partição.
Se você usar uma consulta para recuperar os dados de origem, conecte ?DfRangePartitionColumnName na cláusula WHERE. Para obter um exemplo, veja a seção Cópia paralela do banco de dados Oracle.
< seus nomes de colunas de partição > Não partitionColumnName
Limite superior da partição Especifique o valor máximo da coluna de partição para copiar dados. Se você usar uma consulta para recuperar os dados de origem, conecte ?DfRangePartitionUpbound na cláusula WHERE. Para obter um exemplo, consulte Cópia paralela na seção Cópia paralela do banco de dados Oracle. < limite superior da sua partição> Não partitionUpperBound
Limite inferior da partição Especifique o valor mínimo da coluna de partição para copiar dados. Se você usar uma consulta para recuperar os dados de origem, conecte ?DfRangePartitionLowbound na cláusula WHERE. Para obter um exemplo, consulte Cópia paralela na seção Cópia paralela do banco de dados Oracle. < limite inferior da sua partição > Não partitionLowerBound
Tempo-limite da consulta O tempo limite para a execução do comando de consulta, padrão, é de 120 minutos. TimeSpan Não queryTimeout
Colunas adicionais Adicione colunas de dados adicionais para armazenar o caminho relativo ou o valor estático dos arquivos de origem. A expressão tem suporte para o último. • Nome
• Valor
Não additionalColumns:
• nome
• valor

Informações de destino

Nome Descrição Valor Obrigatório Propriedade do script JSON
Conexão Sua conexão com o armazenamento de dados de destino. <sua conexão do banco de dados Oracle.> Sim connection
Tabela Sua tabela de dados de destino. <nome da tabela de destino> Sim /
nome do esquema Nome do esquema. < o nome do esquema > Sim esquema
nome da tabela Nome da tabela. < seu nome de tabela > Sim tabela
Script de pré-cópia Especifique uma consulta SQL para a atividade de cópia, a ser executada antes de gravar dados no banco de dados Oracle em cada execução. Você pode usar essa propriedade para limpar os dados previamente carregados. < seu script de pré-cópia > Não preCopyScript
Tempo limite de gravação em lote O tempo de espera para a operação de inserção em lotes a ser concluída antes de atingir o tempo limite. TimeSpan No writeBatchTimeout
Tamanho do lote de gravação O número de linhas a serem inseridas na tabela SQL por lote. Número inteiro
(o padrão é 10.000)
Não writeBatchSize
Máximo de conexões simultâneas O limite superior de conexões simultâneas estabelecidas com o armazenamento de dados durante a execução da atividade. Especifique um valor somente quando desejar limitar as conexões simultâneas. < máximo de conexões simultâneas > Não maxConcurrentConnections