spark链接hive时踩的坑

使用spark操作hive,使用metastore连接hive,获取hive的数据库时,当我们在spark中创建数据库的时候,创建成功。

同时hive中也可以看到这个数据库,建表插入数据也没有问题,但是当我们去查询数据库中的数据时,发现查不到数据,去查hive的元数据,发现,spark在创建数据库的时候将数据库创建在了本地文件系统中

而我们的hive数据是存放在hdfs上的,我们的spark进行查询数据时是使用hive的metastore连接的hive的数据库,也就是spark会从hdfs上读取数据,所以无论怎么查询都是查不出来数据的

当我们按照这个路径去我们本地文件系统中查找这个路径的时候,就可以看到

这个数据库,如果没有,可能是spark创建在了其他的服务器节点上 。

如何解决这个问题呢?

只需要在spark的配置文件中指定spark的数据存储位置为hdfs上即可

在spark的conf目录下找到spark-defaults.conf文件,在文件中添加

复制代码
        spark.sql.warehouse.dir hdfs的路径(hive的路径)

还有另一种方法(慎用)

在创建数据库的时候,在后面加上:localtion hdfs路径/数据库名.db

该方法虽然也可以将spark创建的数据库放入到hdfs上,但是在创建的时候,它会清空该文件夹下的所有数据,所以若使用此方法创建,需要设置为一个空文件夹

相关推荐
Sui_Network33 分钟前
WAYE.ai 为Sui 上 AI 的下一个时代赋能
大数据·前端·人工智能·物联网·游戏
BAOYUCompany33 分钟前
暴雨亮相2025中关村论坛数字金融与金融安全大会
大数据·人工智能
火龙谷2 小时前
【hadoop】疫情离线分析案例
大数据·hadoop·分布式
大师兄带你刨AI2 小时前
「AI产业」| 《2025中国低空经济商业洞察报告(商业无人机应用篇)》
大数据·人工智能
孚为智能科技3 小时前
集装箱残损识别系统如何检测残损?它的识别率能达到多少?
大数据·图像处理·人工智能·计算机视觉·视觉检测
weixin_505154464 小时前
数字孪生包含哪些技术和创新?
大数据·人工智能·物联网·数据安全·数字孪生
A达峰绮5 小时前
AI时代的行业重构:机遇、挑战与生存法则
大数据·人工智能·经验分享·ai·推荐算法
摇滚侠5 小时前
elasticSearch是什么,如何使用,有什么用
大数据·elasticsearch·搜索引擎
viperrrrrrrrrr75 小时前
大数据学习(137)-大数据组件运行时角色
大数据·hive·学习·flink·spark
Leo.yuan6 小时前
数据挖掘是什么?数据挖掘技术有哪些?
大数据·数据库·人工智能·数据挖掘·数据分析