Copiar dados de e para Salesforce usando o Azure Data FactoryCopy data from and to Salesforce by using Azure Data Factory

APLICA-SE A: Azure Data Factory Azure Synapse Analytics

Este artigo descreve como usar a atividade de cópia no Azure Data Factory para copiar dados de e para o Salesforce.This article outlines how to use Copy Activity in Azure Data Factory to copy data from and to Salesforce. Ele amplia o artigo Visão geral da Atividade de Cópia que apresenta uma visão geral da atividade de cópia.It builds on the Copy Activity overview article that presents a general overview of the copy activity.

Funcionalidades com suporteSupported capabilities

Este conector do Salesforce tem suporte para as seguintes atividades:This Salesforce connector is supported for the following activities:

Você pode copiar dados do Salesforce para qualquer armazenamento de dados de coletor com suporte.You can copy data from Salesforce to any supported sink data store. Você também pode copiar dados de qualquer repositório de dados de fonte com suporte para um banco de dados Salesforce.You also can copy data from any supported source data store to Salesforce. Para obter uma lista de armazenamentos de dados com suporte como fontes ou coletores pela atividade de cópia, consulte a tabela armazenamentos de dados com suporte .For a list of data stores that are supported as sources or sinks by the Copy activity, see the Supported data stores table.

Especificamente, este conector Salesforce dá suporte à:Specifically, this Salesforce connector supports:

  • Edições de Desenvolvedor, Professional, Enterprise ou Ilimitada do Salesforce.Salesforce Developer, Professional, Enterprise, or Unlimited editions.
  • Copiar dados de e para a produção, da área restrita e do domínio personalizado do Salesforce.Copying data from and to Salesforce production, sandbox, and custom domain.

O conector do Salesforce é criado sobre a API REST do Salesforce/em massa.The Salesforce connector is built on top of the Salesforce REST/Bulk API. Por padrão, ao copiar dados do Salesforce, o conector usa V45 e escolhe automaticamente entre as APIs REST e Bulk com base no tamanho dos dados – quando o conjunto de resultados é grande, a API em massa é usada para melhorar o desempenho; ao gravar dados no Salesforce, o conector usa v40 da API em massa.By default, when copying data from Salesforce, the connector uses v45 and automatically chooses between REST and Bulk APIs based on the data size – when the result set is large, Bulk API is used for better performance; when writing data to Salesforce, the connector uses v40 of Bulk API. Você também pode definir explicitamente a versão da API usada para ler/gravar dados por meio da apiVersion Propriedade no serviço vinculado.You can also explicitly set the API version used to read/write data via apiVersion property in linked service.

Pré-requisitosPrerequisites

A permissão de API deve estar habilitada no Salesforce.API permission must be enabled in Salesforce. Para mais informações, consulte Habilitar o acesso à API no Salesforce por conjunto de permissõesFor more information, see Enable API access in Salesforce by permission set

Limites da solicitação SalesforceSalesforce request limits

O Salesforce tem limites para o total de solicitações de API e as solicitações simultâneas de API.Salesforce has limits for both total API requests and concurrent API requests. Observe os seguintes pontos:Note the following points:

  • Se o número de solicitações simultâneas exceder o limite, a limitação será atingida e você verá falhas aleatórias.If the number of concurrent requests exceeds the limit, throttling occurs and you see random failures.
  • Se o número total de solicitações exceder o limite, a conta do Salesforce será bloqueada por 24 horas.If the total number of requests exceeds the limit, the Salesforce account is blocked for 24 hours.

Você também pode receber a mensagem de erro "REQUEST_LIMIT_EXCEEDED" em ambos os cenários.You might also receive the "REQUEST_LIMIT_EXCEEDED" error message in both scenarios. Para obter mais informações, veja a seção "Limites de Solicitações da API" na seção Salesforce Developer Limits (Limites do Desenvolvedor Salesforce).For more information, see the "API request limits" section in Salesforce developer limits.

IntroduçãoGet started

Para executar a atividade de Cópia com um pipeline, será possível usar as ferramentas ou os SDKs abaixo:To perform the Copy activity with a pipeline, you can use one of the following tools or SDKs:

