关键词:大数据;数据质量;云清洗;Map-Reduce
中图分类号:TP391文献标识号:A
DesignandImplementationofCloudCleanSystemonBigData
HUANGShenbin1,WANGHaijie1,ZHUZhenhua2
(1NetworkandInformationCenter,HarbinInstituteofTechnology,Harbin150001,China;
2SchoolofComputerScienceandTechnology,HarbinInstituteofTechnology,Harbin150001,China)
Abstract:Datacleaningisoneofthecentralissuesinbigdata.ThepaperdescribesacloudcleansystembasedonHadoopfordatacleaning.UsingMap-Reducemodel,thesystemdetectsandrepairsvariousdataqualityproblemsinbigdata.Thepaperdesignsthesystemfromthefollowingfeatures:(1)thesupportforcleaningmultipledataqualityproblemsinbigdata;(2)avisualtoolforwatchingthestatusofbigdatacleaningprocessandtuningtheparametersfordatacleaning;(3)thefriendlyinterfacefordatainputandsettingandcleaneddatacollectionforbigdata.Thecloudcleansystemisapromisingsystemthatprovidesefficientandeffectdatacleaningmechanismforbigdataineitherfilesordatabase.
Keywords:BigData;DataQuality;CloudClean;Map-Reduce
0引言
虽然已经有很多数据清洗的技术和算法被相继提出,但却并非都适用于大数据上。主要原因如下。
首先,现有的数据清洗算法的效率并不能满足大数据的需求。并行计算是大数据算法的一个常用手段。然而,除了少数实体识别的算法[2-3]外,几乎没有其他的并行数据清洗算法获得提出。具有多种数据质量问题的大数据清洗工作的整体效率往往也都不高。
其次,现有的数据清洗系统[4-7]集中于数据质量的某一方面。NADEEF[8]支持各种形式的规则,但是缺少数据清洗领域的一些重要问题如缺值填充和冲突属性的真值发现等。对于具有多种数据质量问题的大数据而言,这往往是不够高效的。究其原因,一方面多种数据质量问题需要多个不同的系统来完成各自的数据清洗工作,从而导致清洗过程需要多次的导入和导出数据;另一方面,多个数据质量问题往往可能会共享相同的操作,如去除数据冗余[9]和流通数据发现[10]即都需要实体识别。如果不同的数据质量问题均由各自的清洗系统来完成,那么这些相同的操作便将多次执行,不利于全局的优化。
最后,现有的数据清洗系统常常需要设置参数,例如不一致性检测[11]的约束规则,实体识别[12]的阈值。对于小规模数据来说,这些规则能够通过人工的观测和理解来设置。然而对于大数据,仅靠观察来设置是不合理的,而对整个数据人工的遍历一遍更是不可能的。
2云清洗系统概述
清洗大数据的一个很直观、很自然的想法便是将云计算的技术应用其中,并将计算任务分布式地分发给多个节点以提高并行度。本文设计的大数据云清洗系统采用的便是这个思路,基于Map-Reduce封装实现了数据清洗领域的各类基本问题和清洗操作,包括实体识别、不一致性检测和修复、缺值填充和真值发现。
云清洗系统基于Hadoop来实现架构,利用Map-Reduce框架系统能够高效地控制硬件资源执行分布式计算。整个系统的数据流如图1所示。图1数据流
Fig.1DataFlow
系统的数据是组织在分布式文件系统中。而输入数据则是通过文件或者数据库来提供,前者由用户上传,后者将是用户提供数据库的连接信息而由系统来访问。数据输入后存在于分布式文件系统中,而集群中节点的数据则通过分布式文件系统来访问。在清洗过程中,数据在mapper和reducer间传递,清洗结束后数据被送回到分布式文件系统。和输入类似,用户可以将清洗后的数据以文件的形式下载或者提供数据库连接信息再由系统输出到数据库中。
系统的结构如图2所示,其中包含一个Master和多个Slave节点。具体地,Master节点接收数据清洗任务的输入数据、清洗计划以及参数设置。而清洗计划即是一个清洗操作序列,由系统提供的四种清洗的基本操作构成,这四种操作分别为实体识别、不一致性检测和修复、缺值填充和真值发现,并且四种操作可以重复选择。
图2系统结构图
Fig.2ArchitectureoftheSystem
3数据清洗操作
本节将简要介绍四个数据清洗操作的功能以及基本Map-Reduce计算框架下的算法实现。
3.1清洗操作
为了使清洗系统能够复用共享的操作以提升清洗的效率,研究提取了数据质量问题中的四类基本的操作,分别是实体识别、不一致性检测和修复、缺值填充和真值发现。对其概述如下
实体识别:识别元组是否代表现实世界的同一实体。
不一致性检测和修复:检测违反规则集的元组,并修复数据使之符合规则。
缺值填充:根据其他完整的元组数据来填充元组的缺失属性值。
真值发现:选择代表同一实体的不同元组存在取值冲突时的真实取值。
这些操作涵盖了数据质量方面的大多数问题。本文的系统可以利用如上的基本操作并根据实际需求来组合形成新的数据清洗的复杂操作。
3.2算法实现
这些操作对应的算法可在Map-Reduce框架下获得实现,再并行地在各个slave上运行。限于篇幅,此处仅给出其简要介绍。
(1)实体识别。该算法有两阶段。第一阶段,构建属性索引表,使得索引表中拥有相同属性值的数据对象对应于同一个实体。这一阶段由一轮Map-Reduce实现并完成。其中的Map阶段划分主要根据属性的取值来进行数据划分,而Reduce阶段则根据属性取值来对元组决定其分群。第二阶段,完成实体的识别,执行相似度连接查询生成相似实体对集合。该阶段由五轮Map-Reduce实现并完成。其中的第一轮分别统计每个实体及每个实体对的出现次数。第二轮和第三轮分别根据同时出现在实体对中的第一个实体和第二个进行聚集,生成相似实体对集合。稍后的第四轮和第五轮则根据阈值和计算的相似度,完成实体划分。
(3)缺值填充。研究根据不同的属性取值设计了多种不同的算法类型来实现缺值填充。对于连续变量值的缺失而言,就是利用其他的属性取值通过回归来实现缺值填充。此处的回归包含三个子过程,分别是:标准化、排序和回归,每一个操作均对应一轮的Map-Reduce。具体来说,标准化阶段将所有属性进行标准化,并计算各个属性的最小值,构成最小值向量。排序则对所有元组的最小值向量计算相对大小并排序。回归将完成回归并填充缺失值。离散变量值缺失,则通过分类来实现缺值填充。分类也同样包含三个子过程,分别是:概率计算、参数聚集和缺值填充,每个操作也都对应一轮Map-Reduce。具体地,概率计算过程需要计算每个特征属性的条件概率和分类属性的边缘概率,生成概率表。参数聚集则根据概率表来聚集缺值填充需要的参数。而缺值填充主要根据聚集的参数来完成填充。
4用户功能接口
为加强国有住房出售收入的管理,贯彻落实《北京市国有住房出售收入上交财政暂行办法》,根据财政部财综字(1995)36号《关于开展国有住房出售收入清查工作的通知》,现将我市国有住房出售收入清查工作的有关事项通知如下:
一、市、区县财政部门负责市、区县所属企业、行政事业单位和房地产管理部门国有住房出售收入清查工作。
二、企业、行政事业单位和房地产管理部门要对以前年度出售的国有住房进行认真清查,并按规定填写“北京市国有住房出售收入清查表(基层表)”,于9月10日前将基层表并附文字说明一式二份报送主管部门。没有出售国有住房情况的单位报送空白表。主管部门将各基层表汇总后于9月30日前向同级财政部门报送“北京市国有住房出售收入清查表(汇总表)”,并附文字说明一份。
三、国有住房出售收入清查起止期为1989年1月1日?1995年6月31日,凡在此期间出售的国有住房均在清查之列。
四、国有住房清查的具体内容:
(一)已出售国有住房建筑面积;
(二)应收售房款(按批准的售房价格扣除各项优惠计算填写);
(三)已收售房款,按单位实际已收到的售房款填写;
(四)应上交财政比例,根据单位不同性质,按京财建(1995)1326号文件的有关规定填写。
(五)应上交财政金额。
五、在国有住房出售收入清查中,各单位还应向负责清查的同级财政部门提供1993年12月31日前按标准价优惠购房职工及配偶名册。
上海市工商行政管理局:
你局沪工商经(90)第373号请示收悉。经研究,现答复如下:
一、《中华人民共和国药品管理法》并未排除工商行政管理机关依据其他法律、行政法规及该法第五十四条的有关规定对企业进行监督管理和行政处罚。
工商明电〔2015〕2号
各省、自治区、直辖市工商行政管理局、市场监督管理部门:
近期,一些商家、互联网站借中秋国庆消费旺季,推销高档月饼、烟、酒等高价时令礼品,宣扬奢靡之风、送礼文化、集团消费,助长了享乐主义的不正之风,破坏了党风政风,为违规购买赠送节礼、违规发放福利等现象提供了土壤。为了防止“”问题反弹,深入贯彻落实中央“八项规定”精神,引导树立理性消费观念,遏制社会不良风气,现就有关事项通知如下:
一、高度重视,迅速行动。各地要进一步增强大局意识和责任意识,充分发挥市场监管职能作用,综合运用市场监管的法律法规,采取有效措施,努力维护好节日市场秩序,同时为持续遏制享乐主义、奢靡之风提供保障。
三、切实开展消费警示和教育引导。各地要充分发挥12315消费者投诉举报网络的作用,及时受理和依法处理“两节”期间消费者的投诉举报,积极调解消费纠纷,严厉查处侵害消费者权益的案件。要强化12315数据分析利用,依法按规定有关购物、服务、旅游等方面的提示和警示信息,增强消费者自我保护意识。要重视发挥各级消费者协会对消费的教育引导作用,运用多种形式宣传和倡导绿色、理性、文明和科学的消费理念,正确引导消费。
六、及时报送重大事项和信息。各级工商和市场监管部门要加强值班管理,安排足够力量在岗值班,严格落实岗位职责,确保节日期间工作正常运转。要坚持重大事项报告制度,切实做好紧急情况应对的准备工作,畅通信息通报渠道,确保一旦发生突发事件立即请示报告。重大突出问题要及时报告上级工商行政管理机关。