应用大数据技术获得近实时分析 巨大 ... - intel€¦ ·...

12
1 白皮书 英特尔® 至强™ 处理器 英特尔® 固态硬盘 英特尔® 以太网融合网络适配器 英特尔® Apache Hadoop* 发行版软件 应用大数据技术获得近实时分析 巨大成效 平衡的基础设施使工作负载完成时间从 4 小时缩短为 7 分钟 1 如今,基于广泛可用的计算、存储和网络组件的改进,商业、学术和政府组织有效处理 大数据的能力正快速提高。英特尔利用一个优化且平衡的 Apache Hadoop* 集群,展 示了可以得到的显著成效。这一集群由最新的英特尔® 至强™ 处理器、本地固态硬盘存 储和万兆位英特尔® 以太网融合网络适配器组成。 事实上,在英特尔所开展的多项测试中,通过升级这些组件和使用英特尔® Apache Hadoop* 发行版软件(英特尔® Hadoop 发行版),可将使用 TeraSort 基准工作 负载排序 1 TB 数据所需的时间从约四小时缩短至约七分钟。 1,2 这些结果预示着我们 向近实时数据分析的宏伟目标又迈近了一大步,而且所需的成本大幅低于此前使用专 有硬件和软件实施的成本。大幅的成本节省和效率提升对于发挥出大数据技术的全部 潜力至关重要。 本白皮书介绍了这些结果的实现方法,以作为 IT 决策者和其他人员在考虑投资方向时 的指导,进而从 Hadoop* 环境中获得最佳成效。同时文章还介绍了经过预先优化的交 钥匙型英特尔 Apache Hadoop 发行版软件具备的部分优势。各组织可通过使用此处所 列的指导原则,在满足其预算要求的前提下,实现特定工作负载和环境的最佳性能。 通过平衡 Apache Hadoop* 集群内的计算、存储和网络资源,组织将可以发挥出 最新英特尔® 处理器、固态硬盘、万兆位英特尔® 以太网融合网络适配器和英特尔® Apache Hadoop* 发行版软件的全部优势。通过利用这些组件构建一个平衡的基 础设施,英特尔将完成 TeraSort 基准测试工作负载所需的时间从约四个小时缩短 至约七分钟,降幅约为 97%。 1 大数据技术可实现的此类结果为低成本、近实时 的数据分析铺平了道路,将能够帮助企业近乎实时地响应瞬息万变的市场需求, 并从其资产中获得更多价值。

Upload: others

Post on 24-Aug-2020

17 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 应用大数据技术获得近实时分析 巨大 ... - Intel€¦ · 用大数据技术获得实时分大成 1 不断开发工具以管理大数据 当前,无论是何种类型和规模的企业,都

1

白皮书英特尔® 至强™ 处理器英特尔® 固态硬盘英特尔® 以太网融合网络适配器英特尔® Apache Hadoop* 发行版软件

应用大数据技术获得近实时分析 巨大成效平衡的基础设施使工作负载完成时间从 4 小时缩短为 7 分钟1

如今,基于广泛可用的计算、存储和网络组件的改进,商业、学术和政府组织有效处理

大数据的能力正快速提高。英特尔利用一个优化且平衡的 Apache Hadoop* 集群,展

示了可以得到的显著成效。这一集群由最新的英特尔® 至强™ 处理器、本地固态硬盘存

储和万兆位英特尔® 以太网融合网络适配器组成。

事实上,在英特尔所开展的多项测试中,通过升级这些组件和使用英特尔® Apache

Hadoop* 发行版软件(英特尔® Hadoop 发行版),可将使用 TeraSort 基准工作

负载排序 1 TB 数据所需的时间从约四小时缩短至约七分钟。1,2 这些结果预示着我们

向近实时数据分析的宏伟目标又迈近了一大步,而且所需的成本大幅低于此前使用专

有硬件和软件实施的成本。大幅的成本节省和效率提升对于发挥出大数据技术的全部

潜力至关重要。

本白皮书介绍了这些结果的实现方法,以作为 IT 决策者和其他人员在考虑投资方向时

的指导,进而从 Hadoop* 环境中获得最佳成效。同时文章还介绍了经过预先优化的交

钥匙型英特尔 Apache Hadoop 发行版软件具备的部分优势。各组织可通过使用此处所

列的指导原则,在满足其预算要求的前提下,实现特定工作负载和环境的最佳性能。

通过平衡 Apache Hadoop* 集群内的计算、存储和网络资源,组织将可以发挥出

最新英特尔® 处理器、固态硬盘、万兆位英特尔® 以太网融合网络适配器和英特尔®

Apache Hadoop* 发行版软件的全部优势。通过利用这些组件构建一个平衡的基

础设施,英特尔将完成 TeraSort 基准测试工作负载所需的时间从约四个小时缩短

至约七分钟,降幅约为 97%。1 大数据技术可实现的此类结果为低成本、近实时

的数据分析铺平了道路,将能够帮助企业近乎实时地响应瞬息万变的市场需求,

并从其资产中获得更多价值。

Page 2: 应用大数据技术获得近实时分析 巨大 ... - Intel€¦ · 用大数据技术获得实时分大成 1 不断开发工具以管理大数据 当前,无论是何种类型和规模的企业,都

2

应用大数据技术获得近实时分析巨大成效

1 不断开发工具以管理大数据

当前,无论是何种类型和规模的企业,都

无一例外地拥有着庞大的数据库。处理、

转换、并从数据中(通常为非结构化数

据)获取优势的能力正快速成为一种标准

