| 입력 | 출력 | 별칭 |
|---|---|---|
| ✔ | ✔ |
설명
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}