Flink从ck拉起任务脚本

bash 复制代码
#!/bin/bash

APP_NAME="orderTest"

CHECKPOINT_BASE_PATH="hdfs:///jobs/flink/checkpoints/aaa-test/"


is_running=$(yarn application -list | grep -w "$APP_NAME" | grep -c "RUNNING")

if [ $is_running -gt 0 ]; then
    echo "应用程序 '$APP_NAME' 在运行中,退出脚本"
    exit 1
else
    echo "应用程序 '$APP_NAME' 不在运行中,准备拉起任务"
fi



get_latest_checkpoint() {
    latest_checkpoint=$(hdfs dfs -ls -t -R $CHECKPOINT_BASE_PATH  | grep '_metadata' | sort -k6,7r | head -n 1 | awk '{print $8}'  )
    if [ -z "$latest_checkpoint" ]; then
        echo "没有找到适合的ck,退出执行"
        exit 1
    fi

    checkpoint_dir=$(dirname "$latest_checkpoint")
    echo $checkpoint_dir
}

LATEST_CHECKPOINT=$(get_latest_checkpoint)
echo " '$APP_NAME' 任务将从 '$LATEST_CHECKPOINT' 启动"


flink run \
 -t yarn-per-job \
 -d \
 -p 1 \
 -Dyarn.application.queue=realtime \
 -Dyarn.application.name=$APP_NAME\
 -Djobmanager.memory.process.size=1024mb \
 -Dtaskmanager.memory.process.size=1000mb \
 -Dtaskmanager.memory.managed.size=0mb \
 -Dtaskmanager.memory.network.max=64mb \
 -Dtaskmanager.numberOfTaskSlots=1 \
 -c com.test.Main\
 -s $LATEST_CHECKPOINT \
 ./ds-test-1.0.jar

备注:由于Flink checkpoint 个别情况下,不一定能保证落地的checkpoint文件一定有效,所以需要人工介入支持。

相关推荐
2601_961946082 小时前
AI API 网关实战:从单 Key 管理到企业级多租户架构
大数据·人工智能·金融·架构·api·个人开发
大大大大晴天4 小时前
Flink CDC 深度解析:从原理到实践的全链路指南
大数据·flink
IT新视界4 小时前
Elasticsearch信创国产化替代
大数据·elasticsearch·搜索引擎
汇策研习社5 小时前
改良版ADX指标实战指南:告别传统ADX滞后、震荡误判难题
大数据·经验分享·金融·区块链·fastbull
SelectDB5 小时前
宽表元数据膨胀怎么解?Doris Segment V3 对比 Parquet、Lance
大数据·数据库·数据分析
隔窗听雨眠6 小时前
从追赶者到定义者:中国BI如何借助AI实现弯道超车
大数据·人工智能
cspttty6 小时前
二本软件工程专业好就业吗?毕业后能做哪些岗位
大数据·软件工程
智圣新创016 小时前
高校全域治理决策效能升级 智圣新创决策中台落地实操与行业趋势研判
大数据·人工智能·物联网
2401_859506247 小时前
玉石加工全链路技术变革:五大维度拆解材质改性、精密雕刻与智能溯源
大数据·人工智能
qiaozhangmenai10 小时前
2026年AI超级公司系统行业趋势与技术演进分析|AI营销闭环|乔掌门AI
大数据·人工智能