ClickHouse Cloud クイックスタート
ClickHouse を最も手早く簡単に使い始める方法は、ClickHouse Cloud で新しいサービスを作成することです。
このクイックスタートガイドでは、3 つの簡単なステップでセットアップする手順を説明します。
ClickHouseサービスを作成する
ClickHouse Cloudで無料のClickHouseサービスを作成するには、以下の手順に従ってサインアップしてください:
- サインアップページでアカウントを作成してください
- メールアドレスでサインアップするか、Google SSO、Microsoft SSO、AWS Marketplace、Google Cloud、Microsoft Azure のいずれかを利用してサインアップできます
- メールアドレスとパスワードでサインアップした場合は、届いたメール内のリンクから24時間以内にメールアドレスを確認することを忘れないでください
- 先ほど作成したユーザー名とパスワードでログインしてください

ログイン後、ClickHouse Cloudのオンボーディングウィザードが起動し、新しいClickHouseサービスの作成手順を案内します。サービスをデプロイするリージョンを選択し、新しいサービスに名前を付けてください。

デフォルトでは、新規組織はScaleティアに配置され、各レプリカに4 vCPUと16 GiB RAMを持つ3つのレプリカが作成されます。 Scaleティアでは、垂直オートスケーリングがデフォルトで有効になります。 組織ティアは、サービス作成後に組織の「Plans」ページで変更できます。
必要に応じて、サービスリソースをカスタマイズし、レプリカのスケール範囲となる最小サイズと最大サイズを指定できます。準備ができたら、Create serviceを選択します。

おめでとうございます!ClickHouse Cloudサービスが稼働し、オンボーディングが完了しました。データの取り込みとクエリの実行方法については、以下をご参照ください。
ClickHouseに接続する
ClickHouseへの接続方法は2つあります:
- Web ベースの SQL コンソールから接続する
- アプリケーションを接続する
SQLコンソールを使用して接続する
迅速に開始するには、ClickHouseがWebベースのSQLコンソールを提供しており、オンボーディング完了後に自動的にリダイレクトされます。

クエリタブを作成し、簡単なクエリを入力して接続が機能していることを確認します:
リストには4つのデータベースと、追加したデータベースがあればそれらも表示されます。

以上で完了です。新しいClickHouseサービスの使用を開始できます。
アプリケーションへの接続
ナビゲーションメニューから接続ボタンをクリックします。モーダルが開き、サービスの認証情報と、使用するインターフェースまたは言語クライアントでの接続手順が表示されます。

ご使用の言語クライアントが表示されない場合は、インテグレーションのリストを参照してください。
データを追加する
ClickHouseはデータを取り込むことで真価を発揮します。データを追加する方法は複数あり、そのほとんどはナビゲーションメニューからアクセス可能なData Sourcesページで利用できます。

以下の方法でデータをアップロードできます:
- S3、Postgres、Kafka、GCS などのデータソースからデータの取り込みを開始できるように、ClickPipe をセットアップする
- SQL コンソールを使用する
- ClickHouse クライアントの使用
- ファイルをアップロード - 対応形式は JSON、CSV、TSV です
- ファイルURLからデータをアップロードする
ClickPipes
ClickPipesは、多様なソースからのデータ取り込みを数クリックで実現するマネージド統合プラットフォームです。 最も要求の厳しいワークロードに対応するよう設計されたClickPipesの堅牢でスケーラブルなアーキテクチャは、一貫したパフォーマンスと信頼性を保証します。 ClickPipesは、長期的なストリーミングニーズや一回限りのデータロードジョブに使用できます。

