IDEA Windows下SPARK连接Hive

news2024/11/16 1:20:43

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


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/23132.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

特征选择技术总结

在本文中&#xff0c;我们将回顾特性选择技术并回答为什么它很重要以及如何使用python实现它。 本文还可以帮助你解答以下的面试问题: 什么是特征选择?说出特性选择的一些好处你知道哪些特征选择技巧?区分单变量、双变量和多变量分析。我们能用PCA来进行特征选择吗?前向特征…

如何打造一支专业的QA团队,至少要关注这5点

目录 第一、专职的QA人员 第二、关注QA的能力素质 第三、适度的量化指标 第四、增加QA工作的透明度 第五、 充分利用好评审这把“利剑” QA是Quality Assurance的缩写&#xff0c;直接翻译过来就是“质量保证”的意思。 QA也称为质量工程师&#xff0c;基本上每个产品型或…

指纹浏览器——为跨境电商打造的跨境卫士

“跨境卫士”这个词当然是保障跨境人账号安全的意思&#xff0c;为跨境电商打造的跨境卫士&#xff0c;说白了就是专门为跨境电商商家解决各种痛点的软件工具&#xff0c;那一说到这类软件工具&#xff0c;很多人脑海中第一时间想到的是什么&#xff1f;相信都会出现“指纹浏览…

zabbix日志监控:操作系统、业务系统、文件大小、多行日志

zabbix日志监控&#xff1a;操作系统、业务系统、文件大小、多行日志 目录1 监控操作系统日志2 监控业务系统日志具体要求&#xff1a;分析&#xff1a;操作&#xff1a;3 监控日志文件大小&#xff08;1&#xff09;在被管主机当中安装agent&#xff08;2&#xff09;在以下za…

第五天(渐变)

文章目录笔记第五章 ⻚⾯布局5.1弹性盒⼦练习题目&#xff08;使用实现学校官网的首页面&#xff09;效果截图项目反思&#xff1a;笔记 其他效果 渐变<!DOCTYPE html> <html><head><meta charset"utf-8"><title></title><s…

「JVS低代码开发平台」设备维保到期自动提醒配置介绍

配置需求 构建一个 对设备管理的界面&#xff0c;在新增设备时&#xff0c;能录入设备到期的时间&#xff0c;发起维保后&#xff0c;能修改下次设备到期的时间&#xff0c;维保的状态系统自动根据当前时间和维保到期时间&#xff0c;自动调整。 整体配置思路 1、配置设备管理…

leecode#x平方根#爬楼梯

题目描述&#xff1a; 给你一个非负整数 x &#xff0c;计算并返回 x 的 算术平方根 。 由于返回类型是整数&#xff0c;结果只保留 整数部分 &#xff0c;小数部分将被 舍去 。 注意&#xff1a;不允许使用任何内置指数函数和算符&#xff0c;例如 pow(x, 0.5) 或者 x ** 0…

stm32cubemx hal学习记录:FreeRTOS信号量

一、基本配置 1、配置RCC、USART1、时钟84MHz 2、配置SYS&#xff0c;将Timebase Source修改为除滴答定时器外的其他定时器。 3、初始化LED的两个引脚、两个按键引脚 4、开启FreeRTOS&#xff0c;v1与v2版本不同&#xff0c;一般选用v1即可 5、创建二值信号量Binary Semap…

IPv6通信实验

♥️作者&#xff1a;小刘在C站 ♥️每天分享云计算网络运维课堂笔记&#xff0c;一起努力&#xff0c;共赴美好人生&#xff01; ♥️夕阳下&#xff0c;是最美的&#xff0c;绽放。 目录 实验命令指南 1&#xff09;配置ip地址 在r2上&#xff1a; 在r3上&#xff1a;…

TDengine

目录1、在linux上安装服务端2、在本地安装客户端3、通过Idea连接服务端4、控制台基本使用5、流式计算1、在linux上安装服务端 1、首先下载服务端&#xff0c;我下载的是&#xff1a; TDengine-server-2.6.0.30-Linux-x64.tar.gz 下载地址 2、下载过后传到虚拟机。并解压 3、运…

