本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。
本文为您介绍数据湖构建中Format数据表的基本操作。
表类型介绍
对比维度 | 内部表 | 外部表 |
数据管理 | 数据由DLF完全管理,包括元数据和实际数据文件。 | 元数据由DLF管理,但实际数据文件存储在外部存储系统(如OSS)中,数据生命周期不受DLF控制。 |
存储系统 | 数据存储路径由DLF基于UUID自动生成,用户无需手动指定存储路径。 | 用户需手动指定外部存储路径,例如OSS的某个目录(如 |
删除行为 | 删除表时,默认保留数据1天以降低误删风险,超过1天后数据会被彻底删除。 | 删除表时,仅清理元数据,外部存储系统中的实际数据文件保持不变,不会被删除。 |
新建数据表
登录数据湖构建控制台。
在Catalog列表页面,单击Catalog名称,进入Catalog详情页。
在数据库列表中,单击数据库名称,进入表列表页。
在表列表中,单击新建数据表。
配置以下信息,单击确定。
配置项
说明
表格式
选择 Format 表。
表数据库名称
必填,数据库下不可重名。
数据表描述
可选,输入描述信息。
列
定义表中的列信息,包括列名称、是否为主键、是否非空、是否为分区字段、数据类型、长度/类型、描述及操作。
表自定义属性
file.format
:指定文件格式。目前支持Parquet、ORC、CSV和JSON格式。内部表:可添加自定义属性,在表创建过程中会覆盖DLF元数据服务对应的默认参数,适用的配置项详见Paimon官方文档。
外部表:外部表需定义以下属性。
path
:指定外部表路径。
SQL示例
内部表
内部表是由DLF管理的Paimon表,DLF会自动生成基于UUID的存储路径,并在后台自动进行表优化与维护,您只需专注于业务逻辑即可。
Flink SQL
CREATE TABLE my_csv_table ( a INT, b STRING ) WITH ( 'type'='format-table', 'file.format'='csv' );
Spark SQL
CREATE TABLE my_csv_table ( a INT, b STRING ) USING CSV
外部表
外部表仅支持格式表,并需要指定外部存储路径。外部表是指数据生命周期和文件布局由其他方式管理的表,而非由DLF管理,因此表的生命周期和分区信息不会被DLF控制。目前,格式表支持Parquet、ORC、CSV和JSON格式,并支持分区功能,同时能够映射Hive表的格式。
Flink SQL
CREATE TABLE my_csv_table ( a INT, b STRING ) WITH ( 'type'='format-table', 'path' = 'oss://${bucket}/my_tables/my_csv_table' 'file.format'='csv' );
Flink OSS权限适配,请参见配置Bucket鉴权信息。
Spark SQL
CREATE TABLE my_csv_table ( a INT, b STRING ) USING CSV OPTIONS ( 'path'='oss://${bucket}/my_tables/my_csv_table' )
查看数据表
在数据库列表中,单击数据库名称,可查看表列表。
在表列表中,单击表名称,可查看表字段。
单击表详情页签,可查看数据表基本信息、字段列表及分区定义。
单击权限页签,可为用户或角色授予数据表相关权限。详情请参见数据授权管理。
删除数据表
表被删除后,系统默认将表内数据保留1天,以降低误删除风险。超过1天后,数据将被彻底删除。
在数据库列表中,单击数据库名称,可查看表列表。
在表列表中,单击操作列的删除。
在弹出的提示框中,单击确定,完成数据表删除。