Aller au contenu principal

Connecteur source GraphQL

Le connecteur source GraphQL dans DataSync vous permet de récupérer des données à partir de GraphQL pour les charger ou les synchroniser dans votre entrepôt de données. Après avoir créé toutes les connexions source requises, configurez votre source de destination pour compléter la configuration de la connexion.

Créer une connexion source dans DataSync

  1. Connectez-vous à DataSync.
  2. Depuis l'écran d'accueil, sélectionnez Connexions.
  3. À côté de Connexions Source, cliquez sur Nouveau.
  4. Sélectionnez GraphQL.
  5. Dans le panneau Propriétés de Connexion, entrez les propriétés de connexion.
  6. (Facultatif) Dans le panneau Propriétés de Connexion Supplémentaires, sélectionnez Ajouter une propriété et entrez les paramètres pour chaque propriété.
  7. Dans le panneau Paramètres Avancés, configurez les paramètres, y compris le Type de Suivi et d'autres valeurs en fonction de vos besoins.
  8. Cliquez sur Enregistrer.

Paramètres

Propriétés de connexion

ParamètreDescription
DescriptionNom unique pour la connexion. Exemple : GraphQL
URLAdresse du point de terminaison de l'API GraphQL. Cela doit représenter le point de terminaison spécifique du service GraphQL, qui peut différer de l'URL de base de l'API. La valeur est validée lors de la création de la connexion.
Exemple : https://api.example.com/graphql
Mode d'authentificationSchéma d'authentification utilisé pour accéder à l'API. La sélection détermine d'autres options de chaîne de connexion et comment elles apparaissent dans la configuration :

  • OAuth2 – S'authentifie à l'aide du flux OAuth 2.0.
  • OAuthPKCE – S'authentifie à l'aide du flux OAuth PKCE.
  • Basic – S'authentifie à l'aide du nom d'utilisateur et du mot de passe.
  • NoAuth – Se connecte sans authentification.
Nom d'utilisateurNom d'utilisateur du compte avec les autorisations API requises. Exemple : User123
Mot de passeMot de passe pour le nom d'utilisateur spécifié. Exemple : P@ssw0rd!
URL de rappelURL de redirection assignée automatiquement par DataSync. Certaines APIs nécessitent que vous ajoutiez cette valeur à une liste autorisée d'URL de rappel dans les paramètres de l'application ou le portail de configuration.
Identifiant clientIdentifiant d'application assigné lors de l'enregistrement. Trouvé dans les paramètres de votre application ou le portail de configuration. Exemple : client-id-987654
Secret clientValeur confidentielle connue uniquement du client et du serveur d'autorisation. Disponible dans les paramètres de votre application ou le portail de configuration. Exemple : mySuperSecretValue
URL d'autorisationURL qui commence le processus d'autorisation. Disponible dans la documentation de l'API.
Exemple : https://auth.example.com/oauth2/authorize
URL du jeton d'accèsURL utilisée pour échanger un code d'autorisation contre un jeton d'accès. Disponible dans la documentation de l'API. Exemple : https://auth.example.com/oauth2/token
URL du jeton de rafraîchissementURL utilisée pour échanger un jeton de rafraîchissement contre un nouveau jeton d'accès. Disponible dans la documentation de l'API. Exemple : https://auth.example.com/oauth2/refresh
PortéePermissions d'accès demandées lors de la connexion. Vérifiez les droits d'accès avec votre portail de configuration. Exemple : read:users write:projects
Convertir toutes les dates et heures en GMTParamètre de conversion pour toutes les valeurs de date et d'heure de l'API en GMT.
Taille de la pageRésultats maximum à retourner par page lorsque la pagination côté client est activée. Des valeurs plus grandes retournent plus de lignes par page mais peuvent provoquer des délais d'attente.
Activer la mise en poolOption de mise en pool de connexion pour des performances optimales.
Délai d'inactivité de la piscineTemps d'inactivité maximum pour les connexions avant de les retourner à la piscine, en secondes.
Taille maximale de la piscineNombre maximum de connexions autorisées dans la piscine.
Temps d'attente de la piscineTemps d'attente maximum pour l'allocation de connexion avant que l'erreur ne se produise, en secondes.
Verbosité
  • 1 – Journaliser les requêtes, les comptes de lignes, le début/fin d'exécution, les erreurs.
  • 2 – Inclut le niveau 1 plus des requêtes mises en cache, des en-têtes HTTP.
  • 3 – Inclut le niveau 2 plus les corps de demande/réponse.
  • 4 – Inclut le niveau 3 plus la communication au niveau du transport.
  • 5 – Inclut le niveau 4 plus toutes les commandes d'interface.
Délai d'attenteTemps en secondes à attendre pour l'ouverture de la connexion et l'exécution de la requête avant le délai d'attente.

Propriétés de connexion supplémentaires

Propriétés de chaîne de connexion supplémentaires non spécifiées dans le panneau Propriétés de Connexion. Pour chaque propriété ajoutée, vous pouvez choisir Visible ou Cryptée. La sélection Cryptée cache la valeur de l'interface et la stocke cryptée dans le backend, comme lors de la définition de mots de passe.

PropriétéValeur
HTTPHeadersEn-têtes HTTP personnalisés requis par l'API. Ajoutez une ligne séparée pour chaque en-tête à inclure dans les requêtes API.
Exemple : Authorization: Bearer <token>
ExpandTablesDepthParamètre de profondeur pour l'expansion des listes imbriquées lors de la découverte des tables. Associez la valeur au niveau d'imbrication nécessaire pour votre modèle de données GraphQL. Contrôle le nombre de niveaux de listes imbriquées inclus :

  • 0 – Aucune expansion des objets de liste intérieure en tables.
  • 1 – Étend les objets de liste au même niveau dans la définition de l'objet ; n'étend pas les listes imbriquées.
  • n – Étend les listes jusqu'à la profondeur d'imbrication spécifiée.

Paramètres avancés

Les paramètres avancés contrôlent comment le connecteur GraphQL suit les changements, gère la configuration régionale et horaire, et traite les lots de données lors de l’extraction. Ces options permettent d'affiner les performances et la précision, et doivent être configurées en fonction de votre environnement système et de vos exigences opérationnelles.

ParamètreDescription
Type de suiviMéthode de suivi des changements : Aucun ou Date.
RégionParamètre de région pour le connecteur, si requis par votre configuration.
Fuseau horaireFuseau horaire correspondant au serveur d'application GraphQL.
Décalage horaireDécalage de rafraîchissement en secondes pour compenser les problèmes de timing dans la sélection d'enregistrements. La valeur minimale est 0 ; la valeur maximale est 3600 secondes.
Taille de lotQuantité d'enregistrements traités dans chaque lot lors de l'extraction. Des tailles de lot plus grandes augmentent l'utilisation de la mémoire mais peuvent améliorer les performances jusqu'à un certain point. La valeur par défaut est 2000 et le maximum ne doit pas dépasser 10000 enregistrements. Ajustez en fonction de la vitesse de votre réseau et des performances de votre disque ; dans la plupart des cas, la valeur par défaut (2000) fonctionne le mieux.

Exemple