【DLI运维宝典】用户使用datesource语法创建了OBS表,向OBS桶内导入数据后,执行查询操作查不到数据
【摘要】 用户使用datesource语法创建了OBS表,然后通过CDM或者其他手段向对应OBS路径下导入数据后,执行查询操作查不到数据,如何定位?
故障场景
用户使用datesource语法创建了OBS表,然后通过CDM或者其他手段向对应OBS路径下导入数据后,执行查询操作查不到数据。
问题定位
首先确认用户所创建的表是否为分区表;
若为分区表,则对应的表路径下的OBS目录需要满足格式要求:{{partition_key}}={{partition_value}}, 分区列=分区值,如下;然后执行恢复分区操作:https://support.huaweicloud.com/sqlreference-dli/dli_08_0079.html
若不为分区表,则确认数据源文件是否在建表语句schema中指定的OBS路径下;如果在路径的子目录下,需要修改建表语句的路径,或者在建表语句中添加 multiLevelDirEnable = true的option,用以开启迭代子目录功能;
如果上述排查仍未解决,则可能与用户源数据有关;
数据源文件的数据列是否与建表语句schema的字段名&类型匹配;
如果是CSV表,则用户建表所设定的分隔符是什么?数据源字段中是否包含该分隔符造成文件解析混乱;
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)