メインコンテンツへスキップ
clickhouse-client を使用すると、ローカルファイルを ClickHouse サービスにストリーミングして取り込めます。これにより、ClickHouse の強力で便利なさまざまな関数を使って、 データを前処理できるようになります。では、例を見てみましょう…
  1. たとえば、comments.tsv という名前の TSV ファイルがあり、Hacker News のコメントがいくつか含まれていて、ヘッダー行にはカラム名が入っているとします。データを挿入する際は、入力フォーマット を指定する必要があります。この例では TabSeparatedWithNames です:
  1. Hacker News データ用のテーブルを作成しましょう。
  1. author カラムを小文字にしたいので、これは lower 関数 を使えば簡単に行えます。また、comment 文字列をトークンに分割し、その結果を tokens カラムに格納したいので、これには extractAll 関数 を使用できます。これらはすべて 1 つの clickhouse-client コマンドで実行できます。comments.tsv ファイルを < 演算子で clickhouse-client に渡している点に注目してください:
ここでは、input 関数が便利です。hackernews テーブルにデータを挿入する際に、同時に変換を行えるためです。input の引数には、受信する生データのフォーマットを指定します。これは、受信データのスキーマを指定する他の多くのテーブル関数でも見られるものです。
  1. 以上です。データは ClickHouse に取り込まれました:
結果は次のとおりです。
  1. もう 1 つの方法は、cat のようなツールを使ってファイルの内容を clickhouse-client に渡すことです。たとえば、次のコマンドは < 演算子を使った場合と同じ結果になります。
ローカル環境のオペレーティングシステムに clickhouse-client をインストールする方法について詳しくは、clickhouse-client のドキュメントページを参照してください。
最終更新日 2026年6月10日