CN105760174A - 一种基于Windows定时任务的建议数据抽取方法 - Google Patents
一种基于Windows定时任务的建议数据抽取方法 Download PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 28
- 238000013075 data extraction Methods 0.000 title abstract description 4
- 238000000605 extraction Methods 0.000 claims abstract description 22
- 238000012545 processing Methods 0.000 claims abstract description 5
- 230000006870 function Effects 0.000 claims abstract description 4
- 125000004122 cyclic group Chemical group 0.000 abstract 1
- 230000008859 change Effects 0.000 description 5
- MROJXXOCABQVEF-UHFFFAOYSA-N Actarit Chemical compound CC(=O)NC1=CC=C(CC(O)=O)C=C1 MROJXXOCABQVEF-UHFFFAOYSA-N 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- VOXZDWNPVJITMN-ZBRFXRBCSA-N 17β-estradiol Chemical compound OC1=CC=C2[C@H]3CC[C@](C)([C@H](CC4)O)[C@@H]4[C@@H]3CCC2=C1 VOXZDWNPVJITMN-ZBRFXRBCSA-N 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 239000011800 void material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
- G06F8/315—Object-oriented languages
-
- 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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational 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定时任务的建议数据抽取方法。
背景技术
数据抽取是从数据源中抽取数据的过程。
实际应用中,数据源较多采用的是关系数据库。从数据库中抽取数据一般有以下几种方式:
全量抽取:
全量抽取类似于数据迁移或数据复制,它将数据源中的表或视图的数据原封不动的从数据库中抽取出来,并转换成自己的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信息。
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)
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)
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 | 杭州合众数据技术有限公司 | 一种异构数据库之间的数据同步方法及系统 |
-
2016
- 2016-03-09 CN CN201610131794.4A patent/CN105760174A/zh active Pending
Patent Citations (10)
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)
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 |