Présentation de l'API Storage Write

L'API BigQuery Storage Write est une API d'ingestion de données unifiée que vous pouvez utiliser pour diffuser des enregistrements dans BigQuery en temps réel. L'API Storage Write est disponible via des points de terminaison gRPC et REST.

Choisir une approche de streaming

Vous pouvez utiliser l'API Storage Write de deux manières : via le streaming gRPC ou via le point de terminaison REST. Le streaming gRPC est idéal pour les connexions de longue durée et le streaming continu, tandis que le point de terminaison REST est plus adapté aux environnements éphémères, sans état ou contraints.

Pour les nouvelles charges de travail, nous vous recommandons d'utiliser le streaming gRPC pour les raisons suivantes :

  • Protocole efficace : le streaming gRPC est plus efficace que REST sur HTTP. Il est également compatible avec le tampon de protocole format binaire et le format en colonnes Apache Arrow, qui sont des formats de communication plus efficaces que JSON. Les requêtes d'écriture sont asynchrones avec un ordre garanti.
  • Coût inférieur : le streaming gRPC est beaucoup moins coûteux que REST. En outre, vous pouvez ingérer jusqu'à 2 Tio par mois sans frais.
  • Sémantique de diffusion de type "exactement une fois" : le streaming gRPC est compatible avec la sémantique "exactement une fois" grâce à l'utilisation de décalages de flux.Il n'écrit jamais deux messages ayant le même décalage dans un flux si le client fournit des décalages de flux lors de l'ajout d'enregistrements.
  • Transactions au niveau du flux. Avec le streaming gRPC, vous pouvez écrire des données dans un flux et les valider comme une seule transaction. Si l'opération de validation échoue, vous pouvez retenter l'opération en toute sécurité.
  • Transactions dans plusieurs flux. Avec le streaming gRPC, plusieurs nœuds de calcul peuvent créer leurs propres flux afin de traiter les données de manière indépendante. Lorsque tous les nœuds de calcul ont terminé, vous pouvez valider tous les flux en tant que transaction unique.
  • Détection des mises à jour de schéma. Avec le streaming gRPC, si le schéma de la table sous-jacente change alors que le client est en streaming, l'API informe le client. Le client peut choisir de se reconnecter à l'aide du schéma mis à jour ou de continuer à écrire sur la connexion existante.

Le schéma suivant illustre d'autres détails techniques à prendre en compte lors de la sélection d'une approche de streaming :

Diagramme pour choisir l'approche de streaming de l'API Storage Write.

Étape suivante