一种基于Hadoop大数据平台的低影响高效率的海量数据抽取方法

文档序号:6631283阅读:2080来源:国知局
一种基于Hadoop大数据平台的低影响高效率的海量数据抽取方法
【专利摘要】本发明公开了一种基于Hadoop大数据平台的低影响高效率的海量数据抽取方法,用Golden Gate从关系型数据库的在线日志文件中抽取变化的数据;将变化数据分别放到各自类别的文件中;利用MapReduce对数据进行解析与处理;对数据进行清洗、转换和过滤异常数据,并转换成适合分布式数据库HBase存储的格式;采用批量导入数据的方式将数据装载到分布式数据库HBase中;使用Tomcat服务器作为Web Server提供Web层的访问服务。本发明可以快速地将海量数据从关系型数据库抽取到大数据平台中,由于通过对数据源日志文件的分析实现对增量数据的抽取,因此本发明在抽取数据时对数据源系统的影响非常小。
【专利说明】-种基于Hadoop大数据平台的低影响高效率的海量数据 抽取方法

【技术领域】
[0001] 本发明涉及一种基于化doop大数据平台的低影响高效率的海量数据抽取方法, 属于智能电网大数据技术应用领域。

【背景技术】
[0002] 随着国民经济的快速发展,各行各业所产生和存储的数据量在急速攀升,"大数 据"已经渗透到每一个行业和领域,成为重要的生产要素。因此,当前很多行业用户,如电力 公司、金融企业等,都面临将关系型数据库中的大量数据抽取到大数据平台的需求。
[0003] 对于大数据的抽取一般通过使用Sqoop来实现,但是Sqoop组件自身的局限性导 致其对于特定的场景并不适用。例如,进行TB级大数据量数据抽取时效率较低,进行增量 数据抽取需改变源数据库表结构,对源数据库性能也有较大影响。


【发明内容】

[0004] 针对现有技术存在的不足,本发明目的是提供一种基于化doop大数据平台的低 影响高效率的海量数据抽取方法,能够提高数据抽取的速度,并且能够减少数据抽取对数 据源带来的系统资源占用。
[0005] 为了实现上述目的,本发明是通过如下的技术方案来实现:
[0006] 本发明的一种基于化doop大数据平台的低影响高效率的海量数据抽取方法,包 括W下几个步骤:
[0007] (1)用结构化数据备份工具从关系型数据库在线日志或归档日志中获得增量变化 数据,并将所述增量变化数据根据其数据操作类型分为W下H类数据保存在Trail格式的 文本文件中:插入数据、更新数据、删除数据;
[0008] (2)将所述插入数据、更新数据、删除数据分别放到各自类别的文件中,使得每种 类别的文件中只有一种类型的数据,用于批量生成分布式数据库皿ase的数据文件HFile ;
[0009] (3)利用分布式并行计算框架MapRe化Ce对步骤(2)中的H种类型数据进行解析 与处理,从而将HFile格式文件输出到分布式文件系统皿FS中。
[0010] (4)使用Web Server提供Web层的访问服务,W Web服务作为中间通道,用于连接 关系型数据库和化doop大数据平台该两个集群。
[0011] 步骤(3)中,利用分布式并行计算框架MapRe化Ce对步骤(2)中的H种类型数据 进行解析与处理的方法如下:
[0012] (Ia)将在分布式文件系统皿FS中存储的增量变化的结构化数据W块为单位,分 布在化doop集群的各个存储节点上;
[0013] (2a)在Map阶段启动多个Mapper任务对各个块数据进行清洗转换,并将清洗转换 后的数据送入到化doop框架中;
[0014] (3a)将Mapper任务的计算结果按照哈希值进行排序,并根据键将同类的值合并 到一个键/值对的集合中;
[0015] (4a)在Re化Ce阶段启动一组Re化Ce任务,每个Re化Ce任务收集一个键/值对的 集合,并对该键/值对集合内的数据进行拼装,形成分布式数据库皿ase内部的HFile格式 文件,将所述HFile格式文件输出到皿FS分布式文件系统中。
[0016] 步骤(4a)中,利用分布式并行计算框架MapRe化Ce生成分布式数据库皿ase的 HFile文件;采用批量导入数据的方式,将数据一次性导入到分布式数据库皿ase中。
[0017] 上述关系型数据库具体采用的是化acle,
[0018] 上述化doop框架具体采用的是CDH 5. 0。
[0019] 本发明可W快速、高效、可靠地将海量数据从关系型数据库抽取到大数据平台中, 同时,由于通过对数据源日志文件的分析实现对增量数据的抽取,因此该方法在抽取数据 时对数据源系统的影响非常小。

【专利附图】

【附图说明】
[0020] 图1为本发明的方法系统技术架构图;
[0021] 图2为本发明的海量数据抽取方法工作流程图。

【具体实施方式】
[0022] 为使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合

