clickhouse-static-files-disk-uploader
指定した ClickHouse テーブルのメタデータを含むデータディレクトリを出力します。このメタデータを使用して、web ディスクをバックエンドとする読み取り専用データセットに基づいた ClickHouse テーブルを別のサーバー上に作成できます。
このツールをデータ移行に使用しないでください。代わりに、BACKUP および RESTORE コマンドを使用してください。
使い方
コマンド
| Command | Description |
|---|---|
-h, --help | ヘルプ情報を表示します |
--metadata-path [path] | 指定されたテーブルのメタデータが格納されているパス |
--test-mode | test モードを有効にし、テーブルメタデータを指定された URL に対して PUT リクエストとして送信します |
--link | 出力ディレクトリにファイルをコピーする代わりにシンボリックリンクを作成します |
--url [url] | test モード用の Web サーバーの URL |
--output-dir [dir] | テストモード以外でファイルを出力するディレクトリ |
指定したテーブルのメタデータパスを取得する
clickhouse-static-files-disk-uploader を使用する場合、対象とするテーブルのメタデータパスを取得する必要があります。
- 対象のテーブルとデータベースを指定して、次のクエリを実行します。
- これで、指定したテーブルのデータディレクトリへのパスが返されます。
出力テーブルのメタデータディレクトリをローカルファイルシステム上に書き出す
ターゲット出力ディレクトリ output と指定したメタデータパスを使用して、次のコマンドを実行します。
成功すると、次のメッセージが表示され、output ディレクトリに指定したテーブルのメタデータが含まれているはずです。
テーブルメタデータディレクトリを外部の URL に出力する
この手順は、--test-mode フラグを追加する点を除き、データディレクトリをローカルファイルシステムに出力する場合と同様です。出力ディレクトリを指定する代わりに、--url フラグを使用してターゲット URL を指定する必要があります。
test モードが有効な場合、テーブルメタデータディレクトリは PUT リクエストで指定された URL にアップロードされます。
テーブルメタデータディレクトリを使用して ClickHouse テーブルを作成する
テーブルメタデータディレクトリを取得したら、それを使用して別のサーバー上に ClickHouse テーブルを作成できます。
デモを含むこの GitHub リポジトリを参照してください。例では、web ディスクを使用してテーブルを作成し、別のサーバー上のデータセットにテーブルをアタッチしています。