As seções que se seguem fornecem detalhes sobre as propriedades que são usadas para definir entidades do Data Factory específicas ao conector do Salesforce.The following sections provide details about properties that are used to define Data Factory entities specific to the Salesforce connector.

Propriedades do serviço vinculadoLinked service properties

As propriedades a seguir têm suporte para o serviço vinculado do Salesforce.The following properties are supported for the Salesforce linked service.

PropriedadeProperty DescriçãoDescription ObrigatórioRequired
typetype A propriedade type deve ser definida para Salesforce.The type property must be set to Salesforce. SimYes
environmentUrlenvironmentUrl Especifique a URL da instância do Salesforce.Specify the URL of the Salesforce instance.
– O padrão é "https://login.salesforce.com".- Default is "https://login.salesforce.com".
– Para copiar dados da área restrita, especifique "https://test.salesforce.com".- To copy data from sandbox, specify "https://test.salesforce.com".
– Para copiar dados do domínio personalizado, especifique, por exemplo, "https://[domain].my.salesforce.com".- To copy data from custom domain, specify, for example, "https://[domain].my.salesforce.com".
NãoNo
Nome de Usuáriousername Especifique um nome de usuário para a conta de usuário.Specify a user name for the user account. SimYes
passwordpassword Especifique um senha para a conta de usuário.Specify a password for the user account.

Marque este campo como uma SecureString para armazená-la com segurança no Data Factory ou faça referência a um segredo armazenado no Azure Key Vault.Mark this field as a SecureString to store it securely in Data Factory, or reference a secret stored in Azure Key Vault.
SimYes
securityTokensecurityToken Especifique um token de segurança para a conta de usuário.Specify a security token for the user account.

Para saber mais sobre os tokens de segurança em geral, veja Security and the API (Segurança e a API).To learn about security tokens in general, see Security and the API. O token de segurança só poderá ser ignorado se você adicionar o IP do Integration Runtime à lista de endereços IP confiáveis no Salesforce.The security token can be skipped only if you add the Integration Runtime's IP to the trusted IP address list on Salesforce. Ao usar Azure IR, consulte Azure Integration Runtime endereços IP.When using Azure IR, refer to Azure Integration Runtime IP addresses.

Para obter instruções sobre como obter e redefinir um token de segurança, consulte obter um token de segurança.For instructions on how to get and reset a security token, see Get a security token. Marque este campo como uma SecureString para armazená-la com segurança no Data Factory ou faça referência a um segredo armazenado no Azure Key Vault.Mark this field as a SecureString to store it securely in Data Factory, or reference a secret stored in Azure Key Vault.
NãoNo
apiVersionapiVersion Especifique a versão de API em massa/REST do Salesforce a ser usada, por exemplo, 48.0 .Specify the Salesforce REST/Bulk API version to use, e.g. 48.0. Por padrão, o conector usa V45 para copiar dados do Salesforce e usa o v40 para copiar dados para o Salesforce.By default, the connector uses v45 to copy data from Salesforce, and uses v40 to copy data to Salesforce. NãoNo
connectViaconnectVia O runtime de integração a ser usado para se conectar ao armazenamento de dados.The integration runtime to be used to connect to the data store. Se não for especificado, ele usa o Integration Runtime padrão do Azure.If not specified, it uses the default Azure Integration Runtime. Não para a fonte, Sim para o coletor se o serviço vinculado à fonte não possuir integration runtimeNo for source, Yes for sink if the source linked service doesn't have integration runtime

Importante

Ao copiar dados para o Salesforce, o Azure Integration Runtime padrão não poderá ser usado para executar a cópia.When you copy data into Salesforce, the default Azure Integration Runtime can't be used to execute copy. Em outras palavras, se seu serviço vinculado à fonte não tem um integration runtime especificado, explicitamente crie um Azure Integration Runtime com um local perto de sua instância do Salesforce.In other words, if your source linked service doesn't have a specified integration runtime, explicitly create an Azure Integration Runtime with a location near your Salesforce instance. Associe o serviço vinculado ao Salesforce como no exemplo a seguir.Associate the Salesforce linked service as in the following example.

