BigData之Hadoop:Hadoop的简介、深入理解、下载、案例应用之详细攻略(二)

1、Hadoop的三大特性——可靠、高效、可伸缩


       Hadoop是一个能够对大量数据进行分布式处理的软件框架。 Hadoop 以一种可靠、高效、可伸缩的方式进行数据处理 。


Hadoop 是可靠的,因为它假设计算元素和存储会失败,因此它维护多个工作数据副本,确保能够针对失败的节点重新分布处理。

Hadoop 是高效的,因为它以并行的方式工作,通过并行处理加快处理速度。

Hadoop 是可伸缩的,能够处理 PB 级数据。


2、Hadoop的五大优点——高可靠性、高扩展性、高效性、高容错性、低成本


       Hadoop是一个能够让用户轻松架构和使用的分布式计算平台。用户可以轻松地在Hadoop上开发和运行处理海量数据的应用程序。它主要有以下几个优点:


1.高可靠性。Hadoop按位存储和处理数据的能力值得人们信赖。

2.高扩展性。Hadoop是在可用的计算机集簇间分配数据并完成计算任务的,这些集簇可以方便地扩展到数以千计的节点中。

3.高效性。Hadoop能够在节点之间动态地移动数据,并保证各个节点的动态平衡,因此处理速度非常快 。

4.高容错性。Hadoop能够自动保存数据的多个副本,并且能够自动将失败的任务重新分配。

5.低成本。Hadoop 依赖于社区服务,因此它的成本比较低,任何人都可以使用 。与一体机、商用数据仓库以及QlikView、Yonghong Z-Suite等数据集市相比,hadoop是开源的,项目的软件成本因此会大大降低 。

       Hadoop带有用Java语言编写的框架,因此运行在 Linux 生产平台上是非常理想的。Hadoop 上的应用程序也可以使用其他语言编写,比如 C++。



3、Hadoop大数据处理的意义——得益于数据提取、变形和加载的天然优势


        Hadoop得以在大数据处理应用中广泛应用得益于其自身在数据提取、变形和加载(ETL)方面上的天然优势。Hadoop的分布式架构,将大数据处理引擎尽可能的靠近存储,对例如像ETL这样的批处理操作相对合适,因为类似这样操作的批处理结果可以直接走向存储。Hadoop的MapReduce功能实现了将单个任务打碎,并将碎片任务(Map)发送到多个节点上,之后再以单个数据集的形式加载(Reduce)到数据仓库里。




Hadoop的下载


官网地址:https://hadoop.apache.org/releases.html


       为了方便起见,Hadoop作为源代码tarball发布,并带有相应的二进制tarball。下载通过镜像站点分发,应该使用GPG或SHA-512检查是否有篡改。


Version Release date Source download Binary download Release notes

3.3.0 2020 Jul 14 source (checksum signature) binary (checksum signature)

binary-aarch64 (checksum signature) Announcement

2.10.0 2019 Oct 29 source (checksum signature) binary (checksum signature) Announcement

3.1.3 2019 Oct 21 source (checksum signature) binary (checksum signature) Announcement

3.2.1 2019 Sep 22 source (checksum signature) binary (checksum signature) Announcement

2.9.2 2018 Nov 19 source (checksum signature) binary (checksum signature) Announcement

To verify Hadoop releases using GPG:


Download the release hadoop-X.Y.Z-src.tar.gz from a mirror site.

Download the signature file hadoop-X.Y.Z-src.tar.gz.asc from Apache.

Download the Hadoop KEYS file.

gpg –import KEYS

gpg –verify hadoop-X.Y.Z-src.tar.gz.asc

To perform a quick check using SHA-512:


Download the release hadoop-X.Y.Z-src.tar.gz from a mirror site.

Download the checksum hadoop-X.Y.Z-src.tar.gz.sha512 or hadoop-X.Y.Z-src.tar.gz.mds from Apache.

shasum -a 512 hadoop-X.Y.Z-src.tar.gz



Hadoop的案例应用


1、Hadoop:设置单节点集群


源自:https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/SingleCluster.html


Installing Software

If your cluster doesn’t have the requisite software you will need to install it.

For example on Ubuntu Linux:

 $ sudo apt-get install ssh

 $ sudo apt-get install pdsh

Download

To get a Hadoop distribution, download a recent stable release from one of the Apache Download Mirrors.

Prepare to Start the Hadoop Cluster

Unpack the downloaded Hadoop distribution. In the distribution, edit the file etc/hadoop/hadoop-env.sh to define some parameters as follows:

 # set to the root of your Java installation

 export JAVA_HOME=/usr/java/latest

Try the following command:

 $ bin/hadoop

This will display the usage documentation for the hadoop script.

Now you are ready to start your Hadoop cluster in one of the three supported modes:

Local (Standalone) Mode

Pseudo-Distributed Mode

Fully-Distributed Mode

Standalone Operation

By default, Hadoop is configured to run in a non-distributed mode, as a single Java process. This is useful for debugging.

The following example copies the unpacked conf directory to use as input and then finds and displays every match of the given regular expression. Output is written to the given output directory.

 $ 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/*

Pseudo-Distributed Operation

Hadoop can also be run on a single-node in a pseudo-distributed mode where each Hadoop daemon runs in a separate Java process.

Configuration

Use the following:

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>


 


上一篇:Tensorflow小技巧(一)


下一篇:ExtJS学习