要求,同时能够进行此类工作的工具和技

术也日益普遍。诸如 Hadoop 等框架的广

泛应用,而且越来越多的 IT 部门开始逐

渐构建其自有的计算环境来处理大数据。

1.1 Hadoop* 简介:支持从大数据中获得

出色价值的可靠框架

Hadoop 是一个使用 Java* 编写、基于

谷歌的 MapReduce* 和分布式文件系统

工作的开源软件框架。它用于支持分布式

应用程序,能够使用服务器集群分析超大

型数据,然后将其转换为更易于这些应用

程序使用的形式。Hadoop 用于部署在常

见的通用型基础设施之中。

该框架擅长处理的任务包括对大型数据

集进行索引和排序、数据挖掘、日志分

析和图像处理等。Hadoop 框架的关键组

件包括:

• Hadoop 分布式文件系统(HDFS*)—

能够通过将数据分解为数据块,并将数

据块散布于大量工作节点中,实现容错

和高性能。

• Hadoop 的 MapReduce 引擎 — 能够

从应用程序接收作业,并将这些作业分

解成多项任务,以分配给多个工作节点。

1.2 大数据技术的行业生态系统

一个大型解决方案生态系统(Hadoop 仅

是其中一部分)的设计旨在最大限度地挖

掘大数据的价值。该生态系统的另一关

键组件是 NoSQL(“不仅仅是 SQL”)数

据库。NoSQL 是更为常见的、基于表格

的关系型数据库管理系统(RDBMS)的

一种替代(或补充)技术。与 RDBMS

不同,NoSQL 数据库并不主要以表格

为基础。对依赖于数据元素间关系的功

能而言,这一特征尽管在某种程度上

让 NoSQL 的效率低于 RDBMS,但是

NoSQL 能够简化大量关系并非特别重要

的数据的处理过程。

尽管结构化数据也可存储于 NoSQL 数据

库中,但是这些系统更适于处理非结构

化数据,并能够在检索和附加大量的此

类数据时实现出色的可扩展性和性能。

随着大数据技术的不断发展和其在数据

中心所起到的重要作用日益突显,在商

业与非商业单位共同努力的推动下,诸

如 Hadoop 等开源解决方案的重要性和

开发完善程度日渐提高。Hadoop 生态系

统中的高级 NoSQL 数据库包括 Apache

Cassandra*、HBase* 和 MongoDB*。

除了 Hadoop 以外,其他的大数据技术还

包括简单易用的开源 Disco Project*(开

发人员使用 Python* 脚本编写作业),

以及针对于商业智能和相关使用模式的企

业级环境 SAP HANA* 实时数据平台等。

所有这些行业创新正在针对基于英特尔®

至强™ 处理器的平台进行紧锣密鼓的开发

和优化工作。由于大数据广泛存在于商

业、研究和学术环境中,并且其规模在迅

速扩张,因此本白皮书以 Hadoop 作为示

例,阐述了如何处理大数据的系统。

目录

1 不断开发工具以管理大数据 ..................2

1.1 Hadoop* 简介:支持从大数据中

获得出色价值的可靠框架 ................. 2

1.2 大数据技术的行业生态系统 ............ 2

2 在关键组件中实现平衡 ..........................3

2.1 计算资源的进步 .................................. 3

2.2 存储技术的进步 .................................. 4

2.3 网络连接的进步 .................................. 4

2.4 业经优化的英特尔 Hadoop

发行版..................................................... 4

3 万兆位以太网和其他因素在加速

Hadoop 工作流中所扮演的角色 .........5

3.1 优化导入阶段 ....................................... 6

3.2 优化处理阶段:

从四小时缩短到七分钟的历程 ........ 6

3.3 优化导出阶段 ....................................... 8

4 研究环境简述 .........................................8

5 调试和优化注意事项 ..............................9

5.1 网络连接、操作系统和

驱动程序优化 ....................................... 9

5.2 Hadoop 配置参数 .............................. 9

5.3 进一步的增强 .....................................10

6 结论 ...................................................... 11

Page 3: 应用大数据技术获得近实时分析 巨大 ... - Intel€¦ · 用大数据技术获得实时分大成 1 不断开发工具以管理大数据 当前,无论是何种类型和规模的企业,都

3

应用大数据技术获得近实时分析巨大成效

2 在关键组件中实现平衡

尽管 Hadoop 集群通常由通用的主流组件

构建而成,但这并未降低为获得最大优势

而选择和组合这些组件的难度。首要注意

事项便是在计算、存储和网络资源环境中

达到平衡(如图 1 所示)。

在转到有关确定集群组件组合的具体战略

之前,首先需要考虑每个类别中常用技术

的状态(如表 1 所示)。在确定了需要的

资源类型后,探讨将专注于 Hadoop 集群

如何能够充分利用这些资源,介绍万兆位

以太网(10GbE)连接在交付各项优势中

所扮演的角色。

2.1 计算资源的进步

相比上一代平台,英特尔® 至强™ 处理器

E5 家族所采用的平台架构能够更好地利

用解决方案堆栈中的资源。例如,全新架

构将每个插槽中的内核数量从六个(12 个

硬件线程)增加到了八个(16 个硬件线

程),更高的内核数量可支持达到更高

的并行计算水平,而后者对于数据密集型

Hadoop 工作负载有着重要意义。英特尔®

数据直接 I/O 技术(英特尔® DDIO)是

英特尔至强处理器 E5 家族中的一项新功

