Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

Azure Synapse と ClickHouse の統合

ClickHouse対応

Azure Synapse は、ビッグデータ、データサイエンス、データウェアハウスを組み合わせ、高速かつ大規模なデータ分析を可能にする統合分析サービスです。 Synapse では、Spark プールによって、オンデマンドでスケーリング可能な Apache Spark クラスターが提供され、複雑なデータ変換、機械学習、外部システムとのインテグレーションを実行できます。

この記事では、Azure Synapse で Apache Spark を使用する際に、ClickHouse Spark コネクタ を統合する方法を紹介します。

コネクタの依存関係を追加する

Azure Synapse では、パッケージ管理が 3 つのレベルでサポートされています。

  1. 既定のパッケージ
  2. Spark プール レベル
  3. セッション レベル

Apache Spark プールのライブラリを管理するガイドに従って、以下の必須の依存関係を Spark アプリケーションに追加してください。

  • clickhouse-spark-runtime-{spark_version}_{scala_version}-{connector_version}.jar - 公式 Maven
  • clickhouse-jdbc-{java_client_version}-all.jar - 公式 Maven

要件に適したバージョンを確認するには、Spark Connector Compatibility Matrix のドキュメントを参照してください。

ClickHouse をカタログとして追加する

セッションに Spark の設定を追加する方法はいくつかあります。

  • セッションと一緒に読み込むカスタム設定ファイル
  • Azure Synapse UI から設定を追加する
  • Synapse ノートブックで設定を追加する

こちらの Apache Spark 構成の管理 に従って、コネクタに必要な Spark 設定 を追加します。

たとえば、ノートブックで次の設定を使って Spark セッションを構成できます。

%%configure -f
{
    "conf": {
        "spark.sql.catalog.clickhouse": "com.clickhouse.spark.ClickHouseCatalog",
        "spark.sql.catalog.clickhouse.host": "<clickhouse host>",
        "spark.sql.catalog.clickhouse.protocol": "https",
        "spark.sql.catalog.clickhouse.http_port": "<port>",
        "spark.sql.catalog.clickhouse.user": "<username>",
        "spark.sql.catalog.clickhouse.password": "password",
        "spark.sql.catalog.clickhouse.database": "default"
    }
}

最初のセルが次のようになっていることを確認してください。

ノートブックで Spark 設定を行う

追加の設定については、ClickHouse Spark 設定ページを参照してください。

セットアップの確認

依存関係と設定が正常に反映されていることを確認するには、セッションの Spark UI にアクセスし、Environment タブを開いてください。 そこで、ClickHouse 関連の設定を確認してください。

Spark UI を使用した ClickHouse 設定の確認

追加リソース

Navigation