论文部分内容阅读
各种高科技领域的强劲需求不断推动着数据库规模的迅速膨胀,传统的集中式数据库系统已经难以满足这种数据密集型应用的需要,因此,开发高性能、低成本的并行数据库系统将有重大意义。
本文主要探讨了在分布式存储的多机系统上设计和实现可扩展的并行关系数据库系统的技术。这一设计思路主要基于以下事实:第一,分布式存储的多机系统比单机系统和共享存储的多机系统具有更快的响应时间、更好的可扩展性、更高的性价比,应用非常广泛;第二,关系数据库管理系统(RDBMS)在当今数据库市场上仍然占据统治地位,关系代数作为关系查询的基础,被认为是最适合实现并行处理的;第三,关系数据库可以高效的执行任何用说明式查询语言表示的查询。
我们基于机群架构实现了一个并行查询原型系统ParaMidSQL(ParallelMiddleware forSQL)。首先,我们描述了该原型系统的总体架构,然后介绍了全局字典的设计方法,最后详细讨论了并行算法库的设计和实现。在设计并行算法库时,考虑了两种不同的实现方法:其一是“基于数据划分”的方法,它采用“分而治之”的策略来实现并行查询,其二是“基于并行操作算法”的方法,它采用数据交换与查询操作重叠进行的策略来隐藏通信开销。前者实现简单,但是性能表现欠佳,后者性能优异,但是实现起来比较复杂。
在四结点SMP机群上对原型系统进行了性能测试。测试结果表明:ParaMidSQL对数据库查询的基本操作(暂不考虑更新操作)较串行MySQL有显著的加速,选择、排序、连接的平均加速比分别为2.62(3个结点)、3.41(4个结点)、2.93(4个结点)。