本文へスキップ

毎日 TablePro をお使いですか?ライセンスで有料機能が使え、次のリリースを支えられます。 ライセンスを購入ライセンスで TablePro を支援

Mac 用 ClickHouse クライアント

ClickHouse の HTTP インターフェイスで分析 SQL を実行し、クエリのプラン、パイプラインや推定行数を確認できます。テーブルの Parts タブでは MergeTree のパーツとパーティションを管理します。長いクエリは実行中に読み取った行数を報告し、Stop はサーバー上で停止します。

Mac で使用可能Mac アプリにドライバー同梱

ClickHouse の MergeTree テーブルの Parts タブ。パーティションとパーツが、それぞれの行数とともに表示されています。

概要

クエリ言語
SQL
ドライバー
Mac アプリに同梱
接続方法
ホストとポート, SSH トンネル, SSL/TLS
既定のポート
8123
iPhone と iPad
開けない

接続

ホスト、HTTP ポート、ユーザーと、必要ならデータベースを指定します。データベースはその場で切り替え、既存タブは開いたときのデータベースに留まります。View > Sidebar as Tree でサーバーのデータベースを展開できるツリーとして表示します。

SSL モードを選ぶと HTTPS に切り替わります。443 または ClickHouse Cloud の 8443 ポートは Verify Identity を有効にし、CA ファイルまたはシステムの信頼ストアで証明書を検証します。Verify CA は CA ファイルが必要です。クライアント証明書と鍵で相互 TLS が必要なサーバーに接続できます。

TLS なしではネットワーク上に平文 HTTP を送る代わりに、SSH トンネル 経由でリモートサーバーに接続してください。

クエリと編集

各クエリは固有の ID を持ち、進捗を要求するため、長いクエリも読み取った行数を随時報告します。Stop はその ID の KILL QUERY を送り、接続のクエリタイムアウトもサーバーに伝わります。

Explain メニュー は Plan、Pipeline、AST、Syntax、Estimate を提供します。字下げされた出力を図やツリーにし、Estimate ではクエリが読む予定の行、マークとパーツを示します。

グリッドの編集は Preview SQL を確認後、INSERT、ALTER TABLE … UPDATE と ALTER TABLE … DELETE で送ります。ClickHouse は更新と削除をバックグラウンドミューテーションとして実行するため、保存は受付済みであり適用済みではありません。system.mutations で進捗を確認できます。マテリアライズドビューは読み取り専用です。

ClickHouse の point や ring タプルを含む結果は 地図ビュー で開けます。独自の FORMAT 句を持つクエリはサーバーの生の出力を一つのカラムに表示するため、グリッド表示には句を省いてください。

テーブル、パーツとパーティション

テーブルには Structure、Indexes、DDL、Parts タブがあります。Indexes はソートキーとデータスキップインデックスを示し、DDL はエンジンと設定を含む完全な CREATE TABLE を表示します。

Parts は system.parts のすべてのパーツを、パーティション、行数、ディスクサイズ、変更日時と active フラグとともに表示し、Optimize、Drop Partition、Detach Partition を実行できます。

Structure タブ はカラムの追加・変更・削除とデータスキップインデックスの削除に対応します。ソートキーと主キーは作成時に固定されるため、データスキップインデックスは ALTER TABLE … ADD INDEX で追加し、他の変更にはテーブルを再作成します。

監視

Server Dashboard は実行中クエリ、マージ、パーツのミューテーションとディスク使用量を表示し、他のセッションを Terminate Session とともに一覧表示します。遅いクエリは system.query_log の、直近で終了して一秒以上かかったクエリから取得します。

データの移動

インポート で CSV、TSV、JSON、JSONL、XLSXとSQL ファイルを読み込み、テーブルやクエリ結果を CSV、JSON、SQL、XLSX、Markdown、HTMLとXML にエクスポートします。一つでも無効な UTF-8 値を含むカラムはグリッドで 16 進表示します。テキストで読むには toValidUTF8(column) を SELECT してください。

iPhone と iPad

iPhone と iPad アプリには ClickHouse ドライバーがありません。Mac から同期した ClickHouse 接続は一覧に表示しますが、開けません。

制限

  • ClickHouse の HTTP インターフェースで接続します。ネイティブ TCP プロトコルは使いません。
  • TLS は初期設定ではオフです。HTTPS を使うには接続フォームで SSL モードを選んでください。
  • 外部キーとトランザクションはありません。
  • SET 文の設定は次のクエリに引き継がれません。

ClickHouse に関する質問

一つのクエリだけ設定を変更するには?

SELECT … SETTINGS max_threads = 4 など、クエリ自体に SETTINGS 句を入れます。各文はセッションのない独立した HTTP リクエストなので、別の SET は次の文まで残りません。

ポート 9000 で接続できないのはなぜですか?

9000 は ClickHouse のネイティブ TCP ポートで、TablePro は使いません。HTTP ポート、または ClickHouse Cloud の HTTPS 8443 に接続し、HTTP インターフェイスが有効か確認してください。そのポートの /ping リクエストは Ok. と返します。

TablePro を入手

Mac アプリは無料でダウンロードして使えます。Starter や Team プランは任意の機能を追加します。
Mac 版をダウンロード

macOS 13 Ventura 以降 が必要です