Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Shell 用于对特定日期范围运行计数查询的Unix脚本_Shell_Unix_Hive_Hiveql - Fatal编程技术网

Shell 用于对特定日期范围运行计数查询的Unix脚本

Shell 用于对特定日期范围运行计数查询的Unix脚本,shell,unix,hive,hiveql,Shell,Unix,Hive,Hiveql,当我运行一个日期范围的计数时,我遇到了一个GC开销问题,因为它有一个巨大的数据要拉,所以需要一个逻辑来运行特定日期范围的查询(例如,每30天运行一次查询而不丢失任何数据),并在最后将其汇总 我尝试每30天运行一次查询,但在这种方法中,可能会有几天错过数据计数 目前,我编写了下面的代码,并且能够成功运行查询,但这是一个非常耗时的过程,因此需要帮助为每个月或某些特定日期范围更改此代码,而不是在下面运行 while [ ${PART_START_DATE} -le ${RUN_START_DAY} ]

当我运行一个日期范围的计数时,我遇到了一个GC开销问题,因为它有一个巨大的数据要拉,所以需要一个逻辑来运行特定日期范围的查询(例如,每30天运行一次查询而不丢失任何数据),并在最后将其汇总

我尝试每30天运行一次查询,但在这种方法中,可能会有几天错过数据计数

目前,我编写了下面的代码,并且能够成功运行查询,但这是一个非常耗时的过程,因此需要帮助为每个月或某些特定日期范围更改此代码,而不是在下面运行

while [ ${PART_START_DATE} -le ${RUN_START_DAY} ]
   do
   fb_TEST=$(($fb_TEST+$(hive -S -e "use ${DATABASE};set hive.cli.print.header=false;select count(*) from fb_wrk_tab where date = '${PART_START_DATE}';")))

   PART_START_DATE=`date -d "${PART_START_DATE} 1 days" +%Y%m%d`

   echo "fbwrk_TEST count is"$fb_TEST >> ${LOG_FILE}

   done