博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《R与Hadoop大数据分析实战》一1.5 Hadoop的特点
阅读量:5937 次
发布时间:2019-06-19

本文共 1401 字,大约阅读时间需要 4 分钟。

本节书摘来自华章出版社《R与Hadoop大数据分析实战》一书中的第1章,第1.5节,作者 (印)Vignesh Prajapati,更多章节内容可以访问云栖社区“华章计算机”公众号查看

1.5 Hadoop的特点

Hadoop是围绕两个核心概念专门设计的:HDFS和MapReduce。这两者都与分布式计算相关。MapReduce被认为是Hadoop的核心并对分布式数据执行并行处理。

Hadoop的特点如下:
HDFS
MapReduce

1.5.1 HDFS简介

HDFS是Hadoop自带的机架感知文件系统,这是Hadoop中的一个基于UNIX的数据存储层。HDFS起源于Google文件系统概念。Hadoop的一个重要特征是数据分区和通过许多(成千的)主机的计算以及以并行、接近它们的数据的方式执行的应用程序计算。在HDFS上,数据文件在集群里被复制成序列块。一个Hadoop集群通过简单地添加商业服务器来衡量计算能力、存储容量和I/O带宽。可以通过许多不同的方式从应用程序中访问HDFS。HDFS本身为应用程序提供一个Java API。

Hadoop集群在Yahoo!上跨度40 000台服务器并且存储40PB的应用数据,最大的Hadoop集群有4000台服务器。同时,遍及全球的其他一百个已知组织正在使用Hadoop。
了解HDFS的特点
HDFS的特点如下:
容错
能在商业硬件上运行
能够处理大型数据集
主从范式
一次写入文件的访问

1.5.2 MapReduce简介

MapReduce是一个在大集群中用于处理分布式大数据集的编程模型,是Hadoop的核心。它的程序示例可在配有Hadoop集群的很多服务器上处理大数据,这源于Google MapReduce。

Hadoop MapReduce是易于编写应用程序的一个软件框架,在大集群的硬件中,以一种可靠、容错的方式并行处理大数据。这个MapReduce范式分为两个阶段,Map和Reduce主要以键值对形式处理数据。Map和Reduce任务在一个集群上按顺序进行,Map阶段的输出将作为Reduce阶段的输入。这一过程解释如下:
Map阶段:数据集被分割后,处理数据集的权限分配给任务跟踪器,来执行Map阶段。数据操作执行,得到Map阶段的键值对,并将其作为Map阶段的结果输出。
Reduce阶段:主节点汇集所有子问题的结果,并将它们整合起来,作为问题的最终结果输出。
并行计算的五个常见步骤如下。

  1. 准备Map()输入数据:自动将数据以行的方式输入,每行输出键值对,或者可以根据需求进行改变。
    Map input: list (k1, v1)
  2. 运行开发者提供的Map()代码。
    Map output: list (k2, v2)
  3. 将Map的结果送入Reduce执行单元中,同时使用键进行分组,把相同键数据送入相同的Reducer中。
  4. 运行开发者提供的Reduce()代码:这一阶段将运行由开发者设计的reducer执行单元代码,此阶段会重新排序数据并生成键值对形式的数据。
    Reduce input: (k2, list(v2))

Reduce output: (k3, v3)

  1. 产生最终的输出:主节点收集所有Reducer执行单元的输出,并将其写入一个文本文件。
    Google文件系统: Google MapReduce: 。

转载地址:http://duxtx.baihongyu.com/

你可能感兴趣的文章
vmware克隆Centos6.4虚拟机网卡无法启动问题
查看>>
dba学习
查看>>
asterisk配置
查看>>
GA操作步骤和技巧(二)——用户行为分析
查看>>
shell中while循环里使用ssh的注意事项
查看>>
SHELL获取计算机外网ip的几种写法
查看>>
博客正在搬迁中
查看>>
触发器与存储过程的区别
查看>>
我的友情链接
查看>>
centos搭建supervisor
查看>>
linux日志分割
查看>>
Samba再报安全漏洞
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
Spring学习资料之 依赖注入(一)
查看>>
安装win7提示安装程序无法创建新的系统分区和定位现有系统分区
查看>>
那些年,我跳过的坑(一)
查看>>
快递查询接口的调用与解析案例
查看>>
我的友情链接
查看>>
【MYSQL】SQL基本写法
查看>>