论文部分内容阅读
随着信息技术的发展,越来越多的应用系统需要处理时态信息。传统的数据库系统已经不能满足用户对时态信息处理的需求,于是时态数据库技术就成为新一代数据库研究重点领域之一。
时态数据库中,时间粒度是衡量时态元素离散程度的单位。不同的应用领域,可能需要不同的时间粒度模型来描述时间属性,功能完善的时态数据库系统应能支持用户对时间粒度的管理,包括时间粒度的定义、针对不同时间粒度的查询等操作。
经过数十年的发展,虽然时态数据库理论研究取得了丰硕的成果。但由于技术和标准化等多方面原因,完整的时态数据库系统产品至今未能出现。中山大学数据库与协同软件实验室应时所需,采用中间件形式,实现了基于ATSQL2时态查询语言的时态处理构件TempDB。TempDB存在于在应用层和关系数据库之间,通过执行ATSQL2语句到标准SQL的转换来实现用户时态信息的处理操作。但是,TempDB并没有实现对时间粒度管理的支持。
本文在保持TempDB原有架构基础上,扩展出时间粒度管理层来实现对时间粒度操作的支持并保持版本向前兼容。论文系统地阐述了TempDB扩展实现时间粒度管理的意义和所需的理论基础,讨论了TempDB扩展时间粒度操作的方案,并分别针对时态数据定义、时态数据操纵和时态数据查询三种语句对ATSQL2范式进行扩展以方便在TempDB中支持时间粒度操作。文章还进一步分析了时间粒度管理层的设计与实现。时间粒度管理层的主要部分是粒度元数据管理模块。在介绍元数据库管理模块时,文章主要分析了日历系统的存储、创建与系统提供的接口。其次,文章分别阐述了扩展后时态DDL、时态DML和时态Query三种ATSQL2语句的时间粒度处理算法。接着,论文选择一种常用的日历系统,存储粒度元数据信息,新建数据库实例,并展示实验结果。最后,文章还分析了扩展后TempDB中间件的不足,并指出需要完善的工作。