Présentation de Bigtable Data Boost

Data Boost est un service de calcul sans serveur conçu pour exécuter des tâches de lecture à haut débit sur vos données Bigtable, sans affecter les performances des clusters qui gèrent le trafic de votre application. Il vous permet d'envoyer des tâches et des requêtes de lecture volumineuses à l'aide d'un calcul sans serveur pendant que votre application principale continue à utiliser des nœuds de cluster pour le calcul. Les SKU et les tarifs de facturation pour l'informatique sans serveur sont différents des SKU et des tarifs des nœuds provisionnés. Vous ne pouvez pas envoyer de requêtes d'écriture ou de suppression avec Data Boost.

Ce document décrit Data Boost, et vous explique quand et comment l'utiliser. Avant de lire cette page, vous devez comprendre les instances, les clusters et les nœuds.

Points forts

Data Boost est idéal pour les charges de travail d'analyse et de traitement des données. En isolant le trafic d'analyse et de traitement avec Data Boost, vous n'avez pas besoin d'ajuster la capacité ou le nombre de nœuds d'un cluster pour vous adapter aux charges de travail analytiques. Vous pouvez exécuter vos tâches d'analyse à haut débit sur un seul cluster avec Data Boost pendant que le trafic en cours de votre application est acheminé via des nœuds de cluster.

Voici des cas d'utilisation idéaux de Data Boost:

  • des tâches de pipeline ETL ou d'exportation planifiées ou déclenchées depuis Bigtable vers Cloud Storage à des fins d'enrichissement, d'analyse, d'archivage, d'entraînement de modèles de ML hors connexion ou d'ingestion par les partenaires tiers de vos clients.
  • ETL à l'aide d'un outil tel que Dataflow pour les processus d'analyse courte ou de lecture par lot acceptant les agrégations sur place, les transformations basées sur des règles pour MDM ou les tâches de ML

Points faibles

Lectures de points : Data Boost n'est pas la meilleure option pour les opérations de lecture de point, qui sont des requêtes de lecture envoyées pour des lignes individuelles. Cela inclut les lectures de points par lot. En raison de la structure de facturation, de nombreuses lectures à une seule ligne sont considérablement plus coûteuses qu'une analyse longue.

Lecture des données immédiatement après leur écriture : lorsque vous lisez des données avec Data Boost, il est possible que vous ne puissiez pas lire toutes les données écrites dans la demi-heure la plus récente. Cela est particulièrement vrai si votre instance utilise la réplication et que vous lisez des données qui ont été écrites sur un cluster situé dans une région différente de celle depuis laquelle vous lisez. Pour en savoir plus, consultez la section Cohérence.

Charges de travail sensibles à la latence : Data Boost est optimisé pour le débit. Par conséquent, la latence de lecture est plus lente lorsque vous utilisez Data Boost que lorsque vous lisez à l'aide de clusters et de nœuds. Pour cette raison, Data Boost ne convient pas aux charges de travail de diffusion d'applications.

Pour en savoir plus sur les charges de travail, les configurations et les fonctionnalités non compatibles avec Data Boost, consultez la section Limites.

Profils d'application Data Boost

Pour utiliser Data Boost, vous devez envoyer vos requêtes de lecture à l'aide d'un profil d'application Data Boost au lieu d'un profil d'application standard.

Les profils d'application standards vous permettent de spécifier la règle de routage et le niveau de priorité pour les requêtes qui utilisent le profil d'application, et de spécifier si les transactions à ligne unique sont autorisées. Le trafic envoyé à l'aide d'un profil d'application standard est acheminé vers un cluster, et les nœuds de ce cluster acheminent le trafic vers le disque. Pour en savoir plus, consultez Présentation des profils d'application standards.

En revanche, avec un profil d'application Data Boost, vous configurez une règle de routage à cluster unique vers l'un des clusters de votre instance. Le trafic utilisant ce profil d'application utilise le calcul sans serveur au lieu des nœuds du cluster.

