检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
DLI分区内表导入的文件不包含分区列的数据,导致数据导入完成后查询表数据失败怎么办? 问题现象 DLI分区内表导入了CSV文件数据,导入的文件数据没有包含对应分区列的字段数据。分区表查询时需要指定分区字段,导致查询不到表数据。 问题根因 DLI分区内表在导入数据时,如果文件数据没
')包围起来。 partition_specs 分区信息,key=value形式,key为分区字段,value为分区值。若分区字段为多个字段,可以不包含所有的字段,会显示匹配上的所有分区信息。 注意事项 所要查看分区的表必须存在且是分区表,否则会出错。 示例 查看student表下面的所有的分区。
删除分区 功能描述 本节操作介绍删除分区表的一个或多个分区。 分区表分为两种,OBS表和DLI表。在删除分区时,DLI表和OBS表都支持利用指定条件删除分区表的一个或多个分区。OBS表还支持按指定筛选条件删除分区。 注意事项 所要删除分区的表必须是已经存在的表,否则会出错。 所要
分区相关 添加分区(只支持OBS表) 重命名分区(只支持OBS表) 删除分区 指定筛选条件删除分区(只支持OBS表) 修改表分区位置(只支持OBS表) 更新表分区信息(只支持OBS表) REFRESH TABLE刷新表元数据 父主题: 表相关
YYY执行查询时,其查询条件中未使用其表分区列。 查询分区表时,查询条件中每个分区表必须包含至少一个分区列才允许执行,否则不允许执行。 解决方案 建议用户参考如下例子查询分区表: 其中partitionedTable为分区表,partitionedColumn为分区列,查询语句为: SELECT * FROM partitionedTable
什么是DLI分区表的列赋权? 用户无法对分区表的分区列进行权限操作。 当用户对分区表的任意一列非分区列有权限,则默认对分区列有权限。 当查看用户在分区表上的权限的时候,不会显示对分区列有权限。 父主题: DLI权限管理类
添加分区(只支持OBS表) 功能描述 创建OBS分区表成功后,OBS表实际还没有生成分区信息。生成分区信息主要有以下两种场景: 给OBS分区表插入对应的分区数据,数据插入成功后OBS表才会生成分区元数据信息,后续则可以根据对应分区列进行查询等操作。 手工拷贝分区目录和数据到OBS
手动在OBS表的分区目录下添加了数据,但是无法查询到数据怎么办? 问题现象 手动在OBS表的分区目录下上传了分区数据,但是在SQL编辑器中查询该表新增的分区数据时却查询不到。 解决方案 手动添加分区数据后,需要刷新OBS表的元数据信息。具体操作如下: MSCK REPAIR TABLE
overwrite覆盖分区表数据的时候,覆盖了全量数据? 当您使用insert overwrite语句覆盖分区表的数据时,如果发现它覆盖了全量数据而不是预期的分区数据,这可能是因为动态分区覆盖功能没有被启用。 如果需要动态覆盖DataSource表指定的分区数据,您需要先配置参数
table_name”命令查看新增的分区。 分区目录名称必须按照指定的格式输入,即“tablepath/partition_column_name=partition_column_value”。 示例 下述两语句都将更新表ptable在元数据库中的分区信息。 1 MSCK REPAIR
怎样将OBS表映射为DLI的分区表? 场景概述 用户使用Flink SQL作业时,需要创建OBS分区表,用于后续进行批处理。 操作步骤 该示例将car_info数据,以day字段为分区字段,parquet为编码格式,转储数据到OBS。更多内容请参考《数据湖探索Flink SQL语法参考》。
修改表分区位置(只支持OBS表) 功能描述 修改表分区的位置。 语法格式 1 2 3 ALTER TABLE table_name PARTITION partition_specs SET LOCATION obs_path; 关键字 PARTITION:分区。 LOCATION:分区路径。
student partition (facultyNo = 30, classNo = 102) values (3010213, "student13"), (3010214, "student14"); 查看分区。 利用查看指定表所有分区中的内容,可以查看相关的分区内容。 示例代码如下:
join关联维表的最新分区 功能描述 对于随时间变化的分区表,我们可以将其读取为无界流,如果每个分区包含某个版本的完整数据,则该分区可以被视为时间表的一个版本,时间表的版本保留了分区的数据。Flink支持在处理时间关联中自动跟踪时间表的最新分区(版本)。 最新分区(版本)由 'streaming-source
Hudi表分区设计规范 规则 分区键不可以被更新: Hudi具有主键唯一性机制,但在分区表的场景下通常只能保证分区内主键唯一,因此如果分区键的值发生变更后,会导致相同主键的行记录出现多条的情况。在以日期分区的场景,可采用数据的创建时间为分区字段,切记不要采用数据更新时间做分区。 当指
他分区重名,否则将出错。 若分区表是按照多个字段进行分区的,重命名分区时需要指定所有的分区字段,指定字段的顺序可任意。 “partition_specs”中的参数默认带有“( )”,例如:PARTITION (dt='2009-09-09',city='xxx')。 示例 将st
orc; 示例2:创建DLI分区表 示例说明:创建一个名为student的分区表,该分区表使用院系编号(facultyNo)和班级编号(classNo)进行分区,该student表会同时按照不同的院系编号(facultyNo)和不同的班级编号(classNo)分区。 在实际的使用过程中
]table_name; 关键字 无。 参数说明 表1 参数描述 参数 描述 db_name Database名称,由字母、数字和下划线(_)组成。不能是纯数字,且不能以下划线开头。 table_name 表名称。Database中的表名,由字母、数字和下划线(_)组成。不能是纯数字,且不能以下划线开头。匹配规则为:^(
用于CTAS命令,将源表的select查询结果或某条数据插入到新创建的DLI表中。 表2 OPTIONS参数描述 参数 是否必选 描述 默认值 multiLevelDirEnable 否 是否迭代查询子目录中的数据。当配置为true时,查询该表时会迭代读取该表路径中所有文件,包含子目录中的文件。
返回值说明 返回STRING类型的值。 返回最大的一级分区的值。 如果只是用alter table的方式新加了一个分区,但是此分区中并无任何数据,则此分区不会做为返回值。 示例代码 例如 table1 是分区表,该表对应的分区为20120801和20120802,且都有数据。则以