能,可支持英特尔® 以太网控制器和适配

器直接与处理器高速缓存通信,而不是与

主内存通信,从而能够帮助提高带宽和降

低延迟。这些优势对于处理大型数据集将

大有裨益。

表 1. 升级 Hadoop* 解决方案堆栈,实现平衡的高性能基础设施。

计算 存储 网络

优异前几代英特尔® 至强™

处理器传统旋转式硬盘

千兆位英特尔® 以太网服

务器适配器

出色英特尔® 至强™ 处理器

E5 家族

分层存储

(传统硬盘和固态硬盘)

万兆位英特尔® 以太网融

合网络适配器

最佳英特尔至强处理器 E5

家族全部为固态硬盘

万兆位英特尔以太网融

合网络适配器

Page 4: 应用大数据技术获得近实时分析 巨大 ... - Intel€¦ · 用大数据技术获得实时分大成 1 不断开发工具以管理大数据 当前,无论是何种类型和规模的企业,都

4

应用大数据技术获得近实时分析巨大成效

2.2 存储技术的进步

固态硬盘(SSD)代表了面向主流客户端

和服务器的持久性存储的一个重要转变。

它消除了诸如旋转碟片和读/写磁头等传

统机械硬盘(HDD)中的电子机械部件,

并因此大幅缩短了数据访问时间和延迟。

本白皮书所描述的测试使用了英特尔® 固

态硬盘(英特尔® SSD)520 系列,该系

列拥有广泛的容量选择,具备内建的数据

保护功能,并相比传统机械硬盘实现了大

幅的性能改进。3 英特尔固态硬盘 520 系

列采用了英特尔 25 纳米 NAND 闪存,

可提供最高每秒 50,000 次每秒输入/输

出操作(IOPS)4 的随机读取性能和多至

每秒 550 兆字节(MB/秒)5 的顺序读取

性能。

作为传统机械硬盘和固态硬盘之间的过渡

步骤,各大组织正越来越多地在同一服务

器上配置这两类硬盘。在本测试中,固态

硬盘作为高速数据缓存设备,可减少从传

统机械硬盘中读取数据和向其写入数据的

需求,进而提高整体性能。

2.3 网络连接的进步

数年来,网络连接的线速一直都在不断

提高。与此同时这一领域也涌现出了许

多补充性技术,为用户提供了更高的价

值,如更高的吞吐量、改进的成本效益

和增强的灵活性等。而这一研究的主要

考虑因素为从千兆位以太网(1GbE)向

万兆位(10GbE)过渡。

英特尔® 以太网控制器和融合网络适配器

对于降低万兆位以太网网络连接的成本发

挥着至关重要的作用。反过来,虚拟化和

带宽密集型应用程序(如数据分析和视频

点播)等的广泛部署,提高了 万兆位以

太网网络的采用率,并形成了一个良性循

环,让成本效益和主流网络采用率能够

相辅相成地提高。英特尔以太网软件驱

动程序已针对大数据实施进行了优化,

例如,它们能够最大限度地减少 I/O 对

Hadoop 数据处理的干扰。

英特尔® 以太网融合网络适配器 X540 是

一款低成本、低功率的 10GBASE-T 解

决方案,可向后兼容使用第 6 类和第 6A

类铜缆布线的现有 1000BASE-T 网络。

英特尔® 以太网控制器 X540 通过将 MAC

和 PHY 集成在一个单芯片解决方案中,

可同时降低初始成本和功率要求。英特尔®

以太网融合网络适配器 X520 可使用铜缆

或光纤网络连接,为万兆位以太网网络提

供 SFP+ 连接。

2.4 业经优化的英特尔 Hadoop 发行版

英特尔 Hadoop 发行版可帮助简化和改善

Hadoop 在英特尔® 架构基础设施上的部

署。它是唯一一个专为支持在 Hadoop 上

进行最广泛的数据分析而构建的发行版,

同时也是首个具备硬件增强的性能和安全

功能的产品。该解决方案包含 Hadoop

框架、MapReduce、Hadoop 分布式文

件系统(HDFS*)以及可支持批量处理

和近实时分析的其他相关组件,如 Hive*

数据仓库基础设施、Pig* 数据流语言和

HBase 数据库等。英特尔 Hadoop 发行

版中所包含的组件显示于图 2 中。

Page 5: 应用大数据技术获得近实时分析 巨大 ... - Intel€¦ · 用大数据技术获得实时分大成 1 不断开发工具以管理大数据 当前,无论是何种类型和规模的企业,都

5

应用大数据技术获得近实时分析巨大成效

英特尔 Hadoop 发行版基于实际经验,为用户提供了调试和优化指导原则,以及向导和其他自动化部署工具。Intel® Manager for

Apache Hadoop* 软件提供了在 Hadoop 集群节点上自动安装的功能,并通过功能强大且直观的仪表盘提供了实时管理、监控和诊断功

能(如图 3 所示)。英特尔 Hadoop 发行版还为客户提供了大量培训资源,以及系统设计、部署、定制和调试帮助。此外,这一发行版

还享有 24x7 全天候企业支持,可全面满足企业和用户的需求,确保他们能够通过保持集群长时间稳定正常运行取得成功。

图 3. 帮助简化安装和配置,并缩短部署时间的仪表盘。

3 万兆位以太网和其他因素在加速

Hadoop 工作流中所扮演的角色

大数据管理能力的提高不断推动我们向在

主流环境中实现实时分析的目标迈进。我

们正通过使用常用的数据中心硬件和软

