数据库迁移问题

(一)Spark读数据为空问题
近期数据库迁移,使用Sqoop抽数据到Hive,然后用Spark读数据。
经过测试sqoop底层是使用MapReduce程序把Oracle数据导入到Hive中的
所以我们应该使用hive的引擎去读这些表,需要在Spark代码中添加配置

hiveContext.setConf("spark.sql.hive.convertMetastoreParquet","false")

(二)Hive库没有读的权限
因为生产环境hue没有给数据库赋予权限,导致读表失败

hive> create role asmp;
hive> grant role asmp to user root;
hive> grant select on database db_test to role asmp;
hive> show roles;

(三)测试程序ok,生产程序报错
我们所有库都是通过配置文件统一管理的,因为特殊原因,把某个代码指定了asmp_test测试库,然后打包测试自然是通过执行的;后来修改配置文件为生产库,但是这个代码并没有改回,导致生产执行报错!!!(总结反思ing)

发布了118 篇原创文章 · 获赞 25 · 访问量 15万+

猜你喜欢

转载自blog.csdn.net/lhxsir/article/details/103764390