メインコンテンツへスキップ
メインコンテンツへスキップ

Kafka を ClickHouse と統合する

Apache Kafka は、ハイパフォーマンスなデータパイプライン、ストリーミング分析、データ統合、およびミッションクリティカルなアプリケーションのために数千社で利用されている、オープンソースの分散イベントストリーミングプラットフォームです。ClickHouse は、Kafka およびその他の Kafka API 互換ブローカー(例: Redpanda、Amazon MSK)からの読み取りおよびそれらへの書き込みを行うための複数のオプションを提供します。

利用可能なオプション

ユースケースに最適なオプションを選択するには、ClickHouse のデプロイメントタイプ、データフローの方向性、運用要件など、複数の要因を考慮する必要があります。

オプションデプロイメントタイプフルマネージドKafka から ClickHouseClickHouse から Kafka
ClickPipes for KafkaCloud, BYOC (coming soon!)
Kafka Connect SinkCloud, BYOC, Self-hosted
Kafka table engineCloud, BYOC, Self-hosted

これらのオプションのより詳細な比較については、オプションの選択を参照してください。

ClickPipes for Kafka

ClickPipes はマネージドのインテグレーションプラットフォームであり、多様なソースからのデータを数回クリックするだけで簡単に取り込むことができます。フルマネージドであり、本番ワークロード向けに設計されているため、ClickPipes はインフラストラクチャおよび運用コストを大幅に削減し、外部のデータストリーミングや ETL ツールを不要にします。

ヒント

ClickHouse Cloud ユーザーの場合、このオプションが推奨されます。ClickPipes は フルマネージド であり、クラウド環境で 最高のパフォーマンス を発揮するように設計されています。

主な機能

  • ClickHouse Cloud 向けに最適化されており、非常に高速なパフォーマンスを実現
  • 高スループットワークロード向けの水平および垂直スケーラビリティ
  • 設定可能なレプリカと自動リトライによる組み込みのフォールトトレランス
  • ClickHouse Cloud UI、Open API、または Terraform を介したデプロイおよび管理
  • クラウドネイティブ認可 (IAM) とプライベート接続 (PrivateLink) をサポートするエンタープライズグレードのセキュリティ
  • Confluent Cloud、Amazon MSK、Redpanda Cloud、Azure Event Hubs など、幅広い データソース をサポート
  • 一般的なシリアル化フォーマット (JSON、Avro、Protobuf[近日対応予定]) をサポート

はじめに

ClickPipes for Kafka の利用を開始するには、リファレンスドキュメント を参照するか、ClickHouse Cloud UI の Data Sources タブに移動してください。

Kafka Connect Sink

Kafka Connect はオープンソースのフレームワークであり、Kafka と他のデータシステム間でのシンプルなデータ統合のための集中型データハブとして機能します。ClickHouse Kafka Connect Sink コネクタは、Apache Kafka およびその他の Kafka API 互換ブローカーからデータを読み取るための、スケーラブルで高度に設定可能なオプションを提供します。

ヒント

高い 設定自由度 を重視する場合、またはすでに Kafka Connect を利用している場合には、このオプションが推奨されます。

主な機能

  • exactly-once セマンティクスをサポートするように設定可能
  • 一般的なシリアル化フォーマット (JSON、Avro、Protobuf) をサポート
  • ClickHouse Cloud を対象に継続的にテストされています

はじめに

ClickHouse Kafka Connect Sink の利用を開始するには、リファレンスドキュメント を参照してください。

Kafka table engine

Kafka table engine は、Apache Kafka およびその他の Kafka API 互換ブローカーからデータを読み取ったり、書き込んだりするために使用できます。このオプションはオープンソース版 ClickHouse にバンドルされており、すべてのデプロイメントタイプで利用可能です。

ヒント

ClickHouse をセルフホストしており、導入ハードルが低い オプションを必要としている場合、または Kafka にデータを 書き込む 必要がある場合には、このオプションが推奨されます。

主な機能

  • データの読み取りおよび書き込みに使用可能
  • オープンソース版 ClickHouse にバンドル済み
  • 一般的なシリアル化フォーマット (JSON、Avro、Protobuf) をサポート

はじめに

Kafka テーブルエンジンの利用を開始するには、リファレンスドキュメント を参照してください。

オプションの選択

製品長所短所
ClickPipes for Kafka• 高スループットかつ低レイテンシーを実現するスケーラブルなアーキテクチャ
• 組み込みのモニタリングとスキーマ管理
• PrivateLink 経由のプライベートネットワーク接続
• SSL/TLS 認証および IAM 認可をサポート
• プログラムによる構成 (Terraform、API エンドポイント) をサポート
• Kafka へのデータプッシュは非対応
• at-least-once セマンティクス
Kafka Connect Sink• exactly-once セマンティクス
• データ変換、バッチ処理、エラー処理をきめ細かく制御可能
• プライベートネットワーク内にデプロイ可能
• ClickPipes でまだサポートされていないデータベースから、Debezium 経由でリアルタイムレプリケーションが可能
• Kafka へのデータプッシュは非対応
• セットアップおよび運用保守が複雑
• Kafka および Kafka Connect に関する専門知識が必要
Kafka table engineKafka へのデータプッシュ に対応
• セットアップが運用面でシンプル
• at-least-once セマンティクス
• コンシューマーの水平方向スケーリングが制限される。ClickHouse サーバーとは独立してスケールできない
• エラー処理やデバッグの選択肢が限られる
• Kafka に関する専門知識が必要

その他のオプション