参与本皮性能专项认证的产品是五间,新华三,腾讯,北京东方金信,星环和百分点。大家可以看到性能的部分测试结果,这是TPC-DS,执行的时间量都在百秒内,可以看到,上下两个图可以看出来,第二个SQL47最优和中位的差别很大,说明这个是比较难的,有的测的特别好,有的测的特别不好。还有一个是SQL71,它的标准差也是比较高的,说明大家在这块也是差距比较大的。SQL82,53和84的标准方差较小,说明大家在这三个水平是比较接近的,而且这三个任务是相对来说没那么费时的。
性能测试的YCSB分别模拟了写入,并发写,模拟了更新任务比较重的场景,模拟了度曲2数据再更改,再写回的场景。可以看一下,这块是谁的操作数越大,谁就越厉害,这不是时间维度来衡量的,刚才的是谁的时间越短越快,这块美妙的操作数,最优的是175万美妙的操作数,独占大比例的是148万每秒的操作数,读写各半的是164万,最后一个是7万。可以看到最优的往往在百万级别的。标准方差也可以看到,厉害的有非常厉害的,不厉害的有特别差的。这块应该是以后参测厂家应该注意的。这块可能大家有的不太熟悉,做的不太好。
这块是YCSB执行的单位,可以看到执行的难以程度,总体来说,写是最简单的,因为它的任务是比较单一的,读的话,还有95%是读,还有5%的更新。5%的各半稍微难一点,这两个是相当的,最慢的是read wand wwrite,我对比了一下,它总归写了2亿条数据,但是modify像写了2亿,下面还有1亿,它的操作数比别的多,所以他操作的慢,所以这也解释通。所以总体来看,写是最简单的,最容易的,中间这两个都差不多,第二个和第三个是差不多50分钟左右,最后一个是80分钟。可以看到YCSB的耗时也是非常厉害的,在小时级别以上。这是对厂商参加测评的时候负荷是非常大的。
看看机器学习,Kmeans是最优是272,中位是913,标准方差是572,这块大家的水平差距特别大,贝叶斯最优是46,它的差别相对小一些,因为执行时间是比较少的,标准方差也比较低。这块我们未来会增加它的难度,因为数据量小的话,大家的差别看不出来。
terasort比较有意思,去年是13.6TB最后执行时间是在8000多秒,2个小时多一点。这边是32个节点,等于说节点数扩了一倍多一点点,数据规模也是差不多它的两倍多一点点。发现去年的15台结点算下来151703,画到图上简单来看,并没有呈现一个完全线性的扩展,或者是一个线性可比性。而有两种解释,一种是本身terasort或者是Hadoop数据扩展就不会出现线性的扩展。另外,最年的最优的测试没有去年测试好。
terasort最优是10083左右,中位值是3小时,这说明这个测试对大家的考验还是比较大的,因为准方差差不多是1434,一个周期是十个小时,一个测试是一次就3个小时,一天也没有多少时间。整个测试的周期,我们七天的时间还是非常的紧张的。
总结和下一步的计划。
性能方面有一些优化的思路。硬件的调优,操作系统的调优,数据的分布均匀不均匀,代码的应用调优,核心目标是用尽所有的物理资源,不能让它闲着。关于Spark,这次SQL和机器学习大部分厂商都采用了Spark,关于Spark,我们调优也有一些总结,就是压缩和分布数据,包括资源参数,主要是包括CPU,内存比例的关系,这块需要大家常常去摸索,得出一些经验值。很重要的是要通过资源的监控不停的反馈这次调优的参数比例是不是合理,这跟算法的调优都很像。
Hadoop也是主要是压缩任务自数据,还有资源参数的调优。HBase涉及到压缩,读写的优化的策略,还有按选择合适的线程数。
还有性能的评测总结,跟去年一样,我们在统一的平台,统一的测试数据,统一的测试供给,统一的测试周期,统一的测试规则,很多东西你能调,别人也能调,你不能调,别人也不能调,大家的规则是一样的。在我们这就是统一的规则,大家能调的就都调,不能调的就都不能调。大家看到我们评测的应是统一的思路。考察的结果一个是产品本身的性能,有稳定性,包括它的易部署性,包括易运维性,还有组建本身的性能。还有是考察参测团队综合使用大数据平台的能力,包括你环境部署与集群规划,测试工具的使用,多任务调优的能力,包括怎么安排你的测试的进度,先测哪些,后测哪些。最后是集群的故障处理和运行维护。在我们的测试中很多集群出现了宕机,因为你是在测性能的极限值。可以看出考察的是产品和调优团队整个的能力。所以考察上是比较全面,综合。