ローカルファイルの挿入
clickhouse-client
を使用してローカルファイルをClickHouseサービスにストリームできます。これにより、ClickHouseの多くの強力で便利な関数を使用してデータを前処理することができます。例を見てみましょう...
comments.tsv
という名前のTSVファイルがあり、そこにはいくつかのHacker Newsのコメントが含まれており、ヘッダ行にはカラム名が含まれています。データを挿入する際には入力形式を指定する必要があり、私たちの場合はTabSeparatedWithNames
です:
- Hacker Newsデータ用のテーブルを作成します:
author
カラムの小文字化を行いたいと思いますが、これはlower
関数を使うことで簡単に行えます。また、comment
文字列をトークンに分割し、その結果をtokens
カラムに格納したいと思いますが、これはextractAll
関数を使用して行えます。これらすべてを1つのclickhouse-client
コマンドで行います -comments.tsv
ファイルが<
オペレーターを使用してclickhouse-client
にパイプで渡される点に注意してください:
注記
input
関数は、データをhackernews
テーブルに挿入する際に変換するために便利です。input
への引数は、受信生データの形式であり、これは多くの他のテーブル関数でも見ることができます(受信データのスキーマを指定する場所)。
- これで、データはClickHouseにアップロードされています:
結果は次のとおりです:
- 別のオプションとして、
cat
のようなツールを使用してファイルをclickhouse-client
にストリーミングすることもできます。たとえば、次のコマンドは<
オペレーターを使用した場合と同じ結果を得られます:
clickhouse-clientに関するドキュメントページを訪問して、ローカルオペレーティングシステムにclickhouse-client
をインストールする方法の詳細を確認してください。