【问题标题】:How to schedule a Teradata query in crontab?如何在 crontab 中安排 Teradata 查询?
【发布时间】:2019-07-21 19:18:52
【问题描述】:

我的工作需要我每天刷新某些 Teradata 表。我遇到了 crontab 并试图安排一个小的 Teradata 查询。以下是代码:

Teradata:

DROP TABLE S_BNKFRD.PV_TEMP;
CREATE TABLE S_BNKFRD.PV_TEMP AS
(
SELECT
Current_Time AS Curr_Time
)WITH DATA;

Crontab:

* * * * * cd && . ./.profile;BTEQ -p /DATA/home/pverma3/CronTab_Test_Piyush.sql

Teradata 查询位于给定位置的 CronTab_Test_Piyush.sql 文件中,我需要每分钟运行一次(这只是在我为主要查询设置之前学习如何自动化 teradata 查询的一小步)。

我用谷歌搜索,但找不到确切的 crontab 语法。相反,我发现人们在谈论 BTEQ,所以试了一下。 (我的同事正在使用 BGsas 代替 BTEQ 运行类似的 SAS 文件,但我们很快就会摆脱 SAS,所以我想使用 Teradata 来做)

请帮助。非常感谢。

【问题讨论】:

    标签: cron scheduled-tasks teradata


    【解决方案1】:

    我更喜欢创建一个 shell 脚本,并在那个 shell 脚本中,将我的 bteq 写成一个 heredoc:

    #!/bin/bash
    
    bteqSYSTEM="your teradata domain name or ip"
    bteqUSER="your teradata username"
    bteqPWD="your teradata password"
    
    bteq <<- BTEQSCRIPT 1> /DATA/home/pverma3/bteq_output.log
            .LOGON ${bteqSYSTEM}/${bteqUSER},${bteqPWD}
            DROP TABLE S_BNKFRD.PV_TEMP;
            CREATE TABLE S_BNKFRD.PV_TEMP AS
            (
            SELECT
            Current_Time AS Curr_Time
            )WITH DATA;
            .LOGOFF
            .QUIT
    BTEQSCRIPT
    

    这将所有必要的位划分到一个文件中,可以轻松地从 cron 中调用:

    #call my script every day at 1am
    0 1 * * * /bin/bash /path/to/this/script.sh
    

    如果您想保留现有的 SQL 文件并从 bteq 脚本中引用它,您可以这样做:

    #!/bin/bash
    
    bteqSYSTEM="your teradata domain name or ip"
    bteqUSER="your teradata username"
    bteqPWD="your teradata password"
    
    bteq <<- BTEQSCRIPT 1> /DATA/home/pverma3/bteq_output.log
            .LOGON ${bteqSYSTEM}/${bteqUSER},${bteqPWD}
            .RUN FILE=/DATA/home/pverma3/CronTab_Test_Piyush.sql;
            .LOGOFF
            .QUIT
    BTEQSCRIPT
    

    您也可以考虑将该 sql 放入存储过程中,然后从您的 bteq 中调用该过程。这样你就可以将所有的 sql 都放在命令行之外,这样编辑起来会有点困难。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-03-26
      • 1970-01-01
      • 2014-03-02
      • 1970-01-01
      • 2013-07-28
      • 2014-09-22
      • 2014-12-26
      相关资源
      最近更新 更多