写点什么

通过调研开源基准测试集,解读大数据的应用现状和开源未来

2018 年 12 月 17 日

通过调研开源基准测试集,解读大数据的应用现状和开源未来

论文导读: 这篇综述论文解读了 2006 大数据系统兴起以来代表性应用和开源基准测试集。近年来,随着大数据系统的快速发展,各式各样的开源基准测试集被开发出来,以评测和分析大数据系统并促进其技术改进。然而,迄今为止,还没有就这些基准测试集进行系统调研。因此,本文对当前最前沿的开源大数据基准测试集进行全面总结,阐述其历史、现状并展望下一步研究方向。首先,我们从大数据系统的角度对大数据基准测试集进行了定义和分类。随后,我们回顾了基准测试技术的三个重要方面——工作负载生成技术、输入数据生成技术和系统评估指标。最后,论文从这三个方面对现有基准测试集进行归类,并重点描述其中具有代表性的测试集,进而讨论未来研究方向,以推动该领域工作的持续发展。


大数据开源基准测试集


1. 大数据系统及开源基准测试简介


大数据系统通常被分为三个阵营,如图 1 所示:


(1)Hadoop 相关系统;


(2)数据库管理系统(DBMSs)和 NoSQL 数据库;


(3)针对图数据、流数据和复杂科学数据的特殊处理需要的专用系统。



图 1. 大数据系统分类与总述


总结归纳了当前流行的开源基准测试集,图 2 显示了这些基准测试集的词云图,其中词的大小和流行度成比例。



图 2. 开源大数据基准的词云云


2. 大数据基准测试分类及发展历史


大数据基准测试集的类别:


(1)微基准测试集。这类基准测试集被用于评估单个系统组件或特定系统行为(或代码的功能);


(2)端到端基准测试集。这类基准测试集的目的是使用典型应用场景评估整个系统,每个场景都对应一个工作负载的集合。


(3)基准测试集套件是不同的微基准测试集或端到端基准测试集的组合,这些套件的目标是提供全面的基准测试解决方案。


发展历史:大数据基准测试是一个活跃的研究领域,许多基准测试集在最初发布之后仍在发展,图 3 显示了它们的初始发布年份。



图 3. 大数据基准测试集发布时间轴


3. 工作负载生成技术


工作负载实现技术:我们将大数据工作负载划分为三类:


(1)I / O 操作。这些操作在输入数据或文件上执行(例如,读、写、移动数据或新建、删除文件)。


(2)算法操作。当作为一种算法实现时,一个工作负载由一个或多个对输入数据的独立操作组成。


(3)基本操作(EO)。这些操作要么是标准的 SQL 操作符[102],要么是具有类似语法的操作符(如 Pig Latin)。图 4 显示了代表性负载和操作的词云图。



图 4. 代表性大数据工作负载的词云图


工作负载提交技术:我们将本文回顾的基准测试集的提交策略分成三类:


(1)预先指定。在许多基准测试集中,工作负载的输入数据、提交速率和顺序都是在执行前指定的。


(2)参数控制。这类基准测试集允许用户使用参数控制工作负载的执行。


(3)真实日志驱动。通过使用这种提交策略,基准测试集可以根据真实世界的日志来真实地复现工作负载。


开放性挑战:已有的大数据基准并不能完全符合以上三个准则:(1)相关性。鉴别被测系统的典型行为是实现高度相关性负载的先决条件。(2)可移植性。我们首先从软件系统(即软件栈)的角度讨论这个准则。(3)伸缩性。为了评估不同规模的系统,基准测试集应该能够调整工作负载的规模,同时保证其提交和混合的真实性。


4. 输入数据生成技术


大数据基准测试中的数据生成器:


(1)现有数据集:许多大基准测试提供固定大小的数据集作为其工作负载的输入;


(2)基于合成分布的数据生成器;


(3)基于真实数据的数据生成器;


(4)混合数据生成器。


开放性挑战:考虑大数据的数据量和速度,以及不同的数据类型和来源(数据种类),此处有两个具有挑战性的关键问题:第一个问题是现有的基准测试集可以构建模型来提取某些数据类型(如表格,文本和图数据)的真实数据集的特征,但是很少关注其他数据类型,如流、图、视频和科学数据。第二个同时也是更具挑战性的问题是如何评估产生的合成数据的真实性水平。


