BigData之Hadoop:Hadoop框架(分布式系统基础架构)的简介(两大核心【HDFS存储和MapReduce计算】)、深入理解、下载、案例应用之详细攻略

目录

Hadoop的简介(分布式系统基础架构【HDFS存储和MapReduce运算】)

1、Hadoop框架的两大核心设计【HDFS存储和MapReduce运算】

1.1、HDFS体系结构图

2、Hadoop框架的三大特性——可靠、高效、可伸缩

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

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

Hadoop的深入理解

0、深入了解Hadoop的其它相关基础知识

0.1、Hbase数据管理——Hadoop database

0.2、Hive数据管理——建立在Hadoop上的数据仓库基础架构

0.3、MongDB基于分布式文件存储数据库

Hadoop的下载

To verify Hadoop releases using GPG:

To perform a quick check using SHA-512:

Hadoop的案例应用

1、Hadoop:设置单节点集群


Hadoop框架(分布式系统基础架构)的简介(两大核心【HDFS存储MapReduce计算】)

Hadoop 是一个由Apache基金会所开发的分布式系统基础架构,是一个可靠、可扩展、分布式计算开发开源软件。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算存储
      Hadoop 软件库是一个框架,允许使用简单的编程模型跨计算机集群对大型数据集进行分布式处理。它被设计成从单个服务器扩展到数千台机器,每台都提供本地计算和存储。与依赖硬件来提供高可用性不同,库本身的设计目的是在应用程序层检测和处理故障,因此在一组计算机上提供高可用性服务,每台计算机都可能发生故障。
      Hadoop原本来自于谷歌一款名为MapReduce的编程模型包。谷歌的MapReduce框架可以把一个应用程序分解为许多并行计算指令,跨大量的计算节点运行非常巨大的数据集。使用该框架的一个典型例子就是在网络数据上运行的搜索算法。Hadoop最初只与网页索引有关,迅速发展成为分析大数据的领先平台。
      Hadoop的高吞吐,海量数据处理的能力使得人们可以方便地处理海量数据。但是,Hadoop的缺点也和它的优点同样鲜明——延迟大,响应缓慢,运维复杂。

官网
Apache Hadoop
Apache Hadoop 3.2.1

1、Hadoop框架的两大核心设计【HDFS存储MapReduce计算

Hadoop框架的最核心的设计就是HDFSMapReduce

两大核心设计 简介
HDFS

HDFS为海量的数据提供了存储

Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streaming access)文件系统中的数据。

MapReduce

MapReduce则为海量的数据提供了计算。MapReduce可以普遍应用于很多大规模数据的计算问题。MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念"Map(映射)"和"Reduce(归约)",是它们的主要思想,都是从函数式编程语言里借来的,还有从矢量编程语言里借来的特性。

两者相互作用 HDFS在集群上实现了分布式文件系统,MapReduce在集群上实现了分布式计算和任务处理。HDFSMapReduce任务处理过程中提供了文件操作和存储等支持,MapReduceHDFS的基础上实现了任务的分发、跟踪、执行等工作,并收集结果,二者相互作用,完成分布式集群的主要任务。

1.1、HDFS体系结构图

HDFS作为分布式文件系统在数据管理方面可借鉴点——文件块的放置。一个Block会有三份备份,一份在NameNode指定的DateNode上,一份放在与指定的DataNode不在同一台机器的DataNode上,一根在于指定的DataNode在同一Rack上的DataNode上。备份的目的是为了数据安全,采用这种方式是为了考虑到同一Rack失败的情况,以及不同数据拷贝带来的性能的问题。

图示:NameNode是管理者,DataNode是文件存储者,Client客户端是需要获取分布式文件系统的应用程序。

文件写入
  • (1)、 Client向NameNode发起文件写入的请求。
  • (2)、 NameNode根据文件大小和文件块配置情况,返回给Client它管理的DataNode的信息。
  • (3)、 Client将文件划分为多个block,根据DataNode的地址,按顺序将block写入DataNode块中。
文件读取
  • (1)、Client向NameNode发起读取文件的请求。
  • (2)、NameNode返回文件存储的DataNode信息。
  • (3)、Client读取文件信息。

