Share via


Copiar e transformar dados no Microsoft Fabric Warehouse usando o Azure Data Factory ou o Azure Synapse Analytics

APLICA-SE A: Azure Data Factory Azure Synapse Analytics

Dica

Experimente o Data Factory no Microsoft Fabric, uma solução de análise tudo-em-um para empresas. O Microsoft Fabric abrange desde movimentação de dados até ciência de dados, análise em tempo real, business intelligence e relatórios. Saiba como iniciar uma avaliação gratuita!

Este artigo descreve como usar a Atividade de Cópia para copiar dados de e para o Microsoft Fabric Warehouse. Para saber mais, leia o artigo introdutório do Azure Data Factory ou do Azure Synapse Analytics.

Funcionalidades com suporte

Este conector do Microsoft Fabric Warehouse tem suporte para os seguintes recursos:

Funcionalidades com suporte IR Ponto de extremidade privado gerenciado
Atividade de cópia (origem/coletor) ① ②
Atividade de pesquisa ① ②
Atividade GetMetadata ① ②
Atividade de Script ① ②
Stored procedure activity (Atividade de procedimento armazenado) ① ②

① Runtime de integração do Azure ② Runtime de integração auto-hospedada

Introdução

Para executar a atividade de Cópia com um pipeline, será possível usar as ferramentas ou os SDKs abaixo:

Criar um serviço vinculado do Microsoft Fabric Warehouse usando a interface do usuário

Use as etapas a seguir para criar um serviço vinculado do Microsoft Fabric Warehouse na interface do usuário do portal do Azure.

  1. Navegue até a guia Gerenciar no workspace do Azure Data Factory ou do Synapse e selecione Serviços Vinculados. Depois, selecione Novo:

  2. Pesquise por Warehouse e selecione o conector.

    Captura de tela mostrando Selecionar o conector do Microsoft Fabric Warehouse.

  3. Configure os detalhes do serviço, teste a conexão e crie o novo serviço vinculado.

    Captura de tela da configuração do serviço vinculado do Microsoft Fabric Warehouse.

Detalhes da configuração do conector

As seções a seguir fornecem detalhes sobre as propriedades usadas para definir entidades do Data Factory específicas do Microsoft Fabric Warehouse.

Propriedades do serviço vinculado

O conector do Microsoft Fabric Warehouse dá suporte aos seguintes tipos de autenticação. Consulte as seções correspondentes para obter detalhes:

Autenticação de entidade de serviço

Para usar a autenticação de entidade de serviço, siga estas etapas.

  1. Registrar um aplicativo com a plataforma Microsoft Identity e adicionar um de segredo do cliente. Em seguida, anote estes valores; ele são usados para definir o serviço vinculado:

    • ID do aplicativo (cliente), que é a ID da entidade de serviço no serviço vinculado.
    • Valor do segredo do cliente, que é a chave da entidade de serviço no serviço vinculado.
    • ID do locatário
  2. Conceda à entidade de serviço, pelo menos, a função Colaborador no workspace do Microsoft Fabric. Siga estas etapas:

    1. Acesse o workspace do Microsoft Fabric e selecione Gerenciar acesso na barra superior. Em seguida, selecione Adicionar pessoas ou grupos.

      Captura de tela mostrando a seleção de Gerenciar acesso do workspace do Fabric.

       Captura de tela mostrando o painel Gerenciar acesso do workspace do Fabric.

    2. No painel Adicionar pessoas, insira o nome da entidade de serviço e selecione a entidade de serviço na lista suspensa.

    3. Especifique a função como Colaborador ou superior (administrador, membro) e escolha Adicionar.

      Captura de tela mostrando a adição da função do workspace do Fabric.

    4. A entidade de serviço será exibida no painel Gerenciar acesso.

Estas propriedades têm suporte para o serviço vinculado:

