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

IDEA Windows下SPARK连接Hive

IDEA Windows下SPARK连接Hive

文章目录

  • IDEA Windows下SPARK连接Hive
    • 一、本地Windows环境配置
    • 二、IDEA项目配置
      • 1. POM配置
      • 2. 资源文件配置
      • 3. 测试验证

一、本地Windows环境配置

本地构建HADOOP客户端

  • 将大数据平台的HAODOP环境打包拿到本地环境来:
#压缩整个HADOOP的目录之后解压至windows目录下
tar -zcvf hadoop.tar.gz hadoop260/ 

  • WindowsHADOOP运行环境文件下载

下载地址:https://github.com/cdarlint/winutils;

下载对应版本的winutils至本地,之后将解压的全部文件替换至本地$HADOOP_HOME/bin目录下


将hadoop.dll 和 winutils.exe 拷贝至 C:\Windows\System32


  • 配置Windows环境变量

我的电脑–>属性–>高级系统设置–>环境变量

# 系统变量添加 HADOOP_HOME
    # 变量名:HADOOP_HOME
    # 变量值:D:\hadoop260
# 系统变量添加 HADOOP_USER_NAME
    # 变量名:HADOOP_USER_NAME
    # 变量值:root	#这里仅供参考也可以用大数据环境的其他用户,e.g. hdfs/hive;
# 系统变量 CLASS_PATH 添加
    # 变量值末尾添加:%HADOOP_HOME%\bin\winutils.exe;
# 系统变量 Path 添加	
	# 变量值添加:%HADOOP_HOME%\bin & %HADOOP_HOME%\lib

PS:以上全部完成后,重启主机


二、IDEA项目配置

1. POM配置

注意这里要和本地的 scala 版本一致,这里统一是 2.12

<!-- https://mvnrepository.com/artifact/org.apache.spark/spark-core -->
<dependency>
    <groupId>org.apache.spark</groupId>
    <artifactId>spark-core_2.12</artifactId>
    <version>2.4.5</version>
</dependency>

<!-- https://mvnrepository.com/artifact/org.apache.spark/spark-sql -->
<dependency>
    <groupId>org.apache.spark</groupId>
    <artifactId>spark-sql_2.12</artifactId>
    <version>2.4.5</version>
</dependency>

<!-- https://mvnrepository.com/artifact/org.apache.spark/spark-hive -->
<dependency>
    <groupId>org.apache.spark</groupId>
    <artifactId>spark-hive_2.12</artifactId>
    <version>2.4.5</version>
</dependency>

<!-- https://mvnrepository.com/artifact/org.apache.hive/hive-exec -->
<dependency>
    <groupId>org.apache.hive</groupId>
    <artifactId>hive-exec</artifactId>
    <version>1.1.0</version>
</dependency>

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.38</version>
</dependency>

2. 资源文件配置

resource目录下添加 HADOOP及hive的配置文件

$HADOOP_HOME/etc/hadop目录下的:

  • hdfs-site.xml
  • yarn-site.xml
  • core-site.xml

$HIVE_HOME/conf目录下的:

  • hive-site.xml

另外贴下log4j.properties的配置,有需要的可以配置下:

## 控制台输出配置
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n

# 文件输出配置
log4j.appender.A = org.apache.log4j.DailyRollingFileAppender
log4j.appender.A.File = D:/log.txt #指定日志输出路径
log4j.appender.A.Append = true
log4j.appender.A.Threshold = DEBUG
log4j.appender.A.layout = org.apache.log4j.PatternLayout #使用自定义日志格式化器
log4j.appender.A.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ]  %m%n #指定日志的输出格式
log4j.appender.A.encoding=UTF-8 #指定日志的文件编码

# 指定日志的输出级别与输出端
log4j.rootLogger=WARN,Console

3. 测试验证

  • 新建一个object
object App {
  def main(args: Array[String]): Unit = {
    //创建SparkConf
    val sparkConf = new SparkConf().setMaster("local[*]").setAppName("")
 	//创建SparkSession
    val spark = SparkSession.builder()
      .config(sparkConf)
      .config("HADOOP_USER_NAME","root")
      .enableHiveSupport()
      .getOrCreate()
    //测试连接hive
    spark.sql("show databases").show()
  }
}

在这里插入图片描述


PS:如果有写错或者写的不好的地方,欢迎各位大佬在评论区留下宝贵的意见或者建议,敬上!如果这篇博客对您有帮助,希望您可以顺手帮我点个赞!不胜感谢!


原创作者:wsjslient

作者主页:https://blog.csdn.net/wsjslient


相关文章:

  • 计算机毕业设计 奖学金评定管理系统的设计与实现 Java实战项目 附源码+文档+视频讲解
  • PHP 数组排序类型介绍
  • 网络(四)——HTTP协议
  • Knife4j:打造优雅的SpringBoot API文档
  • 【每日一题】LeetCode 2390 从字符串中移除星号(栈、字符串、模拟)
  • 架构师考试系列(1)论文专题:基于构件的软件开发方法
  • 【C++私房菜】序列式容器的迭代器失效问题
  • 数据结构和算法笔记6:KMP算法
  • 亿道丨三防平板丨手持平板丨加固平板丨助力地震救援
  • from tensorflow.keras.layers import Dense,Flatten,Input报错无法引用
  • 关于eslint在vscode中使用技巧
  • 如何进行高性能架构的设计
  • Window 添加与更新流程
  • 血缘和宽窄依赖
  • arthas 源码构建
  • hdoj 3549 Flow Problem(最大网络流)
  • RSA加密原理与RSA公钥加密系统、数字签名
  • [附源码]计算机毕业设计JAVA基于web的电子产品网络购物平台
  • Flutter组件--OverflowBox、SizedOverflowBox(子组件超出父组件裁剪)
  • C. String Equality(思维)
  • 算法日常训练11.21(808.分汤)
  • Webpack 5 超详细解读(二)
  • 新产品开发之C流程 (C-flow)
  • 果断型性格分析,果断型人格的职业发展
  • 交换综合实验以及链路聚合和VRRP
  • Unity游戏Mod/插件制作教程04 - 如何创建配置文件
  • 赋值运算符重载,取地址及const取地址操作符重载
  • 免费查题接口系统
  • ZYNQ之FPGA学习----RAM IP核使用实验
  • 政务系统信息网络安全的风险评估
  • Linux指定网卡名称
  • 25岁以后还适合花钱学编程,当程序员吗?