新闻

Linkedin用户组已建立欢迎访问。 BigDataBench3.2版本的发布(增加了对图形,流框架和Flink的支持),BigData 100排名的发布。新的BigDataBench用户手册。增加了两个新的关于BigDataBench的材料 [BigDataBench-WBDB2015] [BigDataBench-HPBDC2015]。 TR on Eight Dwarfs workloads in Big Data Analytics。 A new TR on big data workload characterization。BigDataBench的子集BigDataBench_DCA成为了 中国第一个工业基准BigDataBench Handbook说明书发布。 BigDataBench相关教程已经发布于顶级会议 Micro 2014的“Tutorial”环节。 BigDataBench已经可以在 MARSSx86, gem5, 和 Simics模拟器上使用。

综述

BigDataBench是一个面向体系结构、系统、数据管理等多个学科方向“大数据基准测试程序集”,其秉持开源共享的理念,可以为工业界和研究界使用。不同于单节点内较为简单的基准测试程序集,比如SPEC CPU(由顺序计算型负载构成)和PARSEC(由多线程负载构成),BigDataBench(最新发布的版本是BigDataBench3.2)包含了5种典型的大数据应用领域,分别是搜索引擎,社交网络,电子商务,多媒体分析和生物信息学。同时,BigDataBench选取了15个真实数据集和34个代表性大数据负载。

在选取代表性负载方面,BigDataBench着重从OLTP,NoSQL,OLAP,交互式和离线分析,图计算和流计算等大数据应用场景选取。其中,BigDataBench选取出“8个小矮人负载”作为最为典型的大数据分析类负载(请参阅相关技术报告)。与此同时,它还包含了大量结构化、非结构化、半结构化的真实数据集。BigDataBench还提供一个端到端的应用程序基准测试框架 (请参考 DASFAA 论文) ,通过抽象数据操作和负载执行模式可以创建更加灵活的基准测试场景,该测试框架还可被扩展到其他应用领域。

对于各个大数据基准测试程序,BigDataBench提供了其在不同架构上的实现用例。例如, 离线分析的测试用例可以在MapReduce,MPI,Spark, DataMPI等多个平台运行;互动分析和OLAP的测试用例可以在Shark,Impala,Hive等平台的运行。 BigDataBench 提供了用与生成大规模数据的“大数据生成工具”—BDGS;基于一定数量的真实大数据集,BDGS可生成保留原有数据特性的PB级的数据。

为了模拟和重现多应用多用户情况下的云或者数据中心的测试,我们提供了多租户版本的BigDataBench,它允许根据实际工作量来灵活的设置混合负载类型-例如脸谱网,谷歌网页链接和搜狗。

对于系统和体系结构的基准测试,比如体系结构层、操作系统层、网络和存储层,基准测试程序的数目将变得十分巨大,尤其是面对不同的实现方式。为了降低基准测试的成本,我们通过从一些特定视角分析和刻画这些负载,最终选取了少量具有代表性的基准测试程序,并因此构成了不同的BigDataBench子集。在体系结构研发中,基于仿真的研究是非常耗时的,所以我们提供了面向不同模拟器仿真(MARSSx86,gem5,和Simics)的子集——BigDataBench体系结构子集

我们的合作伙伴其中包括电信研究院科技,华为,英特尔(中国),微软(中国),IBM CDL,百度,新浪,浪潮,中兴通讯等,我们也发布中国首个行业标准的大数据基准—BigDataBench-DCA测试套件,其是BigDataBench的一个子集。

BigDataBench的优势

表1比较了当前常见的9种基准测试程序集。通过对比可以看出BigDataBench是一个综合全面的大数据基准测试程序集

表1:BigDataBench和其他基准测试程序集的差异

使用规范[1] 应用领域 负载类型 负载 可扩展数据集[2] 不同的实现[3] 多租户版本[4] 精简子集[5] 包含模拟器[6]
BigDataBench 5 4[7] 33 [8] 8[9]
BigBench 1 3 10 3
CloudSuite 无/A 2 8 3
HiBench N/A 2 10 3
CALDA N/A 1 5 N/A
YCSB N/A 1 6 N/A
LinkBench N/A 1 10 N/A
AMP Benchmarks N/A 1 4 N/A

[1]“有”表示包含了相应功能或属性。“无”表示不具有相应功能或属性。

[2]“可伸缩数据集”是指提取自现实世界的数据集。

