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

はじめに

このセクションのデプロイメント例は、ClickHouse の Support and Services チームが ClickHouse ユーザーに提供しているアドバイスに基づいています。これらは実際に動作する例であり、 まず試してから、ご自身のニーズに合わせて調整することを推奨します。ここで紹介している例の中に、 要件にぴったり合致するものが見つかるかもしれません。

example repo には、さまざまなトポロジに対応した「レシピ」を多数用意しており、 このセクションの例がニーズに完全には合わない場合は、それらも確認することをお勧めします。

用語

レプリカ

データのコピーを指します。ClickHouse では常に少なくとも 1 つはデータのコピーが存在するため、レプリカ の最小数は 1 です。これは重要なポイントであり、元のデータ自体をレプリカとして数えることに慣れていないかもしれませんが、ClickHouse のコードおよびドキュメントではこの用語が使われています。データの 2 つ目のレプリカを追加することでフォールトトレランスが実現されます。

シャード

データの部分集合を指します。ClickHouse では常に少なくとも 1 つはデータのシャードが存在するため、データを複数のサーバーに分割しない場合、データは 1 つのシャードに保存されます。データを複数のサーバーにシャーディングすることで、単一サーバーの処理能力を超えた場合に負荷を分散できます。宛先サーバーは シャーディングキー によって決定され、分散テーブルを作成する際に定義されます。シャーディングキーはランダムにすることも、ハッシュ関数 の出力にすることもできます。シャーディングを使用するデプロイメント例では、シャーディングキーとして rand() を使用し、別のシャーディングキーをいつどのように選択すべきかについての詳細情報も提供します。

分散コーディネーション

ClickHouse Keeper は、データレプリケーションおよび分散 DDL クエリ実行のためのコーディネーションシステムを提供します。ClickHouse Keeper は Apache ZooKeeper と互換性があります。