Passer au contenu principal

Vue d’ensemble

@reelevant-tech/data-sdk couvre DataHub et le Datagraph : les Datasources et leurs étapes de configuration, les Mutable Datasources, le Datagraph Schema, les Datagraph Objects et les Datagraph Object Families. L’exemple ci-dessous interroge un Datagraph Object pour un client, puis crée une Mutable Datasource et y écrit deux lignes.

Deux points d’entrée

Utilisez le point d’entrée racine pour valider le SQL d’un Datagraph Object ou un Datagraph Schema dans une pull request, sans identifiants. Utilisez le client pour lire et écrire dans le compte.

Client

Concepts clés

Étapes de configuration. Une Datasource se configure via une liste ordonnée d’étapes (configure_name, configure_sources, configure_fields, … validate). datasources.runSteps(id, steps) les valide dans l’ordre, vérifie avant chaque appel que l’étape est celle attendue, et s’arrête avant validate si vous passez stopAt: 'validate'. Mutable Datasources. Une Mutable Datasource est une Datasource dans laquelle vous écrivez ligne par ligne. Les lignes sont identifiées par entry_index : une ligne sans entry_index est insérée, une ligne avec est upsertée. deleteRows() supprime des lignes (suppression logique) par entry_index. upsertRows() valide chaque valeur contre le type de son champ avant tout envoi, puis écrit par lots de 500. Provisioning du Datagraph. upsertByName() sur les Datagraph Objects et les Datagraph Object Families crée ou met à jour par nom, puis publie si vous passez publish: true. Lancer deux fois le même script donne le même résultat, ce qui convient à la promotion entre environnements et à la CI. Contrôles locaux. datagraph.schema.validateLocal() vérifie un Datagraph Schema sans aucune requête. datagraph.objects.lintSql(), datagraph.objects.inferAnswers() et datagraph.objectFamilies.checkConformance() vérifient un Datagraph Object contre le Datagraph Schema live (récupéré si vous n’en passez pas) et renvoient les mêmes erreurs que l’éditeur du Datagraph, avant toute sauvegarde. Pagination. Les appels de liste renvoient { items, count, page, perPage }. query.iterateRows() est un générateur asynchrone sur toutes les pages.

Erreurs

Pages associées