件,改善以前需要数小时,甚至数天才能

从源数据中生成价值的解决方案。

在这一环境中改善结果需要考虑整个工作

流,其中包括数据进入系统的点、处理数

据的机制以及与导出处理后的数据至系统

相关的任务。在此基础之上,Hadoop 工

作流可划分为三个阶段:

1. 导入。使用 Hadoop 从大型数据集中生

成答案的第一步,是将应用程序的数据

导入 HDFS。数据可通过流式或批处理

的方式导入。

2. 处理。将数据导入 HDFS 后,Hadoop

将处理该数据,以从中获取价值。

MapReduce 引擎通过其 JobTracker

节点接收来自应用程序的作业,该节点

将工作分解成多个小型任务,然后指派

给 TaskTracker 节点。典型的操作包括

排序、搜索或分析。TeraSort 是一个

基于数据排序工作负载的标准 Hadoop

性能指标评测程序1。在我们的测试环

境中,我们将使用 TeraGen 来实际生

成数据集。

3. 导出。当处理阶段中针对数据的操作结

束后,应用程序即可获得结果。

Page 6: 应用大数据技术获得近实时分析 巨大 ... - Intel€¦ · 用大数据技术获得实时分大成 1 不断开发工具以管理大数据 当前,无论是何种类型和规模的企业,都

6

应用大数据技术获得近实时分析巨大成效

尽管这三个阶段的相关需求因所执行工作

的性质而差异较大,但此模型仍表明了

万兆位以太网在 Hadoop 工作流中的重要

价值。举个简单的例子,包含大规模数据

压缩的工作负载在导入数据时的工作负载

负担,可能会大于将数据导出为压缩格式

的负担。同样,尽管各种任务处理的数据

量可能相似,但某些任务使用的计算资源

将会高于其他任务。调试和优化指导原

则,以及英特尔 Hadoop 发行版的相关支

持服务将能够帮助发现可满足特定需求的

最佳方法。

3.1 优化导入阶段

本模型中的导入阶段只是简单地将数据

输入 HDFS 进行处理。该过程始将始终最

少进行一次,在某些情况下,特别是将

MapReduce 作为服务出售的情况下,可

能需要进行多次导入。该阶段和 Hadoop

复制工作将会在网络和存储 I/O 方面,对

系统产生重大网络性能需求。

当将数据导入系统时,万兆位以太网网络

连接对于满足这些需求极为重要。将网络

从千兆位以太网 迁移至万兆位以太网后,

包含并行写入的导入操作在使用传统机械

硬盘时性能最多可提高 4 倍,而使用固态

硬盘时最多可提高 6 倍。1 固态硬盘性能

提高程度较高的原因在于其非易失性存储

器可加快对存储子系统的写入速度。

3.2 优化处理阶段:从四小时缩短到七分

钟的历程

英特尔测试使用了 1 TB TeraSort 工作负

载,通过 1 个命名节点分布于 10 个数据

节点上。为了评测升级各项资源的优势,

我们收集了各项组件在升级前后的结果,

包括从英特尔® 至强™ 处理器 5600 系列

升级到英特尔® 至强™ 处理器 E5-2600 产

品家族,从传统硬盘升级至固态硬盘,以

及从千兆位以太网升级至万兆位以太网。

这些硬件升级将约四个小时的处理时间缩

短为约 12 分钟。实施英特尔 Hadoop 发

行版进一步将处理时间缩短为约七分钟。

总体而言,性能提高将处理阶段所需的时

间减少了近 97%。

测试的首个硬件变化是从英特尔® 至强™

处理器 X5690 升级至英特尔® 至强™ 处理

器 E5-2690。如图 4 所示,处理器升级

将排序 1 TB 数据集所需的时间缩短了约

一半,从 250 分钟缩短为 125 分钟。6

千兆位英特尔®以太网服务器

适配器

千兆位英特尔®以太网服务器

适配器

传统机械硬盘 传统机械硬盘

升级前 升级后

英特尔® 至强™ 处理器5600 系列

125分钟

250分钟

英特尔® 至强™ 处理器E5-2600 产品家族

处理器升级:缩短约

50%的时间

ApacheHadoop*

ApacheHadoop

图 4. 处理器升级到英特尔® 至强™ 处理器 E5-2600 产品家族:处理阶段速度提高了约 50%。1

Page 7: 应用大数据技术获得近实时分析 巨大 ... - Intel€¦ · 用大数据技术获得实时分大成 1 不断开发工具以管理大数据 当前,无论是何种类型和规模的企业,都

7

应用大数据技术获得近实时分析巨大成效

在处理这一庞大数据集时,快速访问非顺

序数据的能力是一个关键的性能注意事

项。因此,为了减少任意现有的存储瓶

颈,下一个测试的升级是将传统机械硬盘

替换成固态硬盘,以利用其大幅提高的随

机读取次数的优势。基于之前通过处理器

升级获得的性能改进,从传统机械硬盘升

级为英特尔固态硬盘 520 系列后,完成

工作负载所需的时间从约 125 分钟缩短

为约 23 分钟,降幅接近 80%(如图 5

所示)。7

针对希望在同一服务器上组合使用传统机

械硬盘和固态硬盘的客户,英特尔提供了

英特尔® 高速缓存加速软件。这一分层存

储模型以较低的购置成本为用户提供了部

分固态硬盘的性能优势,但与仅含固态硬

盘的配置相比,除了存在性能差异外,该

方法同时也牺牲了固态硬盘中的某些可靠

