hadoop零基础入门,hadoop快速入门菜鸟教程

首页 > 生活 > 作者:YD1662024-06-01 20:06:44

hadoop零基础入门,hadoop快速入门菜鸟教程(1)

作者:Piotr Krewski&Adam Kawa

翻译:陈之炎

校对:丁楠雅

本文约6000字,建议阅读10分钟。

本文为你介绍hadoop的核心概念,描述其体系架构,指导您如何开始使用Hadoop以及在Hadoop上编写和执行各种应用程序。

作者:GETINDATA公司创始人兼大数据顾问彼得亚·雷克鲁斯基(Piotr Krewski)和GETINDATA公司首席执行官兼创始人亚当·卡瓦(Adam Kawa)

目录

内容简介

Hadoop是目前最流行的大数据软件框架之一,它能利用简单的高级程序对大型数据集进行分布式存储和处理。本文将介绍Hadoop的核心概念,描述其体系架构,指导您如何开始使用Hadoop以及在Hadoop上编写和执行各种应用程序。

Hadoop是阿帕奇(Apache)软件基金会发布的一个开源项目,它可以安装在服务器集群上,通过服务器之间的通信和协同工作来存储和处理大型数据集。因为能够高效地处理大数据,Hadoop近几年获得了巨大的成功。它使得公司可以将所有数据存储在一个系统中,并对这些数据进行分析,而这种规模的大数据分析用传统解决方案是无法实现或实现起来代价巨大的。

以Hadoop为基础开发的大量工具提供了各种各样的功能,Hadoop还出色地集成了许多辅助系统和实用程序,使得工作更简单高效。这些组件共同构成了Hadoop生态系统。

Hadoop可以被视为一个大数据操作系统,它能在所有大型数据集上运行不同类型的工作负载,包括脱机批处理、机器学习乃至实时流处理。

您可以访问hadoop.apache.org网站获取有关该项目的更多信息和详细文档。

您可以从hadoop.apache.org获取代码(推荐使用该方法)来安装Hadoop,或者选择Hadoop商业发行版。最常用的三个商业版有Cloudera(CDH)、Hortonworks(HDP)和MapR。这些商业版都基于Hadoop的框架基础,将一些组件进行了打包和增强,以实现较好的集成和兼容。此外,这些商业版还提供了管理和监控平台的(开源或专有的)工具。

设计理念

Hadoop在解决大型数据集的处理和存储问题上,根据以下核心特性构建:

Hadoop组件

Hadoop有两个核心组件:

许多执行框架运行在YARN之上,每个框架都针对特定的用例进行调优。下文将在“YARN应用程序”中重点讨论。

我们来看看它们的架构,了解一下它们是如何合作的。

HDFS

HDFS是Hadoop分布式文件系统。

它可以在许多服务器上运行,根据需要,HDFS可以轻松扩展到数千个节点和乃至PB(Petabytes 10的15次方字节)量级的数据。

HDFS设置容量越大,某些磁盘、服务器或网络交换机出故障的概率就越大。

HDFS通过在多个服务器上复制数据来修复这些故障。

HDFS会自动检测给定组件是否发生故障,并采取一种对用户透明的方式进行必要的恢复操作。

HDFS是为存储数百兆字节或千兆字节的大型文件而设计的,它提供高吞吐量的流式数据访问,一次写入多次读取。因此对于大型文件而言,HDFS工作起来是非常有魅力的。但是,如果您需要存储大量具有随机读写访问权限的小文件,那么RDBMS和Apache HBASE等其他系统可能更好些。

注:HDFS不允许修改文件的内容。只支持在文件末尾追加数据。不过,Hadoop将HDFS设计成其许多可插拔的存储选件之一。例如:专用文件系统MapR-Fs的文件就是完全可读写的。其他HDFS替代品包括Amazon S3、Google Cloud Storage和IBM GPFS等。

HDFS架构

HDFS由在选定集群节点上安装和运行的下列进程组成:

hadoop零基础入门,hadoop快速入门菜鸟教程(2)

图1说明了在一个4节点的集群上安装HDFS。一个节点的主机节点为NameNode进程而其他三节点为DataNode进程

注:NameNode和DataNode是在Linux操作系统 (如RedHat、CentOS、Ubuntu等)之上运行的Java进程。它们使用本地磁盘存储HDFS数据。

HDFS将每个文件分成一系列较小但仍然较大的块(默认的块大小等于128 MB--更大的块意味着更少的磁盘查找操作,从而导致更大的吞吐量)。每个块被冗余地存储在三个DataNode上,以实现容错(每个文件的副本数量是可配置的)。

hadoop零基础入门,hadoop快速入门菜鸟教程(3)

图2演示了将文件分割成块的概念。文件X被分割成B1和B2块,Y文件只包含一个块B3。在集群上将所有块做两个备份。

与HDFS交互

HDFS提供了一个简单的类似POSIX的接口来处理数据。使用HDFS DFS命令执行文件系统操作。

要开始使用Hadoop,您不必经历设置整个集群的过程。Hadoop可以在一台机器上以

所谓的伪分布式模式运行。您可以下载sandbox虚拟机,它自带所有HDFS组件,使您可以随时开始使用Hadoop!只需按照以下链接之一的步骤:

HDFS用户可以按照以下步骤执行典型操作:

注意,相对路径总是引用执行命令的用户的主目录。HDFS上没有“当前”目录的概念(换句话说,没有“CD”命令):

注:删除的文件和目录被移动到trash中 (HDFS上主目录中的.trash),并保留一天才被永久删除。只需将它们从.Trash复制或移动到原始位置即可恢复它们。

您可以在没有任何参数的情况下键入HDFS DFS以获得可用命令的完整列表。

如果您更喜欢使用图形界面与HDFS交互,您可以查看免费的开源HUE (Hadoop用户体验)。它包含一个方便的“文件浏览器”组件,允许您浏览HDFS文件和目录并执行基本操作。

hadoop零基础入门,hadoop快速入门菜鸟教程(4)

首页 123下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.