整体流程参考:https://ask.hellobi.com/blog/hql15/4622
此部分内容加入了自动生成所需目录、十分钟所有表数据分别增量同步便于部署。
1、运行整体流程的目录初始化,generateLocalDirect.bat
REM **************************************************
REM ** 初始化文件主目录 **
REM **************************************************
md "D:\DWBI1\ETL\业务考试监管\localPath"
md "D:\ftp\recvfrombd"
set localDir=D:\DWBI1\ETL\业务考试监管\localPath
set tempDir=D:\ftp\recvfrombd
REM **************************************************
REM ** 部署时根据实际需要同步的表,增加减少下面每两行 **
REM **************************************************
%1%
md %localDir%\DRV_MON_EXAM_MISJUDGE\temp
md %tempDir%\DRV_MON_EXAM_MISJUDGE\
%2%
md %localDir%\DRV_MON_EXAM_WARNIN\temp
md %tempDir%\DRV_MON_EXAM_WARNING\
%3%
md %localDir%\DRV_MON_IMP_ROWLOG\temp
md %tempDir%\DRV_MON_IMP_ROWLOG\
%4%
md %localDir%\drv_mon_stat_misjudge\temp
md %tempDir%\drv_mon_stat_misjudge\
2、这一部署对应前一博客的4.4
REM **************************************************
REM ** 清空历史数据,此步骤在第一次部署时放在D:\DWBI\ETL\业务考试监管\表文件\ **
REM ** 文件名取为对应表名目录**
REM ** 只需修改=右边表名**
set tableName=drv_mon_stat_misjudge
REM ** 下面不需动**
D:
cd D:\DWBI\ETL\业务考试监管\localPath\%tableName%\temp\
del D:\DWBI\ETL\业务考试监管\localPath\%tableName%\temp\*.txt /q
echo "删除数据文件"
3、此一部分对应4.5
select * from ${starts} where (${updTimeSpan}-to_date('1970-01-01,00:00:00','yyyy-mm-dd,hh24:mi:ss'))*86400*1000+60*1000 >=${fiveMinutes}--重复前一分钟数据
4、最后定时任务的制定
REM **************************************************
REM ** 定是抽取数据,修改kettleDir为kettle安装目录 **
REM **e为本地kettle安装盘,根据情况修改 **
%只需修改下面两行%
e:
set kettleDir=E:\kettle5.1.0\data-integration
REM **下面不用修改 **
set localDir=D:\DWBI\ETL\业务考试监管
cd %kettleDir%
kitchen.bat /file %localDir%\dbToFtpMain.kjb>>%localDir%\dbToFtpMain.log
完整代码参考附件(配置文件略)
华青莲日常点滴,方便自己,成长他人。