论文部分内容阅读
数据起源描述的是数据的来源数据(起源数据)以及从来源数据到目标结果的产生过程(起源转换)。利用数据起源技术,可以计算数据的可信度、追溯数据的错误来源、调试数据、理解数据之间的关系等,在数据分析领域具有重要价值。在关系型数据库中,很多数据起源的研究对全特性SQL和过程语言的支持不佳,而且忽略对起源转换规范化研究。针对这些局限,本文提出一种数据起源的表示模型,从多个层面解释全特性SQL和过程语言中的数据起源,并以PostgreSQL为原型数据库进行实现。本文的内容包括几个方面:(1)以属于拷贝贡献语义的Where-Provenance作为本文的起源数据的语义,提出一种起源转换的表示方法Pet(Provenance Explains Transformation)以描述查询中的拷贝转换过程,同时归纳地说明Pet是如何支持全特性SQL和过程语言。(2)在Where-Provenance和Pet的基础下,提出了一种有向图(模式起源图)描述关系表在模式上的起源关系,同时使用模式起源图中的子图路径(起源路径)描述元组的起源转换过程。作为衍生,提出了字段起源图和字段起源图的子图路径分别描述字段的起源关系和值的起源转换过程。(3)扩展PostgreSQL,实现起源信息的提取计算、查询、可视化的功能。具体地,修改数据库的执行器和PL/PgSQL的调用机制,提取模式起源图和每个输出元组的起源路径并返回给查询客户端,客户端对起源图、起源路径进行可视化应用,根据场景需求,客户端从模式起源图、元组起源路径中分离出字段起源图和值的起源路径。值得提出的是,提取过程不会给查询引擎带来较明显的计算负担。