Programa una transferencia de ServiceNow
El Servicio de transferencia de datos de BigQuery para el conector de ServiceNow te permite programar y administrar de forma automática los trabajos de carga recurrentes de ServiceNow en BigQuery.
Limitaciones
Las transferencias de datos de ServiceNow están sujetas a las siguientes limitaciones:
- No se recomienda ejecutar transferencias de datos simultáneas en la misma instancia de ServiceNow.
- El tiempo de intervalo mínimo entre transferencias de datos recurrentes es de 15 minutos. El intervalo predeterminado para una transferencia recurrente es de 24 horas.
ServiceNow transfiere los datos de tablas relacionadas con el negocio desde tres aplicaciones: Adquisición, Catálogo de productos y Administración de contratos. Se pueden transferir las siguientes tablas:
ast_contract
clm_condition_check
clm_condition_checker
clm_contract_history
clm_m2m_contract_and_terms
clm_m2m_contract_asset
clm_m2m_contract_user
clm_m2m_rate_card_asset
clm_terms_and_conditions
pc_hardware_cat_item
pc_product_cat_item
pc_software_cat_item
pc_vendor_cat_item
proc_po
proc_po_item
proc_rec_slip
proc_rec_slip_item
Antes de comenzar
Antes de crear una transferencia de datos de ServiceNow, realiza las siguientes configuraciones para ServiceNow y BigQuery.
Requisitos previos de ServiceNow
- Para acceder a las APIs de ServiceNow, crea credenciales de OAuth.
Todas las aplicaciones de ServiceNow deben estar habilitadas en la instancia de ServiceNow:
Requisitos previos de BigQuery
- Completa todas las acciones necesarias para habilitar el Servicio de transferencia de datos de BigQuery.
- Crea un conjunto de datos de BigQuery para almacenar los datos.
- Si quieres configurar las notificaciones de ejecución de transferencias para Pub/Sub, asegúrate de tener el permiso
pubsub.topics.setIamPolicy
de Identity and Access Management (IAM). Si solo configuras las notificaciones por correo electrónico, no se necesitan los permisos de Pub/Sub. Para obtener más información, consulta la sección sobre notificaciones de ejecución del Servicio de transferencia de datos de BigQuery.
Roles de BigQuery requeridos
Para obtener los permisos que necesitas para crear una transferencia,
pídele a tu administrador que te otorgue el rol de IAM de
administrador de BigQuery (roles/bigquery.admin
).
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Este rol predefinido contiene los permisos necesarios para crear una transferencia. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para crear una transferencia:
-
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 o con otros roles predefinidos.
Configura una transferencia de datos de ServiceNow
Las transferencias de datos de ServiceNow se pueden crear en la consola de Google Cloud o la herramienta de línea de comandos de bq.
Console
Ve a la página Transferencia de datos en la consola de Google Cloud.
Haz clic en
Crear transferencia.En la sección Tipo de fuente, en Fuente, selecciona ServiceNow.
En la sección Detalles de fuente de datos, haz lo siguiente:
- En ID de instancia, ingresa el ID de la instancia de ServiceNow. Puedes obtenerlo desde la URL de ServiceNow, por ejemplo,
https://INSTANCE_ID.service-now.com
. - En Nombre de usuario, ingresa el nombre de usuario de ServiceNow que se usará para la conexión.
- En Contraseña, ingresa la contraseña de ServiceNow.
- En ID de cliente, ingresa el ID de cliente de tus credenciales de OAuth. Para generar credenciales, consulta Crea credenciales OAuth.
- En Secreto del cliente, ingresa el secreto del cliente de tus credenciales de OAuth.
- En Tipo de valor, elige una de las siguientes opciones:
- Para transferir los valores almacenados en la base de datos, elige Real.
- Para transferir los valores de visualización de las columnas, elige Mostrar.
- En ID de instancia, ingresa el ID de la instancia de ServiceNow. Puedes obtenerlo desde la URL de ServiceNow, por ejemplo,
En la sección Configuración de destino, en Conjunto de datos de destino, selecciona el conjunto de datos que creaste para almacenar tus datos.
En la sección Nombre de configuración de la transferencia (Transfer config name), en Nombre visible (Display name), ingresa el nombre de la transferencia de datos.
En la sección Opciones de programación, haz lo siguiente:
En la lista Frecuencia de repetición, selecciona una opción para especificar la frecuencia con la que se ejecuta esta transferencia de datos. Para especificar una frecuencia de repetición personalizada, selecciona Personalizada. Si seleccionas Según demanda, esta transferencia de datos se ejecuta cuando activas la transferencia de forma manual.
Si corresponde, selecciona Comenzar ahora o Comenzar a una hora determinada y proporciona una fecha de inicio y una hora de ejecución.
En el menú Cuenta de servicio, selecciona una cuenta de servicio de las cuentas de servicio asociadas a tu proyecto de Google Cloud. La cuenta de servicio seleccionada debe tener los roles necesarios para ejecutar esta transferencia de datos.
Si accediste con una identidad federada, se requiere una cuenta de servicio para crear una transferencia de datos. Si accediste con una Cuenta de Google, la cuenta de servicio para la transferencia es opcional.
Para obtener más información sobre el uso de cuentas de servicio con transferencias de datos, consulta Usa cuentas de servicio.
Opcional: En la sección Opciones de notificación, haz lo siguiente:
- Para habilitar las notificaciones por correo electrónico, haz clic en el botón de activar o desactivar Notificación por correo electrónico. Si habilitas esta opción, el administrador de transferencias recibirá una notificación por correo electrónico cuando falle la ejecución de una transferencia.
- Si quieres habilitar las notificaciones de ejecución de transferencias de Pub/Sub para esta transferencia de datos, haz clic en el botón de activar Notificaciones de Pub/Sub. Puedes seleccionar el nombre del tema o hacer clic en Crear un tema para crear uno.
Haz clic en Guardar.
bq
Ingresa el comando bq mk
y suministra la marca de creación de transferencias, --transfer_config
.
bq mk \
--transfer_config \
--project_id=PROJECT_ID \
--data_source=DATA_SOURCE \
--display_name=DISPLAY_NAME \
--target_dataset=DATASET \
--params='PARAMETERS'
Reemplaza lo siguiente:
PROJECT_ID
(opcional): Tu ID del proyecto de Google Cloud. Si no se especifica un ID del proyecto, se usa el proyecto predeterminado.DATA_SOURCE
: Es la fuente de datos (por ejemplo,servicenow
).DISPLAY_NAME
es el nombre visible de la configuración de transferencia. El nombre de la transferencia de datos puede ser cualquier valor que te permita identificarla si es necesario hacerle modificaciones más tarde.DATASET
es el conjunto de datos de destino para la configuración de transferencia.PARAMETERS
son los parámetros de la configuración de transferencia creada en formato JSON. Por ejemplo:--params='{"param":"param_value"}'
Los siguientes son los parámetros para una transferencia de datos de ServiceNow:Parámetro ServiceNow Obligatorio u opcional Descripción connector.instanceId
Obligatorio ID de la instancia de ServiceNow connector.authentication.username
Obligatorio Nombre de usuario de las credenciales connector.authentication.password
Obligatorio Contraseña de las credenciales connector.authentication.oauth.clientId
Obligatorio ID de cliente de OAuth generado connector.authentication.oauth.clientSecret
Obligatorio Secreto del cliente de OAuth generado connector.valueType
Opcional Actual
orDisplay
(predeterminado:Actual
)Por ejemplo, el siguiente comando crea una transferencia de datos de ServiceNow en el proyecto predeterminado con todos los parámetros obligatorios:
bq mk \ --transfer_config \ --target_dataset=mydataset \ --data_source=servicenow \ --display_name='My Transfer' \ --params='{"connector.authentication.oauth.clientId": "1234567890", "connector.authentication.oauth.clientSecret":"ABC12345", "connector.authentication.username":"user1", "Connector.authentication.password":"abcdef1234", "connector.instanceId":"https://dev-instance.service-now.com"}'
API
Usa el método projects.locations.transferConfigs.create
y suministra una instancia del recurso TransferConfig
.
Cómo solucionar problemas de transferencia
Para obtener más información, consulta Soluciona problemas relacionados con la configuración de una transferencia.
La transferencia falla debido a la habilitación de ServiceNow
Se produce un problema que provoca que las transferencias de datos fallen cuando las aplicaciones de Adquisición, Catálogo de productos o Administración de contratos no están habilitadas en ServiceNow. Para solucionarlo, habilita las tres aplicaciones. Por ejemplo, activa Adquisición.
El problema se produce durante la ejecución de la transferencia
Se produce un problema que hace que la ejecución de la transferencia no se cree según lo previsto. Para solucionar el problema, haz lo siguiente:
- Verifica las credenciales de la cuenta de ServiceNow estén correctas, como los valores Nombre de usuario, Contraseña, ID de cliente y Secreto de cliente.
- Verifica que el ID de la instancia sea el ID válido de tu instancia de ServiceNow.
Precios
No se aplican costos por transferir datos de ServiceNow a BigQuery mientras esta función está en vista previa.
¿Qué sigue?
- Si deseas obtener una descripción general del Servicio de transferencia de datos de BigQuery, consulta la página sobre la introducción al Servicio de transferencia de datos de BigQuery.
- Para obtener información sobre el uso de las transferencias (por ejemplo, cómo obtener información sobre una configuración de transferencia, mostrar distintas configuraciones o visualizar su historial de ejecuciones), consulta Trabaja con transferencias.
- Obtén más información sobre cómo cargar datos con operaciones entre nubes.