Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

paimon

Experimental 功能

提供用于访问存储在 Amazon S3、Azure、HDFS 或本地的 Apache Paimon 表的只读类表接口。

语法

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

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

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 表中数据文件的格式。

对于 paimonS3,可使用可选参数 extra_credentials 传递 role_arn,以便在 ClickHouse Cloud 中实现基于角色的访问。有关配置步骤,请参见 安全访问 S3

返回值

一个具有指定结构的表,用于读取指定 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 数据类型
BOOLEAN Int8
TINYINT Int8
SMALLINT Int16
INTEGER Int32
BIGINT Int64
FLOAT Float32
DOUBLE Float64
STRING,VARCHAR,BYTES,VARBINARY String
DATE Date
TIME(p),TIME Time('UTC')
TIMESTAMP(p) WITH LOCAL TIME ZONE DateTime64
TIMESTAMP(p) DateTime64('UTC')
CHAR FixedString(1)
BINARY(n) FixedString(n)
DECIMAL(P,S) Decimal(P,S)
ARRAY Array
MAP Map

支持的分区键

Paimon 分区键支持的数据类型:

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

另见

Navigation