谈分布式测试体系构建
自谷歌提出云计算概念之后,大数据领域的发展就逐渐加速日新月异,云计算具体到实例,可以归纳为调度、均衡、容错、监控、运维等一整套操作海量数据的方案。有别于传统小规模或孤立体系产品,云计算生态圈存在错综复杂的系统级别关联,并行其中的不同架构和模块流转于超大规模的分布式软硬体资源中,很难划分出明显的界限。对于这样的产品体系,传统领域的测试方案要么逐渐失效,要么作用域缩减到仅能覆盖体系末端。为了保证大数据平台的可靠性、稳定性和高性能,亟需构建一套与之相匹配的测试体系来衡量产品是否合格。 存在的问题 业界在大数据测试领域的探索始终没有停止过,以hadoop生态圈为例,与之相关的各类测试工具自成一体,例如Hadoop本身通过mock出MiniCluster(包括MR和HDFS)用来为开发代码做功能验证,DFSIO/Slive等用来做压力和性能测试;HBase则通过一系列模拟随机/顺序读写相关的工具来做性能测试。而我们自己的ODPS则通过HiveUT来完成功能覆盖和有限的性能验证。仔细梳理这些工具不难发现存在一些问题,列举如下: 1.这些独立的测试工具和体系很难被其他产品复用,比如说验证hadoop...