Utiliser BigQuery Graph et Spanner Graph
Ce document vous aide à déterminer la solution de graphe à utiliser en comparant BigQuery Graph et Spanner Graph.
Cette comparaison sert de recommandation et n'est pas absolue. Il existe un chevauchement important des fonctionnalités entre BigQuery Graph et Spanner Graph. Les utilisateurs doivent identifier les besoins de leur propre charge de travail pour déterminer la fonctionnalité à utiliser.
Quand utiliser BigQuery Graph et Spanner Graph ?
BigQuery Graph et Spanner Graph gèrent différents types de charges de travail de graphe. BigQuery Graph est destiné à l'analyse approfondie à grande échelle, tandis que Spanner Graph est destiné aux opérations en temps réel.
Graphique BigQuery
BigQuery Graph est optimisé pour exécuter des requêtes complexes sur des graphiques volumineux. Vous pouvez analyser des schémas globaux, identifier des tendances historiques et découvrir des relations cachées dans des ensembles de données volumineux.
Ses caractéristiques techniques incluent des performances optimisées à grande échelle, un traitement parallèle, des requêtes complexes sur une partie importante du graphique, un calcul intensif et des agrégations complexes.
Voici quelques cas d'utilisation courants :
- Détection des fraudes hors connexion : recherchez d'autres utilisateurs suspects connectés à des fraudeurs connus sur l'ensemble de votre réseau dans un graphique client, à quelques degrés de connexions partageant la même adresse e-mail, le même numéro de téléphone ou la même adresse. Pour suivre un tutoriel sur la détection des fraudes, consultez Spanner et BigQuery : bouclier de défense contre la fraude en temps réel.
- Optimisation de la chaîne d'approvisionnement : créez un graphique de la nomenclature qui représente les relations entre les produits finaux et leurs composants pour la planification des stocks. Calculez les dates de livraison des produits et déterminez la disponibilité des matériaux en analysant les produits de premier niveau jusqu'à leurs composants de base dans toutes les gammes de produits.
- Segmentation Customer 360 : créez un graphique Customer 360 pour comprendre les parcours client pour les abonnements aux produits, les conversions et le taux de désabonnement. Utilisez-le pour identifier les raisons pour lesquelles les clients se désabonnent, identifier les schémas d'utilisation et utiliser le graphique pour la segmentation des clients et le ciblage d'audience sur l'ensemble de l'audience.
Spanner Graph
Spanner Graph est destiné aux opérations en temps réel. Il est optimisé pour les applications qui doivent effectuer des requêtes k-hop touchant instantanément un petit ensemble d'éléments de graphe, détecter les fraudes en quelques millisecondes, effectuer un traçage de traçabilité pour la vérification de l'identité et des dépendances, et diffuser des recommandations en direct.
Ses caractéristiques techniques incluent une latence prévisible avec une gigue minimale, un nombre de requêtes par seconde (RPS) qui évolue de manière linéaire avec le nombre de nœuds Spanner et une évolutivité pratiquement illimitée. Il propose également un stockage de graphes intégré avec entrelacement de tables de nœuds et d'arêtes, une disponibilité permanente, une cohérence globale, ainsi que des requêtes de recherche de points et de sauts multiples à partir d'un seul nœud de graphe ou d'un ensemble de nœuds de graphe.
Voici quelques cas d'utilisation courants :
- Détection des fraudes en temps réel : vérifiez en quelques millisecondes un paiement par carte de crédit par rapport à un graphique des appareils et comptes frauduleux connus.
- Opérations réseau autonomes : créez un jumeau numérique de votre réseau pour surveiller et optimiser les performances en temps réel.
- Résolution d'entités : créez des clusters d'identités associées en tant que source de vérité à partir de différentes informations permettant d'identifier personnellement l'utilisateur (adresse e-mail, numéro de téléphone, ID Venmo). Utilisez les profils canoniques pour rechercher l'identité avant de diffuser des annonces, effectuez une détection des fraudes en temps réel et entraînez les Feature Store.
Fonctionnement en synergie de BigQuery Graph et Spanner Graph
BigQuery Graph et Spanner Graph fonctionnent ensemble pour fournir une solution complète. Par exemple, dans un cas d'utilisation de Customer 360 :
- Insights en temps réel : un agent du service client utilise Spanner Graph pour traiter les réclamations des utilisateurs concernant l'expédition d'un produit incorrect en fonction des statistiques d'achat et de livraison en temps réel.
- Répliquer ou interroger : vous pouvez répliquer des données de Spanner vers BigQuery à l'aide des flux de modifications Spanner sans processus d'extraction, de transformation et de chargement (ETL) complexe, ou interroger les données Spanner directement depuis BigQuery à l'aide des requêtes fédérées BigQuery.
- Analyser les schémas : un data scientist utilise BigQuery Graph pour identifier les "points chauds de désabonnement" sur ces mêmes données afin de marquer le client comme "à risque".
- Boucle de rétroaction : les étiquettes "à risque" sont transmises à Spanner Graph avec une compatibilité d'extraction, de transformation et de chargement (ETL) inversée pour générer un code promotionnel pour ce client afin d'éviter l'attrition.
Déplacer des données entre BigQuery Graph et Spanner Graph
Vous pouvez déplacer des données entre Spanner Graph et BigQuery Graph en fonction des exigences de votre charge de travail :
ETL direct : pour déplacer des données de Spanner vers BigQuery pour les requêtes analytiques, utilisez un modèle Dataflow.
ETL inversé : bien que vous puissiez interroger les données Spanner directement depuis BigQuery Graph, il peut arriver que vous deviez importer des données BigQuery dans Spanner Graph. Utilisez l'instruction SQL
EXPORT DATA. Pour en savoir plus, consultez Comprendre le pipeline ETL inverse.
Comparatif des fonctionnalités
Le tableau suivant fournit une répartition détaillée des fonctionnalités en fonction du produit pour lequel elles sont le plus optimisées :
| Fonctionnalité | BigQuery Graph (hors connexion/par lot) | Spanner Graph (en ligne/en temps réel) |
|---|---|---|
| Modèle de graphe, requête et visualisation | Modélisation de graphes et langage de requête de graphes unifiés, tous optimisés par GoogleSQL, qui fait partie de la norme ISO SQL. Même interface pour la visualisation des graphiques. | Modélisation de graphes et langage de requête de graphes unifiés, tous optimisés par GoogleSQL, qui fait partie de la norme ISO SQL. Même interface pour la visualisation des graphiques. |
| Charge de travail principale | Hors connexion (par lot) : agrégations sur des ensembles de données volumineux. | En ligne (temps réel) : volume élevé de lectures/écritures à faible latence. |
| Latence des requêtes | Secondes à heures. Optimisé pour l'analyse de téraoctets/pétaoctets. | Millisecondes en secondes. Essentielle pour les applications visibles par l'utilisateur. |
| Schéma de requête | Global ou graphique entier : "Qui a une 'couverture réseau' de plus de 5 000 personnes ?" | Local ou quartier : "Qui sont les amis de mes amis, mais qui ne font pas partie de mon cercle immédiat ?" |
| Évoluer | À l'échelle du pétaoctet, pratiquement illimité, optimisé pour les données historiques à grande échelle. | Évolutivité horizontale, capacité pratiquement illimitée, optimisé pour les données actives. |
| Fraîcheur des données | En temps quasi réel ou par lot. Peut accéder aux données de différentes sources (par exemple, les données Spanner Graph à l'aide de Data Boost pour Spanner, Bigtable, Cloud Storage ou Amazon S3). | Cohérence forte en temps réel. |
| Données saisies | Lacs de données, journaux historiques, données de transaction archivées. | Flux d'applications en direct, interactions des utilisateurs. |
| Transfert de données |
Spanner vers BigQuery (extraction, transformation et chargement (ETL) directs) avec des modèles prédéfinis (par lot, en flux continu).
BigQuery vers Spanner (ETL inversé) avec EXPORT_DATA.
Fédération de requêtes (zéro ETL) avec un schéma externe.
|
Spanner vers BigQuery (extraction, transformation et chargement (ETL) directs) avec des modèles prédéfinis (par lot, en streaming).
BigQuery vers Spanner (ETL inversé) avec EXPORT_DATA.
Fédération de requêtes (zéro ETL) avec un schéma externe.
|
Étapes suivantes
- En savoir plus sur BigQuery Graph
- En savoir plus sur Spanner Graph