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 suportada
Para a configuração de cada guia em atividade de cópia, vá para as seções a seguir, respectivamente.
- General (Geral)
- Source
- Destino
- Mapeamento
- Definições
Geral
Consulte as orientações de configurações gerais para configurar 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.
As seguintes propriedades são necessárias:
- Conexão: Selecione uma conexão de banco de dados Oracle na lista de conexões. Se não houver conexão, crie uma nova conexão de banco de dados Oracle selecionando Mais na parte inferior da lista de conexões.
- Usar consulta: Selecione na Tabela ou Consulta.
Se você selecionar Tabela:
Tabela: especifique o nome da tabela no banco de dados Oracle para ler dados. Selecione a tabela na lista suspensa ou selecione Enter manualmente para inserir o esquema e o nome da tabela.
Se você selecionar Consulta:
Consulta: especifique a consulta SQL personalizada para ler dados. Por exemplo:
SELECT * FROM MyTable
.Ao habilitar a carga particionada, você precisa conectar quaisquer parâmetros de partição internos correspondentes em sua consulta. Para obter exemplos, consulte a seção Cópia paralela do banco de dados Oracle.
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á habilitada (ou seja, não Nenhuma), o grau de paralelismo para carregar simultaneamente dados de um banco de dados Oracle é controlado pela guia Grau de paralelismo de cópia na guia Configurações de atividade de cópia.
Se você selecionar Nenhum, optará por não usar a partição.
Se você selecionar Partições físicas da tabela:
Nomes de partições: 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
a cláusula WHERE. Para obter um exemplo, consulte a seção Cópia paralela do banco de dados Oracle.
Se você selecionar 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 intervalo para cópia paralela. Se não for especificado, a chave primária da tabela será detetada automaticamente e usada como coluna de partição.
Se você usar uma consulta para recuperar os dados de origem, conecte
?DfRangePartitionColumnName
a cláusula WHERE. Para obter um exemplo, consulte 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 dados.
Se você usar uma consulta para recuperar os dados de origem, conecte
?DfRangePartitionUpbound
a cláusula WHERE. Para obter um exemplo, consulte a seção Cópia paralela da 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
a cláusula WHERE. Para obter um exemplo, consulte a seção Cópia paralela da cópia paralela do banco de dados Oracle.
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 de intervalo de tempo, 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 é suportada para este último.
Destino
As propriedades a seguir são suportadas para o banco de dados Oracle na guia Destino de uma atividade de cópia.
As seguintes propriedades são necessárias:
- Conexão: Selecione uma conexão de banco de dados Oracle na lista de conexões. Se a conexão não existir, crie uma nova 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 Enter 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 pré-carregados.
- Tempo limite de gravação do lote: o tempo de espera para que a operação de inserção em lote seja concluída antes que ela atinja o tempo limite. O valor permitido é timepan. 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 estabelecido para o armazenamento de dados durante a execução da atividade. Especifique um valor somente quando quiser limitar conexões simultâneas.
Mapeamento
Para Configuração da guia Mapeamento , vá para Configurar seus mapeamentos na guia Mapeamento.
Definições
Para a configuração da guia Configurações , consulte Configurar suas outras configurações na guia configurações.
Cópia paralela do banco de dados Oracle
O conector de 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 na 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, se você definir Grau de paralelismo de cópia como quatro, o serviço gerará e executará simultaneamente quatro consultas com base na opção e nas configurações de partição especificadas, e cada consulta recuperará uma parte dos dados do banco de dados Oracle.
Sugere-se que habilite a cópia paralela com particionamento de dados, especialmente quando você carrega uma grande quantidade de dados do banco de dados Oracle. A seguir estão sugeridas configurações para diferentes cenários. Ao copiar dados para o armazenamento de dados baseado em arquivo, é recomendável gravar em uma pasta como vários arquivos (especifique apenas o nome da pasta), caso em que o desempenho é melhor do que gravar em um único arquivo.
Cenário | Configurações sugeridas |
---|---|
Carga completa a partir de uma mesa grande, com divisórias físicas. | Opção de partição: Partições físicas da tabela. Durante a execução, o serviço deteta automaticamente as partições físicas e copia os dados por partições. |
Carga completa a partir de uma tabela grande, sem partições físicas, enquanto com uma coluna inteira para 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 especificado, a coluna de chave primária será usada. |
Carregue uma grande quantidade de dados usando uma consulta personalizada, com partições físicas. | Opções 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 o(s) nome(s) da(s) partição(ões) de onde copiar os dados. Se não for especificado, o serviço detetará automaticamente as partições físicas na tabela especificada nos dados do banco de dados Oracle. Durante a execução, o serviço substitui ?DfTabularPartitionName pelo nome real da partição e envia para o banco de dados Oracle. |
Carregue uma grande quantidade de dados usando uma consulta personalizada, sem partições físicas, enquanto com uma coluna inteira para 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 contra a coluna com o tipo de dados inteiro. Limite superior da partição e limite inferior da partição: especifique se deseja filtrar a coluna da partição para recuperar dados apenas entre o intervalo inferior e superior. Durante a execução, o serviço substitui ?DfRangePartitionColumnName , ?DfRangePartitionUpbound e ?DfRangePartitionLowbound com o nome da coluna real e intervalos de valores para cada partição, e envia para o banco de dados Oracle. Por exemplo, se a coluna de partição "ID" estiver definida com o limite inferior como 1 e o limite superior como 80, com cópia paralela definida como 4, o serviço recuperará dados por 4 partições. Os seus IDs situam-se entre [1,20], [21, 40], [41, 60] e [61, 80], respetivamente.» |
Gorjeta
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 inteira. Se os dados de origem não tiverem esse tipo de coluna, você poderá aproveitar ORA_HASH função 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.
Fonte da informação
Nome | Descrição | valor | Necessário | Propriedade de script JSON |
---|---|---|---|---|
Ligação | Sua conexão com o armazenamento de dados de origem. | <sua conexão com o banco de dados Oracle> | Sim | ligação |
Utilizar consulta | A maneira de ler dados do banco de dados Oracle. Aplique Table para ler dados da tabela especificada ou aplique Query para ler dados usando consultas SQL. | • Tabela • Consulta |
Sim | / |
Para a tabela | ||||
nome do esquema | Nome do esquema. | < o nome do seu esquema > | Não | esquema |
nome da tabela | Nome da tabela. | < o nome da sua tabela > | Não | tabela |
Para consulta | ||||
Consulta | Use a consulta SQL personalizada para ler dados. Um exemplo é SELECT * FROM MyTable . Ao habilitar a carga particionada, você precisa conectar quaisquer parâmetros de partição internos correspondentes em sua consulta. Para obter exemplos, consulte a seção Cópia paralela do banco de dados Oracle. |
< 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) • Divisórias físicas de mesa • Alcance dinâmico |
Não | / |
Para partições físicas de tabela | ||||
Nomes de partições | A lista de partições físicas que precisam ser copiadas. Se você usar uma consulta para recuperar os dados de origem, conecte ?DfTabularPartitionName a cláusula WHERE. |
< os nomes das suas partições > | Não | partitionNames |
Para o intervalo dinâmico | ||||
Nome da coluna da partição | Especifique o nome da coluna de origem no tipo inteiro que será usado pelo particionamento de intervalo para cópia paralela. Se não for especificado, a chave primária da tabela será detetada automaticamente e usada como coluna de partição. Se você usar uma consulta para recuperar os dados de origem, conecte ?DfRangePartitionColumnName a cláusula WHERE. Para obter um exemplo, consulte a seção Cópia paralela do banco de dados Oracle. |
< os nomes das colunas da sua 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 a cláusula WHERE. Para obter um exemplo, consulte a seção Cópia paralela da cópia paralela do banco de dados Oracle. |
< O limite superior da sua partição > | Não | partiçãoUpperBound |
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 a cláusula WHERE. Para obter um exemplo, consulte a seção Cópia paralela da cópia paralela do banco de dados Oracle. |
< o limite inferior da sua partição > | Não | partiçãoLowerBound |
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 é suportada para este último. | • Nome • Valor |
Não | adicionaisColunas: • nome • valor |
Informações sobre o destino
Nome | Descrição | valor | Necessário | Propriedade de script JSON |
---|---|---|---|---|
Ligação | Sua conexão com o armazenamento de dados de destino. | <sua conexão com o banco de dados Oracle> | Sim | ligação |
Tabela | Sua tabela de dados de destino. | <Nome da tabela de destino> | Sim | / |
nome do esquema | Nome do esquema. | < o nome do seu esquema > | Sim | esquema |
nome da tabela | Nome da tabela. | < o nome da sua tabela > | Sim | tabela |
Script de pré-cópia | 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 pré-carregados. | < seu script de pré-cópia > | Não | pré-CopyScript |
Tempo limite de gravação em lote | O tempo de espera para que a operação de inserção de lote seja concluída antes que ela atinja o tempo limite. | timespan | Não | writeBatchTimeout |
Tamanho do lote de gravação | O número de linhas a serem inseridas na tabela SQL por lote. | integer (o padrão é 10.000) |
Não | writeBatchSize |
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 quiser limitar conexões simultâneas. | < Máximo de conexões simultâneas > | Não | maxConcurrentConnections |