CN106407329A - 海量平台往hadoop平台自动化导入增量数据的方法 - Google Patents

海量平台往hadoop平台自动化导入增量数据的方法 Download PDF

Info

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
Application number
CN201610801065.5A
Other languages
English (en)
Other versions
CN106407329B (zh
Inventor
刘飞
傅靖
王栋
李伟伦
蒋亮
江陈桢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
State Grid Corp of China SGCC
Nantong Power Supply Co of State Grid Jiangsu Electric Power Co Ltd
Original Assignee
State Grid Corp of China SGCC
Nantong Power Supply Co of State Grid Jiangsu Electric Power Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by State Grid Corp of China SGCC, Nantong Power Supply Co of State Grid Jiangsu Electric Power Co Ltd filed Critical State Grid Corp of China SGCC
Priority to CN201610801065.5A priority Critical patent/CN106407329B/zh
Publication of CN106407329A publication Critical patent/CN106407329A/zh
Application granted granted Critical
Publication of CN106407329B publication Critical patent/CN106407329B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • G06F16/2386Bulk updating operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data 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平台自动化导入增量数据的方法
技术领域
本发明涉及一种海量平台往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平台自动化导入增量数据的方法,其特征是:实现网络异常判断和数据校验的功能,在海量平台导出数据和大数据平台导入数据的时候,都需要判断网络是否异常,并记录相关日志和日期标签,用以标识哪天的数据出现问题,并在网络正常的情况下,重新把这些有问题的数据导出或者导入;在数据导入的时候,判断数据是否有问题,当出现空值、负值异常数据时,程序本身过滤掉,这样可以提高导入数据的整体质量,为后面的质量评价提供了优质数据。
CN201610801065.5A 2016-09-05 2016-09-05 海量平台往hadoop平台自动化导入增量数据的方法 Active CN106407329B (zh)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (3)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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