CN106407329A - 海量平台往hadoop平台自动化导入增量数据的方法 - Google Patents
海量平台往hadoop平台自动化导入增量数据的方法 Download PDFInfo
- Publication number
- CN106407329A CN106407329A CN201610801065.5A CN201610801065A CN106407329A CN 106407329 A CN106407329 A CN 106407329A CN 201610801065 A CN201610801065 A CN 201610801065A CN 106407329 A CN106407329 A CN 106407329A
- Authority
- CN
- China
- Prior art keywords
- data
- platform
- magnanimity
- hadoop
- imports
- 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.)
- Granted
Links
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/23—Updating
- G06F16/2379—Updates performed during online database operations; commit processing
- G06F16/2386—Bulk updating operations
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种海量平台往hadoop平台自动化导入增量数据的方法,其特征是:以海量平台为源数据库,以Hadoop大数据平台为目标数据库,并结合Java开发的自动化增量数据导入方法,来实现源数据库中的增量数据导入到目标数据库的目的。本发明与传统Hadoop平台数据导入方法相比,本方法不仅能够大大提高数据导入效率,同时还能提高导入数据的质量,为后续大数据统计分析的准确性提供了良好基础。
Description
技术领域
本发明涉及一种海量平台往hadoop平台自动化导入增量数据的方法。
背景技术
中国的电力工业经过几十年来的高速发展,随着下一代智能化电力***建设的全面展开,中国的电力***已经成为了世界上最大规模关系国计民生的专业物联网,甚至在某种程度上,这张遍及生产经营各环节的生产关系网,构筑起了中国最大规模的大数据计算平台,为从时间和空间等多个维度进行大范围的能源资源调配奠定了基础。对于电力行业而言,电力大数据将贯穿未来电力工业生产及管理等各个环节, 起到独特而巨大的作用、是中国电力工业在打造下一代电力工业***过程中有效应对资源有限、环境压力等问题,实现厚积厚发 、绿色可持续性发展的关键 。
近几年,电力行业信息化也得到了长足的发展,我国电力企业信息化起源于20世纪60 年代,从初始电力生产自动化到80年代以财务电算化为代表的管理信息化建设,再到近年大规模企业信息化建设,特别是伴随着下一代智能化电网的全面建设,以电力大数据为代表的新一代 IT技术在电力行业中的广泛应用,电力数据资源开始急剧增长并形成了一定的规模。从长远来看,作为中国经济社会发展的“ 晴雨表”, 电力数据以其与经济发展紧密而广泛的联系,将会呈现出无以伦比的正外部性,对我国经济社会发展 以至人类社会进步也将形成更为强大的推动力。
对于电力行业不断产生的海量数据,该采用何种技术来处理呢?毫无疑问,Hadoop成为众多企业的首选,Hadoop因其在大数据处理领域具有广泛的实用性以及良好的易用性,自2007年推出后,很快在工业界得到普及应用,同时得到了学术界的广泛关注和研究。在短短的几年中,Hadoop很快成为到目前为止最为成功、最广泛接受使用的大数据处理主流技术和***平台,并且成为一种大数据处理事实上的工业标准,得到了工业界大量的进一步开发和改进,并在业界和应用行业尤其是互联网行业得到了广泛的应用。
有了海量数据和相应的Hadoop大数据处理技术,就需要我们考虑该如何将这些海量数据导入到Hadoop平台,在这样一个背景下,本专利提出了一种高效而稳定的解决方法。
发明内容
本发明的目的在于提供一种高效而稳定的海量平台往hadoop平台自动化导入增量数据的方法。
本发明的技术解决方案是:
一种海量平台往hadoop平台自动化导入增量数据的方法,其特征是:以海量平台为源数据库,以Hadoop大数据平台为目标数据库,并结合Java开发的自动化增量数据导入方法,来实现源数据库中的增量数据导入到目标数据库的目的;
在Hadoop大数据平台中,以MapReduce作为大数据的计算引擎,以HDFS分布式文件***存储非结构化和半结构化的数据,以HBase分布式数据库存储结构化数据; Java自动化增量数据导入程序需要每天执行一次, Java程序功能的实现分为两个部分:
(1)Java程序实现对海量平台增量数据采集的功能;海量平台提供查询数据的接口,此接口包含时间范围、表名、查询条件参数,Java程序通过配置相应的参数来调用海量平台接口,获取相应的数据;由于Java程序是采用调用远程接口的方式来获取海量平台上的数据,所以会存在网络异常的情况,针对这种情况,Java程序在执行获取数据的方法之前,先判断网络连接是否正常,如果不正常则记录相应的日志,并记录相应的时间标签,等网络环境正常时,Java程序再根据记录的日期标签,重新执行程序,并重新获取此日期对应的数据;另外,如果出现Java程序在执行获取数据方法时,就出现网络异常的情况,那么已经获取的数据,不导入到大数据平台,同样记录日志和标签;
(2)在Java程序将海量平台中的增量数据获取之后,将数据导入到大数据平台;但在做这个操作之前,先校验一下获取的数据,是否正常,异常数据将被舍弃,Java程序获取的数据采用追加的方式导入到大数据平台,在数据导入之前,Java程序同样需要先判断网络连接是否正常,网络异常时,记录日志和日期标签,该程序的导入方法将不会被执行;另外,如果在执行导入方法时出现网络异常的情况,则记录日志、日期标签以及数据标签,这样就可以知道当前日期哪些数据已经导入到大数据平台中,已经导入大数据平台的数据,将不会被重复导入。
所述先校验一下获取的数据,是否正常,是判断一下数据是否存在空值、负值的情况。
借助Eclipse3.6开发工具,采用Java语言开发并实现导出功能、导入功能以及异常处理功能。
借助Eclipse3.6开发工具,采用Java语言开发并实现导出功能、导入功能以及异常处理功能。
实现导出功能需要确定Java程序和海量平台之间的网络端口是否开放,并且Java程序可以成功调用海量平台所提供的查询接口。
实现导入功能需要确定Java程序和大数据平台之间的网络端口是否开放,并且Java程序可以成功使用Hadoop大数据平台所提供的命令,将获取的数据追加至Hdfs文件***中。
实现网络异常判断和数据校验的功能,在海量平台导出数据和大数据平台导入数据的时候,都需要判断网络是否异常,并记录相关日志和日期标签,用以标识哪天的数据出现问题,并在网络正常的情况下,重新把这些有问题的数据导出或者导入;在数据导入的时候,判断数据是否有问题,当出现空值、负值异常数据时,程序本身过滤掉,这样可以提高导入数据的整体质量,为后面的质量评价提供了优质数据。
本发明与传统Hadoop平台数据导入方法相比,本方法不仅能够大大提高数据导入效率,同时还能提高导入数据的质量,为后续大数据统计分析的准确性提供了良好基础。解决了传统数据导入方法效率低、误差大、实时差的问题,提出的基于Hadoop平台自动化导入增量数据的方法,大大提高了往Hadoop平台导入数据的效率,而且确保了导入数据的准实时性、准确性。
附图说明
下面结合附图和实施例对本发明作进一步说明。
图1是本发明的***流程图。
具体实施方式
一种海量平台往hadoop平台自动化导入增量数据的方法,以海量平台为源数据库,以Hadoop大数据平台为目标数据库,并结合Java开发的自动化增量数据导入方法,来实现源数据库中的增量数据导入到目标数据库的目的;
在Hadoop大数据平台中,以MapReduce作为大数据的计算引擎,以HDFS分布式文件***存储非结构化和半结构化的数据,以HBase分布式数据库存储结构化数据; Java自动化增量数据导入程序需要每天执行一次,由于海量平台在晚上使用频次较少,所以程序的执行时间设定在24点, Java程序功能的实现分为两个部分:
(1)Java程序实现对海量平台增量数据采集的功能;海量平台提供查询数据的接口,此接口包含时间范围、表名、查询条件参数,Java程序通过配置相应的参数来调用海量平台接口,获取相应的数据;由于Java程序是采用调用远程接口的方式来获取海量平台上的数据,所以会存在网络异常的情况,针对这种情况,Java程序在执行获取数据的方法之前,先判断网络连接是否正常,如果不正常则记录相应的日志,并记录相应的时间标签,等网络环境正常时,Java程序再根据记录的日期标签,重新执行程序,并重新获取此日期对应的数据;另外,如果出现Java程序在执行获取数据方法时,就出现网络异常的情况,那么已经获取的数据,不导入到大数据平台,同样记录日志和标签;
(2)在Java程序将海量平台中的增量数据获取之后,将数据导入到大数据平台;但在做这个操作之前,先校验一下获取的数据,是否正常,异常数据将被舍弃,Java程序获取的数据采用追加的方式导入到大数据平台,在数据导入之前,Java程序同样需要先判断网络连接是否正常,网络异常时,记录日志和日期标签,该程序的导入方法将不会被执行;另外,如果在执行导入方法时出现网络异常的情况,则记录日志、日期标签以及数据标签,这样就可以知道当前日期哪些数据已经导入到大数据平台中,已经导入大数据平台的数据,将不会被重复导入。
所述先校验一下获取的数据,是否正常,是判断一下数据是否存在空值、负值的情况。
部署硬件环境和软件环境,集群服务器安装CentOS 6.5的操作***,装好之后,需要配置网络环境,由于Java程序以Hadoop大数据平台为基础支撑软件,所以需要在服务器集群上面安装Hadoop相关软件。
借助Eclipse3.6开发工具,采用Java语言开发并实现导出功能、导入功能以及异常处理功能。
借助Eclipse3.6开发工具,采用Java语言开发并实现导出功能、导入功能以及异常处理功能。
实现导出功能需要确定Java程序和海量平台之间的网络端口是否开放,并且Java程序可以成功调用海量平台所提供的查询接口。
实现导入功能需要确定Java程序和大数据平台之间的网络端口是否开放,并且Java程序可以成功使用Hadoop大数据平台所提供的命令,将获取的数据追加至Hdfs文件***中,
代码如下:
String hdfs_path = "hdfs://mycluster/home/wyp/wyp.txt";//文件路径
Configuration conf = new Configuration();
conf.setBoolean("dfs.support.append", true);
String inpath = "/home/wyp/append.txt";
FileSystem fs = null;
try {
fs = FileSystem.get(URI.create(hdfs_path), conf);
//要追加的文件流,inpath为文件
InputStream in = new
BufferedInputStream(new FileInputStream(inpath));
OutputStream out = fs.append(new Path(hdfs_path));
IOUtils.copyBytes(in, out, 4096, true);
} catch (IOException e) {
e.printStackTrace();
}
实现网络异常判断和数据校验的功能,在海量平台导出数据和大数据平台导入数据的时候,都需要判断网络是否异常,并记录相关日志和日期标签,用以标识哪天的数据出现问题,并在网络正常的情况下,重新把这些有问题的数据导出或者导入;在数据导入的时候,判断数据是否有问题,当出现空值、负值异常数据时,程序本身过滤掉,这样可以提高导入数据的整体质量,为后面的质量评价提供了优质数据。
Claims (7)
1.一种海量平台往hadoop平台自动化导入增量数据的方法,其特征是:以海量平台为源数据库,以Hadoop大数据平台为目标数据库,并结合Java开发的自动化增量数据导入方法,来实现源数据库中的增量数据导入到目标数据库的目的;
在Hadoop大数据平台中,以MapReduce作为大数据的计算引擎,以HDFS分布式文件***存储非结构化和半结构化的数据,以HBase分布式数据库存储结构化数据; Java自动化增量数据导入程序需要每天执行一次, Java程序功能的实现分为两个部分:
(1)Java程序实现对海量平台增量数据采集的功能;海量平台提供查询数据的接口,此接口包含时间范围、表名、查询条件参数,Java程序通过配置相应的参数来调用海量平台接口,获取相应的数据;由于Java程序是采用调用远程接口的方式来获取海量平台上的数据,所以会存在网络异常的情况,针对这种情况,Java程序在执行获取数据的方法之前,先判断网络连接是否正常,如果不正常则记录相应的日志,并记录相应的时间标签,等网络环境正常时,Java程序再根据记录的日期标签,重新执行程序,并重新获取此日期对应的数据;另外,如果出现Java程序在执行获取数据方法时,就出现网络异常的情况,那么已经获取的数据,不导入到大数据平台,同样记录日志和标签;
(2)在Java程序将海量平台中的增量数据获取之后,将数据导入到大数据平台;但在做这个操作之前,先校验一下获取的数据,是否正常,异常数据将被舍弃,Java程序获取的数据采用追加的方式导入到大数据平台,在数据导入之前,Java程序同样需要先判断网络连接是否正常,网络异常时,记录日志和日期标签,该程序的导入方法将不会被执行;另外,如果在执行导入方法时出现网络异常的情况,则记录日志、日期标签以及数据标签,这样就可以知道当前日期哪些数据已经导入到大数据平台中,已经导入大数据平台的数据,将不会被重复导入。
2.根据权利要求1所述的海量平台往hadoop平台自动化导入增量数据的方法,其特征是:所述先校验一下获取的数据,是否正常,是判断一下数据是否存在空值、负值的情况。
3.根据权利要求1所述的海量平台往hadoop平台自动化导入增量数据的方法,其特征是:借助Eclipse3.6开发工具,采用Java语言开发并实现导出功能、导入功能以及异常处理功能。
4.根据权利要求2所述的海量平台往hadoop平台自动化导入增量数据的方法,其特征是:借助Eclipse3.6开发工具,采用Java语言开发并实现导出功能、导入功能以及异常处理功能。
5.根据权利要求1所述的海量平台往hadoop平台自动化导入增量数据的方法,其特征是:实现导出功能需要确定Java程序和海量平台之间的网络端口是否开放,并且Java程序可以成功调用海量平台所提供的查询接口。
6.根据权利要求1所述的海量平台往hadoop平台自动化导入增量数据的方法,其特征是:实现导入功能需要确定Java程序和大数据平台之间的网络端口是否开放,并且Java程序可以成功使用Hadoop大数据平台所提供的命令,将获取的数据追加至Hdfs文件***中。
7.根据权利要求1所述的海量平台往hadoop平台自动化导入增量数据的方法,其特征是:实现网络异常判断和数据校验的功能,在海量平台导出数据和大数据平台导入数据的时候,都需要判断网络是否异常,并记录相关日志和日期标签,用以标识哪天的数据出现问题,并在网络正常的情况下,重新把这些有问题的数据导出或者导入;在数据导入的时候,判断数据是否有问题,当出现空值、负值异常数据时,程序本身过滤掉,这样可以提高导入数据的整体质量,为后面的质量评价提供了优质数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610801065.5A CN106407329B (zh) | 2016-09-05 | 2016-09-05 | 海量平台往hadoop平台自动化导入增量数据的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610801065.5A CN106407329B (zh) | 2016-09-05 | 2016-09-05 | 海量平台往hadoop平台自动化导入增量数据的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106407329A true CN106407329A (zh) | 2017-02-15 |
CN106407329B CN106407329B (zh) | 2019-06-25 |
Family
ID=57999461
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610801065.5A Active CN106407329B (zh) | 2016-09-05 | 2016-09-05 | 海量平台往hadoop平台自动化导入增量数据的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106407329B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107085613A (zh) * | 2017-05-17 | 2017-08-22 | 广州四三九九信息科技有限公司 | 入库文件的过滤方法和装置 |
CN108596686A (zh) * | 2018-05-09 | 2018-09-28 | 珠海横琴盛达兆业科技投资有限公司 | 一种实现加盟连锁药店管理***与佛山地区食药监***数据集成的方法 |
CN108647362A (zh) * | 2018-05-21 | 2018-10-12 | 珠海横琴盛达兆业科技投资有限公司 | 一种实现单体药店管理***与佛山地区食药监***数据集成的方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546247A (zh) * | 2011-12-29 | 2012-07-04 | 华中科技大学 | 一种适用流式处理的大规模数据连续分析*** |
CN105243067A (zh) * | 2014-07-07 | 2016-01-13 | 北京明略软件***有限公司 | 一种实现实时增量同步数据的方法及装置 |
US20160196311A1 (en) * | 2013-09-26 | 2016-07-07 | Shenzhen Audaque Data Technology Ltd | Data quality measurement method and system based on a quartile graph |
-
2016
- 2016-09-05 CN CN201610801065.5A patent/CN106407329B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546247A (zh) * | 2011-12-29 | 2012-07-04 | 华中科技大学 | 一种适用流式处理的大规模数据连续分析*** |
US20160196311A1 (en) * | 2013-09-26 | 2016-07-07 | Shenzhen Audaque Data Technology Ltd | Data quality measurement method and system based on a quartile graph |
CN105243067A (zh) * | 2014-07-07 | 2016-01-13 | 北京明略软件***有限公司 | 一种实现实时增量同步数据的方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107085613A (zh) * | 2017-05-17 | 2017-08-22 | 广州四三九九信息科技有限公司 | 入库文件的过滤方法和装置 |
CN107085613B (zh) * | 2017-05-17 | 2020-07-28 | 广州四三九九信息科技有限公司 | 入库文件的过滤方法和装置 |
CN108596686A (zh) * | 2018-05-09 | 2018-09-28 | 珠海横琴盛达兆业科技投资有限公司 | 一种实现加盟连锁药店管理***与佛山地区食药监***数据集成的方法 |
CN108647362A (zh) * | 2018-05-21 | 2018-10-12 | 珠海横琴盛达兆业科技投资有限公司 | 一种实现单体药店管理***与佛山地区食药监***数据集成的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106407329B (zh) | 2019-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107645562A (zh) | 数据传输处理方法、装置、设备及*** | |
CN109189379A (zh) | 代码生成方法和装置 | |
CN110502425A (zh) | 测试数据生成方法、装置、电子设备及存储介质 | |
CN111159897B (zh) | 基于***建模应用的目标优化方法和装置 | |
CN106407329A (zh) | 海量平台往hadoop平台自动化导入增量数据的方法 | |
CN104767795A (zh) | 一种基于hadoop的lte mro数据统计方法及*** | |
CN112860662B (zh) | 自动化生产数据血缘关系建立方法、装置、计算机设备及存储介质 | |
Li et al. | Microservice migration using strangler fig pattern: A case study on the green button system | |
CN101645073A (zh) | 一种将已有数据库文件导入嵌入式数据库的方法 | |
CN114706839A (zh) | 日志数据处理方法、装置、电子设备和存储介质 | |
CN112559525B (zh) | 数据检查***、方法、装置和服务器 | |
CN113761079A (zh) | 数据访问方法、***和存储介质 | |
CN116204428A (zh) | 一种测试用例生成方法和装置 | |
CN113515306B (zh) | 一种***移植的方法及装置 | |
US10447807B1 (en) | Dynamic middleware source selection for optimizing data retrieval from network nodes | |
CN113992736B (zh) | 基于云计算服务平台的结构化数据的互联方法及服务器 | |
CN112667393B (zh) | 分布式任务计算调度框架搭建的方法、装置及计算机设备 | |
CN104216986A (zh) | 以数据更新周期进行预操作提高数据查询效率的装置及方法 | |
CN113468509A (zh) | 一种用户认证的迁移方法、装置、设备及存储介质 | |
CN109284278B (zh) | 基于数据分析技术的计算逻辑迁移方法及终端设备 | |
CN114091910A (zh) | 5g用户质差投诉的溯源分析方法及装置 | |
CN113868116A (zh) | 测试依赖数据的生成方法、装置、服务器及存储介质 | |
CN111401825B (zh) | 一种实例化方法和装置 | |
CN110727655B (zh) | 一种区块链的影子数据库构建方法、装置、设备及介质 | |
CN117149869A (zh) | 一种白名单文件数据库导入方法、***、设备及介质 |
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 |