CN105760174A - 一种基于Windows定时任务的建议数据抽取方法 - Google Patents

一种基于Windows定时任务的建议数据抽取方法 Download PDF

Info

Publication number
CN105760174A
CN105760174A CN201610131794.4A CN201610131794A CN105760174A CN 105760174 A CN105760174 A CN 105760174A CN 201610131794 A CN201610131794 A CN 201610131794A CN 105760174 A CN105760174 A CN 105760174A
Authority
CN
China
Prior art keywords
method based
windows
timed task
configuration
database
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.)
Pending
Application number
CN201610131794.4A
Other languages
English (en)
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.)
Inspur Software Group Co Ltd
Original Assignee
Inspur Software Group 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 Inspur Software Group Co Ltd filed Critical Inspur Software Group Co Ltd
Priority to CN201610131794.4A priority Critical patent/CN105760174A/zh
Publication of CN105760174A publication Critical patent/CN105760174A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • G06F8/315Object-oriented languages
    • 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/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于Windows定时任务的建议数据抽取方法,所述方法是一种基于日期的增量抽取方法,基于JAVA语言进行开发,采用JDBC方式进行数据库连接,抽取工具执行代码在MAIN函数中进行调用,并且编写BAT脚本,通过Windows自带的定时任务进行循环调用。本发明方法采用JAVA?JDBC的方式进行编写,出于JAVA语言的特征,不受操作系统的约束,运行更加稳定可靠;数据库配置信息放在property文件中,便于更改配置;加入日志处理,方便跟踪错误信息;采用系统自带的定时任务,确保运行可靠、不间断。

Description

