Charger des données ServiceNow dans BigQuery
Vous pouvez charger des données depuis ServiceNow vers BigQuery à l'aide du connecteur du service de transfert de données BigQuery pour ServiceNow. Le service de transfert de données BigQuery vous permet de planifier des tâches de transfert récurrentes qui ajoutent vos dernières données ServiceNow à BigQuery.
Limites
Les transferts de données ServiceNow sont soumis aux limites suivantes :
- Il n'est pas recommandé d'exécuter des transferts de données simultanés sur la même instance ServiceNow.
- L'intervalle minimum entre deux transferts de données récurrents est de 15 minutes. L'intervalle par défaut entre transferts récurrents est de 24 heures.
Avant de commencer
Avant de créer un transfert de données ServiceNow, effectuez les configurations suivantes pour ServiceNow et BigQuery.
Prérequis pour ServiceNow
- Pour accéder aux API ServiceNow, créez des identifiants OAuth.
Les applications ServiceNow suivantes doivent toutes être activées dans l'instance ServiceNow :
Prérequis pour BigQuery
- Effectuez toutes les actions requises pour activer le service de transfert de données BigQuery.
- Créez un ensemble de données BigQuery pour stocker les données.
- Si vous avez l'intention de configurer des notifications d'exécution de transfert pour Pub/Sub, assurez-vous de disposer de l'autorisation Identity and Access Management (IAM)
pubsub.topics.setIamPolicy
. Si vous ne configurez que des notifications par e-mail, les autorisations Pub/Sub ne sont pas nécessaires. Pour en savoir plus, consultez la page Notifications d'exécution du service de transfert de données BigQuery.
Rôles BigQuery requis
Pour obtenir les autorisations nécessaires pour créer un transfert, demandez à votre administrateur de vous accorder le rôle IAM Administrateur BigQuery (roles/bigquery.admin
).
Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.
Ce rôle prédéfini contient les autorisations requises pour créer un transfert. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour créer un transfert :
bigquery.transfers.update
sur l'utilisateur-
bigquery.datasets.get
sur l'ensemble de données cible -
bigquery.datasets.update
sur l'ensemble de données cible
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Configurer un transfert de données ServiceNow
Les transferts de données ServiceNow peuvent être créés dans la console Trusted Cloud ou dans l'outil de ligne de commande bq.
Console
Accédez à la page "Transferts de données" dans la console Trusted Cloud .
Cliquez sur
Créer un transfert.Dans le champ Source de la section Type de source, sélectionnez ServiceNow.
Dans la section Data source details (Détails de la source de données), procédez comme suit :
- Dans le champ ID d'instance, saisissez l'ID d'instance ServiceNow.
Vous pouvez l'obtenir à partir de votre URL ServiceNow (par exemple,
https://INSTANCE_ID.service-now.com
). - Dans le champ Nom d'utilisateur, saisissez le nom d'utilisateur ServiceNow à utiliser pour la connexion.
- Dans le champ Mot de passe, saisissez le mot de passe ServiceNow.
- Dans le champ ID client, saisissez l'ID client à partir de vos identifiants OAuth. Pour générer des identifiants, consultez Créer des identifiants OAuth.
- Dans le champ Code secret du client, saisissez le code secret du client issu de vos identifiants OAuth.
- Dans le champ Tables ServiceNow à transférer, saisissez les noms des tables ServiceNow que vous voulez transférer ou cliquez sur Parcourir et sélectionnez les tables concernées.
- Pour Type de valeur, choisissez l'une des options suivantes :
- Pour transférer les valeurs stockées dans la base de données, sélectionnez Réel.
- Pour transférer les valeurs d'affichage des colonnes, sélectionnez Display.
- Dans le champ ID d'instance, saisissez l'ID d'instance ServiceNow.
Vous pouvez l'obtenir à partir de votre URL ServiceNow (par exemple,
Dans la section Paramètres de destination, pour le champ Ensemble de données, sélectionnez l'ensemble de données que vous avez créé pour stocker vos données.
Dans la section Nom de la configuration de transfert, sous Nom à afficher, saisissez le nom du transfert de données.
Dans la section Options de programmation, procédez comme suit :
- Dans la liste Fréquence de répétition, sélectionnez une option pour spécifier la fréquence d'exécution de ce transfert de données. Pour spécifier une fréquence de répétition personnalisée, sélectionnez Personnalisée. Si vous sélectionnez À la demande, le transfert de données s'exécute lorsque vous le déclenchez manuellement.
- Le cas échéant, sélectionnez Commencer ou Commencer à l'heure définie, puis indiquez une date de début et une heure d'exécution.
Facultatif : dans la section Options de notification, procédez comme suit :
- Pour activer les notifications par e-mail, cliquez sur le bouton Notification par e-mail. Lorsque vous activez cette option, l'administrateur du transfert reçoit une notification par e-mail si l'exécution du transfert échoue.
- Pour activer les notifications d'exécution de transfert Pub/Sub pour ce transfert de données, cliquez sur le bouton Notifications Pub/Sub. Vous pouvez sélectionner le nom de votre sujet ou cliquer sur Créer un sujet pour en créer un.
Cliquez sur Enregistrer.
bq
Saisissez la commande bq mk
, puis spécifiez l'indicateur de création de transfert --transfer_config
:
bq mk
--transfer_config
--project_id=PROJECT_ID
--data_source=DATA_SOURCE
--display_name=DISPLAY_NAME
--target_dataset=DATASET
--params='PARAMETERS'
Remplacez les éléments suivants :
PROJECT_ID
(facultatif) : ID de votre projet Trusted Cloud by S3NS . Si aucun ID de projet n'est spécifié, le projet par défaut est utilisé.DATA_SOURCE
: source de données (par exemple,servicenow
).DISPLAY_NAME
: nom à afficher de la configuration de transfert. Ce nom peut correspondre à toute valeur permettant d'identifier le transfert de données si vous devez le modifier ultérieurement.DATASET
: ensemble de données cible de la configuration de transfert.PARAMETERS
correspond aux paramètres de la configuration de transfert créée, au format JSON. Exemple :--params='{"param":"param_value"}'
. Voici les paramètres d'un transfert de données ServiceNow :Paramètre ServiceNow Obligatoire ou facultatif Description connector.instanceId
Requis ID de l'instance ServiceNow connector.authentication.username
Requis Nom d'utilisateur des identifiants connector.authentication.password
Requis Mot de passe des identifiants connector.authentication.oauth.clientId
Requis ID client de l'authentification OAuth générée connector.authentication.oauth.clientSecret
Requis Code secret du client de l'authentification OAuth générée connector.valueType
Facultatif Actual
ouDisplay
(par défaut :Actual
)Par exemple, la commande suivante crée un transfert de données ServiceNow dans le projet par défaut avec tous les paramètres requis :
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
Utilisez la méthode projects.locations.transferConfigs.create
et fournissez une instance de la ressource TransferConfig
.
Mappage des types de données
Le tableau suivant montre comment les types de données sont mappés lors d'un transfert de données ServiceNow :
Type de données ServiceNow | Type de données BigQuery |
---|---|
decimal |
FLOAT64 |
integer |
INTEGER |
boolean |
BOOLEAN |
glide_date |
DATE |
glide_date_time |
DATETIME |
glide_time |
INT64 |
reference currency sys_class_name domain_id domain_path GUID translated_html journal string
|
STRING |
Résoudre les problèmes de transfert
Pour en savoir plus, consultez la page Résoudre les problèmes liés aux configurations de transfert.
Échec du transfert en raison de l'activation de ServiceNow
Un problème survient et entraîne l'échec des transferts de données lorsque les applications Approvisionnement, Catalogue de produits ou Gestion des contrats ne sont pas activées dans ServiceNow. Pour résoudre ce problème, activez les trois applications. Par exemple, activez Approvisionnement.
Un problème se produit lors de l'exécution du transfert
Un problème survient si l'exécution de transfert n'est pas créée comme prévu. Pour identifier le problème, procédez comme suit :
- Vérifiez les identifiants du compte ServiceNow, tels que Nom d'utilisateur, Mot de passe, ID client et Code secret du client. sont valides.
- Vérifiez que l'ID d'instance est l'ID valide de votre instance ServiceNow.
Tarifs
Le transfert de données ServiceNow vers BigQuery est gratuit tant que cette fonctionnalité est en version Bêta.
Étapes suivantes
- Pour une vue d'ensemble du service de transfert de données BigQuery, consultez la page Présentation du service de transfert de données BigQuery.
- Pour plus d'informations sur l'utilisation des transferts, y compris l'obtention d'informations sur une configuration de transfert, la liste des configurations de transfert et l'affichage de l'historique d'exécution d'un transfert, consultez la page Utiliser les transferts.
- Découvrez comment charger des données avec des opérations multicloud.