[3] 对于不同的实现方法,“有”表示同一个测试用例提供了多样化的实现方式。“无”表示对于同一个测试用例仅提供了很少的实现方式。

[4] 多租户版本,“有”表示提供多租户版本。“无” 表示不提供多租户版本。

[5] 对于子集,“有”表示提供各种子集 。 “无”表示在套件中并不区分子集。例如, BigDataBench提供了行业标准的子集测试套件。

[6]对于模拟器,“有”表示提供模拟器版本,BigDataBench提供了MARSSx86,gem5,Simics等模拟器上可运行的版本。 “无”表示不提供模拟器版本基准测试。

[7]BigDataBench中包含的四种负载类型是离线分析,云端OLTP,交互式分析和在线服务。

[8]BigDataBench的规范中包含了42个负载,我们已经实现了其中的34个。

[9]BigDataBench有8个真实数据集是可缩放的,而其余6个正在进行的研发。

BigDataBench新增内容

BigDataBench3.2版本增加了对图计算,流计算框架和Fink软件栈的支持。

构建方法学

图1总结了构建BigDataBench基准测试程序集的方法。总体而言,它包括五个步骤:调查和选择重要的应用领域;抽取典型的负载和数据集;提出大数据基准测试规范;提供不同平台的实现方式;通过混合不同领域代表性负载构建BigDataBench子集和多租户版本。

图1 BigDataBench基准测试方法

??1

基准测试程序

BigDataBench 3.2包括了15个真实数据集和34个大数据负载。表2是数据集信息和对应的数据扩展方案。从表2可见,BigDataBench选取的数据从类型上包含了结构化,半结构化和非结构化数据,从数据的格式上包括了文字,图形,图像,音频,视频和表数据。表3是BigDataBench负载实现的具体信息。在使用方面,用户既可以针对需求下载自己所需的负载,也可以打包下载全部负载。

表2 总数据集和数据生成工具

数据源名称 数据规模 数据扩展工具
1 维基百科 4,300,000英文文章(非结构化文本) 大数据文本生成工具
2 亚马逊影评 7,911,684电影评论(半结构化文本) 大数据文本生成工具
3 谷歌网络图 875713点的个数,5105039边的个数(非结构化图) 大数据图像生成工具
4 脸书社交网络 4039点的个数,88234边的个数 (非结构化图) 大数据图像生成工具
5 电子商务交易数据 表1:4列,38658行
表2:6列,242735行(结构化表)
大数据表格生成工具
6 科研人搜索简历 278956简历(半结构化表) 大数据表格生成工具
7 图像场景 ILSVRC2014图像数据 (非结构图像) 指定网站提供数据
8 英语广播音频文件 采样数16kHz,16-bit线性采样(非结构化音频) 指定网站提供数据
9 DVD视频 110输入流,分辨率704*480(非结构化音频) 指定网站提供数据
10 图场景数据 39图像文本描述 (非结构化文本) 指定网站提供数据
11 基因组序列数据 Cfa数据(非结构化文本) 4种可下载数据
12 人类基因组数据 Fa数据(非结构化文本) 4种可下载数据
13 搜狗数据 来自搜狗实验室的搜索查询数据和语料库(非结构化文本) 指定网站提供数据
14 MNIST 手写体数字数据库,有60000个训练实例和10000测试实例(非结构化文版) 指定网站提供数据
15 MovieLens Dataset 电影用户的评分数据,有9518231个训练例子和386835个测试例子(半结构化文本) 指定网站提供数据


表3 BigDataBench 3.1 负载集

领域

算法和操作

类型

使用数据

软件栈

ID号

搜索引擎领域

Grep

离线分析

维基百科

Hadoop, Spark,Flink, MPI

W1-1

WordCount

离线分析

维基百科

Hadoop, Spark,Flink, MPI

W1-2

Index

离线分析

维基百科

Hadoop, Spark, MPI

W1-4

PageRank

离线分析

谷歌网络图

Hadoop, Spark,Flink, MPI

W1-5

Nutch Server

在线服务

搜狗数据库

Nutch

W1-6

Search

流服务

搜索引擎数据

JStrom

W1-6-2

Sort

离线分析

维基百科

Hadoop, Spark, MPI

W1-7

Read

Cloud OLTP

科研人搜索简历

HBase, MySQL

W1-11-1

Write

Cloud OLTP

科研人搜索简历

HBase, MySQL

