Copiar e transformar dados em Azure Data Lake Storage Gen2 utilizando Azure Data Factory ou Azure Synapse Analytics

APLICA-SE A: Azure Data Factory Azure Synapse Analytics

Azure Data Lake Storage Gen2 (ADLS Gen2) é um conjunto de capacidades dedicadas à análise de big data incorporadas no armazenamento de Azure Blob. Pode utilizá-lo para interagir com os dados ao utilizar os paradigmas de armazenamento de objetos e do sistema de ficheiros.

Este artigo descreve como usar a Copy Activity para copiar dados de e para Azure Data Lake Storage Gen2, e usar Fluxo de Dados para transformar dados em Azure Data Lake Storage Gen2. Para saber mais, leia o artigo introdutório para Azure Data Factory ou Azure Synapse Analytics.

Dica

Para o cenário de migração de datas ou data warehouse, saiba mais em dados migratórios do seu lago de dados ou armazém de dados para Azure.

Capacidades suportadas

Este conector Azure Data Lake Storage Gen2 é suportado para as seguintes capacidades:

Capacidades suportadas IR Ponto final privado gerido
atividade Copy (fonte/pia) ① ②
Mapeamento do fluxo de dados (fonte/pia)
Atividade de procura ① ②
Atividade getMetadata ① ②
Eliminar atividade ① ②

(1) Tempo de execução da integração azul (2) Tempo de integração auto-organizado

Para atividade Copy, com este conector pode:

Introdução

Dica

Para obter uma análise de como utilizar o conector Data Lake Storage Gen2, consulte os dados de carga em Azure Data Lake Storage Gen2.

Para realizar o atividade Copy com um oleoduto, pode utilizar uma das seguintes ferramentas ou SDKs:

Criar um serviço Azure Data Lake Storage Gen2 ligado usando uI

Utilize os seguintes passos para criar um serviço Azure Data Lake Storage Gen2 ligado na UI portal do Azure.

  1. Navegue no separador Gerir no seu espaço de trabalho Azure Data Factory ou sinapse e selecione Serviços Ligados e, em seguida, clique em Novo:

  2. Procure Azure Data Lake Storage Gen2 e selecione o conector Azure Data Lake Storage Gen2.

    Selecione Azure Data Lake Storage Gen2 conector.

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

    Screenshot da configuração para Azure Data Lake Storage Gen2 serviço ligado.

Detalhes da configuração do conector

As seguintes secções fornecem informações sobre propriedades que são usadas para definir a Fábrica de Dados e entidades de gasodutos Synapse específicas para Data Lake Storage Gen2.

Propriedades de serviço ligadas

O conector Azure Data Lake Storage Gen2 suporta os seguintes tipos de autenticação. Consulte as secções correspondentes para mais detalhes:

Nota

  • Se pretender utilizar o tempo de execução da integração do Azure público para se ligar ao Data Lake Storage Gen2, aproveitando os serviços da Microsoft fidedignas para aceder a esta opção de conta de armazenamento ativada na firewall do Azure Storage, deve utilizar a autenticação de identidade gerida. Para obter mais informações sobre as definições de firewalls de armazenamento Azure, consulte firewalls de armazenamento Configure Azure e redes virtuais.
  • Quando utilizar a declaração PolyBase ou COPY para carregar dados em Azure Synapse Analytics, se a sua origem ou Data Lake Storage Gen2 de paragem estiver configurada com um ponto final Azure Rede Virtual, deve utilizar a autenticação de identidade gerida conforme exigido por Azure Synapse. Consulte a secção de autenticação de identidade gerida com mais pré-requisitos de configuração.

Autenticação chave de conta

Para utilizar a autenticação da chave de armazenamento, suportam-se as seguintes propriedades:

Propriedade Descrição Obrigatório
tipo A propriedade tipo deve ser definida para AzureBlobFS. Yes
url Ponto final para Data Lake Storage Gen2 com o padrão de https://<accountname>.dfs.core.windows.net. Yes
contaKey Chave da conta para Data Lake Storage Gen2. Marque este campo como um SecureString para armazená-lo de forma segura, ou fazer referência a um segredo armazenado em Azure Key Vault. Yes
connectVia O tempo de integração a ser utilizado para ligar à loja de dados. Pode utilizar o tempo de execução da integração Azure ou um tempo de integração auto-hospedado se a sua loja de dados estiver numa rede privada. Se esta propriedade não for especificada, o tempo de execução de integração Azure padrão é usado. No

Nota

O ponto final secundário do sistema de ficheiros ADLS não é suportado quando se utiliza a autenticação da chave de conta. Pode utilizar outros tipos de autenticação.

Exemplo:

