For AI agents: the complete documentation index is available at https://docs.ovhcloud.com/fr/llms.txt, the full documentation bundle is available at https://docs.ovhcloud.com/fr/llms-full.txt, and this page is available as Markdown at https://docs.ovhcloud.com/fr/guides/public-cloud/data-analytics/analytics/clickhouse-integration-with-kafka.md.

ClickHouse – Analytics en temps réel avec l'intégration Kafka

Voir en Markdown

Découvrez comment connecter ClickHouse® à Kafka® avec les intégrations Aiven pour un échange de données fluide. Apprenez quels formats de données sont pris en charge en entrée et en sortie.

Objectif

Ce guide explique comment intégrer ClickHouse à Kafka via Aiven : configuration de la connexion, gestion des formats de données et activation de l'ingestion en temps réel pour Analytics.

Ce guide explique comment connecter ClickHouse® à Kafka® via les intégrations Aiven pour un échange de données en temps réel.

Prérequis

En pratique

Préparer votre cluster Kafka

Avant de connecter ClickHouse, assurez-vous que votre cluster Kafka est opérationnel :

  • Provisionnez un cluster Kafka via Aiven ou un autre fournisseur managé ;
  • Recueillez les informations de connexion requises (brokers, méthode d'authentification, certificats SSL le cas échéant) ;
  • Vérifiez que le cluster Kafka est accessible depuis le réseau ClickHouse.

Créer l'intégration Apache Kafka dans Aiven

Avant de configurer les tables ClickHouse, créez l'intégration Apache Kafka dans Aiven. Cela établit la connexion managée permettant à ClickHouse de consommer les données Kafka.

Suivez la documentation officielle d'Aiven pour créer l'intégration.

Au cours de cette étape, vous allez :

  • Sélectionner ou créer une source de données Apache Kafka ;
  • Définir les topics Kafka, les groupes de consommateurs et les formats de données ;
  • Créer des tables adossées à Kafka exposées à ClickHouse ;
  • Activer l'intégration.

Une fois activée, la source de données Kafka devient disponible pour une utilisation dans ClickHouse.

Configurer ClickHouse pour les connexions externes

ClickHouse doit accepter les connexions provenant de votre cluster Kafka :

  • Accédez à la configuration de votre instance ClickHouse ;
  • Activez les connexions externes et ajoutez à la liste d'autorisation les IP ou plages réseau du cluster Kafka ;
  • Confirmez que ClickHouse exécute une version stable prise en charge par Aiven.
Info

Utilisez toujours une connexion sécurisée (TLS) entre ClickHouse et Kafka pour les environnements de production.

Créer des tables Kafka engine dans ClickHouse

ClickHouse utilise le moteur Kafka pour consommer directement les topics :

CREATE TABLE kafka_events (
    event_time DateTime,
    user_id String,
    action String
) ENGINE = Kafka
SETTINGS
    kafka_broker_list = 'your-kafka-broker:9092',
    kafka_topic_list = 'events_topic',
    kafka_group_name = 'clickhouse_consumer_group',
    kafka_format = 'JSONEachRow';
  • Remplacez kafka_broker_list, kafka_topic_list et kafka_group_name par les valeurs spécifiques à votre cluster.
  • kafka_format doit correspondre au format de données utilisé dans vos topics Kafka (JSON, Avro, etc.).

Persister les données avec des vues matérialisées

Pour stocker durablement les données Kafka entrantes :

CREATE MATERIALIZED VIEW events_mv TO permanent_events AS
SELECT *
FROM kafka_events;

Cela garantit une ingestion en temps réel dans une table ClickHouse permanente pour les requêtes Analytics. Les vues matérialisées permettent de dissocier l'ingestion de l'interrogation, améliorant ainsi les performances.

Valider l'intégration

Produisez des messages de test dans votre topic Kafka et interrogez la table ClickHouse ou la vue matérialisée :

SELECT * FROM permanent_events LIMIT 10;

Vérifiez que les données sont correctement ingérées et que les timestamps, formats et encodages correspondent aux attentes.

Surveiller et optimiser

  • Surveillez le lag des consommateurs Kafka pour vous assurer qu'aucune donnée n'est perdue.
  • Surveillez les métriques d'ingestion ClickHouse (lignes/sec, utilisation disque).
  • Ajustez la taille des batchs Kafka et les paramètres de buffer ClickHouse pour un débit optimal.
  • Mettez en place des alertes pour les échecs, les requêtes lentes ou un lag élevé.

Aller plus loin

ClickHouse service capabilities

Documentation officielle Aiven pour intégrer Kafka

Rejoignez notre communauté d'utilisateurs.

Votre avis nous intéresse !

Nous serions ravis de répondre à vos questions et apprécions tout retour que vous pourriez nous faire.

Pour une formation ou une assistance technique sur la mise en œuvre de nos solutions, contactez votre commercial ou consultez la page Professional Services pour obtenir un devis et faire analyser votre projet par nos experts.

Vous êtes sur Discord ? Rejoignez notre chaîne via https://discord.gg/ovhcloud et interagissez directement avec l’équipe qui développe notre service de bases de données !

Cette page vous a-t-elle aidé ?