Présentation de Data Boost dans Bigtable
Data Boost est un service de calcul sans serveur conçu pour exécuter des jobs 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 de grands jobs de lecture et des requêtes à l'aide du calcul sans serveur, tandis que votre application principale continue d'utiliser des nœuds de cluster pour le calcul. Les SKU et les tarifs de facturation du calcul sans serveur sont distincts des SKU et des tarifs des nœuds provisionnés. Vous ne pouvez pas envoyer de requêtes d'écriture ni de suppression avec Data Boost.
Ce document décrit le boost de données, et 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 gérer les charges de travail d'analyse. Vous pouvez exécuter vos jobs d'analyse à haut débit sur un cluster unique avec Data Boost, tandis que le trafic en cours de l'application est acheminé via des nœuds de cluster.
Voici les cas d'utilisation idéaux pour Data Boost:
- Exporter ou déclencher des tâches de pipeline ETL de Bigtable vers Cloud Storage pour enrichir, analyser, archiver, entraîner des modèles de ML hors connexion ou ingérer des données par les partenaires tiers de vos clients
- ETL à l'aide d'un outil tel que Dataflow pour les processus d'analyse rapide ou de lecture par lot compatibles avec les agrégations sur place, les transformations basées sur des règles pour le MDM ou les tâches de ML
- Applications Spark qui utilisent le connecteur Spark Bigtable pour lire les données Bigtable
Points faibles
Lectures ponctuelles : Data Boost n'est pas la meilleure option pour les opérations de lecture ponctuelle, qui sont des requêtes de lecture envoyées pour des lignes individuelles. Cela inclut les lectures de points groupées. En raison de la structure de facturation, de nombreuses lectures de points sur une seule ligne sont considérablement plus coûteuses qu'une seule analyse longue.
Lire les données immédiatement après leur écriture : lorsque vous lisez des données avec Data Boost, vous ne pouvez pas lire toutes les données écrites au cours de 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 écrites dans un cluster situé dans une région différente de celle à partir de laquelle vous lisez. Pour en savoir plus, consultez la section Jetons de 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 effectuez des lectures à l'aide de clusters et de nœuds. C'est pourquoi Data Boost n'est pas adapté 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 envoyez 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 les règles de routage et le niveau de priorité pour les requêtes qui utilisent le profil d'application, ainsi que 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 la section Présentation des profils d'application standards.
En revanche, avec un profil d'application Data Boost, vous configurez une stratégie de routage à cluster unique sur 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 pour 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 écrites ou répliquées sur votre cluster cible plus de 35 minutes avant votre requête de lecture sont lisibles par Data Boost.
Vous pouvez vous assurer que les données d'une tâche d'écriture ou d'une période spécifique sont lisibles par Data Boost avant de lancer une charge de travail Data Boost en créant et en utilisant un jeton de cohérence. Voici un exemple de workflow:
- Écrivez des données dans une table.
- Créez un jeton de cohérence.
- Envoyez le jeton en mode
DataBoostReadLocalWrites
pour déterminer quand 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 de 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 pour CheckConsistencyRequest.
Quotas et facturation
L'utilisation de Data Boost est mesurée en unités de traitement sans serveur (SPU), et 1 000 SPU correspondent à un nœud en termes de performances. Contrairement aux nœuds provisionnés, les SPU ne vous sont facturés que lorsque vous utilisez Data Boost. 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 de 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 pour 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 consulter 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 "Surveillance de Bigtable" de la console Google Cloud. Pour obtenir la liste des métriques disponibles par profil d'application, consultez la section Graphiques de surveillance pour les ressources Bigtable.
Vous pouvez surveiller votre utilisation des unités de traitement sans serveur (SPU) en consultant la métrique Nombre d'utilisation des SPU (data_boost/spu_usage_count
) dans l'onglet Profil de l'application de la page de surveillance Bigtable.
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 les configurations de ressources suivantes ne sont pas compatibles avec Data Boost.
- Écritures et suppressions
- Trafic composé principalement 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 des requêtes
- Routage multi-cluster
- Transactions à ligne unique
- Points de terminaison régionaux
- Instances HDD
- Requêtes GoogleSQL pour Bigtable
- Requêtes du générateur de requêtes Bigtable Studio
- Instances utilisant le chiffrement CMEK
Bibliothèques clientes incompatibles. Vous devez utiliser la version 2.31.0 ou ultérieure du client Bigtable pour Java.
- Pour les tâches Dataflow qui utilisent
BigtableIO
pour lire des données Bigtable, vous devez utiliser Apache Beam version 2.54.0 ou ultérieure. - Pour les tâches Dataflow qui utilisent
CloudBigtableIO
pour lire les données Bigtable, vous devez utiliserbigtable-hbase-beam
version 2.14.1 ou ultérieure. Les éléments suivants ne sont pas compatibles avec la version Preview.
- Pour les tâches Dataflow qui utilisent
Lire des données Bigtable depuis BigQuery
Étape suivante