论文部分内容阅读
当前,IT产业迅速发展,各领域都积累了大量的信息数据,其中结构化的关系型数据模式由于其提出较早并且易于理解,因此占据了大部分的数据量。随着数据量的规模飞速增长,低质量的数据也随之而来,严重影响了数据的可用性,造成了多方面的不良后果,因此大数据可用性近年来得到了学术界、工业界的广泛研究。 数据一致性是数据可用性中一个重要的子性质,数据模型的不当设计、多数据源集成都有可能导致数据不一致的情况。条件函数依赖是一种基于语义规则的数据一致性表达机理,对于数据一致性违背的检测与修复有重要意义。本文针对条件函数依赖对数据一致性表达能力不足的缺点,提出了对条件函数依赖在语义上的扩展,增强了在规则约束上的表达能力,并根据已有理论中的查错与纠错策略,提出了相应的SQL查询及过程式的检测与修复方案。通过后续实验说明检测与修复算法具有较高的检错率与纠错率,具有实际可行性。 另外,本文提出的增强的条件函数依赖也能表述现有的条件函数依赖及扩展条件函数依赖规则,因此其具有良好的与已有理论的兼容性。同时还通过函数依赖形式化定义高质量数据,从而将高质量数据融入了条件函数依赖的理论体系,明确了高质量数据对数据错误检测与修复的指导意义。 数据完整性是数据可用性中另一个重要的子性质,人工录入失误、非空约束缺失、半结构化数据的属性识别都有可能导致数据完整性缺失。在数据完整性违背的检测与修复方面,采用改进的k-NN算法。在距离度量上,本文对数值、分类、文本三种类型的数据分别计算归一化的距离,从而保证元组间距离度量的合理性;在k值选取上,采用了对k进行均值化评估的方法,动态选取的k参数值。实验结果说明,该方法具有良好的填充效果。 为了在分布式的并行计算环境中对大数据进行数据错误的检测与修复处理,本文提出了在MapReduce编程框架上的算法,包括基于增强的条件函数依赖的数据一致性违背的检测与修复算法、基于主数据的MapJoin和ReduceJoin算法和基于k-NN的完整性违背检测与修复算法。随后设计并实现了一系列在实验说明算法的良好效果。