性优势。然而,该存储模型为客户提供了

另一选择,可帮助他们逐步采用固态硬

盘,从而显著缩短从数据中获取重要洞察

的时间。

测试还表明,当在每个任务节点上安装五

块固态硬盘时,Hadoop 框架能够同时运

行足够多的 Map(映射)任务,以向每块

固态硬盘生成并行 I/O,并将处理器的利

用率提升至接近 100%。8 这一状态可为

Map任务提供最优性能。设置 io.sort. mb

和 io.sort.record.percen 标记可有效避免

中间 Map 输出溢出,过多的磁盘读取和

写入。每个 Map 任务可在不到 10 秒内

处理 128 MB 的数据块,并生成 128 MB

的输出信息。并行运行 32 项 Map 任务让

每个任务节点达到超过 5 Gb/秒的速度。8

Hadoop 工作负载的大规模、分布式特性

让网络 I/O 成为了工作流中每个阶段整体

性能的一个关键要素,万兆位以太网提供

了一个经济高效、可扩展的解决方案,可

帮助有效缩短数据的等待时间。高带宽的

万兆位以太网网络不仅可支持快速向集群

导入数据和从集群中导出数据,而且还可

加速 TeraSort 工作负载的随机排列阶段

的工作。通过在 Map 和 Reduce(化简)

节点间使用万兆位以太网链路,Reduce

节点可快速获取数据,从而能够显著缩短

整体作业执行时间,并提高集群性能。

基于处理器和存储升级所取得的成果,将

集群硬件从千兆位以太网升级到万兆位以

太网后,测试工作负载的处理时间再次缩

短 50%,从 23 分钟缩短为 12 分钟(如

图 6 所示)。9 使用万兆位以太网互连和

固态硬盘可支持在包含 10 个节点的测试

集群上,运行超过 100 个并发 Reducer

任务,从而可实现出色的作业扩展能力和

较高的资源利用率。5

英特尔® 至强™ 处理器E5-2600 产品家族

英特尔® 至强™ 处理器E5-2600 产品家族

传统机械硬盘英特尔固态硬盘

520 系列

升级前 升级后

125分钟

23分钟

升级到 固态硬盘:时间缩短约

80%

ApacheHadoop*

ApacheHadoop

英特尔® 以太网千兆位服务器

适配器

英特尔® 以太网千兆位服务器

适配器

图 5. 存储升级为固态硬盘:处理阶段速度提高了约 80%。7

英特尔® 固态硬盘520 系列

英特尔® 至强™ 处理器E5-2600 产品家族

英特尔® 固态硬盘520 系列

英特尔® 至强™ 处理器E5-2600 产品家族

英特尔® 以太网千兆位服务器

适配器

万兆位英特尔以太网融合网络

适配器

升级前 升级后

23分钟

12分钟

升级到万兆位

以太网:时间缩短约

50%

ApacheHadoop*

ApacheHadoop

图 6. 网络升级到万兆位以太网:处理阶段速度提高了约 50%。9

Page 8: 应用大数据技术获得近实时分析 巨大 ... - Intel€¦ · 用大数据技术获得实时分大成 1 不断开发工具以管理大数据 当前,无论是何种类型和规模的企业,都

8

应用大数据技术获得近实时分析巨大成效

除了上述硬件升级以外,英特尔 Hadoop

发行版还提供了一个直观的界面和多项

内部优化,其中包括高级数据压缩、针

对 HDFS 的动态复制副本选择,以及

MapReduce 加速等。这一额外的设计有

助于提高性能,同时当与英特尔可靠的

企业级支持组合使用时,将能够帮助客

户更快速地部署 Hadoop 环境,并加以

出色的维护。在硬件升级的基础上,实

施英特尔 Hadoop 发行版再次将工作负

载的完成时间缩短了约 40%,从约 12

分钟缩短为 7 分钟(如图 7 所示)。10

3.3 优化导出阶段

与导入阶段类似,万兆位以太网网络可大

幅提升在处理后从系统提取数据的性能,

而在将传统硬盘升级为固态硬盘后,其优

势更为显著。对传统硬盘进行的初步测试

表明,Hadoop 工作流导出阶段的主要瓶

颈是由于随机磁盘寻道所导致。将本地存

储更换为固态硬盘可消除这一弊端,使结

果与我们在导入阶段所看到的结果保持一

致。通过使用固态硬盘,我们可在从千兆

位以太网升级到万兆位以太网后将性能提

升约 6 倍,从而大幅缩短了整个工作流内

的整体操作所需的时间。如上所述,使用

固态硬盘和万兆位以太网还有助于从高级

别的处理器资源中获得更大优势,进而突

显了平衡 Hadoop 集群的资源可带来的重

要优势。

4 研究环境简述

生成本白皮书中所述结果的 Hadoop 测

试平台包含一个头结点(命名节点,Job

Tracker)、10 个工作节点(数据节点,

Task Tracker)和一台思科 Nexus* 5020

10 Gb 交换机。测试所比较的不同基准和

升级后的工作节点组件详细列于表 2 中。2

表 2. 测试环境中所比较的工作节点组件。

处理器和基准系统比较 存储比较 网络适配器比较 软件比较

基准组件 SuperMicro SYS-1026T-URF 1U

服务器,包含两个英特尔®

至强™ 处理器 X5690 @ 3.47 GHz,

48 GB 内存

700 GB 7200 RPM SATA

硬盘

英特尔® 以太网服务器适配

器 I350-T2

(1 Gb 以太网)

