[发明专利]基于Hadoop的关系表非冗余键集合识别方法在审
申请号: | 201410110441.7 | 申请日: | 2014-03-24 |
公开(公告)号: | CN103853844A | 公开(公告)日: | 2014-06-11 |
发明(设计)人: | 袁晓洁;韩术鹏;蔡祥睿;莫云音;温延龙 | 申请(专利权)人: | 南开大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 天津佳盟知识产权代理有限公司 12002 | 代理人: | 李益书 |
地址: | 300071*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 hadoop 关系 冗余 集合 识别 方法 | ||
技术领域
本发明属于数据库技术领域,具体涉及一种新型的关系表的非冗余键集合识别技术。
背景技术
随着计算机的普及和网络技术的飞速发展,互联网上出现了海量的数据可供人们利用,关系型数据是其中最主要的数据组织形式之一。在关系数据库中,键集合信息是理解数据库的结构和特征的基础。所谓键,是指给定数据表中可以唯一标识一条数据记录的属性或属性集合。不存在两条数据记录其构成键的所有属性值都相同。键集合信息对数据建模、数据集成、异常检测、查询优化、索引等大量数据库任务具有至关重要的作用。例如,利用键集合信息,在基于成本的查询优化中可以更好地进行选择性估计;利用键集合信息,数据库管理员可以通过创建索引、创建视图等方法来提高数据访问的效率;利用键集合信息,在数据集成方面可以实现自动化处理;利用键集合信息,可以提高数据表检索元组的速度。然而,在现实应用场景中的大型、复杂数据集中,键集合信息往往缺失或者不完整。原因在于:数据库设计者对数据库内在隐含的关系不够了解;出于性能的考虑,数据库设计者没有明确标出键信息;为了设计方便,数据库设计者采用自动递增的方式产生主键,自增主键只具有唯一标识记录的功能,不具有实际意义。在大型、复杂数据集中,通过人工方法确定数据集的键集合不切实际。数据库管理员和开发者迫切需要有效的键集合信息识别方法,辅助完成数据库优化、分析、维护等繁重任务。因此,如何高效自动识别数据集的键集合方法具有重要理论意义和应用价值。
然而,由于数据库关系表属性数目较多、数据元组数量庞大,数据库关系表的键集合信息识别通常具有较高的复杂性。目前,键集合识别的相关研究工作较少。发现一个非冗余的键是一个NP完全问题,发现所有的非冗余键就更加困难。以前的大部分键识别工作只解决了单属性键的识别问题,并没有解决复合键的识别问题。BruteForce算法是当前大多数商业产品使用的键集合识别方法,但由于CPU和内存容量的限制,该算法只能用于小规模的、属性个数少的数据集。GORDIAN算法能有效地发现数据集中的所有非冗余的键,但当数据集较大时,该算法无法直接进行处理,需要在执行算法前进行数据采样,缩小要处理的数据规模,这样可能会影响结果的正确性。因此,在大数据集之上高效、准确识别非冗余的键集合信息,是一项非常具有挑战性的研究工作。
大规模数据集处理通常需要进行大量计算,一种有效的解决方法是采用分布式计算方法。分布式计算是近年提出的一种新型的计算方式,它结合IT技术,充分利用互联网上的计算机的闲置处理能力来实现超级计算和大数据存储,有效地解决大型计算问题。分布式计算的工作原理是将大的计算任务分解为许多小的子任务,然后将这些小的子任务分配给多台计算机进行处理,最终将计算得到的结果进行收集综合而得到大计算任务的结果,从而有效解决大数据集处理的相关问题。
Hadoop是Apache软件基金会提出的一个开源分布式计算平台,是能够对海量数据进行存储和分析的软件框架。Hadoop利用分布式存储方式来提高读写速度、扩大存储容量,采取MapReduce并行地处理分布式文件系统上的数据以加快数据的处理速度。Hadoop为用户提供了系统底层细节透明的分布式基础架构,用户可以在低廉的硬件设备上部署Hadoop,搭建自己的分布式计算平台。Hadoop集群在存储及计算方面都很强大,用户可以有效地组织计算机资源,非常轻松和方便地完成海量数据的处理。Hadoop的主要特点包括高效性、可靠性、伸缩性及开源性等,用户可以充分利用该平台解决大数据处理的相关问题。
发明内容
本发明的目的是解决在大数据集之上如何高效、准确识别非冗余的键集合信息的问题,提出一种基于Hadoop的关系表非冗余键集合识别方法。
本发明针对现有技术中的问题,创新性的在成熟的BruteForce算法的基础上提出了属性剪枝和数据剪枝策略,极大提高了算法的运行效率;提出了一种基于Hadoop的键集合识别方案,实现了基于Hadoop的键集合识别算法;最终本发明能够高效地得出关系表中所有的非冗余键集合。
本发明提出的基于Hadoop的关系表非冗余键集合识别方法,包括如下步骤:
第1、识别数据中的键集合
第1.1、使用投影统计方法判断一个属性集合是否是键,
定义1:键:键是数据表中唯一标识一条数据记录的属性或属性集合;在数据表中,不存在两条数据记录构成键的所有属性值都相同;
第1.1.1、投影操作:将数据表在属性集合K进行投影得到数据集合S;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南开大学,未经南开大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410110441.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种电解制备硝酸的方法
- 下一篇:一种高温防腐剂