Spark SQL读写Hive Table部署

embedded/2025/2/5 14:17:37/

个人博客地址:Spark SQL读写Hive Table部署 | 一张假钞的真实世界

官网参考文档:Hive Tables。

本文使用的组件版本如下:

  • Spark 3.1.2
  • Hive 3.1.2

第一步:Hive部署

在所有Worker节点上部署Hive。主要是使用Hive下面的libs。

第二步:Spark CLASSPATH

在${SPARK_HOME}/conf/spark-env.sh中添加以下内容:

export SPARK_DIST_CLASSPATH=$(hadoop classpath)

第三步:编译Spark

编译的目的是支持Hive。

./dev/make-distribution.sh --tgz -Phive -Phive-thriftserver -Pyarn -Dhadoop.version=3.2.2 -Phadoop-provided

第四步:部署Spark On Yarn

部署过程比较简单。部署过程遇到的问题参见另外一篇博文:Spark on YARN部署

第五步:兼容Hive 3.1.2

  • hive-site.xml复制到spark配置目录下。
  • 在配置文件spark-defaults.conf中添加以下内容。假设Hive安装目录为:/opt/hive
spark.sql.hive.metastore.version 3.1.2
spark.sql.hive.metastore.jars path
spark.sql.hive.metastore.jars.path file:///opt/hive/lib/*.jar

注意:这些Jar包需要使用Hive 3.1.2版本的。


http://www.ppmy.cn/embedded/159774.html

相关文章

Redis --- 秒杀优化方案(阻塞队列+基于Stream流的消息队列)

下面是我们的秒杀流程: 对于正常的秒杀处理,我们需要多次查询数据库,会给数据库造成相当大的压力,这个时候我们需要加入缓存,进而缓解数据库压力。 在上面的图示中,我们可以将一条流水线的任务拆成两条流水…

Star300+ 开源项目Developer-RoadMap 计算机各领域学习路线图集大成者

一、开发者的“成长宝典”来了 你是否在编程的海洋中迷茫,不知该驶向何方?你是否渴望一份清晰的指南,引领你在开发者的道路上稳步前行?今天,就为大家带来一份堪称“成长宝典”的开源项目: https://github.com/kamran…

c++ map/multimap容器 学习笔记

1 map的基本概念 简介: map中所有的元素都是pair pair中第一个元素是key(键),第二个元素是value(值) 所有元素都会根据元素的键值自动排序。本质: map/multimap 属于关联式容器,底…

关于Internet Download Manager(IDM)强制下载合并相关二次开发

目录 前言 强制下载视频 强制合并 迁移下载列表 免责声明 附录 前言 那个下载工具IDM不说了,确实有很多便捷的功能,不过也有一些限制 常见的包括但不限于: 1.无法下载有版权保护的视频(不管真假) 2.有时候下载…

爱陪伴:免费AI聊天陪伴软件的体验感受

随着科技发展,AI 聊天软件大量涌现,给工作、生活、学习、娱乐等带来诸多便利。小编此前尝试了几款免费的 AI 情感陪伴软件,界面大多只是简单的聊天框。最近,又体验了一款名为 “爱陪伴” 的 AI 情感陪伴软件,它虽不像是…

C++ Primer 自定义数据结构

欢迎阅读我的 【CPrimer】专栏 专栏简介:本专栏主要面向C初学者,解释C的一些基本概念和基础语言特性,涉及C标准库的用法,面向对象特性,泛型特性高级用法。通过使用标准库中定义的抽象设施,使你更加适应高级…

攻防世界_Web_php_unserialize(绕过php反序列/绕过wakeup函数/代码审计)

php代码审计 Demo类的魔术函数 __construct() 函数,当类新建对象的时候会执行。例如,$x new Demo(要传给函数的值)__destruct() 函数,当对象销毁后会调用。新建对象后,先执行__construct() 函数,等所有函数执行完后…

axios如何利用promise无痛刷新token

目录 需求 需求解析 实现思路 方法一: 方法二: 两种方法对比 实现 封装axios基本骨架 instance.interceptors.response.use拦截实现 问题和优化 如何防止多次刷新token 同时发起两个或以上的请求时,其他接口如何重试 最后完整代…