跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 推荐一个 Java 事件驱动任务流框架
未分類
5 2 月 2021

推荐一个 Java 事件驱动任务流框架

推荐一个 Java 事件驱动任务流框架

資深大佬 : Brentwans 10

不一定是叫事件驱动任务流框架,我实在没法给出个准确的工具类型的名称。
需求是这样的。当前数仓里表会从生产库中的先导进来,然后各种 join,汇总,过滤,排序一系列操作后又产生一堆表。这一堆表结合各个业务部门需求,可能又各种计算后再次产生一堆表。

表和表之间有比较复杂的血缘关系。每天晚上都会把需要的数据从生产库抽到数仓中后。然后用 spark 把按照每个表的创建时间的顺序,执行各种计算,产生那一堆堆的表。所以的一切都是按照时间来傻傻执行的,比如导数 1 点,那么安全起见,1 点半开始 spark 的任务运行,然后任务是按照创建时间顺序来调度运行的。

这样的结构问题逐渐显现。随着数据增多,和数仓中各种表越来越多。spark 生成的时间现在一个晚上快生成不完了。其中主要问题是,有大量的表是无需计算的被计算了。比如销售部门的一张表,是由仓储部门的表各种计算产生的,而这张仓储部门的表一周才更新一次,所以销售部门的表一周一次计算就够了。但是现在系统是傻傻的每天都执行,把所有数仓中的表都计算一遍,这表多了自然就扛不住了。

目前表的血缘关系已经有了。需要的是,仓储表开始往数仓导数并且成功后,触发计算并产生对应销售部门的表,这个表又计算成功后,接着触发下面的依赖表。

此外每个操作(导入数据,执行 spark 各种计算等)对应各个步骤的事件也都有了。现在需要一个类似 iPhone 上面快捷指令或者 mas 上面自动操作那样的执行框架,根据血缘关系进行编排,然后根据各个事件来执行对应的表计算。

这部分觉得功能不和公司业务绑定应该有类似工具,就不想重复造轮子了。但是找了好些,要么感觉是个小项目不靠谱,要么就不是以消息为基础,而是预先构造一个执行对象,把每一步设定好开始各个执行步骤,基于消息的可以单机跑,但是这个预先的执行对象的单机不太好控制整个集群中任务。
拜托各位,有没有什么成熟的框架或者工具推荐的。

大佬有話說 (3)

  • 資深大佬 : bugFactory

    按我的理解,你这里需要一个更好的调度系统

  • 主 資深大佬 : Brentwans

    @bugFactory 有轮子推荐一下吗?

  • 資深大佬 : bugFactory

    @Brentwans xxl-job 好像就可以,定时调度加事件触发

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具