一种基于Windows定时任务的建议数据抽取方法
技术领域
本发明涉及软件技术领域,具体涉及一种基于Windows定时任务的建议数据抽取方法。
背景技术
数据抽取是从数据源中抽取数据的过程。
实际应用中,数据源较多采用的是关系数据库。从数据库中抽取数据一般有以下几种方式:
全量抽取:
全量抽取类似于数据迁移或数据复制,它将数据源中的表或视图的数据原封不动的从数据库中抽取出来,并转换成自己的ETL工具可以识别的格式。全量抽取比较简单。
增量抽取:
增量抽取指抽取自上次抽取以来数据库中要抽取的表中新增、修改、删除的数据。在ETL使用过程中。增量抽取较全量抽取应用更广。如何捕获变化的数据是增量抽取的关键。对捕获方法一般有两点要求:准确性,能够将业务系统中的变化数据准确地捕获到;性能,尽量减少对业务系统造成太大的压力,影响现有业务。目前增量数据抽取中常用的捕获变化数据的方法有:
a.触发器:在要抽取的表上建立需要的触发器,一般要建立插入、修改、删除三个触发器,每当源表中的数据发生变化,就被相应的触发器将变化的数据写入一个临时表,抽取线程从临时表中抽取数据。触发器方式的优点是数据抽取的性能较高,缺点是要求在业务数据库中建立触发器,并且需要创建DBLINK,由于DBLINK使用过程中不是很很稳定,对业务系统有一定的性能影响。
b.日期:它是一种基于递增数据比较的增量数据捕获方式,使用原表中的日期字段,按周期形式定时抽取指定时间内的数据(比如抽取前一天的数据)。同触发器方式一样,按时间抽取方式的性能也比较好,数据抽取相对清楚简单。
传统数据抽取一般为基于数据库DBLINK方式,有如下缺点:
1)不支持LOB对象的操作;
2)通过DBLINK连接的DB不能有COMMIT;
3)大量使用DBLINK方式实时远程取数据,会导致远程连接无法释放,大量耗用远程数据库资源;
4)DBLINK会一直占用网络带宽;
5)使用DBLINK嵌套DBLINK的访问方式,性能会非常糟糕,而且不稳定。
基于以上现状,需要开发一套稳定可靠的系统。
发明内容
本发明要解决的技术问题是:
解决DBLINK连接有时不释放的问题;
解决DBLINK并发效率低的问题;
实现不同数据库之间的数据同步;
解决DBLINK其它未知问题。
本发明所采用的技术方案为:
一种基于Windows定时任务的建议数据抽取方法,所述方法是一种基于日期的增量抽取方法,基于JAVA语言进行开发,采用JDBC方式进行数据库连接,抽取工具执行代码在MAIN函数中进行调用,并且编写BAT脚本,通过Windows自带的定时任务进行循环调用。
所述方法加入log4j日志处理。
所述方法提供数据库配置文件,数据库配置信息放在属性文件中,便于修改连接配置。
所述方法实现步骤如下:
1)创建工程数据抽取-单表,引入ORACLE驱动包及log4j日志包,创建数据库连接工具类,创建数据同步抽取工具;
2)配置数据库属性信息:包括源库配置信息和目标库配置信息;
3)配置log4j信息。
OracleDatabase,又名OracleRDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。
Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIXSyslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。
本发明的有益效果为:
本发明方法采用JAVA-JDBC的方式进行编写,出于JAVA语言的特征,不受操作系统的约束,运行更加稳定可靠;数据库配置信息放在property文件中,便于更改配置;加入日志处理,方便跟踪错误信息;采用系统自带的定时任务,确保运行可靠、不间断。
附图说明
图1为本发明JAVA-JDBC框图。
具体实施方式
下面结合说明书附图,通过具体实施方式对本发明进一步说明:
实施例1:
如图1所示,一种基于Windows定时任务的建议数据抽取方法,所述方法是一种基于日期的增量抽取方法,基于JAVA语言进行开发,采用JDBC方式进行数据库连接,运行稳定可靠,配置灵活方便,日志自由添加、方便错误追踪,抽取工具执行代码在MAIN函数中进行调用,并且编写BAT脚本,通过Windows自带的定时任务进行循环调用,可以随意更改调用时间及周期。
JDBC(JavaDataBaseConnectivity,java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。
实施例2:
在实施例1的基础上,本实施例所述方法加入log4j日志处理,采用JAVA-JDBC方式可以自行添加日志信息,方便跟踪错误。
实施例3:
在实施例2的基础上,本实施例所述方法提供数据库配置文件,数据库配置信息放在属性(property)文件中,便于修改连接配置。
实施例4:
在实施例3的基础上,本实施例所述方法实现步骤如下:
1)创建工程数据抽取-单表(dataExtract-singleTable),引入ORACLE驱动包及log4j日志包,创建DBConnection数据库连接工具类,创建数据同步抽取工具(SingleExtractUtil.java);
2)配置数据库属性(property)信息:包括源库配置信息和目标库配置信息
#源库配置;
CORE_DRIVER_CLASS=oracle.jdbc.driver.OracleDriver
CORE_URL=jdbc:oracle:thin:127.0.0.1:1521:ORCL
CORE_USERNAME=YWCL
CORE_PASSWORD=YWCL
#目标库配置
TARGET_DRIVER_CLASS=oracle.jdbc.driver.OracleDriver
TARGET_URL=jdbc:oracle:thin:127.0.0.1:1521:ORCL
TARGET_USERNAME=YWCL
TARGET_PASSWORD=YWCL
3)配置log4j信息;
logDir=d:/js_sjqc/
log4j.rootLogger=debug,A1
log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A1.File=${logDir}/js_sjqc.log
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern==[%d{ISO8601}]%-5p%-x%X{user}%n%m%n
4)创建抽取工具(SingleExtractUtil),部分代码如下:
publicvoidextrac()throwsException{
ConnectiontargetConn=null;
ResultSettargetRs=null;
PreparedStatementtruncateStmt=null;
PreparedStatementtargetStmt=null;
ConnectioncoreConn=null;
PreparedStatementcoreStmt=null;
ResultSetcorers=null;
try{
System.out.println(“同步开始……”);
log.debug(“同步开始……”);
targerConn=DBConnection.getTargerDBConn();
targetConn.setAutoCommit(false);
System.out.println(“删除JS_SJQC_HZ_TEMP表前一天的数据开始……”);
log.debug(“删除JS_SJQC_HZ_TEMP表前一天的数据开始……”);
//删除目标库汇总中间表前一天的数据
StringtruncateSql=“DELETEFROMJS_SJQC_HZ_TEMPWHERELRRQ>=TRU
try{
truncateStmt=targetConn.prepareStatement(truncateSql);
truncateStmt.execute();
targetConn.commit();
}catch(Exceptione){
targetConn.rollback();
e.printStackTrace();
Systen.out.println(“删除JS_SJQC_HZ_TEMP表前一天的数据异常……”);
log.error(“删除JS_SJQC_HZ_TEMP表前一天的数据异常……”,e);
}
System.out.println(“删除JS_SJQC_HZ_TEMP表前一天的数据结束……”);
log.debug(“删除JS_SJQC_HZ_TEMP表前一天的数据结束……”);
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。

Claims (4)

1.一种基于Windows定时任务的建议数据抽取方法,其特征在于:所述方法是一种基于日期的增量抽取方法,基于JAVA语言进行开发,采用JDBC方式进行数据库连接,抽取工具执行代码在MAIN函数中进行调用,并且编写BAT脚本,通过Windows自带的定时任务进行循环调用。
2.根据权利要求1所述的一种基于Windows定时任务的建议数据抽取方法,其特征在于:所述方法加入log4j日志处理。
3.根据权利要求2所述的一种基于Windows定时任务的建议数据抽取方法,其特征在于:所述方法提供数据库配置文件,数据库配置信息放在属性文件中,便于修改连接配置。
4.根据权利要求3所述的一种基于Windows定时任务的建议数据抽取方法,其特征在于:所述方法实现步骤如下:
1)创建工程数据抽取-单表,引入ORACLE驱动包及log4j日志包,创建数据库连接工具类,创建数据同步抽取工具;
2)配置数据库属性信息:包括源库配置信息和目标库配置信息;
3)配置log4j信息。
CN201610131794.4A 2016-03-09 2016-03-09 一种基于Windows定时任务的建议数据抽取方法 Pending CN105760174A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610131794.4A CN105760174A (zh) 2016-03-09 2016-03-09 一种基于Windows定时任务的建议数据抽取方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610131794.4A CN105760174A (zh) 2016-03-09 2016-03-09 一种基于Windows定时任务的建议数据抽取方法