Propriedade Descrição Obrigatório
tipo A propriedade type deve ser definida como Warehouse. Sim
endpoint O ponto de extremidade do servidor do Microsoft Fabric Warehouse. Sim
workspaceId A ID do workspace do Microsoft Fabric. Sim
artifactId A ID de objeto do Microsoft Fabric Warehouse. Sim
locatário Especifique as informações de locatário (domínio nome ou ID do Locatário) em que o aplicativo reside. Recupere-as passando o mouse no canto superior direito do Portal do Azure. Sim
servicePrincipalId Especifique a ID do cliente do aplicativo. Sim
servicePrincipalCredentialType O tipo de credencial a ser usada para autenticação da entidade de serviço. Os valores permitidos são ServicePrincipalKey e ServicePrincipalCert. Sim
servicePrincipalCredential A credencial da entidade de serviço.
Ao usar ServicePrincipalKey como o tipo de credencial, especifique o valor do segredo do cliente do aplicativo. Marque este campo como um SecureString para armazená-lo com segurança ou referencie um segredo armazenado no Azure Key Vault.
Quando usar ServicePrincipalCert como credencial, faça referência a um certificado no Azure Key Vault e verifique se o tipo de conteúdo do certificado é PKCS nº 12.
Sim
connectVia O runtime de integração a ser usado para se conectar ao armazenamento de dados. Você pode usar o Azure Integration Runtime ou um runtime de integração auto-hospedada se o seu armazenamento de dados estiver em uma rede privada. Se não especificado, o Azure Integration Runtime padrão será usado. Não

Exemplo: usar a autenticação de chave de entidade de serviço

Você também pode armazenar a chave de entidade de serviço no Azure Key Vault.

