首页 > 其他分享 >WhaleScheduler为银行业全信创环境打造统一调度管理平台解决方案

WhaleScheduler为银行业全信创环境打造统一调度管理平台解决方案

时间:2024-04-19 17:00:39浏览次数:16  
标签:解决方案 银行 调度 支持 任务 监控 WhaleScheduler 全信

file

项目背景

数字金融是数字经济的重要支撑和驱动力。近年来,我国针对数字金融的发展政策频频出台,《金融科技发展规划 (2022-2025年)》、《“十四五”数字经济发展规划》、《关于银行业保险业数字化转型的指导意见》、《金融标准化“十 四五”发展规划》等相继发布,顶层设计逐步完善。

2024年,政府工作报告也提出要大力发展科技金融、绿色金融、 普惠金融、养老金融、数字金融,未来数字金融是我国金融发展重点之一。

file
file

我国金融业正在步入数字化转型的关键阶段,同时在发展中面临着诸多挑战与难点,如数字基础设施建设不足、数字安全保障机制不健全等。

某国有银行地区性分行(以下简称“银行”)主动融入数字经济新浪潮,抢抓机遇、乘势而上,不断深化数字化转型升级,积极加快金融产品融合创新,但是在发展中仍面临显著困难。

痛点与挑战

具体到业务上,银行需要对总行分发的数据进行加载和转换,每日任务约 3000。随着新业务不断增加,任务总量在 1 万左右。银行的业务场景涉及到接收上游系统提供的文件数据,并将数据导入到 GreenPlum 等分析数据库中进行数据分析。此前,银行使用自研的调度系统来进行任务的调度,但随着数据量急剧增长和全新业务场景的出现,这个调度系统陈旧、性能不够的缺点暴露出来。

总的来说,银行在数据调度上面临着以下痛点问题:

  1. 前期自研系统系统灵活性较差,系统维护工作量巨大,跑批出现问题时对业务正常开展产生影响的风险较大,且对于新支持新增业务的需求,需要投入研发人员定制开发;
  2. 不支持分布式系统,扩展性能差,面对急剧增长的数据量无法快速完成扩容;
  3. 业务方涉及不同部门,对程序理解不同,使用习惯也不同,难以满足所有业务部门的使用需求;
  4. 上游文件数量多,来源广,并且到达时间不定,需要随时监控数据到达情况,并在发生异常情况时及时发出告警;
  5. 跨部门使用场景多,需要跨项目依赖和准确的影响分析查询,便于追溯完整的上下游关系;
  6. 多业务部门使用调度时,无法高效复用已有调度,并限制相关权限;
  7. 银行对于信创环境支持的需求越来越紧迫,但苦于原系统无法进行改造以支持信创操作系统、信创服务器、信创数据库等信创环境。

项目需求

银行将紧跟总行的企架各批次分行特色系统建设计划,推进信创化建设,并发挥科技赋能作用。目标是满足公司数据体系建设中数据处理任务的统一调度和监控需求,同时推动建设信创下的统一调度管理平台。

为了实现这一目标,银行将建立每日流水线任务的集中定义和集中控制机制,允许用户灵活地配置多种类型的作业任务,并统一调度和监控运维。这个统一调度管理平台需要具备高性能、高可靠性,同时易于扩展的特点,以满足银行在多样化功能上的开发需求。

最重要的是,流水线任务统一调度管理平台使银行能够全面监控和跟踪管理各数据加工节点的处理过程,帮助银行更有效地管理数据处理任务,实现对任务的全面掌控。

针对这些需求,调度系统需要满足以下要求:

  • 支持分布式的架构及资源控制等方法,实现高可靠性,高处理性能。

  • 支持多种丰富的任务类型,包括Shell、MR、Spark等。

  • 具有良好的管理接口,易于管理,达到简单易用,使得用户有流畅的产品体验。

  • 提供强大的任务执行功能,支持指定任务的运行、空跑测试功能等能力。

  • 提供参数管理和数据源的统一维护能力及日历管理能力和工作流配置管理能力。

  • 提供完善的监控和告警能力,支持工作流和任务的运行情况统计和监控、任务日志在线查看、服务器资源监控、数据质量检测和告警。

  • 提供监控和统计以及权限管理功能,支持统一的数据监控、运维服务需求等。

除此之外,调度系统还需要支持用户的个性化需求,比如通过产品的多样化结构配置,满足对接银行行内登录、权限组件、短信接口、行信接口、个性化展示页面,以及20条存量工作流迁移等工作需求。

WhaleScheduler解决方案

