单机版 Hadoop Hive

hadoop-3.2.1

hive-3.1.2

jdk1.8.0_211

一、Hadoop部署

1.JDK

下载并解压jdk1.8.0_211 到/usr/local/jdk1.8.0_211

配置/etc/profile  添加 export JAVA_HOME=/usr/local/jdk1.8.0_211

                                  export PATH=$PATH:$JAVA_HOME/bin

source /etc/profile 配置文件生效

java -version验证是否成功

2.Hadoop

下载hadoop-3.2.1 http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-3.2.1/hadoop-3.2.1.tar.gz

上传到/home/data/hadoop

解压tar -zxvf hadoop-3.2.1.tar.gz

vi /etc/profile 添加export HADOOP_HOME=/home/data/hadoop/hadoop-3.2.1

                            export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

source /etc/profile 配置文件生效

hadoop version验证

配置

cd /home/data/hadoop/hadoop-3.2.1/etc/hadoop

vi core-site.xml添加

<property>
    <name>fs.defaultFS</name>
    <value>hdfs://192.168.2.111:9000</value>  <!-- 这里填的是你自己的ip,端口默认是9000,但需要查看是否有冲突-->
</property>
<property>
    <name>hadoop.tmp.dir</name>
    <value>/home/data/hadoop/hadoop-3.2.1/tmp</value><!-- 这里填的是你自定义的hadoop工作的目录,端口默认-->
</property>

<property>
    <name>hadoop.native.lib</name>
    <value>false</value>
</property>

vi hadoop-env.sh

修改 export JAVA_HOME=/usr/local/jdk1.8.0_211

vi hdfs-site.xml添加

<property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>

    <property>
        <name>dfs.secondary.http.address</name>
        <value>192.168.2.111:50090</value> <!--这里是你自己的ip,端口默认-->
    </property>

vi mapred-site.xml添加

<property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
</property>

vi yarn-site.xml  添加

<property>
    <name>yarn.resourcemanager.hostname</name>
    <value>192.168.2.111</value><!-- 自己的ip端口默认 -->
</property>
<!-- reducer获取数据的方式 -->
<property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
</property>

切换到sbin目录下

格式化hadoop文件格式,执行命令  hadoop namenode -format

然后启动  ./start-all.sh 

验证jps 查看是否有NodeManager ResourceManager  SecondaryNameNode DataNode NameNode

参考 https://blog.csdn.net/lu1171901273/article/details/86518494

启动时候报错 

ERROR: Attempting to operate on hdfs namenode as root

ERROR: but there is no HDFS_NAMENODE_USER defined. Aborting operation.....

参考https://blog.csdn.net/oschina_41140683/article/details/93976752,增加配置,然后成功

二、Hive部署

1.常见空数据库,用于存放hive的元数据 create database hive;

2.下载Hive https://mirrors.cnnic.cn/apache/hive/hive-3.1.2/apache-hive-3.1.2-bin.tar.gz

上传到/home/data/hive

解压 tar -zxvf apache-hive-3.1.2-bin.tar.gz

下载数据库驱动包mysql-connector-java-8.0.16.jar,放到 /home/data/hive/apache-hive-3.1.2-bin/lib

修改配置文件:vi conf/hive-site.xml

<property>
        <name>hive.metastore.local</name>
        <value>true</value>
    </property>
    <property>
        <name>javax.jdo.option.ConnectionURL</name>
        <value>jdbc:mysql://192.168.1.111:3306/hive?useSSL=false</value>
    </property>
    <property>
        <name>javax.jdo.option.ConnectionDriverName</name>
        <value>com.mysql.cj.jdbc.Driver</value>
    </property>
    <property>
        <name>javax.jdo.option.ConnectionUserName</name>
        <value>mysql用户名</value>
    </property>
    <property>
        <name>javax.jdo.option.ConnectionPassword</name>
        <value>mysql密码</value>
    </property>

数据库初始化 schematool -dbType mysql -initSchema

验证 hive

参考https://blog.csdn.net/weixin_37548740/article/details/88973400

遇到的问题 java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument(ZLjava/lang/String;Ljava/lang/Object;)

原因:guava版本冲突,找到hadoop下的guava-27.0-jre.jar替换hive/lib下的guava包,注意,hive下原有的包要删除

参考https://www.cnblogs.com/zxgCoding/p/13071488.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值