Web数据转换是Web异构数据源集成的重要研究之一,通常分为实例层和模式层两方面进行。本文的研
最初的数据转换问题(data exchange problem) [1]是由Fagin 等人提出的,他们给出了数据转换的相关定义。
文献[2]中说明了数据转换通常将源数据作为输入, 由一组模式映射的集合(也叫元组生成依赖关系)对源数据进行选择,将其转换为满足给定的模式映射的目标数据集,在此基础上还给出了数据转换过程中通解、核解的概念以及基本求解方法,并将一些相关领域知识转换为约束条件融入到数据转换求解算法中(核解是保留映射语义的解决方案中最小的解决方案, 简称核解)。
由于在相关研究中核解已被确定为数据转换的最优解决方案,因此在数据集成过程中如何有效快速计算核解非常重要。现有的计算数据转换核解的方法,通常是通过chase 方法执行原始的源到目标映射规则生成目标实例,然后应用一些实例选择方法对属于核解的目标实例进行选择。
基于上述研究,已有许多方法对计算核解进行了研究,文献[3]从模式映射的角度出发,通过对映射规则进行优化设计,将映射规则转换为可以执行的脚本来计算核解。文献[4]在给定元数据约束和数据示例的情况下,给出了一种从潜在映射空间中选择最佳映射的方法。但是这些方法通常不适用于数据源规模较大的大型映射场景,可能导致目标数据库中的数据存在大量冗余数据。文献[5]通过弱化目标数据中的约束条件来计算核解,由于该方法只能在特定条件下对有限的数据进行处理,存在一定局限性。关于模式匹配的研究中,大多数研究是关于语义相似性度量方法,文献[6]使用WordNet 信息引入了一种新的语义相似性度量方法,来处理模式匹配问题。文献[7]同样在语义相似性度量方法的基础上提出了一种在半结构化数据和链接数据之间进行模式匹配的方法。关于数据转换的研究中,文献[8]提出了一种可伸缩实体保存数据转换(SEDEX)方法,该方法利用在模式级别和数据实例级别的信息解决使用不同方法表示模式间对应关系导致模式映射不准确的问题。为了设计准确的模式映射信息,一些方法[9] [10]以交互方式从映射设计器那里获取数据示例,用以设计源模式与目标模式之间的模式映射,并通过将范围较小的多个独立设计的方案映射关联到较大的方案映射构造复杂映射。国内关于数据转换的研究大都集中于ETL 技术的研究[11] [12] [13], ETL 技术通常用来描述将数据从来源端经过抽取、转换、加载至目标端的过程。研究过程中的主要问题是解决数据异构性及转换效率提升问题。
传统的模式映射设计中,通常都是通过消除数据值冗余来避免更新的低效性。研究表明,许多冗余的出现都是由于映射规则不完善导致的,因此直接通过重写规则防止在目标中生成冗余数据要比执行不完善的映射规则生成冗余数据后再尝试去删除这些冗余数据更有效。考虑如表1,表2 所示场景,表1