白鲸开源自主研发的WhaleScheduler国产信创化调度平台可支持银行在数据体系建设中不同场景的任务调度需求,满足金融行业企业级用户对系统的稳定性、可靠性、合规性、高性能、支持信创环境等要求。WhaleScheduler为银行批处理任务制定统一的开发规范、运维方法,对各系统的批量任务进行统一管理、调度和监控,符合银行不同业务应用环境的性能需求,并提供了私有化部署和开发支持。

01 无中心化架构设计

白鲸开源WhaleScheduler采用先进的无中心架构的设计思想,通过注册中心发现服务,服务之间可以互为备份,保证了系统的高可靠性的同时,也可以做到水平扩展服务数量,以保持银行业务的稳定性,很好地支持千万级别的任务数量。
file
WhaleScheduler 架构图

02 分布式部署

WhaleScheduler为银行提供的所有服务均采用分布式部署,支持高稳定性、高性能和高容错性,保证提供可持续使用的服务。

file

集群部署架构图

03 多种任务类型

WhaleScheduler支持包括Shell、MR、Spark、SQL(MySQL、PostgreSQL、Hive、SparkSQL)、Python、Sub_Process、Procedure等任务类型,同时具备跨项目依赖和补数功能。

04 全模式DAG开发能力

系统采用全“所见即所得”设计模式,用户可以通过拖拽,快速生成复杂的DAG任务工作流,而无需掌握大量代码和大数据底层知识。
file

05 强大的任务执行功能

支持指定任务的运行、空跑测试功能,支持日期参数的输入,支持多个前置任务状态的逻辑判断或前置任务的输出参数判断,支持SSH远程登录目标服务器并在其上执行任务等能力。

06 丰富的工作流配置管理能力

支持工作流Excel文件的导入导出、模板与实例分离、多种环境运行任务、灵活的参数定义和传参功能,以及工作流详情展示和多种运行策略。

07 监控本地/远程服务器文件

系统通过Trigger任务类型支持监控本地/远程服务器文件到达事件、数据库条件成立事件,并提供全局Dashboard,项目Dashboard,支持工作流和任务的运行情况统计和监控、任务日志在线查看、服务器资源监控,数据质量检测,以及邮件、钉钉、企业微信、HTTP、脚本等十余种告警方式,自定义告警类型也可以轻松做到。

08 多样化的日历功能

WhaleScheduler提供强大的日历管理功能,支持不同项目配置独立的日历。可视化日历配置和模板导入导出的维护方式对于银行工作人员的用户体验来说也是非常友好的,创建、编辑、删除、导入导出等操作方式一目了然。如果有需要,用户还可以按日历进行调度,也可以基于日历或翻牌任务获取日期数据。

file
file

09 任务级血缘分析

银行跨部门的使用场景需要跨项目依赖和准确的影响分析查询,这一点非常重要。对此,WhaleScheduler提供了完善的系统影响分析功能,可以分析任务级的血缘,血缘分析包括工作流、任务,工作中的子流程,以及子流程中嵌套的依赖等,让用户可以查看完整的任务上下游关系。
file

10 数据质量检测

银行的上游数据类型多,来源复杂,数据质量检测是重要的一环。WhaleScheduler支持数据质量检测,检测规则包括不限于空值检测、枚举值检测、表行数校验、两表值比对校验等检测规则。如果检测错误的数据条数超过阈值,需要告警出来或者工作流失败停止,用户可以设置超过阈值告警或让工作流失败。

11 用户角色菜单权限管控

支持用户操作审计,设置用户、角色、资源、权限来设计不同部门的功能权限,满足银行对安全与权限的特殊需求。

12 高可伸缩性支持

调度集群能够随任务量的增加及时增加资源,持续提供服务。

13 任务维护人员配置

系统设计有完整的用户管理体系,可以进行任务维护人员的添加、修改和删除等配置图片
file

同时,针对银行提出的个性化功能开发,包括对接行内登录、权限组件、短信接口、行信接口、个性化展示页面以及20条存量工作流迁移等工作和现场安装、调试等工作,白鲸开源派出项目经验丰富的团队,采用符合PMI标准的项目管理制度,以满足银行不同业务应用环境对性能的需求。

白鲸开源WhaleScheduler为银行提供了高可靠性、高性能、多场景支持、支持全站华部署运行的强大调度功能,不但可以到银行各规模、各层次的高可靠性、高安全性、可扩展性和可管理性的要求,还充分考虑到银行未来3-5年的发展需要,可适应银行不断发展的业务和管理需求。

白鲸开源

白鲸开源科技是一家由多名 Apache Software Foundation Member, Apache DolphinScheduler 和 Apache SeaTunnel 核心成员组建的公司。我们致力于打造下一代云原生 DataOps 平台,助力企业在大数据和云时代,智能化地完成海量数据的处理、调度和治理,以提高企业解决数据问题的效率,提升企业分析洞察能力和决策能力。

