Configurar o Data Warehouse em uma atividade Copy
Esse artigo descreve como usar a atividade de cópia no pipeline de dados para copiar dados de e para um Data Warehouse.
Configuração com suporte
Para a configuração de cada guia em atividade Copy, vá para as seções a seguir, respectivamente.
Geral
Para a configuração da guia Geral, vá para Geral.
Origem
As propriedades a seguir têm suporte para o Data Warehouse como Origem em uma atividade de cópia.
As seguintes propriedades são necessárias:
Tipo de armazenamento de dados: selecione Workspace.
Tipo de armazenamento de dados do workspace: selecione Data Warehouse na lista de tipos de armazenamento de dados.
Data Warehouse: selecione um Data Warehouse existente no workspace.
Usar consulta: selecione Tabela, Consulta ou Procedimento armazenado.
Se você selecionar Tabela, escolha uma tabela existente na lista de tabelas ou especifique um nome de tabela manualmente selecionando a caixa Editar.
Se você selecionar Consulta, use o editor de consulta SQL customizado para escrever uma consulta SQL que recupere os dados de origem.
Se você selecionar Procedimento armazenado, escolha um procedimento armazenado existente na lista suspensa ou especifique um nome de procedimento armazenado como origem selecionando a caixa Editar.
Em Avançado, você pode especificar os campos a seguir:
Tempo limite da consulta (minutos): tempo limite para execução do comando de consulta, com um padrão de 120 minutos. Se essa propriedade for configurada, os valores permitidos estarão no formato de um intervalo de tempo, como "02:00:00" (120 minutos).
Nível de isolamento: especifique o comportamento de bloqueio da transação para a origem do SQL.
Opção de partição: especifique as opções de particionamento de dados usadas para carregar dados do Data Warehouse. Você pode selecionar Nenhum ou Intervalo dinâmico.
Se você selecionar Intervalo dinâmico, o parâmetro de partição de intervalo (
?AdfDynamicRangePartitionCondition
) será necessário ao usar a consulta com paralelo habilitado. Exemplo de consulta:SELECT * FROM <TableName> WHERE ?AdfDynamicRangePartitionCondition
.- Nome da coluna de partição: especifique o nome da coluna de origem no tipo inteiro ou data/datatime (
int
,smallint
,bigint
,date
,smalldatetime
,datetime
,datetime2
oudatetimeoffset
) que é usado pelo particionamento de intervalos da cópia paralela. Se não for especificado, o índice ou a chave primária da tabela será detectada automaticamente e usada como coluna de partição. - Limite superior da partição: o valor máximo da coluna da partição para a divisão do intervalo da partição. Esse valor é usado para decidir o stride da partição, e não para filtrar as linhas na tabela. Todas as linhas da tabela ou do resultado da consulta são particionadas e copiadas.
- Limite inferior da partição: o valor mínimo da coluna de partição para divisão do intervalo de partição. Esse valor é usado para decidir o stride da partição, e não para filtrar as linhas na tabela. Todas as linhas da tabela ou do resultado da consulta são particionadas e copiadas.
- Nome da coluna de partição: especifique o nome da coluna de origem no tipo inteiro ou data/datatime (
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 propriedades a seguir têm suporte para o Data Warehouse como Destino em uma atividade de cópia.
As propriedades a seguir são necessárias:
- Tipo de armazenamento de dados: selecione Workspace.
- Tipo de armazenamento de dados do workspace: selecione Data Warehouse na lista de tipos de armazenamento de dados.
- Data Warehouse: selecione um Data Warehouse existente no workspace.
- Tabela: escolha uma tabela existente na lista de tabelas ou especifique um nome de tabela como destino.
Em Avançado, você pode especificar os campos a seguir:
Configurações do comando de cópia: especifique as propriedades do comando de cópia.
Opções de tabela: especifique se deseja criar automaticamente a tabela de destino se nenhuma existir com base no esquema de origem. Você pode selecionar Nenhum ou Criar tabela automaticamente.
Script de pré-cópia: especifique uma consulta SQL a ser executada antes de gravar dados no Data Warehouse em cada execução. Use essa propriedade para limpar os dados pré-carregados.
Tempo limite do lote de gravação: o tempo de espera para a conclusão da operação de inserção de lote antes de atingir o tempo limite. Os valores permitidos estão no formato de um intervalo de tempo. O valor padrão é "00:30:00" (30 minutos).
Desabilitar a análise de métricas de desempenho: o serviço coleta métricas para otimização e recomendações de desempenho de cópia. Se você estiver preocupado com esse comportamento, desative esse recurso.
cópia direta
A instrução COPY é a principal maneira de ingerir dados em tabelas do Warehouse. O comando COPY do Data Warehouse dá suporte diretamente ao Armazenamento de Blobs do Azure e ao Azure Data Lake Storage Gen2 como armazenamentos de dados de origem. Se seus dados de origem atenderem aos critérios descritos nesta seção, use o comando COPY para copiar diretamente do armazenamento de dados de origem para o Data Warehouse.
Os dados de origem e o formato contêm os seguintes tipos e métodos de autenticação:
Tipo de armazenamento de dados de origem compatíveis Formato compatível Tipos de autenticação de origem compatíveis Armazenamento do Blobs do Azure Texto delimitado
ParquetAutenticação anônima
Autenticação de chave de conta
Autenticação de assinatura de acesso compartilhadoAzure Data Lake Storage Gen2 Texto delimitado
ParquetAutenticação de chave de conta
Autenticação de assinatura de acesso compartilhadoAs seguintes configurações de formato podem ser definidas:
- Para Parquet: o Tipo de compactação pode ser Nenhum, snappy ou gzip.
- Para DelimitedText:
- Delimitador de linha: ao copiar o texto delimitado para o Data Warehouse por meio do comando COPY direto, especifique o delimitador de linha explicitamente (\r; \n; ou \r\n). Somente quando o delimitador de linha do arquivo de origem for \r\n, o valor padrão (\r, \n ou \r\n) funcionará. Caso contrário, habilite o preparo para seu cenário.
- O valor nulo é deixado como padrão ou definido como cadeia de caracteres vazia ("").
- A codificação é deixada como padrão ou definida como UTF-8 ou UTF-16.
- A contagem de linhas ignoradas é deixada como padrão ou definida como 0.
- O tipo de compactação pode ser Nenhum ou gzip.
Se sua origem for uma pasta, você deve selecionar a caixa de seleção Recursivamente.
A Hora de início (UTC) e a Hora de término (UTC) em Filtrar pela última modificação, Prefixo, Habilitar descoberta de partição e Colunas adicionais não são especificadas.
Para saber como ingerir dados em seu Data Warehouse usando o comando COPY, confira esse artigo.
Se o armazenamento e o formato de dados de origem não tiverem suporte originalmente por um comando COPY, use a cópia preparada usando o recurso de comando COPY. Ele converte automaticamente os dados em um formato compatível com o comando COPY e, em seguida, chama um comando COPY para carregar os dados no Data Warehouse.
Cópia em etapas
Quando os dados de origem não forem nativamente compatíveis com o comando COPY, habilite a cópia de dados por meio de um armazenamento de preparo provisório. Nesse caso, o serviço converte automaticamente os dados para atender aos requisitos de formato de dados do comando COPY. Em seguida, ele invoca o comando COPY para carregar os dados no Data Warehouse. Por fim, ele limpa os dados temporários do armazenamento.
Para usar a cópia em estágios, vá para a guia Configurações e selecione Habilitar preparo. Você pode escolher Espaço de trabalho para usar o armazenamento de preparo criado automaticamente no Fabric. Para Externo, o Armazenamento de Blobs do Azure e o Azure Data Lake Storage Gen2 têm suporte como armazenamento de preparo externo. Você precisa criar uma conexão do Azure Blob Storage ou do Azure Data Lake Storage Gen2 primeiro e, em seguida, selecionar a conexão na lista suspensa para usar o armazenamento de preparo.
Observe que o intervalo de IP do Data Warehouse precisa ser permitido corretamente a partir do armazenamento de preparo.
Mapeamento
Para a configuração da guia Mapeamento, se você não aplicar Data Warehouse com tabela de criação automática como destino, acesse Mapeamento.
Se você aplicar o Data Warehouse com a tabela de criação automática como destino, exceto a configuração em Mapeamento, poderá editar o tipo das colunas de destino. Depois de selecionar Esquemas de importação, você pode especificar o tipo de coluna em seu destino.
Por exemplo, o tipo da coluna ID na origem é int, e você pode alterá-lo para o tipo float ao mapear para a coluna de destino.
Configurações
Para a configuração da guia Configurações, vá para Configurações.
Resumo da tabela
As tabelas a seguir contêm mais informações sobre uma atividade de cópia no Data Warehouse.
Informações de origem
Nome | Descrição | Valor | Obrigatório | Propriedade do script JSON |
---|---|---|---|---|
Tipo de armazenamento de dados | Seu tipo de armazenamento de dados. | Workspace | Yes | / |
Tipo de armazenamento de dados do workspace | A seção para selecionar o tipo de armazenamento de dados do workspace. | Data Warehouse | Sim | tipo |
Data Warehouse | O Data Warehouse que você deseja usar. | <seu data warehouse> | Sim | endpoint artifactId |
Usar consulta | A maneira de ler dados do Data Warehouse. | • Tabelas • Consulta • Procedimento armazenado |
Não | (em typeProperties ->source )• typeProperties: esquema tabela • sqlReaderQuery • sqlReaderStoredProcedureName |
Tempo limite da consulta (minutos) | Tempo limite para execução do comando de consulta, com padrão de 120 minutos. Se essa propriedade for configurada, os valores permitidos estarão no formato de um intervalo de tempo, como "02:00:00" (120 minutos). | TimeSpan | Não | queryTimeout |
Nível de Isolamento | O comportamento de bloqueio de transação para origem. | • Nenhum • Snapshot |
Não | isolationLevel |
Opção de partição | As opções de particionamento de dados usadas para carregar dados do Data Warehouse. | • Nenhum • Intervalo dinâmico |
Não | partitionOption |
Nome da coluna de partição | O nome da coluna de origem no tipo inteiro ou data/datetime ( int ,smallint ,bigint ,date ,smalldatetime ,datetime ,datetime2 ou datetimeoffset ) que é usado pelo particionamento de intervalo para cópia paralela. Se não for especificado, o índice ou a chave primária da tabela será detectada automaticamente e usada como coluna de partição. |
<nome da coluna da partição> | Não | partitionColumnName |
Limite superior da partição | O valor máximo da coluna de partição para divisão do intervalo de partição. Esse valor é usado para decidir o stride da partição, e não para filtrar as linhas na tabela. Todas as linhas da tabela ou do resultado da consulta são particionadas e copiadas. | <limite superior da partição> | Não | partitionUpperBound |
Limite inferior da partição | O valor mínimo da coluna de partição para divisão do intervalo de partição. Esse valor é usado para decidir o stride da partição, e não para filtrar as linhas na tabela. Todas as linhas da tabela ou do resultado da consulta são particionadas e copiadas. | <limite inferior da partição> | Não | partitionLowerBound |
Colunas adicionais | Adicione colunas de dados adicionais para armazenar o caminho relativo ou o valor estático dos arquivos de origem. | • Nome • Valor |
Não | additionalColumns: • nome • valor |
Informações de destino
Nome | Descrição | Valor | Obrigatório | Propriedade do script JSON |
---|---|---|---|---|
Tipo de armazenamento de dados | Seu tipo de armazenamento de dados. | Workspace | Yes | / |
Tipo de armazenamento de dados do workspace | A seção para selecionar o tipo de armazenamento de dados do workspace. | Data Warehouse | Sim | tipo |
Data Warehouse | O Data Warehouse que você deseja usar. | <seu data warehouse> | Sim | endpoint artifactId |
Tabela | A tabela de destino para gravar dados. | <nome da tabela de destino> | Sim | esquema tabela |
Configurações de comando Copiar | As configurações de propriedade de comando Copiar. Contém as configurações de valor padrão. | Valor padrão: • Coluna • Valor |
Não | copyCommandSettings: defaultValues: • columnName • defaultValue |
Opção de tabela | Se a tabela de destino deve ser criada automaticamente se nenhuma existir com base no esquema de origem. | • Nenhum • Criação automática de tabela |
Não | tableOption: • autoCreate |
Script de pré-cópia | Uma consulta SQL a ser executada antes de gravar dados no Data Warehouse em cada execução. Use essa propriedade para limpar os dados pré-carregados. | <Script de pré-cópia> | Não | preCopyScript |
Tempo limite de gravação em lote | O tempo de espera para a conclusão da operação de inserção de lote antes de atingir o tempo limite. Os valores permitidos estão no formato de um intervalo de tempo. O valor padrão é "00:30:00" (30 minutos). | TimeSpan | No | writeBatchTimeout |
Desabilitar a análise de métricas de desempenho | O serviço coleta métricas para otimização e recomendações de desempenho de cópia, que introduzem acesso adicional ao banco de dados mestre. | selecionar ou desmarcar | Não | disableMetricsCollection: true ou false |