{
    "name": "MicrosoftFabricWarehouseLinkedService",
    "properties": {
        "type": "Warehouse",
        "typeProperties": {
            "endpoint": "<Microsoft Fabric Warehouse server endpoint>",
            "workspaceId": "<Microsoft Fabric workspace ID>",
            "artifactId": "<Microsoft Fabric Warehouse object ID>",
            "tenant": "<tenant info, e.g. microsoft.onmicrosoft.com>",
            "servicePrincipalId": "<service principal id>",
            "servicePrincipalCredentialType": "ServicePrincipalKey",
            "servicePrincipalCredential": {
                "type": "SecureString",
                "value": "<service principal key>"
            }   
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Propriedades do conjunto de dados

Para obter uma lista completa das seções e propriedades disponíveis para definir os conjuntos de dados, confira o artigo sobre Conjuntos de Dados.

As propriedades a seguir têm suporte para o conjunto de dados do Microsoft Fabric Warehouse:

Propriedade Descrição Obrigatório
tipo A propriedade type do conjunto de dados deve ser definida como WarehouseTable. Sim
esquema Nome do esquema. Não para fonte, Sim para o coletor
tabela Nome da tabela/exibição. Não para fonte, Sim para o coletor

Exemplo de propriedades do conjunto de dados

{
    "name": "FabricWarehouseTableDataset",
    "properties": {
        "type": "WarehouseTable",
        "linkedServiceName": {
            "referenceName": "<Microsoft Fabric Warehouse linked service name>",
            "type": "LinkedServiceReference"
        },
        "schema": [ < physical schema, optional, retrievable during authoring >
        ],
        "typeProperties": {
            "schema": "<schema_name>",
            "table": "<table_name>"
        }
    }
}

Propriedades da atividade de cópia

Para obter uma lista completa de seções e propriedades disponíveis para definir atividades, confira Copiar configurações de atividade e Pipelines e atividades. Esta seção fornece uma lista de propriedades compatíveis com a origem e o coletor do Microsoft Fabric Warehouse.

Microsoft Fabric Warehouse como a origem

Dica

Para carregar dados do Microsoft Fabric Warehouse com eficiência usando o particionamento de dados, saiba mais na seção Cópia paralela do Microsoft Fabric Warehouse.

Para copiar dados do Microsoft Fabric Warehouse, defina a propriedade type na origem da Atividade de Cópia como WarehouseSource. As seguintes propriedades são suportadas na seção source da atividade de cópia:

Propriedade Descrição Obrigatório
tipo A propriedade type da origem da Atividade de Cópia deve ser definida como WarehouseSource. Sim
sqlReaderQuery Utiliza a consulta SQL personalizada para ler os dados. Exemplo: select * from MyTable. Não
sqlReaderStoredProcedureName O nome do procedimento armazenado que lê dados da tabela de origem. A última instrução SQL deve ser uma instrução SELECT no procedimento armazenado. Não
storedProcedureParameters Parâmetros para o procedimento armazenado.
Valores permitidos são pares de nome ou valor. Nomes e uso de maiúsculas e minúsculas de parâmetros devem corresponder aos nomes e o uso de maiúsculas e minúsculas dos parâmetros do procedimento armazenado.
Não
queryTimeout Especifica o tempo limite para a execução do comando de consulta. O padrão é 120 minutos. Não
isolationLevel Especifica o comportamento de bloqueio de transação para a origem do SQL. O valor permitido é Snapshot. Se não for especificado, o nível de isolamento padrão do banco de dados será usado. Para obter mais informações, confira system.data.isolationlevel. Não
partitionOptions Especifica as opções de particionamento de dados usadas para carregar dados do Microsoft Fabric Warehouse.
Os valores permitidos são: None (padrão) e DynamicRange.
Quando uma opção de partição é habilitada (ou seja, não None), o grau de paralelismo para carregar dados simultaneamente de um Microsoft Fabric Warehouse é controlado pela configuração parallelCopies na atividade de cópia.
Não
partitionSettings Especifique o grupo de configurações para o particionamento de dados.
Aplicar quando a opção de partição não for None.
No
Em partitionSettings:
partitionColumnName Especifique o nome da coluna de origem no tipo inteiro ou data/datetime (int, smallint, bigint, date, datetime2) que será 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.
Aplicar quando a opção de partição for DynamicRange. Se você usar uma consulta para recuperar os dados de origem, conecte ?DfDynamicRangePartitionCondition na cláusula WHERE. Para obter um exemplo, consulte a seção cópia paralela do Microsoft Fabric Warehouse.
Não
partitionUpperBound 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 serão particionadas e copiadas. Se não for especificado, a atividade de cópia detectará o valor automaticamente.
Aplicar quando a opção de partição for DynamicRange. Para obter um exemplo, consulte a seção cópia paralela do Microsoft Fabric Warehouse.
Não
partitionLowerBound 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 serão particionadas e copiadas. Se não for especificado, a atividade de cópia detectará o valor automaticamente.
Aplicar quando a opção de partição for DynamicRange. Para obter um exemplo, consulte a seção cópia paralela do Microsoft Fabric Warehouse.
Não

Observação

Ao usar o procedimento armazenado na origem para recuperar dados, observe que se o procedimento armazenado for projetado como retornando esquemas diferentes quando um valor de parâmetro diferente for passado, você poderá encontrar uma falha ou ver um resultado inesperado ao importar o esquema da interface do usuário ou ao copiar dados para o Microsoft Fabric Warehouse com a criação de tabela automática.

Exemplo: usando a consulta SQL

"activities":[
    {
        "name": "CopyFromMicrosoftFabricWarehouse",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<Microsoft Fabric Warehouse input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "WarehouseSource",
                "sqlReaderQuery": "SELECT * FROM MyTable"
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Exemplo: usando o procedimento armazenado

"activities":[
    {
        "name": "CopyFromMicrosoftFabricWarehouse",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<Microsoft Fabric Warehouse input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "WarehouseSource",
                "sqlReaderStoredProcedureName": "CopyTestSrcStoredProcedureWithParameters",
                "storedProcedureParameters": {
                    "stringData": { "value": "str3" },
                    "identifier": { "value": "$$Text.Format('{0:yyyy}', <datetime parameter>)", "type": "Int"}
                }
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Exemplo de procedimento armazenado:

CREATE PROCEDURE CopyTestSrcStoredProcedureWithParameters
(
    @stringData varchar(20),
    @identifier int
)
AS
SET NOCOUNT ON;
BEGIN
    select *
    from dbo.UnitTestSrcTable
    where dbo.UnitTestSrcTable.stringData != stringData
    and dbo.UnitTestSrcTable.identifier != identifier
END
GO

Microsoft Fabric Warehouse como um tipo de coletor

Os pipelines do Azure Data Factory e do Synapse dão suporte ao Uso da instrução COPY para carregar dados no Microsoft Fabric Warehouse.

Para copiar dados para o Microsoft Fabric Warehouse, defina o tipo de coletor em Atividade de Cópia para WarehouseSink. As seguintes propriedades são suportadas na seção Copy Activity sink:

Propriedade Descrição Obrigatório
tipo A propriedade type do coletor de Atividade de Cópia deve ser definida como WarehouseSink. Sim
allowCopyCommand Indica se a instrução COPY deve ser usada para carregar dados no Microsoft Fabric Warehouse.

Consulte Usar a instrução COPY para carregar dados na seção Microsoft Fabric Warehouse para obter restrições e detalhes.

O valor permitido é True.
Sim
copyCommandSettings Um grupo de propriedades que pode ser especificado quando a propriedade allowCopyCommand está definida como TRUE. Não
writeBatchTimeout Essa propriedade especifica o tempo de espera para que a operação de inserção, upsert e procedimento armazenado seja concluída antes de atingir o tempo limite.

Os valores permitidos são para o timespan. Um exemplo é "00:30:00" por 30 minutos. Se nenhum valor for especificado, o tempo limite padrão será "00:30:00"
Não
preCopyScript Especifique uma consulta SQL para a Atividade de Cópia a ser executada antes de gravar dados no Microsoft Fabric Warehouse em cada execução. Use essa propriedade para limpar os dados pré-carregados. Não
tableOption Especifica se a tabela do coletor deve ser criada automaticamente caso ela não exista com base no esquema de origem. Os valores permitidos são none (padrão) e autoCreate. Não
disableMetricsCollection 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. Se você estiver preocupado com esse comportamento, especifique true para desativá-lo. Não (o padrão é false)

Exemplo: coletor do Microsoft Fabric Warehouse

"activities":[
    {
        "name": "CopyToMicrosoftFabricWarehouse",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<Microsoft Fabric Warehouse output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "<source type>"
            },
            "sink": {
                "type": "WarehouseSink",
                "allowCopyCommand": true,
                "tableOption": "autoCreate",
                "disableMetricsCollection": false
            }
        }
    }
]

Cópia paralela do Microsoft Fabric Warehouse

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

Captura de tela das opções de partição

Quando você habilita a cópia particionada, a atividade de cópia executa consultas paralelas em sua fonte do Microsoft Fabric Warehouse para carregar dados por partições. O grau paralelo é controlado pela configuração do parallelCopies na atividade de cópia. Por exemplo, se você definir parallelCopies como quatro, o serviço gerará e executará simultaneamente quatro consultas com base na opção de partição e nas configurações especificadas, e cada consulta recuperará uma parte dos dados do Microsoft Fabric Warehouse.

Você é sugerido para habilitar a cópia paralela com o particionamento de dados, especialmente quando você carrega uma grande quantidade de dados do Microsoft Fabric Warehouse. 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
Carga completa da tabela grande, enquanto com uma coluna de número inteiro ou datetime para particionamento de dados. Opções de partição: partição de intervalo dinâmico.
Coluna de partição (opcional): especifique a coluna usada para particionar dados. Se não for especificada, a coluna de chave primária ou de índice será usada.
Limite superior da partição e limite inferior da partição (opcional): especifique se deseja determinar o stride da partição. Isso não é para filtrar as linhas na tabela e todas as linhas na tabela serão particionadas e copiadas. Se não for especificado, a atividade Copy detectará os valores automaticamente.

Por exemplo, se a “ID” da coluna de partição tiver valores no intervalo de 1 a 100 e você definir o limite inferior como 20 e o limite superior como 80, com a cópia paralela definida como 4, o serviço recuperará dados por 4 IDs de partição no intervalo <=20, [21, 50], [51, 80], e >=81, respectivamente.
Carregue uma grande quantidade de dados usando uma consulta personalizada, enquanto com uma coluna inteiro ou data/datetime para particionamento de dados. Opções de partição: partição de intervalo dinâmico.
Consulta: SELECT * FROM <TableName> WHERE ?DfDynamicRangePartitionCondition AND <your_additional_where_clause>.
Coluna de partição: especifique a coluna usada para particionar dados.
Limite superior da partição e limite inferior da partição (opcional): especifique se deseja determinar o stride da partição. Isso não é para filtrar as linhas na tabela e todas as linhas no resultado da consulta serão particionadas e copiadas. Se não for especificado, a atividade de cópia detectará o valor automaticamente.

Por exemplo, se a “ID” da coluna de partição tiver valores no intervalo de 1 a 100 e você definir o limite inferior como 20 e o limite superior como 80, com a cópia paralela definida como 4, o serviço recuperará dados por 4 IDs de partição no intervalo <=20, [21, 50], [51, 80], e >=81, respectivamente.

Veja mais exemplos de consultas para diferentes cenários:
1. Consultar a tabela inteira:
SELECT * FROM <TableName> WHERE ?DfDynamicRangePartitionCondition
2. Consultar em uma tabela com seleção de coluna e filtros de cláusula "where" adicionais:
SELECT <column_list> FROM <TableName> WHERE ?DfDynamicRangePartitionCondition AND <your_additional_where_clause>
3. Consultar com sub-consultas:
SELECT <column_list> FROM (<your_sub_query>) AS T WHERE ?DfDynamicRangePartitionCondition AND <your_additional_where_clause>
4. Consultar com partição na sub-consulta:
SELECT <column_list> FROM (SELECT <your_sub_query_column_list> FROM <TableName> WHERE ?DfDynamicRangePartitionCondition) AS T

Melhores práticas para carregar dados com a opção de partição:

  • Escolha a coluna distinta como coluna de partição (como chave primária ou chave exclusiva) para evitar a distorção de dados.
  • Se você usa o Azure Integration Runtime para copiar dados, pode definir "DIUs (unidades de integração de dados)" maiores (>4) para utilizar mais recursos de computação. Verifique os cenários aplicáveis.
  • O "grau de paralelismo de cópia" controla os números de partições. Às vezes, definir um número muito grande afeta o desempenho; é recomendável definir esse número como (DIU ou número de nós de IR auto-hospedados) * (2 a 4).
  • Observe que o Microsoft Fabric Warehouse pode executar no máximo 32 consultas por momento, definir "Grau de paralelismo de cópia" muito grande pode causar um problema de limitação do Warehouse.

Exemplo: consulta com a partição do intervalo dinâmico

"source": {
    "type": "WarehouseSource",
    "query": "SELECT * FROM <TableName> WHERE ?DfDynamicRangePartitionCondition AND <your_additional_where_clause>",
    "partitionOption": "DynamicRange",
    "partitionSettings": {
        "partitionColumnName": "<partition_column_name>",
        "partitionUpperBound": "<upper_value_of_partition_column (optional) to decide the partition stride, not as data filter>",
        "partitionLowerBound": "<lower_value_of_partition_column (optional) to decide the partition stride, not as data filter>"
    }
}

Usar a instrução COPY para carregar dados no Microsoft Fabric Warehouse

Usar a instrução COPY é uma maneira simples e flexível de carregar dados no Microsoft Fabric Warehouse com alta taxa de transferência. Para saber mais detalhes, confira Dados de carregamento em massa usando a instrução COPY

  • Se os dados de origem estiverem no Blob do Azure ou no Azure Data Lake Storage Gen2 e o formato for compatível com a instrução COPY, você poderá usar a atividade de cópia para invocar diretamente a instrução COPY para permitir que o Microsoft Fabric Warehouse efetue pull dos dados da origem. Para obter mais detalhes, confira Cópia direta usando a instrução COPY .
  • Se o armazenamento e o formato de dados de origem não forem originalmente suportados pela instrução COPY, use o recurso Cópia preparada usando a instrução COPY . O recurso de cópia em etapas também proporciona uma melhor taxa de transferência. Ele converte automaticamente os dados em formato compatível com a instrução COPY, armazena os dados no Armazenamento de Blobs do Azure e, em seguida, chama a instrução COPY para carregar dados no Microsoft Fabric Warehouse.

Dica

Ao usar a instrução COPY com o Azure Integration Runtime, as DIUs (unidades de integração de dados) efetivas são sempre 2. Ajustar a DIU não afeta o desempenho.

Cópia direta usando a instrução COPY

A instrução COPY do Microsoft Fabric Warehouse dá suporte diretamente ao Blob do Azure, ao Azure Data Lake Storage Gen1 e ao Azure Data Lake Storage Gen2. Se os dados de origem atenderem aos critérios descritos nesta seção, use a instrução COPY para copiar diretamente do armazenamento de dados de origem para o Microsoft Fabric Warehouse. Caso contrário, use Cópia preparada usando a instrução COPY. O serviço verifica as configurações e falha na execução da atividade de cópia se os critérios não forem atendidos.

  • O serviço vinculado de origem e o formato acompanham 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
    Blob do Azure Texto delimitado Autenticação de chave de conta, autenticação de assinatura de acesso compartilhado
      Parquet Autenticação de chave de conta, autenticação de assinatura de acesso compartilhado
    Azure Data Lake Storage Gen2 Texto delimitado
    Parquet
    Autenticação de chave de conta, autenticação de assinatura de acesso compartilhado
  • As configurações de formato têm as seguintes particularidades:

    • Para Parquet: compression pode ser sem compactação, Snappy ou GZip.
    • Para Texto delimitado:
      • rowDelimiter é definido explicitamente como caractere único ou " \r\n", o valor padrão não é compatível.
      • nullValue é deixado como padrão ou definido como cadeia de caracteres vazia ("").
      • encodingName é deixado como padrão ou definido como utf-8 ou utf-16.
      • escapeChar precisa ser o mesmo que quoteChar e não está vazio.
      • skipLineCount é deixado como padrão ou definido como 0.
      • compression pode ser nenhuma compactação ou GZip.
  • Se sua fonte for uma pasta, recursive na atividade de cópia precisará ser definida como true e wildcardFilename precisará ser * ou *.*.

  • wildcardFolderPath , wildcardFilename (além de *ou *.*), modifiedDateTimeStart, modifiedDateTimeEnd, prefix, enablePartitionDiscovery e additionalColumns não são especificados.

As seguintes configurações da instrução COPY são compatíveis em allowCopyCommand na atividade de cópia:

Propriedade Descrição Obrigatório
defaultValues Especifica os valores padrão para cada coluna de destino no Microsoft Fabric Warehouse. Os valores padrão na propriedade substituem a restrição DEFAULT definida no data warehouse e a coluna de identidade não pode ter um valor padrão. Não
additionalOptions Opções adicionais que serão passadas para uma instrução COPY do Microsoft Fabric Warehouse diretamente na cláusula "With" na instrução COPY. Coloque o valor entre aspas conforme necessário para alinhar com os requisitos da instrução COPY. Não
"activities":[
    {
        "name": "CopyFromAzureBlobToMicrosoftFabricWarehouseViaCOPY",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "ParquetDataset",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "MicrosoftFabricWarehouseDataset",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "ParquetSource",
                "storeSettings":{
                    "type": "AzureBlobStorageReadSettings",
                    "recursive": true
                }
            },
            "sink": {
                "type": "WarehouseSink",
                "allowCopyCommand": true,
                "copyCommandSettings": {
                    "defaultValues": [
                        {
                            "columnName": "col_string",
                            "defaultValue": "DefaultStringValue"
                        }
                    ],
                    "additionalOptions": {
                        "MAXERRORS": "10000",
                        "DATEFORMAT": "'ymd'"
                    }
                }
            },
            "enableSkipIncompatibleRow": true
        }
    }
]

Cópia preparada usando a instrução COPY

Quando os dados de origem não são nativamente compatíveis com a instrução COPY, habilite a cópia de dados por meio de uma instância provisória do Blob do Azure ou do Azure Data Lake Storage Gen2 (não pode ser o Armazenamento Premium do Azure). Nesse caso, o serviço converte automaticamente os dados para atender aos requisitos de formato de dados da instrução COPY. Em seguida, ele invoca a instrução COPY para carregar dados no Microsoft Fabric Warehouse. Por fim, ele limpa os dados temporários do armazenamento. Confira Cópia de preparo para obter detalhes sobre a cópia de dados por meio do preparo.

Para usar esse recurso, crie um serviço vinculado do Armazenamento de Blobs do Azure ou um serviço vinculado do Azure Data Lake Storage Gen2 com autenticação de identidade gerenciada pelo sistema ou chave de conta que se refere à conta de armazenamento do Azure como armazenamento provisório.

Importante

Importante

Se o Armazenamento do Azure de preparo estiver configurado com o Ponto de Extremidade Privado gerenciado e tiver o firewall de armazenamento habilitado, use a autenticação de identidade gerenciada e conceda permissões de Leitor de Dados de Blob do Armazenamento para o SQL Server do Synapse para garantir que ele possa acessar os arquivos preparados durante o carregamento da instrução COPY.

"activities":[
    {
        "name": "CopyFromSQLServerToMicrosoftFabricWarehouseViaCOPYstatement",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "SQLServerDataset",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "MicrosoftFabricWarehouseDataset",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "SqlSource",
            },
            "sink": {
                "type": "WarehouseSink",
                "allowCopyCommand": true
            },
            "stagingSettings": {
                "linkedServiceName": {
                    "referenceName": "MyStagingStorage",
                    "type": "LinkedServiceReference"
                }
            }
        }
    }
]

Pesquisar propriedades de atividade

Para saber detalhes sobre as propriedades, verifique Atividade de pesquisa.

Propriedades de atividade GetMetadata

Para saber detalhes sobre as propriedades, verifique Atividade GetMetadata

Mapeamento de tipo de dados para o Microsoft Fabric Warehouse

Quando você copia dados do Microsoft Fabric Warehouse, os mapeamentos a seguir são usados dos tipos de dados do Microsoft Fabric Warehouse para tipos de dados provisórios dentro do serviço internamente. Para saber mais sobre como a atividade de cópia mapeia o tipo de dados e esquema de origem para o coletor, consulte Mapeamentos de tipo de dados e esquema.

Tipo de dados do Microsoft Fabric Warehouse Tipo de dados provisório do Data Factory
BIGINT Int64
binary Byte[]
bit Boolean
char String, Char[]
date Datetime
datetime2 Datetime
Decimal Decimal
FILESTREAM attribute (varbinary(max)) Byte[]
Float Double
INT Int32
numeric Decimal
real Único
SMALLINT Int16
time TimeSpan
UNIQUEIDENTIFIER Guid
varbinary Byte[]
varchar String, Char[]

Próximas etapas

Para obter uma lista dos armazenamentos de dados com suporte como coletores e fontes da atividade de cópia, confira os Armazenamentos de dados com suporte.