2、Hadoop框架的三大特性——可靠、高效、可伸缩

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

  • Hadoop 是可靠的,因为它假设计算元素和存储会失败,因此它维护多个工作数据副本,确保能够针对失败的节点重新分布处理。
  • Hadoop 是高效的,因为它以并行的方式工作,通过并行处理加快处理速度。
  • Hadoop 是可伸缩的,能够处理 PB 级数据。

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

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

  • 1.高可靠性。Hadoop按位存储和处理数据的能力值得人们信赖。
  • 2.高扩展性。Hadoop是在可用的计算机集簇间分配数据并完成计算任务的,这些集簇可以方便地扩展到数以千计的节点中。
  • 3.高效性。Hadoop能够在节点之间动态地移动数据,并保证各个节点的动态平衡,因此处理速度非常快 。
  • 4.高容错性。Hadoop能够自动保存数据的多个副本,并且能够自动将失败的任务重新分配。
  • 5.低成本。Hadoop 依赖于社区服务,因此它的成本比较低,任何人都可以使用 。与一体机、商用数据仓库以及QlikView、Yonghong Z-Suite等数据集市相比,hadoop是开源的,项目的软件成本因此会大大降低 。

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

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

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

Hadoop的深入理解

0、深入了解Hadoop的其它相关基础知识

0.1、Hbase数据管理——Hadoop database

BigData之Hbase:Hbase数据管理的简介、下载、案例应用之详细攻略

0.2、Hive数据管理——建立在Hadoop上的数据仓库基础架构

BigData之Hive:Hive数据管理的简介、下载、案例应用之详细攻略

0.3、MongDB基于分布式文件存储数据库

BigData之MongoDB:MongoDB基于分布式文件存储数据库的简介、下载、案例应用之详细攻略

Hadoop的下载

官网地址:Apache Hadoop

为了方便起见,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:

  1. Download the release hadoop-X.Y.Z-src.tar.gz from a mirror site.
  2. Download the signature file hadoop-X.Y.Z-src.tar.gz.asc from Apache.
  3. Download the Hadoop KEYS file.
  4. gpg –import KEYS
  5. gpg –verify hadoop-X.Y.Z-src.tar.gz.asc

To perform a quick check using SHA-512:

  1. Download the release hadoop-X.Y.Z-src.tar.gz from a mirror site.
  2. Download the checksum hadoop-X.Y.Z-src.tar.gz.sha512 or hadoop-X.Y.Z-src.tar.gz.mds from Apache.
  3. shasum -a 512 hadoop-X.Y.Z-src.tar.gz

Hadoop的案例应用

1、Hadoop:设置单节点集群

源自:Apache Hadoop 3.3.4 – Hadoop: Setting up a Single Node Cluster.

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 installationexport 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>

