| 入力 | 出力 | 別名 |
|---|---|---|
| ✔ | ✔ |
説明
Npy フォーマットは、.npy ファイル内の NumPy 配列を ClickHouse に読み込むために設計されています。
NumPy のファイルフォーマットは、数値データの配列を効率的に格納するためのバイナリフォーマットです。
インポート時には、ClickHouse は最上位の次元を、単一のカラムを持つ行の配列として扱います。
以下の表は、サポートされている Npy のデータ型と、それに対応する ClickHouse の型を示しています。
データ型の対応
Npy データ型 (INSERT) |
ClickHouse のデータ型 | Npy データ型 (SELECT) |
|---|---|---|
i1 |
Int8 | i1 |
i2 |
Int16 | i2 |
i4 |
Int32 | i4 |
i8 |
Int64 | i8 |
u1, b1 |
UInt8 | u1 |
u2 |
UInt16 | u2 |
u4 |
UInt32 | u4 |
u8 |
UInt64 | u8 |
f2, f4 |
Float32 | f4 |
f8 |
Float64 | f8 |
S, U |
String | S |
| FixedString | S |
使用例
Pythonで配列を .npy 形式で保存する
import numpy as np
arr = np.array([[[1],[2],[3]],[[4],[5],[6]]])
np.save('example_array.npy', arr)ClickHouseでNumPyファイルを読み込む
SELECT *
FROM file('example_array.npy', Npy)┌─array─────────┐
│ [[1],[2],[3]] │
│ [[4],[5],[6]] │
└───────────────┘データの取得
clickhouse-client を使用すると、次のコマンドで ClickHouse テーブルからデータを取得し、Npy フォーマットのファイルに保存できます。
$ clickhouse-client --query="SELECT {column} FROM {some_table} FORMAT Npy" > {filename.npy}