Apache Hadoop* 1.0.3

升级的组件 戴尔 PowerEdge* R720 2U 服务

器,包含两个英特尔® 至强™ 处理器

E5-2690 @ 2.90 GHz,128 GB

内存

英特尔® 固态硬盘 520 系列 英特尔® 以太网融合网络适

配器 X520-DA2

(万兆位以太网)

英特尔® Apache Hadoop*

发行版软件 2.1.1

英特尔® 固态硬盘520 系列

英特尔® 至强™ 处理器E5-2600 家族

升级前 升级后

12分钟

7分钟

部署 ApacheHadoop* 软件

的英特尔® 分发版:

时间缩短约

40%

ApacheHadoop*

Apache Hadoop* 软件的

英特尔® 分发版

万兆位英特尔®以太网融合网络

适配器

英特尔® 固态硬盘520 系列

英特尔® 至强™ 处理器E5-2600 家族

10 Gb 英特尔以太网融合网络

适配器

图 7. 实施 Apache Hadoop* 软件的英特尔® 分发版:处理阶段速度提高了约 40%。10

Page 9: 应用大数据技术获得近实时分析 巨大 ... - Intel€¦ · 用大数据技术获得实时分大成 1 不断开发工具以管理大数据 当前,无论是何种类型和规模的企业,都

9

应用大数据技术获得近实时分析巨大成效

5 调试和优化注意事项

除了升级网络组件和考虑使用英特尔

Hadoop 发行版以外,致力于最大限度地

从大数据技术中挖掘价值的各个组织,还

必须考虑网络堆栈中的配置和设置,以及

Hadoop 软件环境本身。尽管确定可能的

配置和设置范围存在较大挑战,根据以往

的最佳实践,我们建议工程师格外注意本

部分所列的注意事项,以获得最大价值。

5.1 网络连接、操作系统和驱动程序优化

在操作系统和网络连接堆栈中,任意时间

打开的文件、打开的网络连接,以及运行

的进程的数量应根据特定工作负载的需求

而进行调整。英特尔万兆位以太网 Linux*

驱动程序也应通过调整 RSS 队列的数量

(如本白皮书所描述的,测试中的最优数

量为两个)而进行优化,而且还应通过调

整中断阈值减少上下文开关的数量。在操

作系统、网络连接和 TCP/IP 堆栈中,应

特别注意以下设置、优化和实践:

• 增加操作系统中可打开的文件的数量。

Hadoop 会打开大量文件,因此提高并

发可打开的文件的数量限制,将能够减

少作业故障。英特尔的测试发现 32,000

个文件个数将足够。提高并发进程的数

量也有助于减少作业故障。

• 增加待处理的连接和 SYN 请求的数

量。Hadoop 的 HSFS 和 MapReduce

引擎将打开众多周期较短的 TCP/IP 连

接。在英特尔设置配置中,该设置提

高到了 3,240,000,减少了 HDFS 和

MapReduce 通信的等待时间。

• 如果不需要在 Hadoop 工作负载上进行

资源共享,可考虑加大 TCP/IP 的最大

窗口大小并扩展到 16 MB。该方法将能

够帮助最大限度地提高万兆位以太网投

资的价值。

• 如果有足够的系统内存可用,可提高

TCP/IP 发送和接收缓冲大小。这一变更

可提高网络吞吐量。在英特尔测试集群

中,最大值可被设为 16 MB。

• 当带宽可用时,禁用 TCP/IP 可选

ACK。当启用可选 ACK 时,对客户端请

求的响应可能被延迟,并降低作业执行

和完成时间;禁用这些 ACK 将有助于改

善整体服务器的响应时间和 Hadoop 作

业性能。

• 为存储使用 JBOD。Hadoop 拥有内

建的负载平衡功能,并能够在可用的

HDFS 和 MapReduce JBOD 磁盘间使

用高效的轮询功能。使用包含固态硬盘

和快速存储的 RAID 可限制存储吞吐量

和整体作业性能。相反,请为 HDFS 和

MapReduce 的磁盘使用 JBOD 模式,

这是因为 HDFS 和 MapReduce 均内建

有在多个 JBOD 磁盘间进行负载平衡的

功能。

5.2 Hadoop 配置参数

Hadoop 堆栈中拥有超过 200 个配置参

数,基于以下调试注意事项着手将能够帮

助工程团队高效工作:

• Java 虚拟机(JVM)任务的内存配置。

每个 Map 和 Reduce 任务将在独立的

JVM 实例中运行。用户可分别使用配

置参数 mapred.map.child.java.opts

和 mapred.reduce.child.java.opts 为

Map 和 Reduce 任务指定各个任务的内

存。英特尔测试集群将 Map 任务堆栈

的内存设置为 512 MB,将 Reduce 任

务堆栈的内存设置为 1.5 GB。

- Map 任务的内存要求将取决于每个

Map 所生成的输出数量。包含排序

应用程序的 128 MB 数据块需要约

200 MB 的空间来存储中间记录,才

能防止溢出。这一内存可使用配置

参数进行管理,如 io.sort.mb =200

mb,io.sort.record.percent=.15

和 io.sort.spiH.percent=1.0。

- Reduce 任务的内存使用量也可进行

调整。

英特尔测试建议大多数参数的默认

设置已是最优,但 mapred.job.

reduce.inputbuffer.percent 可变

更为 0.7,从而让 Reducer 无需在

开始最终合并前清空内存。

