> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-mintlify-fbfa8bee.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> 初めての BigQuery ClickPipe を作成するためのステップごとのガイド。

# 初めての BigQuery ClickPipe の作成

export const Image = ({img, alt, size}) => {
  return <Frame>
      <img src={img} alt={alt} />
    </Frame>;
};

<PrivatePreviewBadge />

<Note>
  [こちら](https://clickhouse.com/cloud/clickpipes/bigquery-connector)からプライベートプレビューのウェイトリストに登録できます。
</Note>

BigQuery ClickPipe は、BigQuery から ClickHouse Cloud へデータを取り込むための、フルマネージドで耐障害性に優れた仕組みです。プライベートプレビューでは、BigQuery のデータセットを探索やプロトタイピング向けに一括で読み込めるよう、**初期ロード** レプリケーション方式をサポートしています。将来的には **CDC** もサポートされる予定です。それまでは、初期ロード完了後に BigQuery のエクスポートデータを ClickHouse Cloud に継続的に同期する方法として、[Google Cloud Storage ClickPipe](/ja/integrations/clickpipes/object-storage/google-cloud-storage/overview) の利用を推奨します。

BigQuery ClickPipes は、ClickPipes UI を使用して手動でデプロイおよび管理できるほか、[OpenAPI](/ja/integrations/clickpipes/programmatic-access/openapi) や [Terraform](/ja/integrations/clickpipes/programmatic-access/terraform) を使用してプログラムからデプロイおよび管理することもできます。

<div id="pre-requisites">
  ## 前提条件
</div>

* GCP プロジェクトで [サービス アカウント](https://docs.cloud.google.com/iam/docs/service-account-overview) と [IAM ロール](https://docs.cloud.google.com/iam/docs/roles-overview) を管理する権限が必要です。権限がない場合は、管理者に支援を依頼してください。[公式ドキュメント](https://docs.cloud.google.com/iam/docs/service-accounts-create)に従って、必要最小限の[権限](/ja/integrations/clickpipes/bigquery/overview#permissions)を付与した専用のサービス アカウントを作成することを推奨します。

* 初期ロードでは、ステージング用にユーザーが用意した Google Cloud Storage (GCS) バケットが必要です。[公式ドキュメント](https://docs.cloud.google.com/storage/docs/creating-buckets)に従って、ClickPipe 専用のバケットを作成することを推奨します。将来的には、この中間バケットは ClickPipes が提供および管理する予定です。

<Steps>
  <Step>
    ## データソースを選択する

    **1.** ClickHouse Cloud で、メインナビゲーションメニューから **Data sources** を選択し、**Create ClickPipe** をクリックします。

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-fbfa8bee/2Zeerd64Tl5ZAQUa/images/integrations/data-ingestion/clickpipes/cp_step0.png?fit=max&auto=format&n=2Zeerd64Tl5ZAQUa&q=85&s=3a59ce71568eecec94d17e9947e9d2ea" alt="インポートを選択" size="lg" border width="2606" height="790" data-path="images/integrations/data-ingestion/clickpipes/cp_step0.png" />

    **2.** **BigQuery** タイルをクリックします。

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-fbfa8bee/2Zeerd64Tl5ZAQUa/images/integrations/data-ingestion/clickpipes/bigquery/cp_step1.png?fit=max&auto=format&n=2Zeerd64Tl5ZAQUa&q=85&s=26a146fbc2fa0f74325dec0a36d42820" alt="BigQuery タイルを選択" size="lg" border width="2680" height="1070" data-path="images/integrations/data-ingestion/clickpipes/bigquery/cp_step1.png" />
  </Step>

  <Step>
    ## ClickPipe 接続を設定する

    新しい ClickPipe を設定するには、BigQuery データウェアハウスへの接続方法と認証情報に加え、ステージング用の GCS バケットを指定する必要があります。

    **1.** ClickPipes 用に作成したサービスアカウントの `.json` 秘密鍵をアップロードします。サービスアカウントに、必要最小限の [permissions](/ja/integrations/clickpipes/bigquery/overview#permissions) が付与されていることを確認してください。

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-fbfa8bee/2Zeerd64Tl5ZAQUa/images/integrations/data-ingestion/clickpipes/bigquery/cp_step2.png?fit=max&auto=format&n=2Zeerd64Tl5ZAQUa&q=85&s=033187eacbc1eba8ee770b064018b444" alt="サービスアカウントの秘密鍵をアップロード" size="lg" border width="2684" height="926" data-path="images/integrations/data-ingestion/clickpipes/bigquery/cp_step2.png" />

    **2.** **Replication method** を選択します。プライベートプレビューでは、サポートされているオプションは [**Initial load only**](/ja/integrations/clickpipes/bigquery/overview#initial-load) のみです。

    **3.** 初期ロード中のデータをステージングするための GCS バケットのパスを指定します。

    **4.** **Next** をクリックして検証します。
  </Step>

  <Step>
    ## ClickPipe を設定する

    BigQuery データセットのサイズや、同期するテーブルの合計サイズによっては、ClickPipe のデフォルトのインジェスト設定を調整する必要がある場合があります。
  </Step>

  <Step>
    ## テーブルを設定する

    **1.** BigQuery テーブルのレプリケーション先となる ClickHouse データベースを選択します。既存のデータベースを選択することも、新しく作成することもできます。

    **2.** レプリケートするテーブルと、必要に応じてカラムを選択します。一覧には、指定したサービスアカウントがアクセスできるデータセットのみが表示されます。

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-fbfa8bee/2Zeerd64Tl5ZAQUa/images/integrations/data-ingestion/clickpipes/bigquery/cp_step3.png?fit=max&auto=format&n=2Zeerd64Tl5ZAQUa&q=85&s=8964b93cf86f416c21c691b2c0cf63cc" alt="権限" size="lg" border width="2682" height="1430" data-path="images/integrations/data-ingestion/clickpipes/bigquery/cp_step3.png" />

    **3.** 選択した各テーブルについて、**Advanced settings** > **Use a custom sorting key** で必ずカスタムソートキーを定義してください。将来的には、ソートキーはアップストリームのデータベースにある既存のクラスタリングキーまたはパーティション化キーに基づいて自動的に推定されるようになります。

    <Warning>
      ClickHouse でクエリ性能を最適化するには、レプリケートテーブルに [ソートキー](/ja/concepts/best-practices/choosing-a-primary-key) を必ず定義する必要があります。そうしない場合、ソートキー は `tuple()` に設定されます。これはプライマリインデックスが作成されないことを意味し、ClickHouse はそのテーブルに対するすべてのクエリでフルテーブルスキャンを実行します。
    </Warning>

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-fbfa8bee/2Zeerd64Tl5ZAQUa/images/integrations/data-ingestion/clickpipes/bigquery/cp_step4.png?fit=max&auto=format&n=2Zeerd64Tl5ZAQUa&q=85&s=928c6c01908510e7184476c0970874e7" alt="権限" size="lg" border width="2676" height="854" data-path="images/integrations/data-ingestion/clickpipes/bigquery/cp_step4.png" />
  </Step>

  <Step>
    ## 権限を設定する

    最後に、ClickPipes の内部ユーザーに対する権限を設定できます。

    **Permissions:** ClickPipes は、宛先テーブルにデータを書き込むための専用ユーザーを作成します。この内部ユーザーには、カスタムロールまたは事前定義されたロールのいずれかを割り当てられます。

    * `Full access`: クラスターへのフルアクセス。宛先テーブルで materialized view または Dictionary を使用する場合に必要です。
    * `Only destination`: 宛先テーブルへの INSERT 権限のみ。
  </Step>

  <Step>
    ## 設定を完了する

    **Create ClickPipe** をクリックして設定を完了します。概要ページにリダイレクトされ、そこで初期ロードの進行状況を確認したり、BigQuery ClickPipes の詳細をクリックして表示したりできます。

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-fbfa8bee/2Zeerd64Tl5ZAQUa/images/integrations/data-ingestion/clickpipes/bigquery/cp_step5.png?fit=max&auto=format&n=2Zeerd64Tl5ZAQUa&q=85&s=5c56567a099d97916d14203d356e9c6c" alt="権限" size="lg" border width="2682" height="918" data-path="images/integrations/data-ingestion/clickpipes/bigquery/cp_step5.png" />
  </Step>
</Steps>