{
    "name": "AzureDataLakeStorageGen2LinkedService",
    "properties": {
        "type": "AzureBlobFS",
        "typeProperties": {
            "url": "https://<accountname>.dfs.core.windows.net", 
            "accountkey": { 
                "type": "SecureString", 
                "value": "<accountkey>" 
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Autenticação do principal de serviço

Para utilizar a autenticação principal do serviço, siga estes passos.

  1. Registe uma entidade de candidatura no Azure Ative Directory (Azure AD) seguindo os passos no Registo da sua candidatura junto de um inquilino Azure AD. Tome nota dos seguintes valores, que utiliza para definir o serviço ligado:

    • ID da aplicação
    • Chave de aplicação
    • ID do inquilino
  2. Conceda ao diretor de serviço a permissão adequada. Veja exemplos sobre como funciona a permissão em Data Lake Storage Gen2 a partir de listas de controlo de acesso em ficheiros e diretórios

    • Como fonte: Em Explorador de Armazenamento, conceda pelo menos a permissão de executar para TODAS as pastas a montante e o sistema de ficheiros, juntamente com a permissão de Leitura para que os ficheiros copiem. Em alternativa, no controlo de acesso (IAM), conceda, no mínimo, a função Leitor de Dados do Armazenamento de Blobs.
    • Como pia: Em Explorador de Armazenamento, conceda pelo menos a permissão de executar para TODAS as pastas a montante e para o sistema de ficheiros, juntamente com a permissão de escrever para a pasta do lavatório. Em alternativa, no controlo de acesso (IAM), conceda, no mínimo, a função Contribuidor de Dados do Armazenamento de Blobs.

Nota

Se utilizar a UI para autor e o principal de serviço não estiver definido com a função "Storage Blob Data Reader/Contributor" no IAM, ao fazer a ligação de teste ou as pastas de navegação/navegação/navegação, escolha "Testar a ligação ao caminho do ficheiro" ou "Navegar pelo caminho especificado", e especificar um caminho com a permissão de Leitura + Executar para continuar.

Estas propriedades são suportadas pelo serviço ligado:

Propriedade Descrição Obrigatório
tipo A propriedade tipo deve ser definida para AzureBlobFS. Yes
url Ponto final para Data Lake Storage Gen2 com o padrão de https://<accountname>.dfs.core.windows.net. Yes
servicePrincipalId Especifique a identificação do cliente da aplicação. Yes
ServiçoPrincipalCredentialType O tipo de credencial a utilizar para a autenticação principal do serviço. Os valores permitidos são ServicePrincipalKey e ServicePrincipalCert. Yes
serviçoPrincipalCredential A credencial principal de serviço.
Quando utilizar o ServicePrincipalKey como tipo de credencial, especifique a chave da aplicação. Marque este campo como SecureString para armazená-lo de forma segura, ou fazer referência a um segredo armazenado em Azure Key Vault.
Quando utilizar o ServicePrincipalCert como credencial, consulte um certificado em Azure Key Vault e certifique-se de que o tipo de conteúdo do certificado é PKCS #12.
Yes
serviçoPrincipalKey Especifique a chave da aplicação. Marque este campo como SecureString para armazená-lo de forma segura, ou fazer referência a um segredo armazenado em Azure Key Vault.
Esta propriedade ainda é suportada como é para servicePrincipalId + servicePrincipalKey. À medida que a ADF adiciona a autenticação do novo certificado principal de serviço, o novo modelo de autenticação principal de serviço é servicePrincipalIdservicePrincipalCredential + servicePrincipalCredentialType + .
No
inquilino Especifique a informação do inquilino (nome de domínio ou ID do inquilino) sob a qual a sua aplicação reside. Recuperá-lo pairando sobre o rato no canto superior direito do portal do Azure. Yes
AzureCloudType Para a autenticação principal do serviço, especifique o tipo de ambiente em nuvem Azure ao qual está registado o seu pedido de Diretório Azure Ative.
Os valores permitidos são AzurePublic, AzureChina, AzureUsGovernment e AzureGermany. Por padrão, é utilizada a fábrica de dados ou o ambiente em nuvem do gasoduto Synapse.
No
connectVia O tempo de integração a ser utilizado para ligar à loja de dados. Pode utilizar o tempo de execução da integração Azure ou um tempo de integração auto-hospedado se a sua loja de dados estiver numa rede privada. Se não for especificado, utiliza-se o tempo de execução da integração Azure predefinido. No

Exemplo: utilização da autenticação principal do serviço

Também pode armazenar a chave principal do serviço em Azure Key Vault.

{
    "name": "AzureDataLakeStorageGen2LinkedService",
    "properties": {
        "type": "AzureBlobFS",
        "typeProperties": {
            "url": "https://<accountname>.dfs.core.windows.net", 
            "servicePrincipalId": "<service principal id>",
            "servicePrincipalCredentialType": "ServicePrincipalKey",
            "servicePrincipalCredential": {
                "type": "SecureString",
                "value": "<service principal key>"
            },
            "tenant": "<tenant info, e.g. microsoft.onmicrosoft.com>" 
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Exemplo: utilização da autenticação do certificado principal de serviço

{
    "name": "AzureDataLakeStorageGen2LinkedService",
    "properties": {
        "type": "AzureBlobFS",
        "typeProperties": {
            "url": "https://<accountname>.dfs.core.windows.net", 
            "servicePrincipalId": "<service principal id>",
            "servicePrincipalCredentialType": "ServicePrincipalCert",
            "servicePrincipalCredential": { 
                "type": "AzureKeyVaultSecret", 
                "store": { 
                    "referenceName": "<AKV reference>", 
                    "type": "LinkedServiceReference" 
                }, 
                "secretName": "<certificate name in AKV>" 
            },
            "tenant": "<tenant info, e.g. microsoft.onmicrosoft.com>" 
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Autenticação de identidade gerida atribuída pelo sistema

Uma fábrica de dados ou espaço de trabalho da Sinapse pode ser associado a uma identidade gerida atribuída pelo sistema. Pode utilizar diretamente esta identidade gerida atribuída ao sistema para Data Lake Storage Gen2 autenticação, semelhante à utilização do seu próprio chefe de serviço. Permite que esta fábrica ou espaço de trabalho designado aceda e copie dados para ou a partir do seu Data Lake Storage Gen2.

Para utilizar a autenticação de identidade gerida atribuída pelo sistema, siga estes passos.

  1. Recupere as informações de identidade geridas atribuídas pelo sistema copiando o valor do ID do objeto de identidade gerido gerado juntamente com a sua fábrica de dados ou espaço de trabalho da Sinapse.

  2. Conceda a permissão de identidade gerida pelo sistema. Veja exemplos sobre como funciona a permissão em Data Lake Storage Gen2 a partir de listas de controlo de acesso em ficheiros e diretórios.

    • Como fonte: Em Explorador de Armazenamento, conceda pelo menos a permissão de executar para TODAS as pastas a montante e o sistema de ficheiros, juntamente com a permissão de Leitura para que os ficheiros copiem. Em alternativa, no controlo de acesso (IAM), conceda, no mínimo, a função Leitor de Dados do Armazenamento de Blobs.
    • Como pia: Em Explorador de Armazenamento, conceda pelo menos a permissão de executar para TODAS as pastas a montante e para o sistema de ficheiros, juntamente com a permissão de escrever para a pasta do lavatório. Em alternativa, no controlo de acesso (IAM), conceda, no mínimo, a função Contribuidor de Dados do Armazenamento de Blobs.

Estas propriedades são suportadas pelo serviço ligado:

Propriedade Descrição Obrigatório
tipo A propriedade tipo deve ser definida para AzureBlobFS. Yes
url Ponto final para Data Lake Storage Gen2 com o padrão de https://<accountname>.dfs.core.windows.net. Yes
connectVia O tempo de integração a ser utilizado para ligar à loja de dados. Pode utilizar o tempo de execução da integração Azure ou um tempo de integração auto-hospedado se a sua loja de dados estiver numa rede privada. Se não for especificado, utiliza-se o tempo de execução da integração Azure predefinido. No

Exemplo:

{
    "name": "AzureDataLakeStorageGen2LinkedService",
    "properties": {
        "type": "AzureBlobFS",
        "typeProperties": {
            "url": "https://<accountname>.dfs.core.windows.net", 
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Autenticação de identidade gerida atribuída pelo utilizador

Uma fábrica de dados pode ser atribuída com uma ou múltiplas identidades geridas pelo utilizador. Pode utilizar esta identidade gerida atribuída pelo utilizador para a autenticação de armazenamento Blob, que permite aceder e copiar dados de ou para Data Lake Storage Gen2. Para saber mais sobre identidades geridas para recursos Azure, consulte identidades geridas para recursos Azure

Para utilizar a autenticação de identidade gerida atribuída pelo utilizador, siga estes passos:

  1. Crie uma ou múltiplas identidades geridas atribuídas pelo utilizador e conceda acesso a Azure Data Lake Storage Gen2. Veja exemplos sobre como funciona a permissão em Data Lake Storage Gen2 a partir de listas de controlo de acesso em ficheiros e diretórios.

    • Como fonte: Em Explorador de Armazenamento, conceda pelo menos a permissão de executar para TODAS as pastas a montante e o sistema de ficheiros, juntamente com a permissão de Leitura para que os ficheiros copiem. Em alternativa, no controlo de acesso (IAM), conceda, no mínimo, a função Leitor de Dados do Armazenamento de Blobs.
    • Como pia: Em Explorador de Armazenamento, conceda pelo menos a permissão de executar para TODAS as pastas a montante e para o sistema de ficheiros, juntamente com a permissão de escrever para a pasta do lavatório. Em alternativa, no controlo de acesso (IAM), conceda, no mínimo, a função Contribuidor de Dados do Armazenamento de Blobs.
  2. Atribua uma ou múltiplas identidades geridas atribuídas ao utilizador para a sua fábrica de dados e crie credenciais para cada identidade gerida atribuída pelo utilizador.

Estas propriedades são suportadas pelo serviço ligado:

Propriedade Descrição Obrigatório
tipo A propriedade tipo deve ser definida para AzureBlobFS. Yes
url Ponto final para Data Lake Storage Gen2 com o padrão de https://<accountname>.dfs.core.windows.net. Yes
credenciais Especifique a identidade gerida atribuída pelo utilizador como o objeto credencial. Yes
connectVia O tempo de integração a ser utilizado para ligar à loja de dados. Pode utilizar o tempo de execução da integração Azure ou um tempo de integração auto-hospedado se a sua loja de dados estiver numa rede privada. Se não for especificado, utiliza-se o tempo de execução da integração Azure predefinido. No

Exemplo:

{
    "name": "AzureDataLakeStorageGen2LinkedService",
    "properties": {
        "type": "AzureBlobFS",
        "typeProperties": {
            "url": "https://<accountname>.dfs.core.windows.net", 
            "credential": {
                "referenceName": "credential1",
                "type": "CredentialReference"
                }
            },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Nota

Se utilizar a UI da Data Factory para autor e a identidade gerida não for definida com a função "Storage Blob Data Reader/Contributor" no IAM, ao fazer a ligação de teste ou as pastas de navegação/navegação/navegação, escolha "Testar a ligação ao caminho do ficheiro" ou "Navegar pelo caminho especificado", e especificar um caminho com a permissão de Leitura + Executar para continuar.

Importante

Se utilizar a declaração PolyBase ou COPY para carregar os dados de Data Lake Storage Gen2 para Azure Synapse Analytics, quando utilizar a autenticação de identidade gerida para Data Lake Storage Gen2, certifique-se de que também segue os passos 1 a 3 nesta orientação. Esses passos registarão o seu servidor com Azure AD e atribuirão a função de Contribuinte de Dados de Armazenamento blob ao seu servidor. A Fábrica de Dados trata do resto. Se configurar o armazenamento blob com um ponto final Rede Virtual Azure, também precisa de ter serviços fidedignos da Microsoft para aceder a esta conta de armazenamentoligados ao menu de firewalls da conta de armazenamento Azure e redes virtuais, conforme exigido por Azure Synapse.

Dataset properties (Propriedades do conjunto de dados)

Para obter uma lista completa de secções e propriedades disponíveis para definir conjuntos de dados, consulte Datasets.

Azure Data Factory suporta os seguintes formatos de ficheiro. Consulte cada artigo para obter definições baseadas em formato.

As seguintes propriedades são suportadas para Data Lake Storage Gen2 em location configurações no conjunto de dados baseado em formato:

Propriedade Descrição Obrigatório
tipo A propriedade tipo em baixo location no conjunto de dados deve ser definida para AzureBlobFSLocation. Yes
sistema de ficheiros O nome do sistema de ficheiros Data Lake Storage Gen2. No
folderPath O caminho para uma pasta sob o sistema de ficheiros dado. Se pretender utilizar um wildcard para filtrar pastas, ignore esta definição e especifique-a nas definições de origem da atividade. No
fileName O nome do ficheiro sob o dado fileSystem + pasta. Se pretender utilizar um wildcard para filtrar ficheiros, ignore esta definição e especifique-a nas definições de fonte de atividade. No

Exemplo:

{
    "name": "DelimitedTextDataset",
    "properties": {
        "type": "DelimitedText",
        "linkedServiceName": {
            "referenceName": "<Data Lake Storage Gen2 linked service name>",
            "type": "LinkedServiceReference"
        },
        "schema": [ < physical schema, optional, auto retrieved during authoring > ],
        "typeProperties": {
            "location": {
                "type": "AzureBlobFSLocation",
                "fileSystem": "filesystemname",
                "folderPath": "folder/subfolder"
            },
            "columnDelimiter": ",",
            "quoteChar": "\"",
            "firstRowAsHeader": true,
            "compressionCodec": "gzip"
        }
    }
}

Propriedades da atividade Copy

Para obter uma lista completa de secções e propriedades disponíveis para definir atividades, consulte atividade Copy configurações e Pipelines e atividades. Esta secção fornece uma lista de propriedades suportadas pela fonte Data Lake Storage Gen2 e pia.

Azure Data Lake Storage Gen2 como tipo de origem

Azure Data Factory suporta os seguintes formatos de ficheiro. Consulte cada artigo para obter definições baseadas em formato.

Tem várias opções para copiar dados da ADLS Gen2:

  • Cópia do caminho especificado no conjunto de dados.
  • Filtrar wildcard contra o caminho da pasta ou nome do ficheiro, ver wildcardFolderPath e wildcardFileName.
  • Copie os ficheiros definidos num dado ficheiro de texto como conjunto de ficheiros, ver fileListPath.

As seguintes propriedades são suportadas para Data Lake Storage Gen2 em storeSettings configurações na fonte de cópia baseada em formato:

Propriedade Descrição Obrigatório
tipo A propriedade tipo em baixo storeSettings deve ser definida para AzureBlobFSReadSettings. Yes
Localize os ficheiros para copiar:
OPÇÃO 1: caminho estático
Copiar a partir do sistema de ficheiros dado ou do caminho da pasta/ficheiro especificado no conjunto de dados. Se pretender copiar todos os ficheiros de um sistema/pasta de ficheiros, especificar wildcardFileName ainda como *.
OPÇÃO 2: wildcard
- wildcardFolderPath
O caminho da pasta com caracteres wildcard sob o sistema de ficheiros configurado no conjunto de dados para filtrar as pastas de origem.
Os wildcards permitidos são: * (corresponde a zero ou mais caracteres) e ? (corresponde a zero ou caracteres individuais); use ^ para escapar se o nome da sua pasta tiver wildcard ou este char de fuga no interior.
Veja mais exemplos em exemplos de pasta e filtro de ficheiros.
No
OPÇÃO 2: wildcard
- wildcardFileName
O nome do ficheiro com caracteres wildcard no sistema de ficheiros dado + folderPath/wildcardFolderPath para filtrar ficheiros de origem.
Os wildcards permitidos são: * (corresponde a zero ou mais caracteres) e ? (corresponde a zero ou caracteres individuais); use ^ para escapar se o seu nome de ficheiro real tiver wildcard ou este char de fuga no interior. Veja mais exemplos em exemplos de pasta e filtro de ficheiros.
Yes
OPÇÃO 3: uma lista de ficheiros
- fileListPath
Indica copiar um determinado conjunto de ficheiros. Aponte para um ficheiro de texto que inclua uma lista de ficheiros que pretende copiar, um ficheiro por linha, que é o caminho relativo para o caminho configurado no conjunto de dados.
Ao utilizar esta opção, não especifique o nome do ficheiro no conjunto de dados. Consulte mais exemplos nos exemplos da lista de ficheiros.
No
Definições adicionais:
recursivo Indica se os dados são lidos novamente a partir das sub-dobradeiras ou apenas a partir da pasta especificada. Note que quando a recursiva é definida como verdadeira e a pia é uma loja baseada em ficheiros, uma pasta ou sub-dobrador vazio não é copiado ou criado na pia.
Os valores permitidos são verdadeiros (padrão) e falsos.
Esta propriedade não se aplica quando configura fileListPath.
No
eliminarFilesAfterCompletion Indica se os ficheiros binários serão eliminados da loja de origem depois de se mudarem com sucesso para a loja de destino. A eliminação do ficheiro é por ficheiro, por isso, quando a atividade da cópia falhar, verá que alguns ficheiros já foram copiados para o destino e eliminados da fonte, enquanto outros ainda permanecem na loja de origem.
Esta propriedade só é válida em cenário de cópia de ficheiros binários. O valor predefinido: falso.
No
modificadoDatetimeStart Filtro de ficheiros com base no atributo: Última Modificação.
Os ficheiros serão selecionados se o seu último tempo modificado for superior ou igual a modifiedDatetimeStart .modifiedDatetimeEnd O tempo é aplicado ao fuso horário UTC no formato de "2018-12-01T05:00:00Z".
As propriedades podem ser NUAS, o que significa que nenhum filtro de atributo de ficheiro será aplicado no conjunto de dados. Quando modifiedDatetimeStart tiver valor de data mas modifiedDatetimeEnd é NU, significa que os ficheiros cujo último atributo modificado é maior ou igual ao valor da data serão selecionados. Quando modifiedDatetimeEnd tem valor de data mas modifiedDatetimeStart é NU, significa que os ficheiros cujo último atributo modificado é inferior ao valor da data serão selecionados.
Esta propriedade não se aplica quando configura fileListPath.
No
modedDatetimeEnd Mesmo que acima. No
permitirPartitionDiscovery Para os ficheiros que são divididos, especifique se analisa as divisórias do caminho do ficheiro e adicione-as como colunas de origem adicionais.
Os valores permitidos são falsos (padrão) e verdadeiros.
No
partitionRootPath Quando a descoberta da partição estiver ativada, especifique o caminho da raiz absoluta para ler as pastas partidas como colunas de dados.

Se não for especificado, por defeito,
- Quando utiliza o caminho do ficheiro no conjunto de dados ou na lista de ficheiros na fonte, o caminho da raiz da partição é o caminho configurado no conjunto de dados.
- Quando utiliza o filtro de pasta wildcard, o caminho da raiz da partição é o sub-caminho antes do primeiro wildcard.

Por exemplo, assumindo que configura o caminho no conjunto de dados como "raiz/pasta/ano=2020/mês=08/dia=27":
- Se especificar o caminho da raiz da partição como "raiz/pasta/ano=2020", a atividade da cópia gerará mais duas colunas month e day com o valor "08" e "27", respectivamente, para além das colunas dentro dos ficheiros.
- Se não for especificado o caminho da raiz da partição, não será gerada nenhuma coluna extra.
No
maxConcurrentConnections O limite superior das ligações simultâneas estabelecidas na loja de dados durante a atividade. Especifique um valor apenas quando pretende limitar as ligações simultâneas. No

Exemplo:

"activities":[
    {
        "name": "CopyFromADLSGen2",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<Delimited text input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "DelimitedTextSource",
                "formatSettings":{
                    "type": "DelimitedTextReadSettings",
                    "skipLineCount": 10
                },
                "storeSettings":{
                    "type": "AzureBlobFSReadSettings",
                    "recursive": true,
                    "wildcardFolderPath": "myfolder*A",
                    "wildcardFileName": "*.csv"
                }
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Azure Data Lake Storage Gen2 como um tipo de pia

Azure Data Factory suporta os seguintes formatos de ficheiro. Consulte cada artigo para obter definições baseadas em formato.

As seguintes propriedades são suportadas para Data Lake Storage Gen2 em storeSettings configurações no lavatório de cópias baseado em formato:

Propriedade Descrição Obrigatório
tipo A propriedade tipo em baixo storeSettings deve ser definida para AzureBlobFSSWriteSettings. Yes
copyOportundo Define o comportamento da cópia quando a fonte é ficheiros de uma loja de dados baseada em ficheiros.

Os valores permitidos são:
- Preservar aHierarquia (predefinição): Preserva a hierarquia do ficheiro na pasta alvo. O percurso relativo do ficheiro de origem para a pasta de origem é idêntico ao percurso relativo do ficheiro-alvo à pasta alvo.
- FlattenHierarchy: Todos os ficheiros da pasta de origem estão no primeiro nível da pasta alvo. Os ficheiros-alvo têm nomes autogerados.
- MergeFiles: Combina todos os ficheiros da pasta de origem para um ficheiro. Se o nome do ficheiro for especificado, o nome do ficheiro fundido é o nome especificado. Caso contrário, é um nome de ficheiro autogerado.
No
blockSizeInMB Especifique o tamanho do bloco em MB usado para escrever dados para ADLS Gen2. Saiba mais sobre Block Blobs.
O valor permitido é entre 4 MB e 100 MB.
Por predefinição, a ADF determina automaticamente o tamanho do bloco com base no tipo e dados da sua loja de origem. Para a cópia não binária na ADLS Gen2, o tamanho do bloco predefinido é de 100 MB de modo a encaixar no máximo aproximadamente 4.75-TB dados. Pode não ser ótimo quando os seus dados não são grandes, especialmente quando utiliza Integration Runtime auto-hospedados com uma rede deficiente, resultando em tempo de funcionamento ou problema de desempenho. Pode especificar explicitamente um tamanho de bloco, enquanto certifique-se de que o blocoSizeInMB*50000 é grande o suficiente para armazenar os dados, caso contrário, a execução da atividade da cópia falhará.
No
maxConcurrentConnections O limite superior das ligações simultâneas estabelecidas na loja de dados durante a atividade. Especifique um valor apenas quando pretende limitar as ligações simultâneas. No
do IdP Desateia metadados personalizados quando copiar para afundar. Cada objeto sob a metadata matriz representa uma coluna extra. O name define o nome chave dos metadados, e indica o value valor dos dados dessa chave. Se forem utilizados atributos de preservação , os metadados especificados irão unir-se/substituir-se com os metadados do ficheiro de origem.

Os valores de dados permitidos são:
- $$LASTMODIFIED: uma variável reservada indica para armazenar o último tempo modificado dos ficheiros de origem. Aplicar apenas na fonte baseada em ficheiros com formato binário.
- Expressão
- Valor estático
No

Exemplo:

"activities":[
    {
        "name": "CopyToADLSGen2",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<Parquet output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "<source type>"
            },
            "sink": {
                "type": "ParquetSink",
                "storeSettings":{
                    "type": "AzureBlobFSWriteSettings",
                    "copyBehavior": "PreserveHierarchy",
                    "metadata": [
                        {
                            "name": "testKey1",
                            "value": "value1"
                        },
                        {
                            "name": "testKey2",
                            "value": "value2"
                        },
                        {
                            "name": "lastModifiedKey",
                            "value": "$$LASTMODIFIED"
                        }
                    ]
                }
            }
        }
    }
]

Exemplos de pasta e filtro de ficheiros

Esta secção descreve o comportamento resultante do caminho da pasta e nome do ficheiro com filtros wildcard.

folderPath fileName recursivo Estrutura de pasta de origem e resultado do filtro (os ficheiros em negrito são recuperados)
Folder* (Vazio, uso padrão) false Pasta
    File1.csv
    File2.json
    Sub-página1
        File3.csv
        File4.json
        File5.csv
Outra 14h
    File6.csv
Folder* (Vazio, uso padrão) true Pasta
    File1.csv
    File2.json
    Sub-página1
        File3.csv
        File4.json
        File5.csv
Outra 14h
    File6.csv
Folder* *.csv false Pasta
    File1.csv
    File2.json
    Sub-página1
        File3.csv
        File4.json
        File5.csv
Outra 14h
    File6.csv
Folder* *.csv true Pasta
    File1.csv
    File2.json
    Sub-página1
        File3.csv
        File4.json
        File5.csv
Outra 14h
    File6.csv

Exemplos de lista de ficheiros

Esta secção descreve o comportamento resultante da utilização do caminho da lista de ficheiros na fonte de atividade de cópia.

Assumindo que tem a seguinte estrutura de pasta de origem e quer copiar os ficheiros em negrito:

Estrutura de origem da amostra Conteúdo em FileListToCopy.txt Configuração ADF
sistema de ficheiros
    Pasta
        File1.csv
        File2.json
        Sub-página1
            File3.csv
            File4.json
            File5.csv
    Metadados
        FileListToCopy.txt
File1.csv
Sub-página1/File3.csv
Sub-página1/File5.csv
No conjunto de dados:
- Sistema de ficheiros: filesystem
- Caminho da pasta: FolderA

Na fonte de atividade de cópia:
- Caminho da lista de ficheiros: filesystem/Metadata/FileListToCopy.txt

O caminho da lista de ficheiros aponta para um ficheiro de texto na mesma loja de dados que inclui uma lista de ficheiros que pretende copiar, um ficheiro por linha com o caminho relativo ao caminho configurado no conjunto de dados.

Alguns exemplos recursivos e copyBehavior

Esta secção descreve o comportamento resultante da operação de cópia para diferentes combinações de valores recursivos e copyBehavior.

recursivo copyOportundo Estrutura de pasta de origem Alvo resultante
true preservarHierarquia Pasta1
    Arquivo1
    Arquivo2
    Sub-página1
        Arquivo3
        Arquivo4
        Arquivo5
A Pasta-alvo1 é criada com a mesma estrutura que a fonte:

Pasta1
    Arquivo1
    Arquivo2
    Sub-página1
        Arquivo3
        Arquivo4
        Arquivo5
true achatamento Pasta1
    Arquivo1
    Arquivo2
    Sub-página1
        Arquivo3
        Arquivo4
        Arquivo5
A Pasta-alvo1 é criada com a seguinte estrutura:

Pasta1
    nome autogerado para File1
    nome autogerado para File2
    nome autogerado para File3
    nome autogerado para File4
    nome autogerado para File5
true fusõesFilia Pasta1
    Arquivo1
    Arquivo2
    Sub-página1
        Arquivo3
        Arquivo4
        Arquivo5
A Pasta-alvo1 é criada com a seguinte estrutura:

Pasta1
    File1 + File2 + File3 + File4 + File5 os conteúdos são fundidos num ficheiro com um nome de ficheiro autogerido.
false preservarHierarquia Pasta1
    Arquivo1
    Arquivo2
    Sub-página1
        Arquivo3
        Arquivo4
        Arquivo5
A Pasta-alvo1 é criada com a seguinte estrutura:

Pasta1
    Arquivo1
    Arquivo2

Subfolder1 com File3, File4 e File5 não é recolhido.
false achatamento Pasta1
    Arquivo1
    Arquivo2
    Sub-página1
        Arquivo3
        Arquivo4
        Arquivo5
A Pasta-alvo1 é criada com a seguinte estrutura:

Pasta1
    nome autogerado para File1
    nome autogerado para File2

Subfolder1 com File3, File4 e File5 não é recolhido.
false fusõesFilia Pasta1
    Arquivo1
    Arquivo2
    Sub-página1
        Arquivo3
        Arquivo4
        Arquivo5
A Pasta-alvo1 é criada com a seguinte estrutura:

Pasta1
    O conteúdo do Ficheiro1 + Ficheiro2 é fundido num ficheiro com um nome de ficheiro autogerido. nome autogerado para File1

Subfolder1 com File3, File4 e File5 não é recolhido.

Preservar metadados durante a cópia

Ao copiar ficheiros da Amazon S3/Azure Blob/Azure Data Lake Storage Gen2 para Azure Data Lake Storage Gen2/Azure Blob, pode optar por preservar os metadados do ficheiro juntamente com os dados. Saiba mais com os metadados da Preserve.

Preservar ACLs de Data Lake Storage Gen1/Gen2

Ao copiar ficheiros de Azure Data Lake Storage Gen1/Gen2 para a Gen2, pode optar por preservar as listas de controlo de acesso POSIX (ACLs) juntamente com os dados. Saiba mais com a Preserve ACLs de Data Lake Storage Gen1/Gen2 para a Gen2.

Dica

Para copiar dados de Azure Data Lake Storage Gen1 para a Gen2 em geral, consulte os dados de Cópia de Azure Data Lake Storage Gen1 para a Gen2 para uma passagem e boas práticas.

Mapeamento de propriedades de fluxo de dados

Quando estiver a transformar dados em fluxos de dados de mapeamento, pode ler e escrever ficheiros a partir de Azure Data Lake Storage Gen2 nos seguintes formatos:

As definições específicas do formato estão localizadas na documentação para este formato. Para obter mais informações, consulte a transformação de Fonte no fluxo de dados de mapeamento e transformação de sumidouro no fluxo de dados de mapeamento.

Transformação de origem

Na transformação da fonte, pode ler-se a partir de um recipiente, pasta ou ficheiro individual em Azure Data Lake Storage Gen2. O separador opções Source permite-lhe gerir a forma como os ficheiros são lidos.

Opções de origem

Caminho wildcard: A utilização de um padrão wildcard instruirá a ADF a circular por cada pasta e ficheiro correspondente numa única transformação source. Esta é uma forma eficaz de processar vários ficheiros dentro de um único fluxo. Adicione vários padrões de correspondência wildcard com o sinal + que aparece ao pairar sobre o seu padrão wildcard existente.

A partir do seu recipiente de origem, escolha uma série de ficheiros que correspondam a um padrão. Apenas o recipiente pode ser especificado no conjunto de dados. O seu percurso wildcard também deve incluir o seu caminho de pasta a partir da pasta raiz.

Exemplos wildcard:

  • * Representa qualquer conjunto de caracteres

  • ** Representa o nidificação de diretório recursivo

  • ? Substitui um personagem

  • [] Corresponde a um dos mais caracteres nos parênteses

  • /data/sales/**/*.csv Obtém todos os ficheiros csv em /dados/vendas

  • /data/sales/20??/**/ Recebe todos os ficheiros do século XX

  • /data/sales/*/*/*.csv Obtém ficheiros csv dois níveis em /dados/vendas

  • /data/sales/2004/*/12/[XY]1?.csv Obtém todos os ficheiros csv em 2004 em dezembro começando com X ou Y prefixados por um número de dois dígitos

Caminho da raiz da partição: Se tiver pastas divididas na sua fonte de ficheiro com um key=value formato (por exemplo, ano=2019), então pode atribuir o nível superior dessa caixa de divisória a um nome de coluna no fluxo de dados dos seus dados.

Em primeiro lugar, desajuste um wildcard para incluir todos os caminhos que são as pastas divididas, além dos ficheiros de folhas que deseja ler.

Definições de ficheiros de fonte de partição

Utilize a definição do Caminho da Raiz da Partição para definir qual é o nível superior da estrutura da pasta. Quando visualizar o conteúdo dos seus dados através de uma pré-visualização de dados, verá que a ADF adicionará as divisórias resolvidas encontradas em cada um dos níveis de pasta.

Caminho da raiz da partição

Lista de ficheiros: Este é um conjunto de arquivos. Crie um ficheiro de texto que inclua uma lista de ficheiros relativos de caminhos para processar. Aponte para este ficheiro de texto.

Coluna para armazenar nome de ficheiro: Guarde o nome do ficheiro de origem numa coluna nos seus dados. Introduza aqui um novo nome de coluna para armazenar a cadeia de nomes de ficheiros.

Após a conclusão: Opte por não fazer nada com o ficheiro de origem após o fluxo de dados, eliminar o ficheiro de origem ou mover o ficheiro de origem. Os caminhos para a mudança são relativos.

Para mover ficheiros de origem para outro pós-processamento de localização, selecione primeiro "Mover" para a operação de ficheiros. Em seguida, definir o diretório "de" Se não estiver a utilizar nenhum wildcard para o seu caminho, então a definição "a partir" será a mesma pasta que a sua pasta de origem.

Se tiver um caminho de origem com wildcard, a sua sintaxe será assim abaixo:

/data/sales/20??/**/*.csv

Pode especificar "a partir" como

/data/sales

E "para" como

/backup/priorSales

Neste caso, todos os ficheiros que foram obtidos em /dados/vendas são transferidos para /backup/priorSales.

Nota

As operações de ficheiros só funcionam quando inicia o fluxo de dados a partir de uma execução de gasoduto (um depurar ou execução de gasoduto) que utiliza a atividade de Executo Fluxo de Dados num oleoduto. As operações de ficheiro não são executadas Fluxo de Dados modo de depuragem.

Filtrar por última modificação: Pode filtrar quais os ficheiros que processa especificando um intervalo de datas de quando foram modificados pela última vez. Todos os horários estão na UTC.

Ativar a captura de dados de alteração: Se for verdade, só obterá ficheiros novos ou alterados a partir da última execução. A carga inicial de dados instantâneos completos será sempre orimado na primeira execução, seguida de capturar ficheiros novos ou alterados apenas nas próximas execuções. Para mais detalhes, consulte a captura de dados change.

Screenshot mostra ativar a captura de dados de alteração.

Propriedades de pia

Na transformação do lavatório, pode escrever para um recipiente ou pasta em Azure Data Lake Storage Gen2. o separador Definições permite-lhe gerir a forma como os ficheiros são escritos.

opções de afundar

Limpe a pasta: Determina se a pasta de destino é ou não apurada antes de os dados serem escritos.

Opção nome de ficheiro: Determina como os ficheiros de destino são nomeados na pasta de destino. As opções de nome de ficheiro são:

  • Predefinição: Permitir que o Spark nomeie ficheiros com base em predefinições PART.
  • Padrão: Introduza um padrão que enumera os seus ficheiros de saída por partição. Por exemplo, os empréstimos[n].csv criarão loans1.csv, loans2.csv, e assim por diante.
  • Por partição: Introduza um nome de ficheiro por partição.
  • Como dados na coluna: Desave o ficheiro de saída ao valor de uma coluna. O caminho é relativo ao recipiente do conjunto de dados, não à pasta de destino. Se tiver um caminho de pasta no seu conjunto de dados, será ultrapassado.
  • Saída para um único ficheiro: Combine os ficheiros de saída divididos num único ficheiro nomeado. O caminho é relativo à pasta do conjunto de dados. Tenha em atenção que a operação de fusão pode falhar com base no tamanho do nó. Esta opção não é recomendada para grandes conjuntos de dados.

Citar tudo: Determina se deve incluir todos os valores em ações

umask

Pode configurar opcionalmente os ficheiros utilizando posix umask ler, escrever, executar bandeiras para o proprietário, utilizador e grupo.

Comandos de pré-processamento e pós-processamento

Pode executar opcionalmente comandos do sistema de ficheiros Hadoop antes ou depois de escrever para uma pia ADLS Gen2. São suportados os seguintes comandos:

  • cp
  • mv
  • rm
  • mkdir

Exemplos:

  • mkdir /folder1
  • mkdir -p folder1
  • mv /folder1/*.* /folder2/
  • cp /folder1/file1.txt /folder2
  • rm -r /folder1

Os parâmetros também são suportados através do construtor de expressões, por exemplo:

mkdir -p {$tempPath}/commands/c1/c2 mv {$tempPath}/commands/*.* {$tempPath}/commands/c1/c2

Por predefinição, as pastas são criadas como utilizador/raiz. Consulte o recipiente de nível superior com '/'.

Propriedades de atividade de procura

Para obter detalhes sobre as propriedades, consulte a atividade da Lookup.

Propriedades de atividade getMetadata

Para saber mais detalhes sobre os imóveis, consulte a atividade da GetMetadata

Eliminar propriedades de atividade

Para obter detalhes sobre as propriedades, consulte a atividade de Eliminar

Modelos legados

Nota

Os modelos seguintes ainda são suportados como é para retrocompatibilidade. É sugerido que utilize o novo modelo mencionado nas secções acima, e a UI autoria da ADF mudou para gerar o novo modelo.

Modelo de conjunto de dados legado

Propriedade Descrição Obrigatório
tipo A propriedade tipo do conjunto de dados deve ser definida para AzureBlobFSFile. Yes
folderPath Caminho para a pasta em Data Lake Storage Gen2. Se não for especificado, aponta para a raiz.

O filtro Wildcard é suportado. Os wildcards permitidos são * (corresponde a zero ou mais caracteres) e ? (corresponde a zero ou caracteres individuais). Use ^ para escapar se o nome da sua pasta tiver um wildcard ou se este char de fuga estiver dentro.

Exemplos: sistema de ficheiros/pasta/. Veja mais exemplos em exemplos de pasta e filtro de ficheiros.
No
fileName Nome ou filtro wildcard para os ficheiros sob a especificada "folderPath". Se não especificar um valor para esta propriedade, o conjunto de dados aponta para todos os ficheiros da pasta.

Para o filtro, os wildcards permitidos são * (corresponde a zero ou mais caracteres) e ? (corresponde a zero ou caracteres individuais).
- Exemplo 1: "fileName": "*.csv"
- Exemplo 2: "fileName": "???20180427.txt"
Use ^ para escapar se o seu nome de ficheiro real tiver um wildcard ou se este char de fuga estiver lá dentro.

Quando o data de ficheiro não é especificado para um conjunto de dados de saída e preservarAequia não é especificado na pia da atividade, a atividade de cópia gera automaticamente o nome do ficheiro com o seguinte padrão: "Dados." atividade executar ID GUID]. [GUID if FlattenHierarchy]. [formato se configurado]. [compressão se configurado]", por exemplo, "Data.0a405f8a-93ff-4c6f-b3be-f69616f1df7a.txt.gz". Se copiar de uma fonte tabular usando um nome de mesa em vez de uma consulta, o padrão de nome é "[nome de mesa].[ formato]. [compressão se configurada]", por exemplo, "MyTable.csv".
No
modificadoDatetimeStart Filtro de ficheiros com base no atributo Última Modificação. Os ficheiros são selecionados se o seu último tempo modificado for superior ou igual a modifiedDatetimeStart e menos de modifiedDatetimeEnd. O tempo é aplicado ao fuso horário UTC no formato "2018-12-01T05:00:00Z".

O desempenho geral do movimento de dados é afetado por permitir esta definição quando pretende fazer filtro de ficheiros com grandes quantidades de ficheiros.

As propriedades podem ser NUAS, o que significa que nenhum filtro de atributos de ficheiro é aplicado no conjunto de dados. Quando modifiedDatetimeStart tem um valor de data, mas modifiedDatetimeEnd é NU, significa que os ficheiros cujo último atributo modificado é superior ou igual ao valor da data são selecionados. Quando modifiedDatetimeEnd tem um valor de data, mas modifiedDatetimeStart é NU, significa que os ficheiros cujo último atributo modificado é inferior ao valor da data são selecionados.
No
modedDatetimeEnd Filtro de ficheiros com base no atributo Última Modificação. Os ficheiros são selecionados se o seu último tempo modificado for superior ou igual a modifiedDatetimeStart e menos de modifiedDatetimeEnd. O tempo é aplicado ao fuso horário UTC no formato "2018-12-01T05:00:00Z".

O desempenho geral do movimento de dados é afetado por permitir esta definição quando pretende fazer filtro de ficheiros com grandes quantidades de ficheiros.

As propriedades podem ser NUAS, o que significa que nenhum filtro de atributos de ficheiro é aplicado no conjunto de dados. Quando modifiedDatetimeStart tem um valor de data, mas modifiedDatetimeEnd é NU, significa que os ficheiros cujo último atributo modificado é superior ou igual ao valor da data são selecionados. Quando modifiedDatetimeEnd tem um valor de data, mas modifiedDatetimeStart é NU, significa que os ficheiros cujo último atributo modificado é inferior ao valor da data são selecionados.
No
formato Se pretender copiar ficheiros como está entre lojas baseadas em ficheiros (cópia binária), salte a secção de formato nas definições de conjunto de dados de entrada e saída.

Se pretender analisar ou gerar ficheiros com um formato específico, os seguintes tipos de formato de ficheiro são suportados: TextFormat, JsonFormat, AvroFormat, OrcFormat e ParquetFormat. Desateia a propriedade tipo em formato a um destes valores. Para mais informações, consulte o formato Texto, formato JSON, formato Avro, formato ORC e secções de formato Parquet .
Não (apenas para cenário de cópia binária)
compressão Especifique o tipo e o nível de compressão para os dados. Para obter mais informações, consulte formatos de ficheiros suportados e códigos de compressão.
Os tipos suportados são **GZip**, **Deflate**, **BZip2**, and **ZipDeflate**.
Os níveis suportados são ideais e mais rápidos.
No

Dica

Para copiar todos os ficheiros numa pasta, especifique apenas o pastaPa.
Para copiar um único ficheiro com um nome próprio, especifique a pastaPath com uma peça de pasta e arquiveme com um nome de ficheiro.
Para copiar um subconjunto de ficheiros numa pasta, especifique a pastaPath com uma peça de pasta e arquive o nome de ficheiros com um filtro wildcard.

Exemplo:

{
    "name": "ADLSGen2Dataset",
    "properties": {
        "type": "AzureBlobFSFile",
        "linkedServiceName": {
            "referenceName": "<Azure Data Lake Storage Gen2 linked service name>",
            "type": "LinkedServiceReference"
        },
        "typeProperties": {
            "folderPath": "myfilesystem/myfolder",
            "fileName": "*",
            "modifiedDatetimeStart": "2018-12-01T05:00:00Z",
            "modifiedDatetimeEnd": "2018-12-01T06:00:00Z",
            "format": {
                "type": "TextFormat",
                "columnDelimiter": ",",
                "rowDelimiter": "\n"
            },
            "compression": {
                "type": "GZip",
                "level": "Optimal"
            }
        }
    }
}

Modelo de origem de origem de atividade de cópia de legado

Propriedade Descrição Obrigatório
tipo A propriedade tipo da fonte de atividade de cópia deve ser definida para AzureBlobFSSource. Yes
recursivo Indica se os dados são lidos novamente a partir das sub-dobradeiras ou apenas a partir da pasta especificada. Quando a recursiva é definida como verdadeira e a pia é uma loja baseada em ficheiros, uma pasta ou sub-dobrador vazio não é copiado ou criado na pia.
Os valores permitidos são verdadeiros (padrão) e falsos.
No
maxConcurrentConnections O limite superior das ligações simultâneas estabelecidas na loja de dados durante a atividade. Especifique um valor apenas quando pretende limitar as ligações simultâneas. No

Exemplo:

"activities":[
    {
        "name": "CopyFromADLSGen2",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<ADLS Gen2 input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "AzureBlobFSSource",
                "recursive": true
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Modelo de pia de atividade de cópia de legado

Propriedade Descrição Obrigatório
tipo A propriedade do tipo do lavatório de atividade de cópia deve ser definida para AzureBlobFSSink. Yes
copyOportundo Define o comportamento da cópia quando a fonte é ficheiros de uma loja de dados baseada em ficheiros.

Os valores permitidos são:
- Preservar aHierarquia (predefinição): Preserva a hierarquia do ficheiro na pasta alvo. O percurso relativo do ficheiro de origem para a pasta de origem é idêntico ao percurso relativo do ficheiro-alvo à pasta alvo.
- FlattenHierarchy: Todos os ficheiros da pasta de origem estão no primeiro nível da pasta alvo. Os ficheiros-alvo têm nomes autogerados.
- MergeFiles: Combina todos os ficheiros da pasta de origem para um ficheiro. Se o nome do ficheiro for especificado, o nome do ficheiro fundido é o nome especificado. Caso contrário, é um nome de ficheiro autogerado.
No
maxConcurrentConnections O limite superior das ligações simultâneas estabelecidas na loja de dados durante a atividade. Especifique um valor apenas quando pretende limitar as ligações simultâneas. No

Exemplo:

"activities":[
    {
        "name": "CopyToADLSGen2",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<ADLS Gen2 output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "<source type>"
            },
            "sink": {
                "type": "AzureBlobFSSink",
                "copyBehavior": "PreserveHierarchy"
            }
        }
    }
]

Captura de dados de alteração

Azure Data Factory podem obter ficheiros novos ou alterados apenas a partir de Azure Data Lake Storage Gen2, permitindo ativar a captura de dados de alteração na transformação da fonte de fluxo de dados de mapeamento. Com esta opção de conector, pode ler apenas ficheiros novos ou atualizados e aplicar transformações antes de carregar dados transformados em conjuntos de dados de destino à sua escolha.

Certifique-se de que mantém o pipeline e o nome da atividade inalterados, para que o ponto de verificação possa ser sempre registado a partir da última corrida para obter alterações a partir daí. Se alterar o nome do seu pipeline ou nome de atividade, o ponto de verificação será reiniciado e começará a partir do início na próxima execução.

Ao depurar o oleoduto, a captura de dados de alteração ativa também funciona. Tenha em atenção que o ponto de verificação será reiniciado quando refrescar o seu navegador durante a execução do depurg. Depois de ficar satisfeito com o resultado da corrida ao depurador, pode publicar e ativar o oleoduto. Começará sempre desde o início, independentemente do controlo anterior registado por depurações.

Na secção de monitorização, tem sempre a oportunidade de refazer um oleoduto. Quando o está a fazer, as alterações são sempre orimou do registo de verificação na sua corrida de gasodutos selecionada.

Passos seguintes

Para obter uma lista de lojas de dados suportadas como fontes e sumidouros pela atividade de cópia, consulte lojas de dados suportadas.