Page 10: 应用大数据技术获得近实时分析 巨大 ... - Intel€¦ · 用大数据技术获得实时分大成 1 不断开发工具以管理大数据 当前,无论是何种类型和规模的企业,都

10

应用大数据技术获得近实时分析巨大成效

• 并发 Map 和 Reduce 任务的数量。在

英特尔至强处理器上,Map 任务的

最优数量通常为逻辑内核的数量,

而 Reducer 的数量应与物理内核的

数量相同。这些设置可通过 mapred.

tasktracker.map.tasks.maximum 和

mapred.tasktracker.reduce.tasks.

maximum 参数进行配置。

• 命名节点和数据节点请求处理程序数量

和线程数量。如果命名节点上拥有足够

的内存和计算资源,那么命名节点中的

线程处理程序数量可提高至 100 或更

高,以支持大量并发请求。提高数据节

点的处理程序数量也将可以带来诸多优

势,特别是在使用固态硬盘或快速存储

时,优势将更为突出。

• 降低节点间 IPC 通信的网络延迟。将

ipc.server.tcpnodelay 和 ipc.client.

tcpnodelay 设置为 “true”。

• Job Tracker 和 Task Tracker 之间的

心跳频率。默认心跳频率为 3 秒。对于

Map 任务能够较快完成的小型作业,该

设置可能延迟任务完成通知和新任务的

调度。设置 mapreduce.tasktracker.

outofband.heartbeats 立即发送

作业完成通知可提高作业性能。使用

mapreduce.tasktracker.outofband.

heartbeat.damper 参数来调整心跳频率

也能够提供一定的优势。

• 推测任务执行。Hadoop 可能在多个节

点上安排相同的任务,以防止节点故障

或延迟执行。这一实践若能够充分利用闲

置资源,则效果显著,但是若集群满载运

行,其效果甚微。因此,我们推荐在某些

时候禁用推测任务执行,特别是存在高性

能处理、存储和网络资源的时候。

• 中间 Map 输出压缩。为中间 Map 输出

启用压缩功能有助于提高受到存储或网

络性能限制的集群的性能。请注意,当

使用万兆位以太网和固态硬盘时,压缩

输出对于性能的改善效果有限。

• HDFS 数据块大小。HDFS 数据块的最

优大小将根据工作负载的不同而有所差

异,但是较大的数据块大小通常不会形

成较高的性能,这是因为它们可能导致对

内存产生额外的负担,并有可能在 Map

阶段导致中间溢出。同时,较小的数据块

大小将对较小和并行程度较高的任务产生

额外的开销。在英特尔测试中,128 MB

的数据块大小为 TeraSort 性能指标评测

程序提供了最优的整体性能。

5.3 进一步的增强

正如本白皮书中所介绍的,英特尔已通过

使用最新英特尔至强处理器、固态硬盘、

万兆位以太网英特尔以太网融合网络适

配器和英特尔® Apache Hadoop* 发行版

软件,实现了大量性能优势。所有这些组

件的持续进步将有望在大数据的实施过程

中带来更多性能优势。

目前,我们正在为 Hadoop 和其他大数

据技术考虑开发大量软件增强。例如,我

们可以通过将基于 HTTP 的跨节点通信更

换成其他更为优化的选项,加速传输层

性能,在不增加物理资源的前提下提高整

体吞吐量。这一增强和其他软件增强均为

英特尔持续关注的一个研究领域。

面向商业分析和其他大数据使用模型的虚

拟化、预构建的 Hadoop 集群是另一个前

景广阔的研发领域,它们可带来众多潜在

优势,其中包括:

• 降低实施 Hadoop 环境的复杂性。

• 为虚拟化资源配置制定最佳实践,摒弃

手动调整。

• 基于大数据技术构建多用途环境。

Page 11: 应用大数据技术获得近实时分析 巨大 ... - Intel€¦ · 用大数据技术获得实时分大成 1 不断开发工具以管理大数据 当前,无论是何种类型和规模的企业,都

11

应用大数据技术获得近实时分析巨大成效

6 结论

存储和分析大量非结构化数据的能力将能够为企业、学术机构和政府组织带来众多机会。英特尔通过此研究表明,通过使用精选的硬

件组件组成平衡的基础设施,并使用英特尔® Apache Hadoop* 发行版软件,Hadoop 将能够实现大幅的性能提升。

本白皮书中所描述的结果只是英特尔和行业其他领域所正在开展的、并不断壮大的大型研究中的一部分,这些研究旨在发现各种最

佳实践,以支持构建和运行 Hadoop 集群与其他大数据解决方案,同时开发和调试软件,确保这些软件能够在此类环境中实现最优

运行。这一方面的进展将能够指导计算行业朝着简化、低成本实施的目标迈进,从而推动在今后实现实时分析能力的广泛普及。

Page 12: 应用大数据技术获得近实时分析 巨大 ... - Intel€¦ · 用大数据技术获得实时分大成 1 不断开发工具以管理大数据 当前,无论是何种类型和规模的企业,都

12

应用大数据技术获得近实时分析巨大成效

如欲了解更多信息,请访问以下页面:

hadoop.intel.com

www.intel.com/bigdata

www.intel.com/go/ethernet

www.intel.com/xeonE5

www.intel.com/storage

1 英特尔在 2012 年 12 月进行的 TeraSort 性能指标评测。自定义设置:mapred.reduce.tasks=100 以及 mapred.job.reuse.jvm.num.tasks=-1。如欲了解更多信息,请访问:

http://hadoop.apache.org/docs/current/api/org/apache/hadoop/examples/terasort/package-summary.html