当有一天TCP/IP没有了TCP

前几天我在给NetDAM可靠传输想更好的算法&#xff0c;发现我自己也傻x了&#xff0c;最根本的原因是要抛弃滑动窗口呀&#xff0c;解耦保序才是关键. 本来想明年愚人节写如果有一天TCP/IP没了IP&#xff0c;那么只能TCP over RDMA了...但是也不排除为了兼容以太网只能TCP over…

C语言中,可变参数函数调用的过程?!

以下是一位同学&#xff0c;发送给我的问题。 如下图&#xff0c;是学生在学习完指针章节后&#xff0c;写的测试代码。 他的疑问是&#xff1a;pa为什么指向a[3]的地址啊&#xff1f; 查看程序的输出后&#xff0c;知道他想问的是&#xff1a;为什么第二个printf语句输出的分…

嵌入式开发:从C语言成功过渡的3个技巧

当谈到嵌入式系统编程语言时&#xff0c;毫无疑问&#xff0c;C是主导语言。在过去的几十年里&#xff0c;有无数次尝试改变&#xff0c;但当尘埃落定时&#xff0c;C编程语言似乎永远是屹立不倒的语言。近年来&#xff0c;关于用其他语言取代C语言的争论再次出现。无论潜在的篡…

A-Level经济例题解析及练习Analysis of trade

今日知识点&#xff1a;Analysis of trade 例题Without trade, PD $3000, Q 400; in world markets, PW $1500 Under free trade, how many TVs will the country import or export? Identify consumer surplus, producer surplus, and total surplus without trade, and w…

Golang标准库限流器rate使用

限流就是限制系统的输入和输出流量来达到保护系统的目的&#xff0c;限流在实际场景中应用十分广泛&#xff0c;尤其在高并发场景下&#xff0c;为了保证系统的可以用性&#xff0c;我们需要采取一些限流措施降级&#xff0c;一旦达到限制的阈值&#xff0c;就需要限制流量并采…

Vue-admin-template新增TagViews标签页功能,附完整代码

前言 vue-admin-template里面本身是没有TagViews标签页的&#xff0c;只有完整版的vue-element-admin才有&#xff0c;翻找网上的其他教程&#xff0c;要么代码不完整&#xff0c;要么有bug&#xff0c;本篇文章就教大家如何在vue-admin-template的基础上新增TagViews 步骤 …

分布式应用kafka + EFLFK集群部署

前言 Kafka是由Apache软件基金会开发的一个开源流处理平台&#xff0c;由Scala和Java编写。Kafka是一种高吞吐量的分布式发布订阅消息系统&#xff0c;它可以处理消费者在网站中的所有动作流数据。 这种动作&#xff08;网页浏览&#xff0c;搜索和其他用户的行动&#xff09;…

骨传导耳机优缺点有哪些?骨传导耳机科普与推荐

骨传导耳机是一种可以开放耳朵的耳机&#xff0c;所以对于耳朵比较敏感的人来说&#xff0c;这种耳机是比较友好的&#xff0c;同时因为它的佩戴方式&#xff0c;在运动圈内也很受欢迎。只不过骨传导耳机是一种新兴的耳机&#xff0c;所以很多人并不太了解它的优缺点。 我作为…

书店销售管理系统----数据库原理及应用综合实验

枯木逢春犹再发&#xff0c;人无两度再少年&#x1f342; 系统主要模块如下&#xff1a; &#xff08;1&#xff09; 书店销售管理系统设计与实现—图书入库管理及查询统计 图书入库管理&#xff1a;维护入库图书信息&#xff08;如图书编号、书名、作者、价格、图书分类、出版…

vue-element-admin后台前端解决方案(基于 vue 和 element-ui)

vue-element-admin后台前端解决方案参考文档下载安装目录结构参考文档 vue-element-admin官网&#xff0c;更多详细内容可以查看社区学习文档。 下载安装 可以把 vue-element-admin当做工具箱或者集成方案仓库&#xff0c;在 vue-admin-template 的基础上进行二次开发&#…