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上,但是在创建的时候,它会清空该文件夹下的所有数据,所以若使用此方法创建,需要设置为一个空文件夹

相关推荐
2601_960356381 小时前
数学专业“考证”新思路:为学术与职业双重赋能
大数据
zhixingheyi_tian2 小时前
Mapreduce 之 nativetask
大数据·mapreduce
远航计算机3 小时前
职业技能培训机构如何利用QClaw+Skills做豆包GEO:知识库搭建×内容创作×效果监测的完整实操手册
大数据·人工智能·自动化·aigc·火山引擎
用户3610588626123 小时前
Spark 核心之 Client 模式提交命令和特点分析
spark
IanSkunk3 小时前
视光中心承接近视防控需求,核心是先把服务流程做成标准化工程
大数据
SEO_juper4 小时前
用Google Search Console数据做内容审计:找出网站上哪些页面在“吃白饭“
大数据·人工智能·外贸独立站
独行侠影a6 小时前
Mojo:专为AI而生的“Python++”,能否真正挑战CUDA与C++的统治地位?
大数据·人工智能·深度学习
greenbbLV6 小时前
中小公司积分商城选型:SaaS与私有化方案对比解析
大数据·前端·小程序
半兽先生6 小时前
大模型技术开发与应用——5.大模型Agent开发(CrewAI)
大数据·人工智能·python·机器学习·ai
空杆推不起7 小时前
穿透 Flink CDC 表层用法:数据库日志捕获机制、Flink Source 运行时、端到端一致性底层原理详解
大数据·数据库·flink