2 集群配置:一个头结点(命名节点,Job Tracker),10 个工作节点(数据节点,Task Tracker),思科 Nexus* 5020 10 Gb 交换机。基准工作节点:SuperMicro SYS-1026T-URF1U 服务

器,包含两个英特尔® 至强™ 处理器 X5690 @ 3.47 GHz,48 GB 内存,700 GB 7200 RPM SATA 硬盘,英特尔® 以太网服务器适配器 I350-T2,Apache Hadoop* 1.0.3,Red Hat Enterprise

Linux*6.3,Oracle Java* 1.7.0_05。

工作节点中的升级处理器和基准系统:戴尔 PowerEdge* R720 2U 服务器,包含两个英特尔® 至强™ 处理器 E5-2690 @ 2.90 GHz,128 GB 内存。

工作节点中的升级存储:英特尔® 固态硬盘 520 系列。

工作节点中的升级网络适配器:英特尔® 以太网融合网络适配器 X520-DA2。

工作节点中的升级软件:英特尔® Apache Hadoop* 发行版软件 2.1.1。

3 英特尔® 固态硬盘 520 系列当前未针对数据中心用途进行验证。

4 固态硬盘性能将由于容量的不同而有所差异。

5 性能使用 lorneter*(队列深度为 32)测量得出。测试于 2012 年 12 月开展。

6 基准工作节点:SuperMicro SYS-1026T-URF1U 服务器,其中包含两个英特尔® 至强™ 处理器 X5690 @ 3.47 GHz,48 GB 内存,700 GB 7200 RPM SATA 硬盘,英特尔® 以太网服务器适配器

I350-T2,Apache Hadoop* 1.0.3,Red Hat Enterprise Linux*6.3,Oracle Java* 1.7.0_05。

工作节点中的升级处理器和基准系统:戴尔 PowerEdge* R720 2U 服务器,包含两个英特尔® 至强™ 处理器 E5-2690 @ 2.90 GHz,128 GB 内存,700 GB 7200 RPM SATA 硬盘。

7 基准存储:700 GB 7200 RPM SATA 硬盘,升级存储:英特尔® 固态硬盘 520 系列。

8 资料来源:英特尔内部测试,2012 年 12 月。

9 基准网络适配器:英特尔® 以太网服务器适配器 I350-T2,升级网络适配器:英特尔® 以太网融合网络适配器 X520-DA2。

10 工作节点中的升级软件:英特尔® Apache Hadoop* 发行版软件 2.1.1。

在性能检测过程中涉及的软件及其性能只有在英特尔® 微处理器的架构下方能得到优化。诸如 SYSmark* 和 MobileMark* 等测试均系基于特定计算机系统、硬件、软件、操作系统及功能,上述任

何要素的变动都有可能导致测试结果的变化。请参考其他信息及性能测试(包括结合其他产品使用时的运行性能)以对目标产品进行全面评估。更多信息敬请登陆 www.intel.com/performance

结果以英特尔内部测试为基础,并使用了第三方基准测试数据和软件。英特尔不控制或审核本文件中所引述的网页或第三方所提供的基准数据的设计或实施情况。英特尔鼓励客户登录本文件引述的

网页或其他网页以核实相关基准数据的准确性以及其是否反映了所购买的系统的性能。

英特尔编译器针对非英特尔微处理器的优化程度可能与英特尔微处理器相同(或不同)。这些优化包括 SSE2、SSE3 和 SSSE3 指令集以及其它优化。对于在非英特尔制造的微处理器上进行的优

化,英特尔不对相应的可用性、功能或有效性提供担保。

该产品中依赖于处理器的优化仅适用于英特尔微处理器。部分非针对英特尔微体系架构的优化也为英特尔微处理器保留了下来。

如欲了解更多有关本声明所涉及的特定指令集的信息,请参阅适用产品的《用户和参考指南》。

声明版本 #20110804

本文件中包含关于英特尔® 产品的信息。英特尔未通过明示或暗示,禁止翻供或其他方式许可或担保与销售和/或使用英特尔产品相关的内容,其中包括不对特定目的适用性、适销性,以及是否侵犯任何专利、版权或其他知识产权做出担保。除非经过英特尔的书面同意认可,英特尔的产品无意被设计用于或被用于以下应用:即在这样的应用中可因英特尔产品的故障而导致人身伤亡。

英特尔有权随时更改产品的规格和描述而毋需发出通知。设计者不应信赖任何英特产品所不具有的特性,设计者亦不应信赖任何标有 “保留权利” 或 “未

定义” 说明或特性描述。对此,英特尔保留将来对其进行定义的权利,同时,英特尔不应为因其日后更改该等说明或特性描述而产生的冲突和不相容承

担任何责任。此处提供的信息可随时改变而毋需通知。请勿根据本文件提供的信息完成一项产品设计。本文件所描述的产品可能包含使其与宣称的规格

不符的设计缺陷或失误。这些缺陷或失误已收录于勘误表中,可索取获得。在发出订单之前,请联系当地的英特尔营业部或分销商以获取最新的产品规

格。索取本文件中或英特尔的其他材料中提的、包含订单号的文件的复印件,可拨打 1-800-548-4725,或登陆 www.intel.com

英特尔公司 2013 年版权所有。所有权保留。英特尔、Intel 标识、至强和 Xeon 是英特尔在美国和/或其他国家的商标。

*其他的名称和品牌可能是其他所有者的资产。 0113/ME/MESH/PDF C 请注意环保 328340-001CN