分享

你真的了解大数据系统吗? ——大数据系统评测的挑战与方法

 yanyahoo 2017-06-02

你真的了解大数据系统吗? ——大数据系统评测的挑战与方法

原创 2017-03-14 陈敏刚 微言创新
微言创新

InnoTalk

“微言创新”由上海科学院规划研究处和上海产业技术研究院战略咨询中心共同出品,专注产业创新领域研究。言微意未尽,集智求创新。

 按 


近年来,围棋人工智能应用AlphaGo、无人驾驶车、虚拟人工助理等数据驱动的人工智能技术进一步推动了大数据技术与产业的升级与演化。然而,这些大数据智能应用的背后都需要大数据系统的支撑,如何评估与测试大数据系统的功能与性能已经成为无法回避的问题,亟需学术界与产业界联合研究解决。



1

什么是大数据评测?

对于大数据评测这样的话题,犹如管中窥豹,不同的人会从不同的角度提出见解。目前,大数据评测大致可以分为三大类,即大数据系统的评测、大数据应用的评测与大数据安全的评测。本文主要谈大数据系统的评测。

大数据系统是指存储、分析处理大数据的软硬件系统,主要包括大数据的存储系统和大数据的分析处理系统。比如,分布式文件系统HDFS,分布式内存文件系统Alluxio,属于大数据的存储系统。大数据分析处理系统,包括批处理系统Hadoop MapReduce、交互式数据分析系统Spark、流式数据分析处理系统Storm、Flink、以及SQL on Hadoop系统Hive、Impala及Transwarp Inceptor 等。

大数据系统是大数据智能应用的基础平台,其功能与性能对构建在其上的大数据应用与服务的质量至关重要。如何评测并客观比较不同的大数据系统的功能与性能也是大数据应用单位选择大数据系统架构的重要参考。因此,大数据系统评测无论在学术上,还是产业应用上都具有重要的意义。然而,大数据系统技术的快速发展与演进也为其评测带来了极大的挑战。

2

大数据系统评测的“痛点”在哪儿?

大数据系统评测的挑战主要来自四个方面。

首先,相对于传统软件测试,大数据系统的测试数据需要满足如下特性,即大规模(Volume)、多种数据类型(Variety)和多维度(Multi-Dimension)及可控的数据质量(Quality)。

其次,被测系统架构的复杂性,大数据系统通常采用Master-Slave或Peer-to-Peer等分布式架构。而且,影响被测系统性能的因素纷繁复杂,如网络环境、硬件配置、系统的配置参数、虚拟化等。

第三,是测试方法的挑战,比如传统的测试工具不再适用,缺乏自动化测试手段,测试诊断方案需要定制,系统不同模块需要不同的测试技术等。

第四,缺乏专业的测试人员。由于大数据系统评测需要更专业、更全面的测试技能。目前,业界具备大数据系统评测专业技能的测试人员严重短缺。

3

大数据系统如何评测?

大数据系统评测总体上可以分为6个步骤,分别为评测需求分析、评测环境准备、评测数据准备、评测数据加载、系统评测与评测结果分析。

3.1评测需求分析

评测需求分析阶段与传统软件测试的要求基本一致。但是,大数据系统评测需要重点关注的是系统的性能与可靠性,比如在大规模数据集下,系统数据处理与分析的效率如何、集群中某个节点宕机后,数据处理任务是否可以自动迁移、分布式环境下数据会不会丢失等等。

3.2评测环境准备

大数据系统评测通常需要准备一个具有分布式数据存储与分布式数据计算的集群,同时需要足够的存储空间来存储与处理大规模数据集。值得注意的是,这里的存储空间不仅仅指离线的磁盘空间,还包括内存空间。同时,测试环境应该确保是“干净的”,换句话说在测试前要确保集群中没有运行其它的应用,集群中CPU和内存利用率都处于最低开销。

3.3评测数据准备

大数据系统评测数据主要来源于两大类。第一类数据是来自于实际的业务数据,如Web日志、关系数据库中的数据;第二大类数据来自于大数据基准测试工具生成的模拟数据,业界公认的测试基准包括TPC-DS和BigBench等。需要注意的是,我们需要根据评测的需要,设定合适的数据量、数据类型和数据逻辑。

3.4评测数据加载

