前言
项目末尾需要将Hive的维度表导入至Hdfs,这里我第一时间就决定使用Sqoop来传输数据。但是当我运行Sqoop任务时,直接给我浇了一盆凉水,这时我去检查发现,hive内这一层数据都是采用orc格式存储的。
报错如下:

解决方法
a. 配置环境变量
- 将${HIVE_HOME}下的Hcatalog的bin添加至环境变量
#HCAT_HOME
export HCAT_HOME=/opt/software/hive110/hcatalog
export PATH=$PATH:$HCAT_HOME/bin
b. Sqoop
- sqoop语句修改如下:
- –hcatalog-database:hive数据库名;
- –hcatalog-table:hive表名;
e.g.
sqoop export \
--connect jdbc:mysql://sole:3306/ms_dm_inters \
--username root \
--password root \
--table dm_users_bak \
--fields-terminated-by ',' \
--hcatalog-database dwd_inters \
--hcatalog-table dwd_users \
-m 2
- 执行语句:

PS:如果有写错或者写的不好的地方,欢迎各位大佬在评论区留下宝贵的意见或者建议,敬上!如果这篇博客对您有帮助,希望您可以顺手帮我点个赞!不胜感谢!
| 原创作者:wsjslient |
本文介绍如何处理Hive orc格式数据,通过配置环境变量将Hcatalog的bin路径添加,以及调整Sqoop命令以适应orc表结构,解决从Hive到HDFS的数据迁移问题。
773

被折叠的 条评论
为什么被折叠?



