大数据第二次作业-201806120017李佳杭
Hadoop演进与Hadoop生态
1.了解对比Hadoop不同版本的特性,可以用图表的形式呈现。
现在市场上主流的Hadoop除了Apache hadoop外,还有DKhadoop发行版、cloudera发行版、hortonworks发行版、MAPR发行版和华为hadoop发行版。
DKhadoop发行版:部分开源,集成了整个HADOOP生态系统的全部组件,因此DKH在计算性能上相比开源的大数据平台有了飞跃式的提升。DKhadoop将复杂的大数据集群配置简化至三种节点(主节点、管理节点、计算节点)的方法,大幅简化了集群的管理运维,增强了集群的三高特性(高可用性、高可维护性、高稳定性)。
cloudera发行版:完全开源,比Apache hadoop更有安全性,兼容性和稳定性。Cloudera Manager是集群的软件分发及管理监控平台,可以在短时间内部署好一个hadoop集群,并对集群的节点及服务进行实时监控。
hortonworks发行版:完全开源,作为hortonworks的主要产品,HDP包括稳定版本的Apache Hadoop的所有关键组件;相比于其他版本,HDP安装方便,同时页包括了现代化的,直观的用户界面的安装和配置工具。
MAPR发行版:mapR有免费和商业两个版本,免费版本的功能比付费版要少。mapR版本相比于其他版本,不再需要单独的namenode机器,它将元数据分散在集群中,不再需要用NAS来协助namenode做元数据备份。
华为hadoop发行版:基于华为自研的Hadoop HA平台,构建了NameNode、JobTracker、HiveServer的HA功能。当进程故障时,系统能自动Failover。
2.Hadoop生态的组成、每个组件的作用、组件之间的相互关系,以图例加文字描述呈现。
Hadoop生态圈中包含很多组件,比如HDFS、Mapreduce、Hive、Hbase等等,众多组件相互作用,形成了完整的Hadoop生态。
HDFS(Hadoop distribute file system)——Hadoop生态系统的基础组件Hadoop分布式文件系统。
HBase—— 一个构建在HDFS之上的面向列的NoSql数据库,HBase用于对打量数据进行快速读取/写入。
MapReduce——MapReduce是Hadoop的主要执行框架,它是一个用于分布式并行数据处理的编程模型,将作业分为mapping阶段和reduce阶段。
Zookeeper——Zookeeper是Hadoop的分布式协调服务。Zookeeper被设计成可以在机器集群上运行,是一个具有高度可用性的服务,用于Hadoop操作的管理,而且很多Hadoop组件都依赖它。
Oozie—— Oozie是一个北极测很难过到Hadoop软件栈中的可扩展的Workflow系统。用于协调多个MapReduce作业的执行。
Pig——Pig是对MapReduce编程复杂性的抽象,Pig平台包含用于分析Hadoop数据集的执行环境和脚本语言(Pig Latin)。
Hive——类似于SQL的高级语言,用于执行对存储在Hadoop中数据的查询。
Sqoop是一个连通性工具,用于在关系型数据库和数据仓库Hadoop之间移动数据。
Fulme是一个分布式的、具有可靠性和高可用性的服务,用于从单独的机器上将大量数据高效的收集、聚合并移动到HDFS中。
3.官网学习Hadoop的安装与使用,用文档的方式列出步骤与注意事项。
→Projects
→Projects List
-
安装步骤:首先需要Linux作为安装平台。
第一步,下载HadoopJavaVersions所描述的java版本;
第二步,安装软件,在Ubuntu Linux上:
$ sudo apt-get install ssh
$ sudo apt-get install pdsh
第三步,下载需要安装的Hadoop发行版本,最好在官网下载稳定版本,
第四步,准备启动Hadoop集群:
解压缩下载的Hadoop发行版。在发行版中,编辑文件etc / hadoop / hadoop-env.sh以定义一些参数,如下所示:
#设置为Java安装的根目录
export JAVA_HOME = / usr / java / latest
尝试以下命令:
$ bin / hadoop
这将显示hadoop脚本的用法文档。
现在,您可以以三种支持的模式之一启动Hadoop集群:
本地独立模式
伪分布式模式
全分布式模式
第五步,独立运行:
默认情况下,Hadoop被配置为在非分布式模式下作为单个Java进程运行。这对于调试很有用。
下面的示例复制解压缩的conf目录以用作输入,然后查找并显示给定正则表达式的每个匹配项。输出被写入给定的输出目录。
$ mkdir input
$ cp etc/hadoop/*.xml input
$ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.2.1.jar grep input output 'dfs[a-z.]+'
$ cat output/*
第六步,伪分式操作
组态:使用以下内容:
etc/hadoop/core-site.xml:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
etc/hadoop/hdfs-site.xml:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
设置无密码SSH:
现在检查您是否可以在不使用密码的情况下SSH到本地主机:
$ ssh localhost
如果没有密码就无法SSH到本地主机,请执行以下命令:
$ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 0600 ~/.ssh/authorized_keys
第七步,全分布式运行。
4.评估华为hadoop发行版本的特点与可用性。
https://support.huawei.com/enterprise/zh/cloud-computing/fusioninsight-hd-pid-21110924/
https://support.huawei.com/hedex/hdx.do?docid=EDOC1100094387&lang=zh&idPath=22658044%7C7919788%7C9856606%7C21110924
华为hadoop发行版:
安全
- 架构安全
- 认证安全
- 文件系统层加密
可靠
- 所有管理节点组件均实现HA(High Availability)
- 集群异地灾备
- 数据备份恢复
易用
- 统一运维管理
- 易集成
- 易开发