当前位置: 首页 > news >正文

解决SparkSQL创建出来的数据库hive中无法识别的问题

废话不多说,在我们启动Hive的metastore、hiveserver2和spark的thriftserver 服务后,使用datagrip连接spark发现连接正常。

在控制台,创建数据库后发现Hive无法识别:

我们去查看Hive的元数据库的DBS表,发现abc 这个数据库创建的地址错误,创建在了本地,没有创建在我们的HDFS路径下:

 这个原因是:

Spark未成功关联Hive Metastore,Spark对Hive表的支持依赖于Hive的元数据服务,如果Spark无法读取Hive的元数据配置,会默认使用内置的Derby数据库作为本地元数据存储,导致创建的库表只存在于Spark本地的Derby中,Hive自然无法识别。

解决方案:

1.在hive的conf中修改hive-site.xml

<property><name>hive.metastore.schema.verification</name><value>false</value>
</property>

2.将hive-site.xml 复制到 spark的conf 下 

cp /opt/installs/hive/conf/hive-site.xml /opt/installs/spark/conf

 3.修改spark下的hive-site.xml

<property><name>hive.server2.thrift.port</name><value>10001</value><description>Port number of HiveServer2 Thrift interface when hive.server2.transport.mode is 'binary'.</description></property>

4.不要忘了分发: 

xsync.sh /opt/installs/spark/conf/hive-site.xml

5.重启thrift服务:

/opt/installs/spark/sbin/stop-thriftserver.sh/opt/installs/spark/sbin/start-thriftserver.sh --hiveconf hive.server2.thrift.port=10001 --hiveconf hive.server2.thrift.bind.host=bigdata01 --master yarn --conf spark.sql.shuffle.partitions=2

使用datagrip 重新连接一下,记得刷新一下连接。

测试一下:

 至此,成功!

http://www.dtcms.com/a/307857.html

相关文章:

  • 嵌入式学习日志————TIM输出比较
  • go goroutine chan 用法
  • tensorflow目标分类:分绍(一)
  • 力扣面试150题--只出现一次的数字II
  • ctfshow-web入门-254-266-反序列化
  • 人工智能之数学基础:频率和概率之间的关系
  • react调用接口渲染数据时,这些表格里的数据是被禁选的
  • 运行图生视频/文生视频(Wan2.X等)的显卡配置总结
  • 如何在 Ubuntu 24.04 或 22.04 LTS Linux 上安装 DaVinci Resolve
  • 图论-最短路 Bellman-Ford算法
  • 8.2-使用字符串存储 UTF-8 编码文本
  • AI对话-SpringAI破局尝试
  • TensorFlow深度学习实战——DeepDream
  • 分布式锁的基本原理和基于lua脚本的实现(Redisson)
  • 异常检测:算法分类及经典模型概览
  • 3.Linux 系统文件类型与文件权限
  • 学习笔记《区块链技术与应用》第三天 网络 难度
  • 力扣 Pandas 挑战(5)---数据分组
  • RabbitMQ 消费者确认 (Ack/Nack) (With Spring Boot)
  • Linux多线程线程控制
  • 专题:2025半导体行业研究报告:从AI芯片到封测突围的生死局|附40+份报告PDF、数据汇总下载
  • virtualbox+UBuntu20.04+内存磁盘扩容
  • Java异常:java.util.NoSuchElementException
  • 【数据结构初阶】--二叉树(六)
  • 学习笔记《区块链技术与应用》第4天 比特币脚本语言
  • window中qemu使用(安装ubuntu系统)
  • 嵌入式系统常用架构
  • python中各种装饰器的作用
  • 图像处理中级篇 [2]—— 外观检查 / 伤痕模式的原理与优化设置方法
  • 【n8n教程笔记——工作流Workflow】文本课程(第二阶段)——1 理解数据结构 (Understanding the data structure)