跳到主要内容
跳到主要内容

Npy

InputOutputAlias

描述

Npy 格式用于将 .npy 文件中的 NumPy 数组加载到 ClickHouse 中。 NumPy 文件格式是一种用于高效存储数值数据数组的二进制格式。 在导入过程中,ClickHouse 将最外层维度视为由单列表组成的行数组。

下表列出了受支持的 Npy 数据类型及其在 ClickHouse 中对应的类型:

数据类型对应关系

Npy 数据类型(INSERTClickHouse 数据类型Npy 数据类型(SELECT
i1Int8i1
i2Int16i2
i4Int32i4
i8Int64i8
u1, b1UInt8u1
u2UInt16u2
u4UInt32u4
u8UInt64u8
f2, f4Float32f4
f8Float64f8
S, UStringS
FixedStringS

示例用法

使用 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}

格式设置