BigData之Hadoop:Hadoop框架(分布式系统基础架构)的简介(两大核心【HDFS存储和MapReduce计算】)、深入理解、下载、案例应用之详细攻略相关推荐

  1. DL:深度学习(神经网络)的简介、基础知识(神经元/感知机、训练策略、预测原理)、算法分类、经典案例应用之详细攻略

    DL:深度学习(神经网络)的简介.基础知识(神经元/感知机.训练策略.预测原理).算法分类.经典案例应用之详细攻略 目录 深度学习(神经网络)的简介 1.深度学习浪潮兴起的三大因素 深度学习(神经网络 ...

  2. ML与math:机器学习与高等数学基础概念、代码实现、案例应用之详细攻略——基础篇

    ML与math:机器学习与高等数学基础概念.代码实现.案例应用之详细攻略--基础篇 目录 一.ML与高等数学 0.基础数学 1.导数.方向导数.梯度 1.1.概念简介 1.2.代码实现 2.Taylo ...

  3. BigData:大数据开发的简介、核心知识(linux基础+Java/Python编程语言+Hadoop{HDFS、HBase、Hive}+Docker)、经典场景应用之详细攻略

    BigData:大数据开发的简介.核心知识(linux基础+Java/Python编程语言+Hadoop{HDFS.HBase.Hive}+Docker).经典场景应用之详细攻略 BigData:大数 ...

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

    BigData之Hadoop:Hadoop的简介.深入理解.下载.案例应用之详细攻略 目录 Hadoop的简介 1.HDFS体系结构图 Hadoop的深入理解 0.深入了解Hadoop的其它相关基础知 ...

  5. BigData之Hbase:Hbase数据管理的简介、下载、案例应用之详细攻略

    BigData之Hbase:Hbase数据管理的简介.下载.案例应用之详细攻略 目录 Hbase数据管理的简介--基于Hadoop的非结构化.基于列的数据存储的数据库 1.HBase的架构体现及与HD ...

  6. BigData之Hive:Hive数据管理的简介、下载、案例应用之详细攻略

    BigData之Hive:Hive数据管理的简介.下载.案例应用之详细攻略 目录 Hive数据管理的简介 1.Hive的适用场景--不适合那些需要高实性的应用(不能够在大规模数据集上实现低延迟快速的查 ...

  7. BigData之Storm:Apache Storm的简介、深入理解、下载、案例应用之详细攻略

    BigData之Storm:Apache Storm的简介.深入理解.下载.案例应用之详细攻略 目录 Apache Storm的简介 Apache Storm的深入理解 1.Storm与hadoop ...

  8. DL框架之Keras:深度学习框架Keras框架的简介、安装(Python库)、相关概念、Keras模型使用、使用方法之详细攻略

    DL框架之Keras:深度学习框架Keras框架的简介.安装(Python库).相关概念.Keras模型使用.使用方法之详细攻略 目录 Keras的简介 1.Keras的特点 2.Keras四大特性 ...

  9. BigData之MongoDB:MongoDB基于分布式文件存储数据库的简介、下载、案例应用之详细攻略

    BigData之MongoDB:MongoDB基于分布式文件存储数据库的简介.下载.案例应用之详细攻略 目录 MongoDB的简介 1.MongoDB的主要功能特性 2.对MongoDB进行增删改查( ...

最新文章

  1. Java项目:在线水果商城系统(java+JSP+Spring+SpringMVC +MyBatis+html+mysql)
  2. ubuntu 16.04 python3 使用ryu
  3. 只想安安静静的做个程序员
  4. php和python性能-Node.js与PHP、Python的字符处理性能对比
  5. HDU - 6383 百度之星2018初赛B 1004 p1m2(二分答案)
  6. [Pku 2774] 字符串(六) {后缀数组的构造}
  7. SpringBoot 2.x ShardingSphere分库分表实战
  8. 怎么查看电脑有没有python_使用python获取电脑的磁盘信息方法
  9. 递归的应用之字符串反转
  10. VIM总结之一:VIM编辑器常用命令详解
  11. 数据分析5大软件大PK:Python、Excel、R、SAS、SPSS你最爱哪个?
  12. 安全狗又拿下一场重保胜战 第22届投洽会顺利谢幕
  13. 智能优化算法——篇1
  14. Win10安装CUDA报错NVIDIA安装程序失败
  15. Sequential Recommendation with Self-Attentive Multi-Adversarial Network
  16. 【七夕活动精选】致你的七夕礼物——3D Heart,跳动的 3D 爱心
  17. 后台配置税码(进项税或者销项税税码)
  18. Vue3.0中Watch的几个问题
  19. aabResGuard使用
  20. 电脑开机时网络连接一直转圈,出现红叉

热门文章

  1. Fintech将重构信贷行业的信用管理现状!
  2. 验证哥德巴赫猜想(函数专题)
  3. PASCAL VOC目标检测数据集格式转化为COCO目标检测数据集格式
  4. iPhone如何不用iTunes将视频传输到电脑上?
  5. Qt 之等待提示框(QPropertyAnimation)
  6. 用ChatGPT做嵌入式应用开发
  7. RoboCup2d学习——WorldModel
  8. 2022按键精灵内存逆向新教程:乐玩篇:1-10课更新试看
  9. 如何去除ul小圆点的html,html里面ul那个点怎么消
  10. [洛谷luogu] P1979 [NOIP2013T6]华容道