Skip to main content
Le template BigQuery vers ClickHouse est un pipeline de traitement par lots qui ingère des données d’une table BigQuery dans une table ClickHouse. Le template peut lire l’intégralité de la table ou filtrer des enregistrements spécifiques à l’aide d’une requête SQL fournie.

Exigences du pipeline

  • La table source BigQuery doit exister.
  • La table ClickHouse cible doit exister.
  • L’hôte ClickHouse doit être accessible depuis les machines worker de Dataflow.

Paramètres du template



Les valeurs par défaut de tous les paramètres ClickHouseIO sont disponibles dans le Connecteur Apache Beam ClickHouseIO

Schéma des tables source et cible

Pour charger efficacement le jeu de données BigQuery dans ClickHouse, le pipeline exécute un processus d’inférence des colonnes selon les phases suivantes :
  1. Les templates construisent un objet de schéma à partir de la table ClickHouse cible.
  2. Les templates parcourent le jeu de données BigQuery et tentent de faire correspondre les colonnes en fonction de leur nom.

Cela dit, votre jeu de données BigQuery (qu’il s’agisse d’une table ou d’une query) doit avoir exactement les mêmes noms de colonnes que votre table ClickHouse cible.

Correspondance des types de données

Les types BigQuery sont convertis en fonction de la définition de votre table ClickHouse. Par conséquent, le tableau ci-dessus indique la correspondance recommandée à utiliser dans votre table ClickHouse cible (pour une table/requête BigQuery donnée) :

Exécuter le Template

Le template BigQuery vers ClickHouse peut être exécuté via la Google Cloud CLI.
Veillez à consulter ce document, en particulier les sections ci-dessus, afin de bien comprendre les exigences de configuration et les prérequis du template.
Connectez-vous à votre Google Cloud Console et recherchez DataFlow.
  1. Cliquez sur le bouton CREATE JOB FROM TEMPLATE
  2. Une fois le formulaire du template ouvert, saisissez un nom de job et sélectionnez la région souhaitée.
  3. Dans le champ DataFlow Template, saisissez ClickHouse ou BigQuery, puis sélectionnez le template BigQuery to ClickHouse
  4. Une fois sélectionné, le formulaire s’étend pour vous permettre de renseigner des informations supplémentaires :
    • L’URL JDBC du serveur ClickHouse, au format suivant jdbc:clickhouse://host:port/schema.
    • Le nom d’utilisateur ClickHouse.
    • Le nom de la table cible ClickHouse.

L’option de mot de passe ClickHouse est indiquée comme facultative, pour les cas d’usage où aucun mot de passe n’est configuré. Pour l’ajouter, faites défiler la page jusqu’à l’option Password for ClickHouse Endpoint.
  1. Personnalisez et ajoutez toute configuration liée à BigQuery/ClickHouseIO, comme indiqué dans la section Template Parameters

Surveiller le job

Accédez à l’onglet Dataflow Jobs dans votre Google Cloud Console pour suivre l’état du job. Vous y trouverez les détails du job, notamment sa progression et les éventuelles erreurs :

Dépannage

Erreur : limite de mémoire (totale) dépassée (code 241)

Cette erreur se produit lorsque ClickHouse manque de mémoire lors du traitement de lots de données volumineux. Pour résoudre ce problème :
  • Augmentez les ressources de l’instance : passez à une instance plus grande pour votre serveur ClickHouse, avec davantage de mémoire afin d’absorber la charge liée au traitement des données.
  • Réduisez la taille des lots : ajustez la taille des lots dans la configuration de votre job Dataflow pour envoyer à ClickHouse de plus petits volumes de données, ce qui réduit la consommation de mémoire par lot. Ces modifications peuvent aider à mieux répartir l’utilisation des ressources lors de l’ingestion des données.

Code source du template

Le code source du template est disponible dans :
Dernière modification le 23 juillet 2026