Publications (1)

Publication Number Publication Date
CN105760174A true CN105760174A (zh) 2016-07-13

Family

ID=56332781

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610131794.4A Pending CN105760174A (zh) 2016-03-09 2016-03-09 一种基于Windows定时任务的建议数据抽取方法

Country Status (1)

Country Link
CN (1) CN105760174A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106485465A (zh) * 2016-09-22 2017-03-08 济南浪潮高新科技投资发展有限公司 一种可配置的定时数据同步方法
CN108062320A (zh) * 2016-11-08 2018-05-22 长沙博为软件技术股份有限公司 一种针对桌面应用程序的数据采集、转换及装载的方法
CN108255704A (zh) * 2017-11-07 2018-07-06 中国平安人寿保险股份有限公司 一种脚本调用事件的异常响应方法及其终端
CN109657006A (zh) * 2018-12-14 2019-04-19 万翼科技有限公司 数据同步方法、装置及计算机可读存储介质
CN109669933A (zh) * 2018-12-10 2019-04-23 平安科技(深圳)有限公司 交易数据智能处理方法、装置及计算机可读存储介质
CN110188100A (zh) * 2019-05-17 2019-08-30 中国银行股份有限公司 数据处理方法、装置及计算机存储介质
CN110825795A (zh) * 2019-09-18 2020-02-21 平安科技(深圳)有限公司 访问数据库的方法、装置、设备及计算机可读存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101615199A (zh) * 2009-07-31 2009-12-30 深圳市珍爱网信息技术有限公司 异构数据库同步方法及系统
CN101853274A (zh) * 2010-05-10 2010-10-06 浪潮电子信息产业股份有限公司 一种实现异种数据库互联的方法
CN101923566A (zh) * 2010-06-24 2010-12-22 浙江协同数据系统有限公司 一种基于触发器的数据增量抽取方法
CN102063502A (zh) * 2011-01-06 2011-05-18 天津神舟通用数据技术有限公司 实现异构数据库数据同步的方法
CN102346775A (zh) * 2011-09-26 2012-02-08 苏州博远容天信息科技有限公司 一种基于日志的异构多源数据库同步方法
CN103823797A (zh) * 2012-11-16 2014-05-28 镇江诺尼基智能技术有限公司 基于ftp协议的行业数据库数据实时同步系统
CN104503989A (zh) * 2014-12-03 2015-04-08 中建材国际贸易有限公司 一种完成异构数据库归集的方法
WO2015062181A1 (zh) * 2013-11-04 2015-05-07 广东电子工业研究院有限公司 用于实现多源异构数据资源自动同步的方法
CN104778175A (zh) * 2014-01-13 2015-07-15 世纪禾光科技发展(北京)有限公司 一种实现异构数据库数据同步的方法及系统
CN105005618A (zh) * 2015-07-21 2015-10-28 杭州合众数据技术有限公司 一种异构数据库之间的数据同步方法及系统

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101615199A (zh) * 2009-07-31 2009-12-30 深圳市珍爱网信息技术有限公司 异构数据库同步方法及系统
CN101853274A (zh) * 2010-05-10 2010-10-06 浪潮电子信息产业股份有限公司 一种实现异种数据库互联的方法
CN101923566A (zh) * 2010-06-24 2010-12-22 浙江协同数据系统有限公司 一种基于触发器的数据增量抽取方法
CN102063502A (zh) * 2011-01-06 2011-05-18 天津神舟通用数据技术有限公司 实现异构数据库数据同步的方法
CN102346775A (zh) * 2011-09-26 2012-02-08 苏州博远容天信息科技有限公司 一种基于日志的异构多源数据库同步方法
CN103823797A (zh) * 2012-11-16 2014-05-28 镇江诺尼基智能技术有限公司 基于ftp协议的行业数据库数据实时同步系统
WO2015062181A1 (zh) * 2013-11-04 2015-05-07 广东电子工业研究院有限公司 用于实现多源异构数据资源自动同步的方法
CN104778175A (zh) * 2014-01-13 2015-07-15 世纪禾光科技发展(北京)有限公司 一种实现异构数据库数据同步的方法及系统
CN104503989A (zh) * 2014-12-03 2015-04-08 中建材国际贸易有限公司 一种完成异构数据库归集的方法
CN105005618A (zh) * 2015-07-21 2015-10-28 杭州合众数据技术有限公司 一种异构数据库之间的数据同步方法及系统

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106485465A (zh) * 2016-09-22 2017-03-08 济南浪潮高新科技投资发展有限公司 一种可配置的定时数据同步方法
CN108062320A (zh) * 2016-11-08 2018-05-22 长沙博为软件技术股份有限公司 一种针对桌面应用程序的数据采集、转换及装载的方法
CN108255704A (zh) * 2017-11-07 2018-07-06 中国平安人寿保险股份有限公司 一种脚本调用事件的异常响应方法及其终端
CN108255704B (zh) * 2017-11-07 2020-01-10 中国平安人寿保险股份有限公司 一种脚本调用事件的异常响应方法及其终端
CN109669933A (zh) * 2018-12-10 2019-04-23 平安科技(深圳)有限公司 交易数据智能处理方法、装置及计算机可读存储介质
CN109669933B (zh) * 2018-12-10 2023-10-27 平安科技(深圳)有限公司 交易数据智能处理方法、装置及计算机可读存储介质
CN109657006A (zh) * 2018-12-14 2019-04-19 万翼科技有限公司 数据同步方法、装置及计算机可读存储介质
CN110188100A (zh) * 2019-05-17 2019-08-30 中国银行股份有限公司 数据处理方法、装置及计算机存储介质
CN110825795A (zh) * 2019-09-18 2020-02-21 平安科技(深圳)有限公司 访问数据库的方法、装置、设备及计算机可读存储介质
WO2021051614A1 (zh) * 2019-09-18 2021-03-25 平安科技(深圳)有限公司 访问数据库的方法、装置、设备及计算机可读存储介质
CN110825795B (zh) * 2019-09-18 2023-10-13 平安科技(深圳)有限公司 访问数据库的方法、装置、设备及计算机可读存储介质

