Cargar datos de Salesforce Marketing Cloud en BigQuery
Puede cargar datos de Salesforce Marketing Cloud en BigQuery mediante el conector de BigQuery Data Transfer Service para Salesforce Marketing Cloud. Con BigQuery Data Transfer Service, puede programar tareas de transferencia periódicas que añadan sus datos más recientes de Salesforce Marketing Cloud a BigQuery.
Limitaciones
Las transferencias de datos de Salesforce Marketing Cloud están sujetas a las siguientes limitaciones:
- Una configuración de transferencia solo puede admitir una ejecución de transferencia de datos a la vez. Si se programa una segunda transferencia de datos para que se ejecute antes de que se complete la primera, solo se completará la primera transferencia de datos y se omitirán las demás transferencias de datos que se solapen con la primera.
- Para evitar que se omitan transferencias en una misma configuración de transferencia, le recomendamos que aumente el tiempo que transcurre entre las transferencias de grandes cantidades de datos configurando la frecuencia de repetición.
- Si la vinculación de red y la instancia de máquina virtual (VM) que has configurado se encuentran en regiones diferentes, puede que haya movimiento de datos entre regiones cuando transfieras datos desde Salesforce Marketing Cloud.
Antes de empezar
En las siguientes secciones se describen los pasos que debe seguir antes de crear una transferencia de datos de Salesforce Marketing Cloud.
Requisitos previos de Salesforce Marketing Cloud
Debe tener la siguiente información al crear una transferencia de datos de Salesforce Marketing Cloud:
Nombre del parámetro | Descripción |
---|---|
subdomain |
El subdominio de la API |
instance |
La instancia del servidor de la API |
clientId |
ID de cliente de la integración de la aplicación |
clientSecret |
El secreto de cliente de la integración de la aplicación |
En los siguientes pasos se explica cómo obtener la información necesaria para crear una transferencia de datos de Marketing Cloud de Salesforce:
- Instala un paquete de integración de API de tipo entre servidores.
Anota el ID de cliente, el secreto de cliente y el subdominio en la sección Componentes de la página de detalles del paquete.
- El subdominio es una parte del URI base. Por ejemplo, en el URI base de autenticación
https://SUBDOMAIN.auth.marketingcloudapis.com/
, SUBDOMAIN es el valor de tu subdominio. - Para obtener más información, consulta Integraciones de servidor a servidor con el tipo de concesión de credenciales de cliente.
- El subdominio es una parte del URI base. Por ejemplo, en el URI base de autenticación
- Busca la instancia de tu servidor de API en la URL después de iniciar sesión en la aplicación Salesforce Marketing Cloud. El valor de la instancia incluye
s
seguido de un valor numérico. Por ejemplo, en la URLhttps://mc.s4.exacttarget.com/
, el valor de la instancia ess4
. Para obtener más información, consulta Buscar la ubicación de la pila de una cuenta de Marketing Cloud.
También debe configurar los ajustes de permisos de ámbito para permitir la transferencia de datos de Salesforce Marketing Cloud:
Inicia sesión en la aplicación Salesforce Marketing Cloud.
Despliega el menú de perfil y haz clic en Configuración.
En la barra de navegación, en Herramientas de la plataforma, haga clic en Aplicaciones > Paquetes instalados.
Selecciona un paquete instalado para modificar sus ajustes.
En la sección Componentes, haz clic en Editar.
Selecciona la opción Leer para los siguientes ámbitos:
- Correo electrónico
- Contenido guardado
- Recorridos
- Retrollamadas
- Campaña
- Suscripciones
Haz clic en Guardar.
Requisitos previos de BigQuery
- Comprueba que has completado todas las acciones necesarias para habilitar BigQuery Data Transfer Service.
- Crea un conjunto de datos de BigQuery para almacenar tus datos.
- Si quieres configurar notificaciones de ejecuciones de transferencias para Pub/Sub, asegúrate de que tienes el permiso de
pubsub.topics.setIamPolicy
Gestión de Identidades y Accesos (IAM). No se necesitan permisos de Pub/Sub si solo configuras notificaciones por correo electrónico. Para obtener más información, consulta el artículo sobre las notificaciones de ejecución de BigQuery Data Transfer Service.
Roles de BigQuery necesarios
Para obtener los permisos que necesitas para crear una transferencia,
pide a tu administrador que te conceda el
rol de gestión de identidades y accesos Administrador de BigQuery (roles/bigquery.admin
).
Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.
Este rol predefinido contiene los permisos necesarios para crear una transferencia. Para ver los permisos exactos que se necesitan, despliega la sección Permisos necesarios:
Permisos obligatorios
Para crear una transferencia, se necesitan los siguientes permisos:
-
bigquery.transfers.update
en el usuario -
bigquery.datasets.get
en el conjunto de datos de destino -
bigquery.datasets.update
en el conjunto de datos de destino
También puedes obtener estos permisos con roles personalizados u otros roles predefinidos.
Configurar una transferencia de datos de Salesforce Marketing Cloud
Añada datos de Salesforce Marketing Cloud a BigQuery configurando una configuración de transferencia con una de las siguientes opciones:
Consola
Ve a la página Transferencias de datos de la Google Cloud consola.
Haz clic en
Crear transferencia.En la sección Tipo de fuente, en Fuente, seleccione Salesforce Marketing Cloud.
En la sección Detalles de la fuente de datos, haga lo siguiente:
- En Subdominio de la API, introduce el subdominio de la API.
- En Instancia de la API, introduce el valor de la instancia de la API.
- En ID de cliente, introduce el ID de cliente de la integración de la aplicación.
- En Client Secret (Secreto de cliente), introduce el secreto de cliente de la integración de la aplicación.
En la sección Configuración de destino, en Conjunto de datos, seleccione el conjunto de datos que ha creado para almacenar sus datos.
En la sección Nombre de la configuración de transferencia, en Nombre visible, indica un nombre para la transferencia de datos.
En la sección Opciones de programación, haga lo siguiente:
- En la lista Frecuencia de repetición, selecciona una opción para especificar con qué frecuencia se realiza esta transferencia de datos. Para especificar una frecuencia de repetición personalizada, selecciona Personalizar. Si seleccionas Bajo demanda, la transferencia se realizará cuando la inicies manualmente.
- Si procede, selecciona Empezar ahora o Empezar a una hora determinada y proporciona una fecha de inicio y un tiempo de ejecución.
Opcional: En la sección Opciones de notificación, haz lo siguiente:
- Para habilitar las notificaciones por correo, haz clic en el interruptor Notificación por correo. Si habilitas esta opción, el administrador de las transferencias recibirá una notificación por correo cuando falle una ejecución de transferencia.
- Para habilitar las notificaciones de Pub/Sub sobre la transferencia, haz clic en el interruptor Notificaciones de Pub/Sub. Puedes seleccionar el nombre del tema o hacer clic en Crear un tema para crear uno.
Haz clic en Guardar.
Cuando se ejecuta esta transferencia de datos, BigQuery Data Transfer Service rellena automáticamente las siguientes tablas en función de la interfaz REST.
Campaigns
Categories
EventDefinitions
Journeys
JourneyActivities
SendDefinitions
Subscriptions
bq
Introduce el comando bq mk
y proporciona la marca de creación de transferencia: --transfer_config
.
bq mk --transfer_config --project_id=PROJECT_ID --data_source=DATA_SOURCE --display_name=DISPLAY_NAME --target_dataset=DATASET --params='PARAMETERS'
Haz los cambios siguientes:
- PROJECT_ID (opcional): el ID de tu proyecto Google Cloud .
Si no se proporciona
--project_id
para especificar un proyecto concreto, se usará el proyecto predeterminado. - DATA_SOURCE: la fuente de datos (por ejemplo,
saphana
). - DISPLAY_NAME: el nombre visible de la configuración de la transferencia. El nombre de la transferencia de datos puede ser cualquier valor que te permita identificar la transferencia si necesitas modificarla más adelante.
- DATASET: el conjunto de datos de destino de la configuración de la transferencia.
- PARAMETERS: los parámetros de la configuración de transferencia creada en formato JSON. Por ejemplo:
--params='{"param":"param_value"}'
. Estos son los parámetros de una transferencia de Salesforce Marketing Cloud:connector.subdomain
: el subdominio de la API.connector.instance
: el valor de la instancia de la API.connector.authentication.oauth.clientId
: nombre del ID de la aplicación del cliente de OAuth.connector.authentication.oauth.clientSecret
: el secreto de la aplicación del cliente de OAuth.
Por ejemplo, el siguiente comando crea una transferencia de datos de Salesforce Marketing Cloud en el proyecto predeterminado con todos los parámetros obligatorios:
bq mk --transfer_config --target_dataset=mydataset --data_source=salesforce_marketing --display_name='My Transfer' --params='{"connector.subdomain": "abcd", "connector.instance": "x", "connector.authentication.oauth.clientId": "1234567890", "connector.authentication.oauth.clientSecret":"ABC12345"}'
API
Usa el método projects.locations.transferConfigs.create
y proporciona una instancia del recurso TransferConfig
.
Para ejecutar manualmente una transferencia de datos fuera de tu programación habitual, puedes iniciar una ejecución de rellenado.
Solucionar problemas de configuración de transferencias
Si tienes problemas para configurar una transferencia de datos de Salesforce Marketing Cloud, prueba a seguir estos pasos para solucionarlos:
- Asegúrate de que la autenticación configurada para el paquete de integración de la API esté configurada como De servidor a servidor.
- Asegúrate de que la aplicación de autenticación esté configurada con los permisos necesarios en Ámbito.
Mensajes de error
- Error:
invalid_grant. The client's IP address is unauthorized for this account. Allowlist the client's IP address in Marketing Cloud Administration.
Solución: prueba uno de los siguientes pasos:
- Habilita todas las direcciones IP disponibles para Google Cloud recursos.
- Inhabilita la lista de direcciones IP permitidas. Para ello, inicia sesión en la aplicación Salesforce Marketing Cloud y ve a la página Configuración > Configuración de seguridad. Haz clic en Editar y, a continuación, configura el ajuste Restringir inicios de sesión por dirección IP (lista de IPs permitidas) en Lista de IPs permitidas inhabilitada.
- Error:
INVALID_ARGUMENT. Table tableName does not exist in asset TableName
Solución: asegúrate de que tienes configurados los permisos de ámbito correctos en la aplicación Salesforce Marketing Cloud. Para obtener más información, consulte los requisitos de Salesforce Marketing Cloud.
Precios
No hay ningún coste por transferir datos de Salesforce Marketing Cloud a BigQuery mientras esta función esté en vista previa.
Siguientes pasos
- Para obtener una descripción general de BigQuery Data Transfer Service, consulta el artículo Introducción a BigQuery Data Transfer Service.
- Para obtener información sobre cómo usar las transferencias de datos, como obtener información sobre una configuración de transferencia, enumerar configuraciones de transferencia y ver el historial de ejecuciones de una transferencia, consulta Gestionar transferencias.
- Consulta cómo cargar datos con operaciones entre nubes.