W1-11-2

Scan

Cloud OLTP

科研人搜索简历

HBase, MySQL

W1-11-3

社交网络领域

RollingTop Words

流分析

随机数据

JStorm

W2-1

CC

图形分析

脸谱网数据

Hadoop, Spark, MPI,GraphX,GraphLab,Flink Gelly

W2-8-1

Kmeans

图形分析

脸谱网数据

Hadoop, Spark,Fink, MPI

W2-8-2

Label Propagation

图形分析

脸谱网图数据

GraphX,GraphLab,Flink Gelly

W2-8-3

Triangle Count

图形分析

脸谱网图数据

GraphX,GraphLab,Flink Gelly

W2-8-4

BFS

图形分析

系统自带数据产生(MPI),脸谱网图数据

GraphX,GraphLab,Flink Gelly,MPI

W2-9

电子商务领域

Select Query

数据仓库

电子商务表

Hive, Shark, Impala

W3-1

Aggregation

数据仓库

电子商务表

Hive, Shark, Impala

W3-2

Join Query

数据仓库

电子商务表

Hive, Shark, Impala

W3-3

CF

数据仓库

电影评论数据

JStorm

W3-4-1

CF

离线分析

亚马逊影评

Hadoop, Spark, MPI

W3-4-2

Bayes

离线分析

亚马逊影评

Hadoop, Spark, MPI

W3-5

Project

数据仓库

电子商务表

Hive, Shark, Impala

W3-6-1

Filter

数据仓库

电子商务表

Hive, Shark, Impala

W3-6-2

Cross Product

数据仓库

电子商务表

Hive, Shark, Impala

W3-6-3

Order By

数据仓库

电子商务表

Hive, Shark, Impala

W3-6-4

Union

数据仓库

电子商务表

Hive, Shark, Impala

W3-6-5

Difference

数据仓库

电子商务表

Hive, Shark, Impala

W3-6-6

Aggregation

数据仓库

电子商务表

Hive, Shark, Impala

W3-6-7

多媒体领域

BasicMPEG

离线分析

流数据

Libc

W4-1

SIFT

离线分析

图像场景数据

MPI

W4-2-1

DBN

离线分析

MNIST数据

MPI

W4-2-2

Speech Recognition

离线分析

音频文件

MPI

W4-3

Ray Tracing

离线分析

场景描述文件

MPI

W4-4

Image Segmentation

离线分析

图场景数据

MPI

W4-5

Face Detection

离线分析

图场景数据

MPI

W4-6

生物信息学领域

SAND

离线分析

基因组序列数据

Work Queue

W5-1

BLAST

离线分析

人类基因组数据

MPI

W5-2

发展历程

BigDataBench的发展路线图如图2所示。

图2:BigDataBench发展图

相关版本

BigDataBench 3.1 http://prof.ict.ac.cn/BigDataBench/old/3.1/

BigDataBench 3.0 http://prof.ict.ac.cn/BigDataBench/old/3.0/

BigDataBench 2.0 http://prof.ict.ac.cn/BigDataBench/old/2.0/

BigDataBench 1.0 http://prof.ict.ac.cn/BigDataBench/old/1.0/

DCBench 1.0 http://prof.ict.ac.cn/DCBench/

CloudRank 1.0 http://prof.ict.ac.cn/CloudRank/

手册

BigDataBench手册 [BigDataBench手册]

问题和回答

更多的问题和回答请阅读BigDataBench的手册。

联系人 (Email)

参与人

  • 詹剑峰教授
  • 王磊
  • 李经伟
  • 罗纯杰
  • 高婉玲
  • 杨强
  • 田昕晖
  • 韩锐
  • 林鑫龙
  • 贾禛
  • 任睿
  • 郭远晴
  • 朱妤晴

版权声明

BigDataBench是针对那些对大数据的研究有兴趣的研究者,BigDataBench 的所有关联开源软件都遵循它们自己的免责声明. 使用BigDataBench 的研究人必须要充分了解并遵守各个组件的许可条款。

Software developed internally (by BigDataBench group) BigDataBench-DAC LicenseBigDataBench-DAC Suite Copyright (c) 2013-2015, ICT, Chinese Academy of Sciences All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  • Redistribution of source code must comply with the license and notice disclaimers
  • Redistribution in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimers in the documentation and/or other materials provided by the distribution.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ICT CHINESE ACADEMY OF SCIENCES BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.