Similar Documents

Publication Publication Date Title
CN105760174A (zh) 一种基于Windows定时任务的建议数据抽取方法
US11308092B2 (en) Stream processing diagnostics
CN110300963B (zh) 大规模数据储存库中的数据管理系统
CN110168515B (zh) 用于分析数据关系以支持查询执行的系统
CN107660283B (zh) 用于在日志分析系统中实现日志解析器的方法和系统
JP6416194B2 (ja) 半構造データのためのスケーラブルな分析プラットフォーム
US8863091B2 (en) Unified tracing service
US8548947B2 (en) Systems and methods for file maintenance
CN102929771B (zh) 日志记录装置和日志记录方法
WO2018051096A1 (en) System for importing data into a data repository
US20040225696A1 (en) On-demand multi-version data dictionary to support distributed applications
CN105005618A (zh) 一种异构数据库之间的数据同步方法及系统
CN106130809A (zh) 一种基于日志分析的IaaS云平台网络故障定位方法及系统
CN105144080A (zh) 用于元数据管理的系统
CN109902117B (zh) 业务系统分析方法和装置
US9367428B2 (en) Transparent performance inference of whole software layers and context-sensitive performance debugging
CN110134663B (zh) 组织结构数据处理方法、装置、电子设备
CN103092866A (zh) 数据监控方法及监控装置
Oliveira et al. Delivering software with agility and quality in a cloud environment
CN113934750A (zh) 基于编译方式的数据血缘关系分析方法
CN114238338A (zh) 一种多维度的DevOps度量指标采集方法
Ormenisan et al. Implicit provenance for machine learning artifacts
Thakur et al. DWEVOLVE: a requirement based framework for data warehouse evolution
CN101488148A (zh) 一种从多个数据库中进行数据整理归集的方法
Elamparithi et al. A Review on Database Migration Strategies, Techniques and Tools

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20160713

RJ01 Rejection of invention patent application after publication