Exemplo: Credenciais de armazenamento no Data FactoryExample: Store credentials in Data Factory

{
    "name": "SalesforceLinkedService",
    "properties": {
        "type": "Salesforce",
        "typeProperties": {
            "username": "<username>",
            "password": {
                "type": "SecureString",
                "value": "<password>"
            },
            "securityToken": {
                "type": "SecureString",
                "value": "<security token>"
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Exemplo: Credenciais de armazenamento no Key VaultExample: Store credentials in Key Vault

{
    "name": "SalesforceLinkedService",
    "properties": {
        "type": "Salesforce",
        "typeProperties": {
            "username": "<username>",
            "password": {
                "type": "AzureKeyVaultSecret",
                "secretName": "<secret name of password in AKV>",
                "store":{
                    "referenceName": "<Azure Key Vault linked service>",
                    "type": "LinkedServiceReference"
                }
            },
            "securityToken": {
                "type": "AzureKeyVaultSecret",
                "secretName": "<secret name of security token in AKV>",
                "store":{
                    "referenceName": "<Azure Key Vault linked service>",
                    "type": "LinkedServiceReference"
                }
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Propriedades do conjunto de dadosDataset properties

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.For a full list of sections and properties available for defining datasets, see the Datasets article. Esta seção fornece uma lista das propriedades com suporte pelo conjunto de dados do Salesforce.This section provides a list of properties supported by the Salesforce dataset.

Para copiar dados do e para o Salesforce, defina a propriedade tipo do conjunto de dados como SalesforceObject.To copy data from and to Salesforce, set the type property of the dataset to SalesforceObject. Há suporte para as seguintes propriedades.The following properties are supported.

PropriedadeProperty DescriçãoDescription ObrigatórioRequired
typetype A propriedade tipo deve ser definida para SalesforceObject.The type property must be set to SalesforceObject. SimYes
objectApiNameobjectApiName O nome do objeto de Salesforce para recuperar dados.The Salesforce object name to retrieve data from. Não para fonte, Sim para o coletorNo for source, Yes for sink

Importante

A parte "__c" do Nome da API é necessária para qualquer objeto personalizado.The "__c" part of API Name is needed for any custom object.

Nome da API de conexão do Salesforce ao Data Factory

Exemplo:Example:

{
    "name": "SalesforceDataset",
    "properties": {
        "type": "SalesforceObject",
        "typeProperties": {
            "objectApiName": "MyTable__c"
        },
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<Salesforce linked service name>",
            "type": "LinkedServiceReference"
        }
    }
}

Observação

Para retrocompatibilidade: ao copiar dados de Salesforce, se você usar o conjunto de dados de tipo "RelationalTable" anterior continuará funcionando, enquanto você vê uma sugestão para alternar para o novo tipo de "SalesforceObject".For backward compatibility: When you copy data from Salesforce, if you use the previous "RelationalTable" type dataset, it keeps working while you see a suggestion to switch to the new "SalesforceObject" type.

PropriedadeProperty DescriçãoDescription ObrigatórioRequired
typetype A propriedade type do conjunto de dados deve ser definida como RelationalTable.The type property of the dataset must be set to RelationalTable. SimYes
tableNametableName Nome da tabela no Salesforce.Name of the table in Salesforce. Não (se "query" na fonte da atividade for especificada)No (if "query" in the activity source is specified)

Propriedades da atividade de cópiaCopy activity properties

Para obter uma lista completa das seções e propriedades disponíveis para definir atividades, confia o artigo Pipelines.For a full list of sections and properties available for defining activities, see the Pipelines article. Esta seção fornece uma lista das propriedades com suporte pela fonte e coletor do Salesforce.This section provides a list of properties supported by Salesforce source and sink.

Salesforce como um tipo de fonteSalesforce as a source type

Para copiar dados do Salesforce, defina o tipo de origem na atividade de cópia como SalesforceSource.To copy data from Salesforce, set the source type in the copy activity to SalesforceSource. As propriedades a seguir têm suporte na seção source da atividade de cópia.The following properties are supported in the copy activity source section.

PropriedadeProperty DescriçãoDescription ObrigatórioRequired
typetype A propriedade tipo da fonte da atividade de cópia deve ser definida como: SalesforceSource.The type property of the copy activity source must be set to SalesforceSource. SimYes
Consultaquery Utiliza a consulta personalizada para ler os dados.Use the custom query to read data. É possível usar a consulta SOQL (Salesforce Object Query Language) ou a consulta SQL-92.You can use Salesforce Object Query Language (SOQL) query or SQL-92 query. Veja mais dicas na seção dicas de consulta.See more tips in query tips section. Se a consulta não for especificada, todos os dados do objeto Salesforce especificado em "objectApiName" no conjunto de dados serão recuperados.If query is not specified, all the data of the Salesforce object specified in "objectApiName" in dataset will be retrieved. Não (se "objectApiName" no conjunto de dados for especificado)No (if "objectApiName" in the dataset is specified)
readBehaviorreadBehavior Indica se deve consultar os registros existentes, ou consultar todos os registros, incluindo o que foi excluído.Indicates whether to query the existing records, or query all records including the deleted ones. Se não for especificado, o comportamento padrão é o primeiro.If not specified, the default behavior is the former.
Valores permitidos: query (padrão), queryAll.Allowed values: query (default), queryAll.
NãoNo

Importante

A parte "__c" do Nome da API é necessária para qualquer objeto personalizado.The "__c" part of API Name is needed for any custom object.

Lista Nome da API de conexão do Salesforce ao Data Factory

Exemplo:Example:

"activities":[
    {
        "name": "CopyFromSalesforce",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<Salesforce input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "SalesforceSource",
                "query": "SELECT Col_Currency__c, Col_Date__c, Col_Email__c FROM AllDataType__c"
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Observação

Para retrocompatibilidade: ao copiar dados de Salesforce, se você usar a cópia de tipo "RelationalSource" anterior, a fonte continuará funcionando, enquanto você vê uma sugestão para alternar para o novo tipo de "SalesforceSource".For backward compatibility: When you copy data from Salesforce, if you use the previous "RelationalSource" type copy, the source keeps working while you see a suggestion to switch to the new "SalesforceSource" type.

Salesforce como um tipo de coletorSalesforce as a sink type

Para copiar dados do Salesforce, defina o tipo de coletor na atividade de cópia como SalesforceSink.To copy data to Salesforce, set the sink type in the copy activity to SalesforceSink. As propriedades a seguir têm suporte na seção sink da atividade de cópia.The following properties are supported in the copy activity sink section.

PropriedadeProperty DescriçãoDescription ObrigatórioRequired
typetype A propriedade type do coletor da atividade de cópia deve ser definida como SalesforceSink.The type property of the copy activity sink must be set to SalesforceSink. SimYes
writeBehaviorwriteBehavior O comportamento da operação de gravação.The write behavior for the operation.
Valores permitidos são Insert e Upsert.Allowed values are Insert and Upsert.
Não (o padrão é Insert)No (default is Insert)
externalIdFieldNameexternalIdFieldName O nome do campo de ID externo para a operação upsert.The name of the external ID field for the upsert operation. O campo especificado deve ser definido como "campo de ID externa" no objeto Salesforce.The specified field must be defined as "External ID Field" in the Salesforce object. Ele não pode ter valores nulos nos dados de entrada correspondentes.It can't have NULL values in the corresponding input data. Sim para "Upsert"Yes for "Upsert"
writeBatchSizewriteBatchSize A contagem de linhas de dados gravados no Salesforce em cada lote.The row count of data written to Salesforce in each batch. Não (o padrão é 5.000)No (default is 5,000)
ignoreNullValuesignoreNullValues Indica se deve ignorar valores NULL de dados de entrada durante a operação de gravação.Indicates whether to ignore NULL values from input data during a write operation.
Os valores permitidos são True e False.Allowed values are true and false.
- True: Deixa os dados no objeto de destino inalterados quando você faz uma operação upsert ou atualização.- True: Leave the data in the destination object unchanged when you do an upsert or update operation. Insira um valor padrão definido quando você faz uma operação insert.Insert a defined default value when you do an insert operation.
- False: atualiza os dados no objeto de destino como NULL quando você faz uma operação upsert ou atualização.- False: Update the data in the destination object to NULL when you do an upsert or update operation. Insira um valor NULL quando você faz uma operação insert.Insert a NULL value when you do an insert operation.
Não (padrão é falso)No (default is false)

Exemplo: coletor Salesforce em uma atividade de cópiaExample: Salesforce sink in a copy activity

"activities":[
    {
        "name": "CopyToSalesforce",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<Salesforce output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "<source type>"
            },
            "sink": {
                "type": "SalesforceSink",
                "writeBehavior": "Upsert",
                "externalIdFieldName": "CustomerId__c",
                "writeBatchSize": 10000,
                "ignoreNullValues": true
            }
        }
    }
]

Dicas de consultaQuery tips

Recupere dados do relatório do SalesforceRetrieve data from a Salesforce report

Você pode recuperar dados de relatórios do Salesforce especificando uma consulta como {call "<report name>"}.You can retrieve data from Salesforce reports by specifying a query as {call "<report name>"}. Um exemplo é "query": "{call \"TestReport\"}".An example is "query": "{call \"TestReport\"}".

Recupere registros excluídos da lixeira do SalesforceRetrieve deleted records from the Salesforce Recycle Bin

Para consultar os registros excluídos de maneira reversível da lixeira do Salesforce, você pode especificar readBehavior como queryAll.To query the soft deleted records from the Salesforce Recycle Bin, you can specify readBehavior as queryAll.

Diferença entre a sintaxe de consulta SOQL e SQLDifference between SOQL and SQL query syntax

Ao copiar dados do Salesforce, é possível usar a consulta SOQL ou a consulta SQL.When copying data from Salesforce, you can use either SOQL query or SQL query. Note que as duas têm suporte diferente de sintaxe e funcionalidade, não combine-as.Note that these two has different syntax and functionality support, do not mix it. É recomendável usar a consulta SOQL, que tem suporte nativo do Salesforce.You are suggested to use the SOQL query, which is natively supported by Salesforce. A tabela a seguir lista as principais diferenças:The following table lists the main differences:

SintaxeSyntax Modo SOQLSOQL Mode Modo SQLSQL Mode
Seleção de colunaColumn selection É necessário enumerar os campos a serem copiados na consulta, por exemplo, SELECT field1, filed2 FROM objectnameNeed to enumerate the fields to be copied in the query, e.g. SELECT field1, filed2 FROM objectname SELECT * tem suporte além da seleção de colunas.SELECT * is supported in addition to column selection.
AspasQuotation marks Nomes de campos/objetos não podem ser entre aspas.Filed/object names cannot be quoted. Nomes de campos/objetos podem ser entre aspas, p. ex. SELECT "id" FROM "Account"Field/object names can be quoted, e.g. SELECT "id" FROM "Account"
Formato de data/horaDatetime format Consulte os detalhes aqui e exemplos na próxima seção.Refer to details here and samples in next section. Consulte os detalhes aqui e exemplos na próxima seção.Refer to details here and samples in next section.
Valores boolianosBoolean values Representado como False e True, p. ex. SELECT … WHERE IsDeleted=True.Represented as False and True, e.g. SELECT … WHERE IsDeleted=True. Representado como 0 ou 1, p. ex. SELECT … WHERE IsDeleted=1.Represented as 0 or 1, e.g. SELECT … WHERE IsDeleted=1.
Renomeação de colunaColumn renaming Não há suporte.Not supported. Com suporte, p. ex.: SELECT a AS b FROM ….Supported, e.g.: SELECT a AS b FROM ….
RelationshipRelationship Com suporte, p. ex. Account_vod__r.nvs_Country__c.Supported, e.g. Account_vod__r.nvs_Country__c. Não há suporte.Not supported.

Recuperar dados usando um onde cláusula na coluna DateTimeRetrieve data by using a where clause on the DateTime column

Ao especificar a consulta SQL ou SOQL, preste atenção à diferença de formato DateTime.When you specify the SOQL or SQL query, pay attention to the DateTime format difference. Por exemplo:For example:

  • Exemplo de SOQL: SELECT Id, Name, BillingCity FROM Account WHERE LastModifiedDate >= @{formatDateTime(pipeline().parameters.StartTime,'yyyy-MM-ddTHH:mm:ssZ')} AND LastModifiedDate < @{formatDateTime(pipeline().parameters.EndTime,'yyyy-MM-ddTHH:mm:ssZ')}SOQL sample: SELECT Id, Name, BillingCity FROM Account WHERE LastModifiedDate >= @{formatDateTime(pipeline().parameters.StartTime,'yyyy-MM-ddTHH:mm:ssZ')} AND LastModifiedDate < @{formatDateTime(pipeline().parameters.EndTime,'yyyy-MM-ddTHH:mm:ssZ')}
  • Exemplo de SQL: SELECT * FROM Account WHERE LastModifiedDate >= {ts'@{formatDateTime(pipeline().parameters.StartTime,'yyyy-MM-dd HH:mm:ss')}'} AND LastModifiedDate < {ts'@{formatDateTime(pipeline().parameters.EndTime,'yyyy-MM-dd HH:mm:ss')}'}SQL sample: SELECT * FROM Account WHERE LastModifiedDate >= {ts'@{formatDateTime(pipeline().parameters.StartTime,'yyyy-MM-dd HH:mm:ss')}'} AND LastModifiedDate < {ts'@{formatDateTime(pipeline().parameters.EndTime,'yyyy-MM-dd HH:mm:ss')}'}

Erro de MALFORMED_QUERY: truncadoError of MALFORMED_QUERY: Truncated

Se você encontrar o erro de "MALFORMED_QUERY: TRUNCATE", normalmente, é devido a você ter uma coluna de tipo JunctionIdList nos dados e o Salesforce tem a limitação de dar suporte a esses dados com um grande número de linhas.If you hit error of "MALFORMED_QUERY: Truncated", normally it's due to you have JunctionIdList type column in data and Salesforce has limitation on supporting such data with large number of rows. Para mitigar, tente excluir a coluna JunctionIdList ou limitar o número de linhas a serem copiadas (você pode particionar várias execuções da atividade de cópia).To mitigate, try to exclude JunctionIdList column or limit the number of rows to copy (you can partition to multiple copy activity runs).

Mapeamento de tipo de dados para SalesforceData type mapping for Salesforce

Ao copiar dados do Salesforce, os seguintes mapeamentos são usados de tipos de dados do Salesforce para tipos de dados provisórios do Data Factory.When you copy data from Salesforce, the following mappings are used from Salesforce data types to Data Factory interim data types. 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.To learn about how the copy activity maps the source schema and data type to the sink, see Schema and data type mappings.

Tipo de dados do SalesforceSalesforce data type Tipo de dados provisório do Data FactoryData Factory interim data type
Numeração automáticaAuto Number StringString
Caixa de seleçãoCheckbox BoolianoBoolean
MoedaCurrency DecimalDecimal
DataDate DatetimeDateTime
Data/HoraDate/Time DateTimeDateTime
EmailEmail StringString
IDID StringString
Relação de pesquisaLookup Relationship StringString
Lista de seleção múltiplaMulti-Select Picklist StringString
NúmeroNumber DecimalDecimal
PorcentagemPercent DecimalDecimal
TelefonePhone StringString
Lista de seleçãoPicklist StringString
TextoText Cadeia de caracteresString
Área de textoText Area StringString
Área de texto (longo)Text Area (Long) StringString
Área de texto (Rich)Text Area (Rich) StringString
Texto (criptografado)Text (Encrypted) StringString
URLURL StringString

Pesquisar propriedades de atividadeLookup activity properties

Para saber detalhes sobre as propriedades, verifique Pesquisar atividade.To learn details about the properties, check Lookup activity.

Próximas etapasNext steps

Para obter uma lista de armazenamentos de dados com suporte como origens e coletores pela atividade de cópia no Data Factory, consulte Armazenamentos de dados com suporte.For a list of data stores supported as sources and sinks by the copy activity in Data Factory, see Supported data stores.