工具系统,中国科学院软件研究所学术年会’2017

天正 4
暨计算机科学国家重点实验室开放周 工具系统 系统研发团队:郑莹莹,许利杰,刘重瑞,沈雯婷,赵伟,王伟 联系我们:zhengyingying14@ “大数据系统的运行是否可靠?有没有隐藏的缺陷?”
“数据处理和分析结果靠不靠谱?”“系统升级是否引入了新的问题?” 系统上线运行前,应用开发、运维人员和用户是否还在为这些问题“纠结”? ReliabilityBench是一种面向大数据系统的可靠性测试框架,提供大数据SQL查询、大规模图分析以及机器学习等广泛使用的典型应用,并根据应用的计算特征生成满足异常规则的测试数据,同时利用组合测试技术削减参数组合空间。
该框架可用于提前发现大数据系统、应用和数据存在的可靠性问题。
典型应用构造 异常数据生成 针对社交网络、搜索引擎、数据采集及数据查询等应用场景,结合现有大数据系统基准测试中提供的应用类型,选取了若干SQL、Graph、MachineLearning以及Streaming类型、使用广泛并且具有一定计算特征的应用作为典型应用。
类别 应用 计算属性 SQLGraph ScanAggregate JoinMixPageRankTriangleCountConnectedComponents 单表操作单表操作多表关联混合操作 迭代计算 MachineLearningStreaming SingleSourceShortestPathsLogisticsRegressionK-meansALSRandomForestSVMWindowJoinWindowWordCount 分类算法、迭代计算聚类算法、迭代计算 交替最小二乘法分类、回归、宽度优先树 分布式双梯度下降数据流的关联操作数据流的flatmap操作 将具有以下特征的数据称为异常数据:数据量大、数据倾斜、数据稀疏、数据维度高以及数据分布异常。
异常数据生成的步骤如下:
1.给定一个应用;
2.分析应用计算特性;
3.根据应用特征,选取异常规则;
4.生成异常数据。
应用类型 SQL 计算特性 SQL基础查询语句中Scan、Aggregate、Join等应用在处理key/value对,其计算复杂度与key的分布相关。
异常规则 数据量大数据倾斜 异常数据
1.对影响较小的属性列,采用范围内的均匀分布;
2.对两表连接的关联列以及满足Zipf定律的属性列,采用Zipf分布生成倾斜数据。
Graph Graph中的应用大多需要迭代计算,在以顶点为中心的迭代模型中,如果顶点收集消息阶段有很重的操作时,单个顶点的计算压力会增大。
数据量大数据稀疏数据分布异常
1.使用泊松分布生成顶点离散的图;
2.使用Zipf分布生成顶点度异常分布的稀疏图。
MachineLearning MachineLearning中的应用, (如LogisticRegression和K- means等)采用矩阵征作为输入数 据,因此其计算与矩阵特征(
1.矩阵总大小;
2.矩阵维度;
3.每个矩阵列的分布;
4.矩阵稀疏性等)有关系。
其它应用,如RandomForest 数据量大数据稀疏数据维度高数据分布异常 等,需要在内存中保存宽度优先树, 并使用随机采样来训练树。
当数据 维度过高时,资源使用量也增加。

1.原始数据扩展生成异常数据;
2.随机合成满足不同维度、实例数、稀疏度以及异常分布(高斯分布、伽马分布、泊松分布、指数分布、Zipf分布及其混合)等数据。
组合参数测试 大数据系统参数包括:系统参数(可能会影响系统数据分配或任务分配等的参数)和应用参数(应用或算法本身运行时需要的参数)。
针对上述参数,在两个假设(参数相互独立及参数取值与资源占用有正负相关性)的基础上,使用贪心算法进行参数组合空间削减测试。
针对参数取值不满足相关性要求的,使用探测性方法来确定参数取值。
系统获奖及论文发表 2016年度OW2国际程序竞赛第2名2016年度NASAC软件系统竞赛三等奖ICDCS2017JCCWorkshop论文 评测发现的系统缺陷与应用错误 目前已发现ApacheSpark系统的1个严重系统缺陷和6个应用错误: 发现的严重bug[SPARK-4672],适用于所有的迭代图应用Join查询:小表内连接大表出现内存溢出错误Mix查询:一表同时参与多次Join操作时计算结果错误RandomForest应用:在数据维度高、多实例数、数据混合分布时出现内存溢出错误LogisticsRegression应用:在数据量大、数据维度高、倾斜数据时出现运行超时错误ALS应用:在数据量大以及迭代次数多时出现内存溢出错误PageRank应用:在数据量大以及数据倾斜时出现内存溢出错误

标签: #中文 #cvv #citizenship #什么意思 #什么意思 #什么意思 #单位 #python