Vous pouvez créer un profil d'application Data Boost ou convertir un profil d'application standard afin d'utiliser Data Boost à la place. Nous vous recommandons d'utiliser un profil d'application distinct pour chaque charge de travail ou application.

Jetons de cohérence

Les données qui ont été écrites ou répliquées sur votre cluster cible plus de 35 minutes avant que votre requête de lecture ne soit lisible par Data Boost.

Avant de lancer une charge de travail Data Boost, vous pouvez vous assurer que les données d'une tâche d'écriture ou d'une période spécifiques sont lisibles par Data Boost en créant et en utilisant un jeton de cohérence. Voici un exemple de workflow:

  1. Écrire des données dans une table
  2. Créez un jeton de cohérence.
  3. Envoyez le jeton en mode DataBoostReadLocalWrites pour déterminer à quel moment les écritures sont lisibles par Data Boost sur votre cluster cible.

Vous pouvez éventuellement vérifier la cohérence de la réplication avant de vérifier la cohérence Data Boost en envoyant d'abord un jeton de cohérence en mode StandardReadRemoteWrites.

Pour en savoir plus, consultez la documentation de référence de l'API sur CheckConsistencyRequest.

Quotas et facturation

Data Boost utilise des unités de traitement sans serveur (SPU, Serverless Processing Units), des ressources de calcul indépendantes et à la demande pour mesurer la puissance de calcul utilisée pour lire les données avec Data Boost. Contrairement aux nœuds, les SPU ne vous sont facturés que lorsque vous les utilisez. Chaque requête est facturée pour un minimum de 60 SPU-secondes, et vous êtes facturé au moins 10 SPU par seconde. Pour en savoir plus sur les tarifs de Data Boost, consultez la section Tarifs de Bigtable.

Un quota vous est alloué et les SPU vous sont facturés séparément du quota et des frais pour les nœuds.

Métriques d'éligibilité

Data Boost est conçu pour les analyses à haut débit. Les charges de travail doivent être compatibles pour pouvoir utiliser Data Boost. Avant de convertir un profil d'application standard afin d'utiliser Data Boost ou de créer un profil d'application Data Boost pour une charge de travail existante, consultez les métriques d'éligibilité Data Boost pour vous assurer que votre configuration et votre utilisation répondent aux critères requis. Vous devez également examiner les limites.

Surveillance

Pour surveiller votre trafic Data Boost, vous pouvez consulter les métriques de votre profil d'application Data Boost sur la page de surveillance Bigtable de la console Google Cloud. Pour obtenir la liste des métriques disponibles par profil d'application, consultez Graphiques de surveillance pour les ressources Bigtable.

Vous pouvez surveiller votre utilisation des unités de traitement sans serveur (SPU) en vérifiant le nombre d'unités de traitement sans serveur (data_boost/spu_usage_count) dans l'explorateur de métriques.

Vous pouvez également continuer à surveiller les métriques d'éligibilité du profil d'application après avoir commencé à utiliser Data Boost.

Limites

Les propriétés de charge de travail et configurations de ressources suivantes ne sont pas compatibles avec Data Boost.

  • Écritures et suppressions
  • Trafic principalement composé de lectures ponctuelles (lectures sur une seule ligne)
  • Plus de 1 000 lectures par seconde et par cluster
  • Analyses inversées
  • Modifier les flux
  • Priorités de demande
  • Routage multi-cluster
  • Transactions à ligne unique
  • Points de terminaison régionaux
  • Instances HDD
  • Instances utilisant le chiffrement CMEK
  • Bibliothèques clientes incompatibles. Vous devez utiliser le client Bigtable pour Java version 2.31.0 ou ultérieure. Pour les tâches Dataflow qui lisent des données Bigtable, vous devez utiliser Apache Beam version 2.54.0 ou ultérieure.

Les éléments suivants ne sont pas compatibles avec la version preview.

  • Création et configuration d'un profil d'application Data Boost dans la console Google Cloud
  • Lire des données Bigtable à partir de BigQuery ou de Spark

Étapes suivantes