【具体实施方式】,进一步阐述本发明。
[0023] 本发明所提出的方法,首先利用基于关系型数据库日志的结构化数据备份工具从 关系型数据库中抽取变化数据,然后在Hadoop大数据平台实现数据的清洗、转换和存储, 最后使用Tomcat作为Webserver提供Web层的访问服务。
[0024] 参见图1和图2,本发明的数据抽取方法如下:
[00巧]一、从数据源抽取数据
[0026] 具体方法为;用Golden Gate从化acIe在线日志中准实时地抓取变化的数据,并 将变化的数据保存在Trail格式的文件中。通过对日志文件的分析实现变化数据的抓取只 会占用很小的系统资源,特别是当化acle中存储的数据量极大、化acle系统负载很重时基 本不会影响化acle的运行效率,也不会影响化acle所在主机或集群的运行效率。
[0027] 二、在大数据平台实现数据的清洗、转换和存储
[0028] 对于Golden Gate提取出的数据,首先将其W半结构化的数据形式存储在皿FS 中,然后根据规则对数据进行清洗和转换、过滤异常数据,并转换成更适合皿ase存储的格 式。为了加快数据装载到皿ase的速度,采用了批量导入炬Ulkload)数据的方式,即利用 MapRe化Ce并行计算引擎直接生成皿ase能够识别的HFile文件,大大缩短了数据入库的 时间。该种批量导入的方式,避免了高强度调用皿ase的API和生成大量WAL日志,节省了 皿ase及大数据平台的CPU资源、网络10和磁盘读写,不会对大数据平台上运行的其他任务 构成资源竞争。
[0029] H、使用Tomcat作为Web Server提供Web层的访问服务
[0030] 由于化acle和C畑大数据平台处于两个不同的集群中,因此W Web服务作为中间 通道可W方便地连接该两个集群,例如在集群间传递指令、查询并展现集群中的数据等。
[0031] 本实施例中,系统W化acle为数据源,W C畑5. 0为大数据平台框架,结合Tomcat 作为Web Server提供Web层的访问服务。在大数据平台中,WMapRe化Ce作为大数据的计 算引擎,W皿FS分布式文件系统存储非结构化和半结构化的数据,W皿ase分布式数据库 存储结构化数据。在化acle端,采用Golden Gate提取源数据。
[0032] 表 1
[0033]

【权利要求】
1. 一种基于Hadoop大数据平台的低影响高效率的海量数据抽取方法,其特征在于,包 括以下几个步骤: (1) 用结构化数据备份工具从关系型数据库在线日志或归档日志中获得增量变化数 据,并将所述增量变化数据根据其数据操作类型分为以下三类数据保存在Trail格式的文 本文件中:插入数据、更新数据、删除数据; (2) 将所述插入数据、更新数据、删除数据分别放到各自类别的文件中,使得每种类别 的文件中只有一种类型的数据,用于批量生成分布式数据库HBase的数据文件HFile ; (3) 利用分布式并行计算框架MapReduce对步骤(2)中的三种类型数据进行解析与处 理,从而将HFile格式文件输出到分布式文件系统HDFS中。 (4) 使用Web Server提供Web层的访问服务,以Web服务作为中间通道,用于连接关系 型数据库和Hadoop大数据平台这两个集群。
2. 根据权利要求1所述的基于Hadoop大数据平台的低影响高效率的海量数据抽取方 法,其特征在于, 步骤(3)中,利用分布式并行计算框架MapReduce对步骤(2)中的三种类型数据进行 解析与处理的方法如下: (la)将在分布式文件系统HDFS中存储的增量变化的结构化数据以块为单位,分布在 Hadoop集群的各个存储节点上; (2a)在Map阶段启动多个Mapper任务对各个块数据进行清洗转换,并将清洗转换后的 数据送入到Hadoop框架中; (3a)将Mapper任务的计算结果按照哈希值进行排序,并根据键将同类的值合并到一 个键/值对的集合中; (4a)在Reduce阶段启动一组Reduce任务,每个Reduce任务收集一个键/值对的集 合,并对该键/值对集合内的数据进行拼装,形成分布式数据库HBase内部的HFile格式文 件,将所述HFile格式文件输出到HDFS分布式文件系统中。
3. 根据权利要求2所述的基于Hadoop大数据平台的低影响高效率的海量数据抽取方 法,其特征在于, 步骤(4a)中,利用分布式并行计算框架MapReduce生成分布式数据库HBase的HFile 文件;采用批量导入数据的方式,将数据一次性导入到分布式数据库HBase中。
4. 根据权利要求1至3任意一项所述的基于Hadoop大数据平台的低影响高效率的海 量数据抽取方法,其特征在于, 所述关系型数据库具体采用的是Oracle。
5. 根据权利要求1至3任意一项所述的基于Hadoop大数据平台的低影响高效率的海 量数据抽取方法,其特征在于, 所述Hadoop框架具体采用的是CDH 5. 0。
6. 根据权利要求4所述的基于Hadoop大数据平台的低影响高效率的海量数据抽取方 法,其特征在于, 所述Hadoop框架具体采用的是CDH 5. 0。
【文档编号】G06F17/30GK104331435SQ201410569282
【公开日】2015年2月4日 申请日期:2014年10月22日 优先权日:2014年10月22日
【发明者】郑海雁, 谢林枫, 金农, 顾国栋, 丁晓, 张明明, 翟学锋, 吴钢, 徐金玲, 金璐, 熊政, 李昆明, 仲春林, 方超, 季聪 申请人:国家电网公司, 江苏省电力公司, 江苏省电力公司信息通信分公司, 江苏方天电力技术有限公司, 江苏省电力公司南京供电公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1