Copiar dados do Salesforce Marketing Cloud usando o Azure Data Factory ou o Synapse Analytics
APLICA-SE A: Azure Data Factory Azure Synapse Analytics
Gorjeta
Experimente o Data Factory no Microsoft Fabric, uma solução de análise tudo-em-um para empresas. O Microsoft Fabric abrange tudo, desde a movimentação de dados até ciência de dados, análises em tempo real, business intelligence e relatórios. Saiba como iniciar uma nova avaliação gratuitamente!
Este artigo descreve como usar a Atividade de cópia no Azure Data Factory ou os pipelines do Synapse Analytics para copiar dados do Salesforce Marketing Cloud. Ele se baseia no artigo de visão geral da atividade de cópia que apresenta uma visão geral da atividade de cópia.
Capacidades suportadas
Este conector do Salesforce Marketing Cloud é compatível com os seguintes recursos:
Capacidades suportadas | IR |
---|---|
Atividade de cópia (fonte/-) | (1) (2) |
Atividade de Pesquisa | (1) (2) |
(1) Tempo de execução de integração do Azure (2) Tempo de execução de integração auto-hospedado
Para obter uma lista de armazenamentos de dados suportados como fontes/coletores, consulte a tabela Armazenamentos de dados suportados.
O conector do Salesforce Marketing Cloud oferece suporte à autenticação OAuth 2 e aos tipos de pacotes herdados e avançados. O conector é criado com base na API REST do Salesforce Marketing Cloud.
Nota
Este conector não suporta a recuperação de vistas, objetos personalizados ou extensões de dados personalizadas.
Introdução
Você pode criar um pipeline com atividade de cópia usando o SDK do .NET, o SDK do Python, o Azure PowerShell, a API REST ou o modelo do Azure Resource Manager. Consulte Tutorial de atividade de cópia para obter instruções passo a passo para criar um pipeline com uma atividade de cópia.
Criar um serviço vinculado ao Salesforce Marketing Cloud usando a interface do usuário
Use as etapas a seguir para criar um serviço vinculado ao Salesforce Marketing Cloud na interface do usuário do portal do Azure.
Navegue até a guia Gerenciar em seu espaço de trabalho do Azure Data Factory ou Synapse e selecione Serviços Vinculados e clique em Novo:
Pesquise o Salesforce e selecione o conector do Salesforce Marketing Cloud.
Configure os detalhes do serviço, teste a conexão e crie o novo serviço vinculado.
Nota
O escopo de integração de API no Salesforce Marketing Cloud deve ser definido como Hub | Campanha | Leia para que o conector seja bem-sucedido.
Detalhes de configuração do conector
As seções a seguir fornecem detalhes sobre as propriedades usadas para definir entidades do Data Factory específicas para o conector do Salesforce Marketing Cloud.
Propriedades do serviço vinculado
As seguintes propriedades são compatíveis com o serviço vinculado do Salesforce Marketing Cloud:
Property | Descrição | Obrigatório |
---|---|---|
tipo | A propriedade type deve ser definida como: SalesforceMarketingCloud | Sim |
connectionProperties | Um grupo de propriedades que define como se conectar ao Salesforce Marketing Cloud. | Sim |
Em connectionProperties : |
||
authenticationType | Especifica o método de autenticação a ser usado. Os valores permitidos são Enhanced sts OAuth 2.0 ou OAuth_2.0 .O pacote herdado do Salesforce Marketing Cloud suporta OAuth_2.0 apenas , enquanto o pacote aprimorado precisa .Enhanced sts OAuth 2.0 Desde 1º de agosto de 2019, o Salesforce Marketing Cloud removeu a capacidade de criar pacotes herdados. Todos os novos pacotes são pacotes melhorados. |
Sim |
host | Para o pacote aprimorado, o host deve ser seu subdomínio, que é representado por uma cadeia de 28 caracteres começando com as letras "mc", por exemplo. mc563885gzs27c5t9-63k636ttgm Para pacote herdado, especifique www.exacttargetapis.com . |
Sim |
clientId | A ID do cliente associada ao aplicativo Salesforce Marketing Cloud. | Sim |
clientSecret | O segredo do cliente associado ao aplicativo Salesforce Marketing Cloud. Você pode optar por marcar esse campo como um SecureString para armazená-lo com segurança no serviço ou armazenar o segredo no Cofre de Chaves do Azure e permitir que a atividade de cópia de serviço seja extraída de lá ao executar a cópia de dados - saiba mais em Credenciais da Loja no Cofre de Chaves. | Sim |
useEncryptedEndpoints | Especifica se os pontos de extremidade da fonte de dados são criptografados usando HTTPS. O valor predefinido é true. | Não |
useHostVerification | Especifica se o nome do host no certificado do servidor deve corresponder ao nome do host do servidor ao se conectar por TLS. O valor predefinido é true. | Não |
usePeerVerification | Especifica se a identidade do servidor deve ser verificada ao se conectar por TLS. O valor predefinido é true. | Não |
Exemplo: usando autenticação STS OAuth 2 aprimorada para pacote avançado
{
"name": "SalesforceMarketingCloudLinkedService",
"properties": {
"type": "SalesforceMarketingCloud",
"typeProperties": {
"connectionProperties": {
"host": "<subdomain e.g. mc563885gzs27c5t9-63k636ttgm>",
"authenticationType": "Enhanced sts OAuth 2.0",
"clientId": "<clientId>",
"clientSecret": {
"type": "SecureString",
"value": "<clientSecret>"
},
"useEncryptedEndpoints": true,
"useHostVerification": true,
"usePeerVerification": true
}
}
}
}
Exemplo: usando a autenticação OAuth 2 para pacote herdado
{
"name": "SalesforceMarketingCloudLinkedService",
"properties": {
"type": "SalesforceMarketingCloud",
"typeProperties": {
"connectionProperties": {
"host": "www.exacttargetapis.com",
"authenticationType": "OAuth_2.0",
"clientId": "<clientId>",
"clientSecret": {
"type": "SecureString",
"value": "<clientSecret>"
},
"useEncryptedEndpoints": true,
"useHostVerification": true,
"usePeerVerification": true
}
}
}
}
Se você estava usando o serviço vinculado do Salesforce Marketing Cloud com a seguinte carga útil, ele ainda é suportado no estado em que se encontra, enquanto é sugerido que você use o novo no futuro, que adiciona suporte aprimorado a pacotes.
{
"name": "SalesforceMarketingCloudLinkedService",
"properties": {
"type": "SalesforceMarketingCloud",
"typeProperties": {
"clientId": "<clientId>",
"clientSecret": {
"type": "SecureString",
"value": "<clientSecret>"
},
"useEncryptedEndpoints": true,
"useHostVerification": true,
"usePeerVerification": true
}
}
}
Propriedades do conjunto de dados
Para obter uma lista completa de seções e propriedades disponíveis para definir conjuntos de dados, consulte o artigo sobre conjuntos de dados. Esta seção fornece uma lista de propriedades compatíveis com o conjunto de dados do Salesforce Marketing Cloud.
Para copiar dados do Salesforce Marketing Cloud, defina a propriedade type do conjunto de dados como SalesforceMarketingCloudObject. As seguintes propriedades são suportadas:
Property | Descrição | Obrigatório |
---|---|---|
tipo | A propriedade type do conjunto de dados deve ser definida como: SalesforceMarketingCloudObject | Sim |
tableName | Nome da tabela. | Não (se "consulta" na fonte da atividade for especificado) |
Exemplo
{
"name": "SalesforceMarketingCloudDataset",
"properties": {
"type": "SalesforceMarketingCloudObject",
"typeProperties": {},
"schema": [],
"linkedServiceName": {
"referenceName": "<SalesforceMarketingCloud linked service name>",
"type": "LinkedServiceReference"
}
}
}
Propriedades da atividade Copy
Para obter uma lista completa de seções e propriedades disponíveis para definir atividades, consulte o artigo Pipelines . Esta seção fornece uma lista de propriedades compatíveis com a fonte do Salesforce Marketing Cloud.
Salesforce Marketing Cloud como origem
Para copiar dados do Salesforce Marketing Cloud, defina o tipo de origem na atividade de cópia como SalesforceMarketingCloudSource. As seguintes propriedades são suportadas na seção de origem da atividade de cópia:
Property | Descrição | Obrigatório |
---|---|---|
tipo | A propriedade type da fonte de atividade de cópia deve ser definida como: SalesforceMarketingCloudSource | Sim |
query | Use a consulta SQL personalizada para ler dados. Por exemplo: "SELECT * FROM MyTable" . |
Não (se "tableName" no conjunto de dados for especificado) |
Exemplo:
"activities":[
{
"name": "CopyFromSalesforceMarketingCloud",
"type": "Copy",
"inputs": [
{
"referenceName": "<SalesforceMarketingCloud input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "SalesforceMarketingCloudSource",
"query": "SELECT * FROM MyTable"
},
"sink": {
"type": "<sink type>"
}
}
}
]
Nota
A tabela de contatos não é suportada.
Propriedades da atividade de pesquisa
Para saber detalhes sobre as propriedades, verifique Atividade de pesquisa.
Conteúdos relacionados
Para obter uma lista de armazenamentos de dados suportados como fontes e coletores pela atividade de cópia, consulte Armazenamentos de dados suportados.