本文由 白鲸开源 提供发布支持!

标签:解决方案,银行,调度,支持,任务,监控,WhaleScheduler,全信
From: https://www.cnblogs.com/DolphinScheduler/p/18146412

相关文章

  • redis常见的应用问题以及解决方案
    缓存穿透问题描述:key对应的数据在数据源并不存在,每次针对此key的请求从缓存获取不到,请求都会压到数据源(数据库),从而可能压垮数据源。用一个不存在的用户id获取用户信息,不论缓存还是数据库都没有,若黑客利用此漏洞进行攻击可能压垮数据库。缓存穿透的条件:1.应用服务器压力变大2......
  • 基于信息安全的软测工具链解决方案
       伴随着汽车与外界的交互手段不断丰富,车联网相关设备、系统间的数据交互更加频繁,万物互联下的网络攻击也逐渐渗透延伸到车联网的领域。汽车行业面临着重大的信息安全挑战。此外,UNECEWP.29R155和ISO/SAE21434标准也对汽车的信息安全提出了规范化的要求,旨在产品全生命周......
  • NVIDIA驱动失效简单解决方案:NVIDIA-SMI has failed because it couldn‘t communicate
    NVIDIA驱动失效简单解决方案:NVIDIA-SMIhasfailedbecauseitcouldn‘tcommunicatewiththeNVIDIAdriver.问题:准备用GPU跑模型时,提示cuda不存在第一步,打开终端,输入:vidia-smi1|NVIDIA-SMIhasfailedbecauseitcouldn'tcommunicatewiththeNVIDIAdriver.2|Make......
  • TapData 正式上线 MongoDB 生态合作伙伴专栏,提供更专业的企业级实时数据集成解决方案
    近日,MongoDB官方正式将TapData加入MongoDB生态合作伙伴名录专栏,该项目旨在帮助用户发现MongoDB合作伙伴提供的优质集成和解决方案,本次入选的100+名单便筛选自数千家合作企业。此次合作达成,标志着TapData在现代应用数据集成领域的产品能力和稳定性已获得行业的广泛认可......
  • 指夹式血氧仪解决方案研发
    指夹式血氧仪主要由传感器和显示屏两大核心部分组成。传感器设计精巧,通常呈现为一个夹子形状,方便用户将其轻松夹在手指上。当传感器夹在手指上时,它会发出两种不同波长的光,即红光和红外光。这两种光均具有穿透皮肤的能力,并能够被血液中的血红蛋白吸收。通过这一工作原理,指夹式......
  • Unity Android 打包报错解决方案记录
    1.安卓版本过低报错提示PickedupJAVA_TOOL_OPTIONS:-Dfile.encoding=UTF-8D:\Develop\Unity\HRVTest\Library\Bee\Android\Prj\Mono2x\Gradle\unityLibrary\src\main\java\com\unity\androidnotifications\UnityNotificationManager.java:164:错误:找不到符号......
  • 智能调度_AIRIOT智能车队管理解决方案
    客运、货运、汽车租赁、出租运营等行业对车辆管理、车队管理以及司乘人员的管理方式,逐渐向数字化和智能化转型。传统的依赖人工调度、记录和跟踪的管理模式已经难以满足业务发展需要,存在如下痛点:实时监控与定位功能弱:无法实时获取车辆的位置信息、行驶速度、方向、里程等动态数......
  • 六芒兔车载摄像头行业MES解决方案
    六芒兔车载摄像头行业MES解决方案,涵盖了生产计划管理、序列号管理、PLC性能检查数据采集、高低温测试数据采集、无纸化作业手册、设备状态监控以及打包入库管理等多个关键环节。以下是对这些环节的详细阐述: 一、生产计划管理六芒兔MES系统通过整合销售订单、库存信息、设备状......
  • SAP ERP出海解决方案提供商【工博科技】,为中国企业“出海”护航
    当今高质量发展成为主题,中国企业正积极将创新成果、产品、服务“走出去”。然而出海企业面临着充满不确定性的国际环境带来的风险管控挑战和全球化经营带来的竞争挑战,必须要不断提升风险管控能力和综合竞争实力。其中,成熟的数字化能力可以在保护企业数字安全的同时提供发展的技术......
  • Got socket error trying to find package flutter_lints at https://pub.dev Flutter
    最近想继续玩下Flutter,发现pub.dev居然被封锁了,试了下网上的方案,都不可行,尝试组合了一下,用下面的方案解决了。第一步:找到这个文件D:\flutter\packages\flutter_tools\lib\src\http_host_validator.dart把下面的地址修改为:constStringkPubDev='https://pub-web.flutter-io......