CN104331435B - 一种基于Hadoop大数据平台的低影响高效率的海量数据抽取方法 - Google Patents
一种基于Hadoop大数据平台的低影响高效率的海量数据抽取方法 Download PDFInfo
- Publication number
- CN104331435B CN104331435B CN201410569282.7A CN201410569282A CN104331435B CN 104331435 B CN104331435 B CN 104331435B CN 201410569282 A CN201410569282 A CN 201410569282A CN 104331435 B CN104331435 B CN 104331435B
- Authority
- CN
- China
- Prior art keywords
- data
- hadoop
- distributed
- platforms
- hfile
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 21
- 230000008859 change Effects 0.000 claims abstract description 7
- 238000004458 analytical method Methods 0.000 claims abstract description 5
- 238000006243 chemical reaction Methods 0.000 claims description 6
- 238000004140 cleaning Methods 0.000 claims description 6
- 238000013075 data extraction Methods 0.000 claims description 4
- 238000003780 insertion Methods 0.000 claims description 4
- 230000037431 insertion Effects 0.000 claims description 4
- 238000004519 manufacturing process Methods 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 claims description 2
- 238000003860 storage Methods 0.000 abstract description 6
- 238000000605 extraction Methods 0.000 abstract description 4
- 230000008676 import Effects 0.000 abstract description 4
- 230000014759 maintenance of location Effects 0.000 abstract description 3
- 241001269238 Data Species 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000007812 deficiency Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2358—Change logging, detection, and notification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Abstract
本发明公开了一种基于Hadoop大数据平台的低影响高效率的海量数据抽取方法,用Golden Gate从关系型数据库的在线日志文件中抽取变化的数据;将变化数据分别放到各自类别的文件中;利用MapReduce对数据进行解析与处理;对数据进行清洗、转换和过滤异常数据,并转换成适合分布式数据库HBase存储的格式;采用批量导入数据的方式将数据装载到分布式数据库HBase中;使用Tomcat服务器作为Web Server提供Web层的访问服务。本发明可以快速地将海量数据从关系型数据库抽取到大数据平台中,由于通过对数据源日志文件的分析实现对增量数据的抽取,因此本发明在抽取数据时对数据源系统的影响非常小。
Description
技术领域
本发明涉及一种基于Hadoop大数据平台的低影响高效率的海量数据抽取方法,属于智能电网大数据技术应用领域。
背景技术
随着国民经济的快速发展,各行各业所产生和存储的数据量在急速攀升,“大数据”已经渗透到每一个行业和领域,成为重要的生产要素。因此,当前很多行业用户,如电力公司、金融企业等,都面临将关系型数据库中的大量数据抽取到大数据平台的需求。
对于大数据的抽取一般通过使用Sqoop来实现,但是Sqoop组件自身的局限性导致其对于特定的场景并不适用。例如,进行TB级大数据量数据抽取时效率较低,进行增量数据抽取需改变源数据库表结构,对源数据库性能也有较大影响。
发明内容
针对现有技术存在的不足,本发明目的是提供一种基于Hadoop大数据平台的低影响高效率的海量数据抽取方法,能够提高数据抽取的速度,并且能够减少数据抽取对数据源带来的系统资源占用。
为了实现上述目的,本发明是通过如下的技术方案来实现:
本发明的一种基于Hadoop大数据平台的低影响高效率的海量数据抽取方法,包括以下几个步骤:
(1)用结构化数据备份工具从关系型数据库在线日志或归档日志中获得增量变化数据,并将所述增量变化数据根据其数据操作类型分为以下三类数据保存在Trail格式的文本文件中:插入数据、更新数据、删除数据;
(2)将所述插入数据、更新数据、删除数据分别放到各自类别的文件中,使得每种类别的文件中只有一种类型的数据,用于批量生成分布式数据库HBase的数据文件HFile;
(3)利用分布式并行计算框架MapReduce对步骤(2)中的三种类型数据进行解析与处理,从而将HFile格式文件输出到分布式文件系统HDFS中。
(4)使用Web Server提供Web层的访问服务,以Web服务作为中间通道,用于连接关系型数据库和Hadoop大数据平台这两个集群。
步骤(3)中,利用分布式并行计算框架MapReduce对步骤(2)中的三种类型数据进行解析与处理的方法如下:
(1a)将在分布式文件系统HDFS中存储的增量变化的结构化数据以块为单位,分布在Hadoop集群的各个存储节点上;
(2a)在Map阶段启动多个Mapper任务对各个块数据进行清洗转换,并将清洗转换后的数据送入到Hadoop框架中;
(3a)将Mapper任务的计算结果按照哈希值进行排序,并根据键将同类的值合并到一个键/值对的集合中;
(4a)在Reduce阶段启动一组Reduce任务,每个Reduce任务收集一个键/值对的集合,并对该键/值对集合内的数据进行拼装,形成分布式数据库HBase内部的HFile格式文件,将所述HFile格式文件输出到HDFS分布式文件系统中。
步骤(4a)中,利用分布式并行计算框架MapReduce生成分布式数据库HBase的HFile文件;采用批量导入数据的方式,将数据一次性导入到分布式数据库HBase中。
上述关系型数据库具体采用的是Oracle,
上述Hadoop框架具体采用的是CDH 5.0。
本发明可以快速、高效、可靠地将海量数据从关系型数据库抽取到大数据平台中,同时,由于通过对数据源日志文件的分析实现对增量数据的抽取,因此该方法在抽取数据时对数据源系统的影响非常小。
附图说明
图1为本发明的方法系统技术架构图;
图2为本发明的海量数据抽取方法工作流程图。
具体实施方式
为使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体实施方式,进一步阐述本发明。
本发明所提出的方法,首先利用基于关系型数据库日志的结构化数据备份工具从关系型数据库中抽取变化数据,然后在Hadoop大数据平台实现数据的清洗、转换和存储,最后使用Tomcat作为Web Server提供Web层的访问服务。
参见图1和图2,本发明的数据抽取方法如下:
一、从数据源抽取数据
具体方法为:用Golden Gate从Oracle在线日志中准实时地抓取变化的数据,并将变化的数据保存在Trail格式的文件中。通过对日志文件的分析实现变化数据的抓取只会占用很小的系统资源,特别是当Oracle中存储的数据量极大、Oracle系统负载很重时基本不会影响Oracle的运行效率,也不会影响Oracle所在主机或集群的运行效率。
二、在大数据平台实现数据的清洗、转换和存储
对于Golden Gate提取出的数据,首先将其以半结构化的数据形式存储在HDFS中,然后根据规则对数据进行清洗和转换、过滤异常数据,并转换成更适合HBase存储的格式。为了加快数据装载到HBase的速度,采用了批量导入(Bulkload)数据的方式,即利用MapReduce并行计算引擎直接生成HBase能够识别的HFile文件,大大缩短了数据入库的时间。这种批量导入的方式,避免了高强度调用HBase的API和生成大量WAL日志,节省了HBase及大数据平台的CPU资源、网络IO和磁盘读写,不会对大数据平台上运行的其他任务构成资源竞争。
三、使用Tomcat作为Web Server提供Web层的访问服务
由于Oracle和CDH大数据平台处于两个不同的集群中,因此以Web服务作为中间通道可以方便地连接这两个集群,例如在集群间传递指令、查询并展现集群中的数据等。
本实施例中,系统以Oracle为数据源,以CDH 5.0为大数据平台框架,结合Tomcat作为Web Server提供Web层的访问服务。在大数据平台中,以MapReduce作为大数据的计算引擎,以HDFS分布式文件系统存储非结构化和半结构化的数据,以HBase分布式数据库存储结构化数据。在Oracle端,采用Golden Gate提取源数据。
表1
参见表1,本发明可以快速、高效、可靠地将海量数据从关系型数据库抽取到大数据平台中,同时,由于通过对数据源日志文件的分析实现对增量数据的抽取,因此该方法在抽取数据时对数据源系统的影响非常小。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
Claims (6)
1.一种基于Hadoop大数据平台的低影响高效率的海量数据抽取方法,其特征在于,包括以下几个步骤:
(1)用结构化数据备份工具从关系型数据库在线日志或归档日志中获得增量变化数据,并将所述增量变化数据根据其数据操作类型分为以下三类数据保存在Trail格式的文本文件中:插入数据、更新数据、删除数据;
(2)将所述插入数据、更新数据、删除数据分别放到各自类别的文件中,使得每种类别的文件中只有一种类型的数据,用于批量生成分布式数据库HBase的数据文件HFile;
(3)利用分布式并行计算框架MapReduce对步骤(2)中的三种类型数据进行解析与处理,将HFile格式文件输出到分布式文件系统HDFS中;
(4)使用Web Server提供Web层的访问服务,以Web服务作为中间通道,用于连接关系型数据库和Hadoop大数据平台。
2.根据权利要求1所述的基于Hadoop大数据平台的低影响高效率的海量数据抽取方法,其特征在于,
步骤(3)中,利用分布式并行计算框架MapReduce对步骤(2)中的三种类型数据进行解析与处理的方法如下:
(1a)步骤(1)Trail格式的文本文件以块为单位存储在分布式文件系统HDFS中,分布在Hadoop集群的各个存储节点上;
(2a)在Map阶段启动多个Mapper任务对各个块数据进行清洗转换,并将清洗转换后的数据送入到Hadoop框架中;
(3a)将Mapper任务的计算结果按照哈希值进行排序,并根据键将同类的值合并到一个键/值对的集合中;
(4a)在Reduce阶段启动一组Reduce任务,每个Reduce任务收集一个键/值对的集合,并对该键/值对集合内的数据进行拼装,形成分布式数据库HBase内部的HFile格式文件,将所述HFile格式文件输出到HDFS分布式文件系统中。
3.根据权利要求2所述的基于Hadoop大数据平台的低影响高效率的海量数据抽取方法,其特征在于,
步骤(4a)中,利用分布式并行计算框架MapReduce生成分布式数据库HBase的HFile文件;存储在分布式文件系统HDFS中的HFile文件采用批量导入方式,将HFile数据文件一次性导入到分布式数据库HBase中。
4.根据权利要求1至3任意一项所述的基于Hadoop大数据平台的低影响高效率的海量数据抽取方法,其特征在于,
所述关系型数据库具体采用的是Oracle。
5.根据权利要求1至3任意一项所述的基于Hadoop大数据平台的低影响高效率的海量数据抽取方法,其特征在于,
所述Hadoop框架具体采用的是CDH 5.0。
6.根据权利要求4所述的基于Hadoop大数据平台的低影响高效率的海量数据抽取方法,其特征在于,
所述Hadoop框架具体采用的是CDH 5.0。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410569282.7A CN104331435B (zh) | 2014-10-22 | 2014-10-22 | 一种基于Hadoop大数据平台的低影响高效率的海量数据抽取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410569282.7A CN104331435B (zh) | 2014-10-22 | 2014-10-22 | 一种基于Hadoop大数据平台的低影响高效率的海量数据抽取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104331435A CN104331435A (zh) | 2015-02-04 |
CN104331435B true CN104331435B (zh) | 2017-11-21 |
Family
ID=52406162
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410569282.7A Active CN104331435B (zh) | 2014-10-22 | 2014-10-22 | 一种基于Hadoop大数据平台的低影响高效率的海量数据抽取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104331435B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105159945A (zh) * | 2015-08-10 | 2015-12-16 | 北京思特奇信息技术股份有限公司 | 一种Hbase与Hdfs之间的数据抽取转换方法及系统 |
CN105260486A (zh) * | 2015-11-23 | 2016-01-20 | 郑州悉知信息科技股份有限公司 | 一种数据处理方法、装置及系统 |
CN105630934A (zh) * | 2015-12-23 | 2016-06-01 | 浪潮电子信息产业股份有限公司 | 一种数据统计方法及系统 |
CN105808746A (zh) * | 2016-03-14 | 2016-07-27 | 中国科学院计算技术研究所 | 一种基于Hadoop体系的关系型大数据无缝接入方法及系统 |
CN106021285A (zh) * | 2016-04-29 | 2016-10-12 | 武汉佰钧成技术有限责任公司 | 一种基于Hadoop平台的海量数据增量抽取与分析方法 |
CN106250273B (zh) * | 2016-08-01 | 2019-04-09 | 浪潮软件集团有限公司 | 一种基于Hadoop文件系统实现数据异地容灾的方法 |
CN106709029A (zh) * | 2016-12-28 | 2017-05-24 | 上海斐讯数据通信技术有限公司 | 基于Hadoop和MySQL的文件分层处理方法及处理系统 |
CN106709035B (zh) * | 2016-12-29 | 2019-11-26 | 贵州电网有限责任公司电力科学研究院 | 一种电力多维全景数据的预处理系统 |
CN106897450A (zh) * | 2017-03-03 | 2017-06-27 | 郑州云海信息技术有限公司 | 一种基于HDFS海量数据快速导入HBase的方法 |
CN107122424B (zh) * | 2017-04-07 | 2019-11-05 | 南京南瑞集团公司 | 一种关系数据库日志抽取方法 |
CN107871013A (zh) * | 2017-11-23 | 2018-04-03 | 安徽科创智慧知识产权服务有限公司 | 一种海量数据高效抽取方法 |
CN107967319A (zh) * | 2017-11-23 | 2018-04-27 | 安徽科创智慧知识产权服务有限公司 | 一种海量数据高效抽取平台 |
CN112597242B (zh) * | 2020-12-16 | 2023-06-06 | 四川新网银行股份有限公司 | 一种基于涉及批量任务的应用系统数据切片的抽取方法 |
CN115600560B (zh) * | 2022-09-28 | 2023-06-20 | 中电金信软件有限公司 | 一种数据转换方法、装置、系统、电子设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103338261A (zh) * | 2013-07-04 | 2013-10-02 | 北京泰乐德信息技术有限公司 | 一种轨道交通监测数据的存储和处理方法及系统 |
CN103605576A (zh) * | 2013-11-25 | 2014-02-26 | 华中科技大学 | 一种基于多线程的MapReduce执行系统 |
-
2014
- 2014-10-22 CN CN201410569282.7A patent/CN104331435B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103338261A (zh) * | 2013-07-04 | 2013-10-02 | 北京泰乐德信息技术有限公司 | 一种轨道交通监测数据的存储和处理方法及系统 |
CN103605576A (zh) * | 2013-11-25 | 2014-02-26 | 华中科技大学 | 一种基于多线程的MapReduce执行系统 |
Non-Patent Citations (3)
Title |
---|
Big Data, Bigger Implementation Using Oracle And Hadoop;Ronak Juneja.etl;《International Journal of Computer Science and Communication Engineering》;20130531;37-42 * |
基于hadoop 的电网大数据处理探究;李伟等;《网络与信息工程》;20140131;74-77 * |
基于Hadoop及关系型数据库的海量数据分析研究;程莹等;《电信科学》;20110228;47-50 * |
Also Published As
Publication number | Publication date |
---|---|
CN104331435A (zh) | 2015-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104331435B (zh) | 一种基于Hadoop大数据平台的低影响高效率的海量数据抽取方法 | |
CN106168965B (zh) | 知识图谱构建系统 | |
CN106844507B (zh) | 一种数据批处理的方法及设备 | |
Hammad et al. | Big data analysis and storage | |
CN104820670A (zh) | 一种电力信息大数据的采集和存储方法 | |
CN107391502A (zh) | 时间间隔的数据查询方法、装置及索引构建方法、装置 | |
Li et al. | Challenges and trends of big data analytics | |
CN105373607B (zh) | 一种电力业务系统sql访问日志压缩方法 | |
Shakhovska | The method of Big data processing | |
Caldarola et al. | Big data: A survey-the new paradigms, methodologies and tools | |
CN104536830A (zh) | 一种基于MapReduce的KNN文本分类方法 | |
Ye et al. | Big data processing framework for manufacturing | |
Srikanth et al. | Machine Learning for Query Processing System and Query Response Time using Hadoop | |
CN109582837A (zh) | 一种基于云的可视化数据处理方法及系统 | |
Gombos et al. | Spar (k) ql: SPARQL evaluation method on Spark GraphX | |
CN106649461A (zh) | 一种自动化清理维护ElasticSearch日志索引文件的方法 | |
CN103823881B (zh) | 分布式数据库的性能优化的方法及装置 | |
Ikhlaq et al. | Computation of Big Data in Hadoop and Cloud Environment | |
Ravichandran | Big Data processing with Hadoop: a review | |
Gupta et al. | Efficient query analysis and performance evaluation of the NoSQL data store for bigdata | |
Martínez-Castaño et al. | Polypus: a big data self-deployable architecture for microblogging text extraction and real-time sentiment analysis | |
Rawat et al. | A study on challenges of big data and their approaches in present environment | |
CN107871013A (zh) | 一种海量数据高效抽取方法 | |
CN106897450A (zh) | 一种基于HDFS海量数据快速导入HBase的方法 | |
Lee et al. | Similarity-based change detection for RDF in MapReduce |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |