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

paimon 表函数

Experimental feature. Learn more.

为存储在 Amazon S3、Azure、HDFS 或本地的 Apache Paimon 表提供只读的类似表的接口。

语法

paimon(url [,access_key_id, secret_access_key] [,format] [,structure] [,compression])

paimonS3(url [,access_key_id, secret_access_key] [,format] [,structure] [,compression])

paimonAzure(connection_string|storage_account_url, container_name, blobpath, [,account_name], [,account_key] [,format] [,compression_method])

paimonHDFS(path_to_table, [,format] [,compression_method])

paimonLocal(path_to_table, [,format] [,compression_method])

参数

参数说明与表函数 s3azureBlobStorageHDFSfile 中参数的说明相同。 format 表示 Paimon 表中数据文件的格式。

返回值

一个具有指定结构的表,用于读取指定 Paimon 表中的数据。

定义命名集合

下面是一个示例,展示如何配置一个命名集合用于存储 URL 和凭证:

<clickhouse>
    <named_collections>
        <paimon_conf>
            <url>http://test.s3.amazonaws.com/clickhouse-bucket/</url>
            <access_key_id>test<access_key_id>
            <secret_access_key>test</secret_access_key>
            <format>auto</format>
            <structure>auto</structure>
        </paimon_conf>
    </named_collections>
</clickhouse>
SELECT * FROM paimonS3(paimon_conf, filename = 'test_table')
DESCRIBE paimonS3(paimon_conf, filename = 'test_table')

别名

表函数 paimon 现在是 paimonS3 的别名。

虚拟列

  • _path — 文件路径。类型:LowCardinality(String)
  • _file — 文件名。类型:LowCardinality(String)
  • _size — 文件大小(字节)。类型:Nullable(UInt64)。如果文件大小未知,该值为 NULL
  • _time — 文件的最后修改时间。类型:Nullable(DateTime)。如果时间未知,该值为 NULL
  • _etag — 文件的 etag。类型:LowCardinality(String)。如果 etag 未知,该值为 NULL

支持的数据类型

Paimon 数据类型ClickHouse 数据类型
BOOLEANInt8
TINYINTInt8
SMALLINTInt16
INTEGERInt32
BIGINTInt64
FLOATFloat32
DOUBLEFloat64
STRING, VARCHAR, BYTES, VARBINARYString
DATEDate
TIME(p), TIMETime('UTC')
TIMESTAMP(p) WITH LOCAL TIME ZONEDateTime64
TIMESTAMP(p)DateTime64('UTC')
CHARFixedString(1)
BINARY(n)FixedString(n)
DECIMAL(P,S)Decimal(P,S)
ARRAYArray
MAPMap

支持的分区

Paimon 分区键支持如下数据类型:

  • CHAR
  • VARCHAR
  • BOOLEAN
  • DECIMAL
  • TINYINT
  • SMALLINT
  • INTEGER
  • DATE
  • TIME
  • TIMESTAMP
  • TIMESTAMP WITH LOCAL TIME ZONE
  • BIGINT
  • FLOAT
  • DOUBLE

另请参阅