超简易win10下快速搭建hive和spark环境——站在巨人的肩膀上

快速在windows机器上搭建hive和spark,在微信文章搜到一个大神写的文章,还有视频讲解,很是良心,于是跟着操作了一波,但因为某些环境不太一致,比如mysql我的版本是8.0的,导致踩了一些坑,写这篇文章记录一下,终于可以愉快的玩耍了。
大神文章链接:https://mp.weixin.qq.com/s/RWAJSwkSw1mR22yD1rPszA
本人配置的链接hive-site.xml和mysql-connector-java-8.0.21的jar包(其余配置文件可以去大神的链接下载)
网盘链接:https://pan.baidu.com/s/1KPYOKpb7lV1DlJYkF_uytg
提取码:u4fp

环境与工具

环境:

  • win10家庭版;
  • Hadool2.7,Hive2.1.0,Spark2.4.5,JDK1.8.0;
  • python3.7.6,Mysql8.0.21
    工具:
  • Navicat Premium 15
  • jupyter lab

步骤

1.解压压缩包
2.将hadoop.dll放入C:\Windows\System32中
3.配置环境变量
在环境变量中添加
在这里插入图片描述
在系统变量中新增:
HADOOP_HOME = D:\set_package\bigdata\hadoop
JAVA_HOME = D:\set_package\bigdata\jdk1.8.0
HIVE_HOME = D:\set_package\bigdata\apache-hive-2.1.0-bin

在这里插入图片描述
找到系统变量-path:
配置如下环境变量
在这里插入图片描述
4.创建元数据库
我这里使用的是Navicat,新建一个hive数据库
在这里插入图片描述
表-按右键-运行sql文件,下面三个钩都取消
在这里插入图片描述
看到导入了46张表,就表示成功了
在这里插入图片描述
5.格式化hdfs:
打开cmd,输入hdfs namenode -format
出现name has been successfully formatted表示成功

在这里插入图片描述
6.测试
测试hadoop
打开cmd,输入start-dfs
弹出namenode和datanode
在这里插入图片描述
安装HDFS Explorer Installer.msi上传文件测试hadoop可以参考大神的视频

7.测试hive:
cmd输入hive

hive-site.xml,在大神的文件基础上增加了一些配置:
在这里插入图片描述
完整代码如下:
数据库密码改成你自己的
在这里插入图片描述

<configuration>
    <property>
        <name>javax.jdo.option.ConnectionURL</name>
        <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true&amp;characterEncoding=UTF-8&amp;serverTimezone=UTC</value>
    </property>

    <property>
        <name>javax.jdo.option.ConnectionUserName</name>
        <value>root</value>
    </property>

    <property>
        <name>javax.jdo.option.ConnectionPassword</name>
        <value>你的mysql密码</value>
    </property>

    <property>
        <name>javax.jdo.option.ConnectionDriverName</name>
        <value>com.mysql.cj.jdbc.Driver</value>
    </property>

    <property>
        <name>hive.metastore.warehouse.dir</name>  
        <!--hive的数据存储目录,指定的位置在hdfs上的目录-->  
        <value>file:/D:/tmp/hive/warehouse</value>
    </property>
    <property>
        <name>hive.metastore.schema.verification</name>
        <value>false</value>
    </property>
    <property>
        <name>hive.cli.print.header</name>
        <value>true</value>
    </property>
    <property>
        <name>hive.cli.print.current.db</name>
        <value>true</value>
    </property>
</configuration>

注意,我需要用管理员打开cmd,输入hive才能运行成功。。。
在这里插入图片描述
导入数据和测试Hive查询请参考大神视频

8.测试sparksql
命令行输入:spark-sql2
需要先在cmd执行以下命令,解除文件权限限制
winutils chmod 777 \tmp\hive

9.pyspark访问hive
加速pip下载:
打开此电脑(win10)在地址栏输入:%HOMEPATH%,回车,进入到用户所在目录,新建一个pip的文件夹
在这里插入图片描述
将pip.ini放入pip文件夹中
使用管理员模式打开cmd,输入pip install pyspark2.3.2,一开始向大神一样安装pip install pyspark2.4.5,运行sparksql死活不成功,然后各种百度搜到用2.3.2版本,结果就运行成功了。

将hive-site.xml放入pyspark目录下的conf文件夹中D:\ProgramData\Anaconda3\Lib\sitepackages\pyspark\conf中
将mysql-connector-java-8.0.21.jar(取决于你的mysql版本)
放入D:\ProgramData\Anaconda3\Lib\site-packages\pyspark\jars中

10.测试sparksql

增加了代码,不加好像会报错

import findspark
findspark.init()
from pyspark.sql import SparkSession
from pyspark.sql import Row
import findspark
findspark.init()

spark = SparkSession \
    .builder\
    .appName("Demo") \
    .enableHiveSupport()\
    .getOrCreate()
sc = spark.sparkContext
spark

在这里插入图片描述
读取当前目录下的文件
在这里插入图片描述

textfile = spark.read.text(".")
textfile.count()
spark.sql("show tables").show()

在这里插入图片描述

spark.sql("select * from xxm_t1").show()

在这里插入图片描述
大功告成

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值