5. 评估中的指标和性能参数


评估中的指标和性能参数:


(1)通用性能指标包括响应时间、吞吐量、可靠性、可用性;


(2)体系结构指标包括执行周期划分、处理器计算强度;


(3)价格和能耗指标包括性价比指标、能耗指标。


大数据系统性能参数:


(1)系统配置参数。大数据系统中大量软件栈和多种编程语言的使用会带来大量的配置参数。


(2)资源分配参数。当数据中心中部署大数据系统时,计算和网络资源由不同系统的工作负载共享。


论文原文:2018 年发表于服务计算领域顶级期刊 TSC: (http://ieeexplore.ieee.org/document/7990174/),图5显示了英文原文导读图。


中文技术报告:https://mp.weixin.qq.com/s/qW2UPheanJcda_lfuTXyMw



图 5. TSC 英文原文导读图


2018 年 12 月 17 日 21:061032

评论 1 条评论

发布
暂无评论
发现更多内容

中台上线半年,我总结出了“七宗罪”

夜来妖

中台 企业中台 后台开发 业务中台 后台

csapp-chapter2

卓丁

深入理解计算机系统 csapp

白天写代码,晚上摆地摊!9年前摆地摊学会了这些道理...

王磊

深入理解JVM垃圾回收机制 - 何为垃圾?

NORTH

深入理解JVM 垃圾回收机制

判例学习(一)梨视频诉字节跳动帮助侵权二审判决

尹晓铁

学习 读书笔记 互联网 知识产权 法律

centos6.9开机启动服务说明

唯爱

强烈安利第一个画图工具!

我是程序员小贱

高效工作 高效

如何让解决无法访问 GitHub 的问题?

JackTian

GitHub

过滤器 和 拦截器 6个区别,别再傻傻分不清了

程序员内点事

Java

hexo博客系统的实现原理与搭建

音视频专家-李超

Hexo 博客

Android工程架构演进及康威定律

石头

机器学习算法评估指标——2D 目标跟踪

做技术BP的文案Gou

学习 2D 评估标准

别做误人子弟的「职业导师」

Tony Wu

职业成长 导师 教练

React之Context源码分析与实践

费马

源码分析 React useContext Context React-Router

从零到部署:用 Vue 和 Express 实现迷你全栈电商应用(三)

图雀社区

vue.js Vue Node

csapp-chapter1

卓丁

深入理解计算机系统 csapp

【大厂面试03期】MySQL是怎么解决幻读问题的?

NotFound9

MySQL 数据库 编程 架构

大厂经验(1):一套Web自动曝光埋点技术方案

DeeperMan

大数据 数据采集

从零到部署:用 Vue 和 Express 实现迷你全栈电商应用(四)

图雀社区

Vue Node

为什么你成不了「超级个体」?

非著名程序员

程序员 互联网 提升认知 认知提升

ARTS-WEEK02

lee

MyBatis启动之XMLConfigBuilder解析配置文件(二)

ytao

后端 mybatis

游戏夜读 | 网络游戏怎么赚钱?

game1night

做一个纸上谈兵的项目经理

escray

从零到部署:用 Vue 和 Express 实现迷你全栈电商应用(六)

图雀社区

node.js Vue

重磅推出:第14份年度敏捷状态报告(最新2020)

Bob Jiang

敏捷 调查报告 state of agile

分布式架构,刚性事务-2PC必须注意的问题及3PC详细解

奈学教育

分布式架构 2PC注意事项 3PC详解

源码分析 | 像盗墓一样分析Spring是怎么初始化xml并注册bean的

小傅哥

源码分析 小傅哥 spring源码 bean注入过程

从零到部署:用 Vue 和 Express 实现迷你全栈电商应用(五)

图雀社区

Vue Node

深入理解Java虚拟机

NORTH

深入理解JVM

多来点胜利,对冲颓丧

zhoo299

成长 备忘

NLP领域的2020年大事记及2021展望

NLP领域的2020年大事记及2021展望

通过调研开源基准测试集,解读大数据的应用现状和开源未来-InfoQ