SQLコンソールを使用したデータの追加
多くのデータベース管理システムと同様に、ClickHouseはテーブルを論理的にデータベースにグループ化します。ClickHouseで新しいデータベースを作成するには、CREATE DATABASEコマンドを使用します。
以下のコマンドを実行して、helloworldデータベースにmy_first_tableという名前のテーブルを作成します:
上記の例では、my_first_tableは4つのカラムを持つMergeTreeテーブルです:
user_id: 32ビット符号なし整数(UInt32)message: 他のデータベースシステムで使われるVARCHAR、BLOB、CLOBなどの型を置き換える String データ型timestamp: ある時点を表す DateTime 値metric: 32ビット浮動小数点数(Float32)
テーブルエンジンは以下を決定します:
- データの保存場所と方法
- サポート対象のクエリ
- データがレプリケーションされているかどうか
選択可能なテーブルエンジンは多数ありますが、単一ノードのClickHouseサーバー上のシンプルなテーブルには、MergeTreeが最適な選択となるでしょう。
プライマリキーの簡単な紹介
先に進む前に、ClickHouseにおけるプライマリキーの動作原理を理解しておくことが重要です(プライマリキーの実装は予想外に感じられるかもしれません):
- ClickHouse のプライマリキーは、テーブル内の各行ごとに一意である必要はありません
ClickHouseテーブルの^^主キー^^は、ディスクへの書き込み時にデータがどのようにソートされるかを決定します。 8,192行または10MBごとのデータ(インデックス粒度と呼ばれます)が、^^主キー^^インデックスファイルにエントリを作成します。 この粒度の概念により、メモリに容易に収まる**^^疎インデックス^^**が作成されます。各粒度は、SELECTクエリの実行時に処理される最小単位のカラムデータのストライプを表します。
^^プライマリキー^^はPRIMARY KEYパラメータを使用して定義できます。PRIMARY KEYを指定せずにテーブルを定義した場合、キーはORDER BY句で指定されたタプルになります。PRIMARY KEYとORDER BYの両方を指定した場合、^^プライマリキー^^はソート順のサブセットである必要があります。
^^プライマリキー^^は^^ソートキー^^でもあり、(user_id, timestamp)のタプルです。したがって、各カラムファイルに格納されるデータは、user_id、次にtimestampの順でソートされます。
ClickHouseの中核概念について詳しく知るには、"コア概念"を参照してください。
テーブルへのデータの挿入
ClickHouseでは、おなじみのINSERT INTO TABLEコマンドを使用できますが、MergeTreeテーブルへの各挿入により、ストレージ内にパートが作成されることを理解しておく必要があります。
バッチごとに大量の行を挿入します。数万行から数百万行を一度に挿入してください。ClickHouseはこのような大量のデータを容易に処理できます。また、サービスへの書き込みリクエスト数を減らすことでコストを削減できます。
簡単な例でも、一度に複数行を挿入してみましょう:
動作確認を行います:
ClickHouseクライアントを使用してデータを追加する
clickhouse clientというコマンドラインツールを使用して、ClickHouse Cloudサービスに接続することもできます。左側のメニューでConnectをクリックし、詳細情報にアクセスしてください。ダイアログのドロップダウンからNativeを選択します:

-
ClickHouse をインストールします。
-
ホスト名、ユーザー名、パスワードをご自身の環境に合わせた値に置き換えて、コマンドを実行します。
スマイリーフェイスのプロンプトが表示されたら、クエリを実行できます。
- 次のクエリを実行してみましょう:
レスポンスが整形されたテーブル形式で返されることを確認してください:
FORMAT句を追加して、ClickHouse がサポートする多様な出力フォーマット のいずれかを指定します。
上記のクエリでは、出力はタブ区切りで返されます:
clickhouse clientを終了するには、exit コマンドを入力します。
ファイルのアップロード
データベースの利用開始時によくあるタスクとして、既存のファイルに保存されているデータの挿入があります。クリックストリームデータを表すサンプルデータをオンラインで提供しており、これを挿入することができます。このデータには、ユーザーID、訪問されたURL、およびイベントのタイムスタンプが含まれています。
data.csvという名前のCSVファイルに以下のテキストが含まれているとします:
- 次のコマンドでデータを
my_first_tableに挿入します。
- SQL コンソールからクエリを実行すると、新しい行がテーブルに表示されていることが確認できます:

次のステップ
- チュートリアル では、テーブルに 200 万行を挿入し、いくつかの分析クエリを実行します
- サンプルデータセット と、その挿入手順を一覧で提供しています
- Getting Started with ClickHouse の 25 分間の動画をご覧ください
- データが外部ソースから来る場合は、メッセージキュー、データベース、パイプラインなどへの接続方法をまとめた連携ガイド集を参照してください
- UI/BI 可視化ツールを使用している場合は、UI を ClickHouse に接続するためのユーザーガイド を参照してください
- プライマリキー に関するユーザーガイドには、プライマリキーについて知っておくべきことと、その定義方法がすべて記載されています