大数据从hadoop

一:hadoop的搭建:

  1. 输入vim /etc/sudoers在第100行之后加入hadoop的信息:

2.修改ens33的ip,配置静态ip,修改映射:

Nmcli查看一下:

3.使用 vim /etc/hostname配置主机名:

4.使用vim /etc/hosts,用来建立三个用户的映射,保存退出:

5.使用xshell连接一下:

6.修改一下防火墙的配置:

创建目录:

查看防火墙状态:

7.在目录/opt/modules内上传jdk,并且sudo vim /etc/profile更改JAVA_HOME的路径:

解压到指定目录:

8. 使用source  /etc/profile使配置的环境变量生效,使用java  -version查看jdk的版本:

使用vim /etc/profile:

9. 克隆虚拟机ddm1并且连接:

克隆:

连接:

Ddm2:

Ddm3:

10.进行免密登录配置,实现ddm1,ddm2,ddm3之间的免密登录:

查看是否可以进行免密连接:

Ddm2,ddm3上同理:

Ddm3:

免密登录成功运行

11.上传hadoop并且解压到/opt/modules,然后在进行/etc/profile的配置:

11.将hadoop-env.sh mapred-env.sh yarn-env.sh 加入JAVA_HOME变量,并且对hadoop的文件进行修改

$sudo vim slaves:

12:将ddm1上的hadoop文件夹拷贝到另外ddm2、ddm3上,进行一些目录的复制。

13:进行格式化并且启动集群,查看每一个主机的进程,当节点ddm1为5,ddm2,ddm3为3时为成功:

查看进程数:

进程数正确!

14:

访问https:ddm1:8088

目前处于不健康的状态:

修改各节点(ddm1,ddm2,ddm3)配置目录下的yarn-site.xml文件:

重新启动节点,并且查看:

到此,hadoop架构完成。

(2)数据平台计算:能用平台编写 MapReduce 程序,并分析该程序的数据处理、Map 阶段、Reduce 阶段、迭代处理、结果输出阶段;

1.首先:启动集群:

  1. Map阶段:

  1. reduce阶段:

4.迭代处理:

修改配置文件并且生效:

编译打包WordCount程序

上传到hadoop集群:

使用JAVA进行编译:

5.结果查看:

(3)配置 Zookeeper 集群:安装、配置 Zookeeper 集群,在 ZooKeeper 中创建一个名为“学号”的普通节点,并将节点内容设置为"考生姓名",最后并查看验证;

1.上传解压并且配置生效zookeeper:

  

2.复制到其它节点:

创建目录并且配置zoo.cfg:

  1. zookeeper在各个节点下的配置:

创建Myid:

查看myid内容:

查看节点数目是否正确:

在 ZooKeeper 中创建一个名为“学号”的普通节点,并将节点内容设置为"考生姓名",最后并查看验证;

数据库配置:安装、配置 HBase 数据库,模拟一个业务场景,根据业务场景添加数据源,并进行数据库的增、删、改、查的操作:

  1. Hbase数据库的安装和配置:

上传:

解压:

配置文件:

查看要修改的文件在哪个目录:

修改文件:

把habse目录发送过去:

这个时候在启动集群就发现启动成功:

出现以上错误并且集群启动不正常:

我们把将 hbase-env.sh 的 PermSize 和 MaxPermSize 的限制注释掉。

Ddm2上面;

再次启动集群,错误消失:

启动并且查看进程:

启动成功,集群数目正确!

可是此时无法访问网页:http://ddm1:60010

因为hbase-site.xml里面的文件的端口号是60010:

修改文件core-site.xml里面的端口号:

把它修改为60010:

成功在网页上面打开:

  1. 创建表:

1学生表并添加数据到表中【增】

查看

删除ROW为s004的全部数据【删+查】

 修改ROW为s001的年龄,由200到20

.上传HIVE包到/opt/software目录并解压

  tar -zxvf apache-hive-1.2.1-bin.tar.gz -C /opt/modules/

2.修改路径

   mv /opt/modules/apache-hive-1.2.1-bin/  /opt/modules/hive

3.将Hbase目录SCP到其它节点dn1,dn2

  sudo scp -r /opt/modules/hbase-1.1.5/   ddm2:/opt/modules/

  sudo scp -r /opt/modules/hbase-1.1.5/   ddm3:/opt/modules/

4.将hIVE下的bin目录加入到/etc/profile中

Sudo vim /etc/profile

  export  HIVE_HOME=/opt/modules/hive/

PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$JRE_HOME/bin:$ZOOKEEPER_HOME/bin:$ZOOKEEPER_HOME/conf:$HIVE_HOME/bin

5.查看hive -version

用sudo rz命令上传架包:

6.配置HIVE

  cd /opt/modules/hive/conf/

  cp hive-default.xml.template hive-site.xml

        <!-- 插入一下代码 -->

    <property>

        <name>javax.jdo.option.ConnectionUserName</name>

        <value>root</value>

    </property>

    <property>

        <name>javax.jdo.option.ConnectionPassword</name>

        <value>123456</value>

    </property>

   <property>

        <name>javax.jdo.option.ConnectionURL</name>mysql

        <value>jdbc:mysql://ddm1:3306/ddm?createDatabaseIfNotExist=true</value>

    </property>

    <property>

        <name>javax.jdo.option.ConnectionDriverName</name>mysql

        <value>com.mysql.jdbc.Driver</value>

    </property>

        <!-- 到此结束代码 -->

这里是把之前的内容都删除然后添加的:

注意要加<configuration>

现在在查看一下版本:

Hive成功了!

等会创建表试试看

7.故障解晰

  1)如果出现提示权限不够,用sudo chown -R hadoop:hadoop  /opt/modules

  2)如果HIVE在启动时报Establishing SSL connection without server's identity verification is not 等信息,只需要将配置文件里

  <value>jdbc:mysql://NN1:3306/mysql?createDatabaseIfNotExist=true&amp;useUnicode=true&amp;characterEncoding=UTF-8&amp;useSSL=false</value>

  HIVE创建内部数据表命令

  create table t_order(

  id int,produce_id string,number int,amount double)

  row format delimited

  fields terminated by ','

  ;

 HIVE创建外部数据表命令

 create  external table t_order(

  id int,produce_id string,number int,amount double)

  row format delimited

  fields terminated by ','

  location '/user/t2'

  ;

内部表和外部表的区别:

内部表数据由Hive自身管理,外部表数据由HDFS管理;

内部表数据存储的位置是hive.metastore.warehouse.dir(默认:/user/hive/warehouse),外部表数据的存储位置由自己制定;

删除内部表会直接删除元数据(metadata)及存储数据;删除外部表仅仅会删除元数据,HDFS上的文件并不会被删除;

对内部表的修改会将修改直接同步给元数据,而对外部表的表结构和分区进行修改,则需要修复(MSCK REPAIR TABLE table_name;)

  内部表/user/hive/warehouse

  外部表/AAAA/DATA

 create table t(

  id int,produce_id string,number int,amount double)

  row format delimited

  fields terminated by ','

  ;

hive连接成功通过以下几个表来存储信息

可以通过DBS 、TBLS、COLUMNS_V2、SDS这几张表来查看元数据信息

  DBS 存放的数据库的元数据信息

  TBLS存放的tables表信息

  COLUMNS表存放的是列字段信息3

  SDS表存放的HDFS里的位置信息

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值