数据分析师之Hive的安装

Hadoop学习:

1.完成hadoop的部署和安装

正常启动/关闭Hadoop集群,并完成基准测试

3.理解分布式文件系统的设计思想

4.熟练操作hadoop集群


创建用户:

root下:useradd 用户名

设置密码:passwd 用户名

1.区别:

完全分布式:节点超过1(虚拟机台数超过通常是3个以上)

hadoop除了运行hive,还有zookeeper(通常要求节点数为奇数),hbase,spark,kylin

伪分布式:用一个虚拟机,安装并启动hadoop,所有服务都在这一台虚拟机上

hive的情况伪分布式和完全分布式没什么区别


一定先启动hadoop再才能启动hive

—>start-all.sh【没有空格】

【jps:查看运行了哪些java的程序】

—>cd /opt/module/apache-hive-3.1.1-bin/
—>bin/hive
退出hive:quit;
退出hadoop:stop-all.sh
虚拟机的关闭(root 用户 poweroff)

--1.创建kaikeba库
create database if not exists kaikeba;
--2.使用kaikeba库
use kaikeba;
--3.创建user_info表  【查看表的结构:desc formatted table_name】
create table if not exists user_info (
user_id  string,
user_name  string, 
sex  string,
age  int,
city  string,
firstactivetime  string,
level  int,
extra1  string,
extra2  map<string,string>)
row format delimited fields terminated by '\t'
collection items terminated by ','
map keys terminated by ':'
lines terminated by '\n'
stored as textfile;
加载数据源
load data inpath '/datas/user_info/user_info.txt' overwrite into table user_info;  【在hdfs上的数据源插到表中】


1.将软件包上传到node100(xftp)

创建连接:node100-hadoop,192.168.5.100,SFTP

将软件【apache,jdk,hadop】

拖拽到hadoop的家目录中【/home/hadoop】


一、切换到root用户

su - root

二、关闭selinux:vim /etc/selinux/config 【一种保护机制】

SELINUX=disabled

【更改完后切换为hadoop用户】

三、切换到hadoop用户,配置免密登陆。【那个用户需要免密码,就切换到那个用户下】

cd 进入hadoop用户的家目录

ssh-keygen -t rsa [输入完后连按4个回车]

ssh node100 [yes,输入hadoop用户的密码]

ssh-copy-id node100 [输入hadoop用户的密码]

验证:ssh node100  这样就不需要密码了

四、解压软件包到/opt/module

cd 【确保是在hadoop的家目录】

tar -zxvf ./jdk-8u181-linux-x64.tar.gz -C /opt/module/
tar -zxvf ./hadoop-2.7.3.tar.gz -C /opt/module/
tar -zxvf ./apache-hive-3.1.1-bin.tar.gz -C /opt/module/
进去看看  cd /opt/module/ --->ll

五、编辑环境变量:vim ~/.bash_profile 【在家目录下】

在文件末尾添加

JAVA_HOME=/opt/module/jdk1.8.0_181
HADOOP_HOME=/opt/module/hadoop-2.7.3
HIVE_HOME=/opt/module/apache-hive-3.1.1-bin
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin
export JAVA_HOME
export HADOOP_HOME
export HIVE_HOME
export PATH

六、重新加载该文件,使环境变量生效

source ~/.bash_profile

验证:

java -version

hadoop version

七、修改hadoop的配置文件:

cd /opt/module/hadoop-2.7.3/etc/hadoop
1.vim ./hadoop-env.sh
export JAVA_HOME=/opt/module/jdk1.8.0_181【将之前的注释掉】

2.vim ./mapred-env.sh
export JAVA_HOME=/opt/module/jdk1.8.0_181【有3个export】

3.vim ./yarn-env.sh
export JAVA_HOME=/opt/module/jdk1.8.0_181【在if上面一行插入】

4.vim ./core-site.xml 
【在倒数第一行和第二行中间插入  4和5 一样】  【<value>hdfs://node100:9000</value>  注意更换node100还是node101等】

        <!-- 指定HDFS中NameNode的地址 -->
        <property>
                <name>fs.defaultFS</name>
                <value>hdfs://node100:9000</value>  
        </property>
        <!-- 指定Hadoop运行时产生文件的存储目录 -->
        <property>
                <name>hadoop.tmp.dir</name>
                <value>/opt/module/hadoopdata</value>
        </property>

5.vim ./hdfs-site.xml
        <!-- 指定HDFS副本的数量 -->
        <property>
                <name>dfs.replication</name>
                <value>1</value>
        </property>
        <!-- 指定Hadoop辅助名称节点主机配置 -->
        <property>
                <name>dfs.namenode.secondary.http-address</name>
                <value>node100:50090</value>
        </property>

6.cp ./mapred-site.xml.template ./mapred-site.xml
vim ./mapred-site.xml
    <!-- 指定MR运行在yarn上 -->
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>

7.vim ./yarn-site.xml
        <!-- Reducer获取数据的方式 -->
        <property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
        </property>
        <!-- 指定YARN的ResourceManager的地址 -->
        <property>
                <name>yarn.resourcemanager.hostname</name>
                <value>node100</value>
        </property>
        <!-- 关闭虚拟内存检查 -->
        <property>
                <name>yarn.nodemanager.vmem-check-enabled</name>
                <value>false</value>
        </property>

8.vim ./slaves

node100

九、格式化hadoop集群

在node100这台机器上执行:hdfs namenode -format 【只能格式化一次】

十、启动/关闭hadoop集群

在node100这台机器上执行:start-all.sh

jps:查看运行了哪些java的程序

在node100这台机器上执行:stop-all.sh

十一、验证集群 【在浏览器里输入,前提关闭防火墙在root用户下】

systemctl stop firewalld.service
systemctl disable firewalld.service

在浏览器【谷歌】中输入:【输入之前关闭防火墙】

切换到root用户

systemctl stop firewalld.service
systemctl disable firewalld.service

192.168.5.100:50070

192.168.5.100:8088

【看是否运行成功了和jps效果一样】

验证:在hadoop的家目录

十二、Hadoop的wordcount

1.vim word.txt

hello python

hello java

hello scala

hello world

welcome to beijing

2.wordcount测试

在hadoop集群上创建一个文件夹

hadoop fs -mkdir /test 【在HDFS上创建文件夹 -p是递归创建】

hadoop fs -put ./word.txt /test 【上传文件】

hadoop jar /opt/module/hadoop-2.7.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount /test/word.txt /output

hadoop fs -cat /output/part-r-00000 【查看命令】

十三、Hive的安装

hive --version

在hdfs上创建hive数据存放目录 【hadoop用户】

【就是这个集群上面专门开辟一个空间供hive存储数据】

hadoop fs -mkdir /tmp
hadoop fs -mkdir -p /user/hive/warehouse
hadoop fs -chmod g+w /tmp  【赋予权限】
hadoop fs -chmod g+w /user/hive/warehouse

在hive的软件目录下执行初始化命令

进入hive目录:cd /opt/module/apache-hive-3.1.1-bin/

bin/schematool -dbType derby -initSchema

初始化成功后就会在hive的安装目录下生成derby.log日志文件和metastore_db元数据库

退出 : quit;

注意:离开hadoop安全模式 hadoop dfsadmin -safemode leave

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值