doris中的表结构和字段类型与hive中表字段结构不一致
比如spark计算后生成的orc表头和doris中的不一致。如下为hive和spark分别生成的orc文件表头,
不管hive or spark,表头都需要和doris load语句中声明一致:
col0, col1, col2可以理解为hive中的字段占位符; 而spark生成的orc文件表头是字段名, 如果load中使用占位符,会匹配失败,导致不能成功导入数据
doris中字段不满足实际数据存储需求
比如doris中字段为varchar(100), 而实际数据长度超过100长度。
load hdfs中的orc文件时,有的orc文件为空。 一般hive或者spark导出结算结果到hdfs中时,结果会保存为多个文件, 在生成doris 导入语句时通常用星号代表全部orc文件。
此时如果由于spark或者hive某些配置,导致生成的orc文件没有数据(大小为49b),会导致doris读取不到表头,进而导入失败。
解决办法
调整spark或者hive配置,使之生成的每一个orc文件都有内容(至少得有表头)
如何查询hdfs中hive文件的字段(表头,也叫元数据):hive --orcfiledump hdfs文件路径
欢迎添加微信,互相学习↑↑↑ -_-
白老虎
programming is not only to solve problems, ways to think
grafana 级连 菜单 templating (variables) 配置
AI 机器人 抓取 微信 聊天中的 百度网盘 分享地址和密码
rocketmq 集群搭建 (2master + 2slave + 2namesrv)