繁体   English   中英

使用开源/免费软件批处理作业依赖性

[英]Batch Job Dependencies Using Open Source/Free Software

我在一个大型数据仓库工厂中工作,我们每天晚上都有很多工作同步进行,但是许多工作在开始之前就依赖于提取或数据加载过程。 目前,我们目前使用“昂贵的调度系统”来计划这些。

有什么方法可以使用开源或免费的unix / linux工具(例如cron)来设置作业依赖关系?

改用开放式的解决方案将是一件好事,可以为我们节省很多!

关于马特

可以使Cfengine做这样的事情。 您可以将其设置为cron替代品,在计划的时间运行任意命令,还可以设置“类”,以便仅在启用某些类后才执行某些操作。 从“这是一个Linux系统”到“当前在5小时到10分钟之间”到“系统负载高于值x”再到“我刚刚指定的此任意shell命令返回true”之类的类都可以,所以您可以设置您的类以指示您的工作依赖性。

我怀疑它是否像调度系统一样强大(必须通过配置类来手动设置依赖关系,同时调度将需要额外的脚本或配置工作),但是它是免费的且开源的。

Cfengine的版本2使用起来并不是特别令人愉快(用Seth Vidal的话说,“它的[原文]语法杀死了小猫”)。 我没有使用Cfengine的3 木偶也有类似的设计目标为Cfengine的,并且可以更容易使用。

去年我问了一个类似的问题 (也许Serverfault现在会是一个更好的地方?)。 不幸的是,似乎没有一个简单的即装即用的解决方案。

Cron本身无法处理此问题。 加载数据的过程是否可以在完成后写出状态文件? 这将允许后续作业在执行其实际工作之前检查状态文件。 显然,这不是一个理想的解决方案(我怀疑故障点太多了),但是对于您要完成的任务而言,这也许已经足够了。

Schedulix是Linux的开源工作负载自动化解决方案: http : //www.schedulix.org

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM