摘要
大规模的分布式数据库中,诸如网络分区、信息丢失、节点宕机等软硬件故障无法避免.为了提高分布式数据库的可靠性、验证容错协议的正确性,分布式数据库应定期进行故障注入测试,即在系统运行过程中人为引发故障.然而各种故障的组合空间太大,无法枚举.已有的测试方法:一类是随机式故障组合,其实现方法简单但不能保证探索了所有的故障组合;另一类是通过专业知识分析系统构成并设计的故障组合,其测试结果更加完善但不具备普及性.以线性数据驱动的故障注入测试LDFI (Lineage-Driven Fault Injection)为原型,在分布式数据库的基础上,实现了一种同时具有完备性和普及性的自动化故障注入测试工具.实验结果表明,该测试工具能够以更少的测试案例,发现随机式故障注入无法发现的复合故障组合所引起的系统漏洞(bug),提高了数据库的可信度.
- 单位