在评测数据加载阶段,我们需要重点验证数据是否已正确地加载到了分布式存储系统,比如源数据和HDFS上数据目录、数据大小是否匹配,数据是否加载到了正确的HDFS存储目录等等。如果数据需要被加载到分布式数据库系统的话,我们需要重点验证数据是否能正确地加载到数据表中。

3.5大数据系统评测与分析

大数据系统评测可参考ISO/IEC 25010:2011系统和软件质量模型国际标准的系统/软件产品质量八个特性,但需要重点评测系统的功能性、性能效率、可靠性与兼容性。

3.6评测结果分析

大数据系统的评测结果分析阶段,需要对以上各个质量特性进行分析与思考,尤其是对于性能效率的分析,通常需要编写脚本进行自动统计与可视分析。最后,编写评测报告,并给出该系统质量的是否符合应用的整体评估。

4

大数据系统评测,标准准备好了吗?

随着大数据技术与架构的不断演化以及数据驱动的人工智能技术的快速发展,大数据系统日益复杂,目前国内外越来越多的研究机构与企业意识到大数据系统评测的重要性。

大数据系统评测基准是评测标准化的基础,因此近年来国外大数据厂商和机构纷纷推出大数据系统的评测基准。

2012年,Intel公司推出了大数据系统评测基准套件HiBench,并一直维护更新,最新的版本HiBench 6.0可对各类大数据系统进行综合评测,评测负载包括数据排序、机器学习、SQL查询、Web查询等。

2014年12月,IBM公司发布了业界第一份大数据系统基准评测报告,该报告采用TPC-DS评测基准,对IBM Big SQL、Cloudera Impala和Hadoop Hive三款不同的SQL On Hadoop产品的性能和兼容性作了详细的分析与对比。

考虑到大数据系统评测是一个复杂而开放的问题,而业界又缺乏统一的评测基准,2013年,Teradata、多伦多大学、Oracle、Intel、Cloudera、微软等公司和研究机构联合研制了大数据系统评测基准BigBench,该基准于2016年成为TPC(国际事务处理性能协会)旗下的大数据系统评测基准,命名为TPCx-BigBench。由于TPC在数据管理系统评测领域的权威性和影响力,TPCx-BigBench将成为大数据系统评测领域重要的基准,其评测方法很可能成为业界事实的标准。

在国内,大数据系统评测的研究工作也紧跟国际前沿。

2013年中科院计算所开始启动并研制了大数据系统评测基准BigDataBench,该基准涵盖了批量数据处理、交互式分析、NoSQL和在线服务4种典型负载。

基于BigDataBench,2015年1月,中国信息通信研究院联合中科院计算所、华为、中国移动、阿里、腾讯、微软、IBM等国内外知名公司和科研机构共同制定并发布了《大数据平台基准测试》技术要求和测试方法的行业标准。

2016年6月,中国电子技术标准化研究院根据在研国家标准《信息技术 大数据系统通用规范》对华为公司的大数据系统FusionInsight从功能性、可靠性、易用性、安全性等方面开展了评测验证。

2016年7月全国信标委大数据标准工作组下设的“产品与平台专题组”提出的两项国家标准《信息技术 大数据存储与处理平台技术要求》与《信息技术 大数据分析系统基本功能要求》也已正式立项,旨在为大数据系统功能的符合性评测提供更细致和可行的依据与标准。

总体而言,我国大数据系统评测标准化工作仍处于起步阶段,未来还需要解决诸多问题。

第一,鉴于大数据系统之间的差异性显著,如何设计合理、灵活、可定制的评测指标体系是评测标准化中需要重点考虑并解决的问题。

第二,虽然评测基准为大数据系统评测提供了基础,然而要做到多个被测系统之间性能对比的“公平性”并非易事,还需要细化相应的标准,对评测中预设参数、测试负载、评测步骤进行详尽的约束。

第三,考虑到大数据应用的多样性,大数据系统的评测标准既要满足通用性,又要在一定程度上满足行业特点。

从历史的经验来看,大数据系统评测基准的研制与标准化将是一个漫长、不断完善、与时俱进的过程。

我们相信,大数据系统评测基准研制与标准化将加快推动大数据系统评测工作的实施与推广,并为各行各业大数据应用的高效、健康运行提供技术支撑与指导。


作者简介

阅读

''

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多