大数据平台基准测试流程(测试工具)解析

  • 格式:doc
  • 大小:53.00 KB
  • 文档页数:9

下载文档原格式

  / 12
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

43

引言

互联网的普及已经连接了全世界近30亿人口,目前,互联网上的网页数目已经突破10亿[1],大量的数据在网络中产生,而新的互联网技术和应用的结合形成了丰富的数据源,并带来数据量爆发式的增长。大数据在数据量、数据类型和处理时效性等方面带来了新的挑战,应运而生的大数据处理技术采用分布式文件系统、分布式并行计算框架等模型以低廉的价格解决大数据的挑战。新的计算框架和数据库系统层出不穷,大数据产品和系统不断推陈出新,催生出对这些产品和技术进行基准对比的需求。

大数据基准测试从具体应用中抽象出有代表性的负载,根据真实数据的特征和分布生成可扩展的数据集,以相应的指标衡量负载处理数据集的效果,以此来比较大数据处理系统的性能。本文结合大数据处理系统的特点,阐述大数据基准测试的要素和构建流程,最后从数据、负载和软件栈等方面比较现有基准测试工具,并展望未来基准测试工具的发展方向。

1 大数据起源和特点

随着互联网技术的发展,产生了越来越多的数据来源。互联网应用记录着用户每天在网上的行为数据,

用户的社交数据、搜索数据、购物数据都被一一记录下来。而线下的生活也处处与网络相关,通话记录、医疗数据、环境数据、财务数据也通过网络留存下来。工业互联网中的机器配备了传感器和网络传输装置,积累了大量机器数据。物联网连接地球上所有的人和物,感知并跟踪着物体和人的状态。据IDC 预测,从2005年到2020年,全球数据量将会从130EB 增长到40ZB [2]。

随着数据源种类的激增,新的数据不仅在数据量上有了很大的体量,其数据结构也不同于以往的关系型数据结构,智能设备、传感器和各种应用的兴起,视频、图片、音频、文档、网页和日志等大量非结构化的数据蜂拥而来,为当前的数据处

理带来新的挑战。互联网服务的进化,使得用户对数据处理的速度有了更高要求,数据量规模和数据类型复杂性的增加对大数据处理速度带来挑战。IBM 从四个维度定义大数据,即数量(Volume、种类(Variety、速度(Velocity、真实性(Veracity[3]。大数据具备大体量、多样性、高时效性和真实性等特征。

2 大数据处理平台的构成

大数据的大体量、多样性和处理的时效性是传统单设备纵向扩展无法解决的,这种挑战首先在互联网搜索中体现出来,搜索引擎需要检索和存储的网站数量庞

大数据基准测试流程与测试工具

姜春宇1 孟苗苗2

1 工业和信息化部电信研究院标准所,云计算标准与测试验证北京市重点实验室北京 100191

2 中国联合网络通信有限公司北京 100033

摘要当前大数据产品和技术的发展非常迅速,市场中存在各种各样的商业版和开源的大数据软件,这些大数据系统解决了大数据大体量、多样性、时效性的挑战。随着大数据产品和技术成熟,如何去测试和评估这些大数据产品成为新的研究主题。文章简要介绍大数据兴起的背景,综述大数据处理系统的主要构成,并针对大数据处理系统的特点,提出构建大数据基准测试平台的要素和流程,最后介绍当前大数据基准测试工具和存在的问题,展望未来大数据基准测试工具的发展方向。

关键词大数据;大数据平台;大数据基准测试;数据;负载;指标

研究与开发 Research & Development

44

大,以非结构化数据为主,为此谷歌率先于2004年提出一套分布式数据处理的技术体系,即能够横向扩展的分布式文件系统(GFS、分布式计算系统(MapReduce和分布式数据库(BigTable等技术,以较低成本很好地解决了大数据面临的困境,奠定了大数据技术的基础。受谷歌论文启发,Apache Hadoop 实现了自己的分布式文件系统(HDFS、分布式计算系统(MapReduce和分布式数据库(Hbase,并将其开源,从而加速了大数据技术和应用的发展。大数据处理平台主要由分布式文件系统、分布式计算平台、分布式存储系统等构成。以Hadoop 为例,其基本组件如图1所示。

图1 Hadoop基本组件

3 大数据基准测试要素

基于Hadoop 和Spark 原理的大数据处理平台在工业界和学术界都得到了广泛应用,谷歌、Facebook 、百度、阿里巴巴等互联网公司早已研发部署了大数据处理系统,越来越多的中级企业开始在大数据基础平台之上开发大数据应用,IDG 调研了751家企业,其中49%的企业反馈已经或正在实现大数据项目[4]。尽管大数据的平台和应用发展迅速,但缺少基准来衡量大数据平台的性能,而且大数据系统的复杂性、多样性和变化性为评估带来很大困难。

大数据基准测试能够评估和比较大数据系统和架构,其主要作用有三个方面。

1 它能提升大数据领域的技术、理论和算法,并挖掘出大数据的潜在价值和知识。

2 它能帮助系统开发人员设计系统功能、调优系统性能、提升部署方法[5]。

3 它容许用户比较不同系统的性能,帮助选购产品。

设计大数据基准测试通常包含以下考虑。1 选择数据和生成数据,确定数据集的大小、类型以及覆盖的应用场景,提供数据集或者数据生成的工具。2 确定测试负载,负载需要覆盖不同的应用场景,具有代表性,能

够较全面地反应系统的特性。3 明确测试指标,大数据基准测试主要从性能、能效、性价比、可靠性等角度衡量大数据系统和架构。4 确定基准测试所针对的软件系统和框架,不同框架处适用的场景不同。

4 测试流程

大数据基准测试主要有三个流程,即数据生成、负载选择和指标选择。简要来说,数据生成主要生成不同的数据类型并满足大数据的四V 特点;负载选择主要是选择合适的负载以运行数据产生结果;指标选择确定衡量的维度,以便从不同方面评估大数据框架。

4.1 数据生成

大数据基准测试通常要么采用现实数据,要么合成数据。使用现实数据存在两个困难,首先,大多数情况下数据都是企业比较敏感的部分,企业通常不愿意公开提供数据;其次,现实数据只适应于特定应用场景,有其局限性,无法适应所有负载;所以,用数据生成工具合成数据成为大数据基准测试通常采用的方法。数据生成分为数据筛选、数据处理、数据生成和格式转换四步。4.1.1 生成步骤

1 数据筛选。在筛选数据时,①需要考虑数据和负载的匹配性,数据类型应该符合特定负载的要求,数据集需要来源于特定的大数据应用场景,如电子商务、搜索引擎、社交网络等,并符合真实数据的数据特征和分布特征;②根据测试机器的数量和应用的特点,评估数据量的大小。

2 数据处理。待处理的数据是建立在能保持原始数据的特性并能消除其中敏感信息的基础上进行相关操作的。针对不同的数据类型,应该采用该类领域中有代表性的数据建模方法对真实数据进行建模,抽取出数据的特征,并将这些特征存储在模型文件中。

3 数据生成。数据生成通常需要特定的生成工具来完成,生成工具依据不同类型的数据处理过程来设计。首先需要提出数据的模型特征,基于提取出的模型和所需的数据量生成测试数据。除了需要保证所选用建模方法的模型特性外,还要满足在数据生成过程中通过参数来控制数

研究与开发