栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

中信信用卡核心升级应用&数据服务系统

中信信用卡核心升级应用&数据服务系统

整体架构图

data-azkaban-web 前端页面
data-azkaban-web-back 后台数据控制端,执行状态刷新等等。
data-workflow-mgmt 定时任务基于springboot的Scheduled定时任务,本质他是单线程。

问题1:为啥自己封装定时任务
azkaban现在存在的问题是 基于project调度,不能跨project调用,而且基于project调度上传文件太多了,依赖关系复杂。

问题2:自己封装除了解决azkaban外,其他好处
依赖flow,依赖外部sql特殊化定制,到某个时间才能执行,文件满足等等

问题3:咋样解决规划任务状态的
默认值0,
初始值1,从批次表导入到执行表的状态
执行中2,执行中 判断条件是只要执行了azkaban的接口,有正确的返回值,就算。不异常,如果执行flow接口异常,直接设定为失败,并且把azkaban返回的失败状态和失败描述写入自己的表对应状态中。
执行成功3,不断的调用查询flow状态的接口,回刷状态。
执行失败4,不断的调用查询flow状态的接口,回刷状态。
跳过5,自己本身业务需求和azkaban没啥关系。

问题4:自动起批咋样实现的
启动一个定时任务,从批次表把数据导入执行表,不断的循环遍历,满足依赖关系的条件可以自动调起来

问题5:跨机房切换
汇天 朝阳门 合肥 一地2中心,异地灾备
需求1:汇天掉起来,朝阳门也会自动掉起来
需求2:汇天某些数据需要依赖朝阳门的等外部接口数据,可以提供sql给进行判断,sql状态的返回值规定好就行。

问题6:异常处理
一个flow失败了,我们有重跑机制,强制重跑,立马调用flow执行接口,这个flow状态设定为2执行中,如果他满足依赖也就会重新跑一次,加入重跑次数超过3次,我们会告警,有 histroyflowid字段 每次调用都会往里面添加一个 的 flowid1,flowid2,flowid3。超过3次,人工干预。
加入有个需求我想跳过这个flow,不执行也是可以的。这属于状态stauts的状态划分,java判断条件的时候执行flow直接让他过就行了。

project -> flow -> job 我们把flow调度抽取出来,当做一个原子性,因为azkaban提供了基于flow单独调度的接口,我们可以在上面做很多事情,自定义flow依赖,所以我们定义2个表,批次表,执行历史表。

批次表里面可以有很多东西 flow名字,依赖关系(依赖flow,依赖外部sql特殊化定制,到某个时间才能执行,文件满足等等) 这需要我们前一天启动就把依赖图弄好。
执行历史表,flow名字,依赖关系,执行状态

后来又增加一个需求,在一个group概念,一个group执行完后,我们再执行其他group。 增加一个group批次表,group执行表。 只有group之间的依赖没有他们依赖,其他执行逻辑和flow执行逻辑一样。

项目一
总项目名称:中信信用卡核心升级应用&数据服务系统
总项目说明:中信银行信用卡StarCard新核心系统,通过构建新一代分布式云架构,并在近线数据库中采用了分布式集群(Hbase+ES+HIVE)解决方案,搭建出了PB级数据存储能力,为中信银行信用卡业务提供了秒级时延的海量数据实时查询,也提供了数据在不同场景下横向关联的穿透能力,由此为客户服务、营销支撑、产品服务、信贷风险、运营支撑等业务提供了不同时效、复杂场景的数据服务能力。
项目1周期:2019.02-至今
软件环境:azkaban,mysql,springcloud等
开发工具: eclipse+jdk+maven
项目名称:数据组hive离线调度产品。
项目概况:基于大数据离线调度产品azkaban二次封装的产品。
需求说明:大数据离线调度产品azkaban功能是基于一个Project进行工作流顺序执行的。不满足我们的需求,我们需要个性化调度,还能个性化维度统计每天跑批时间,还有一些异常处理功能。
功能包括:1)批次调度,批次之间依赖调度
2)批次里面按照flow依赖调度
3)批次里面flow调度触发条件sql,时间,文件等满足条件
4)监控中心 重跑,中止,跳过等等操作
5)数量统计每天批次,flow成功失败跳过数,耗时多少等等。
6)自动化起批
7)主备机房切换调度
8)调度系统高可用设计
责任描述:1)springcloud环境搭建,2)核心需求分析,产品设计,3)代码规范,核心代码书写,4)生产变更维护

项目2周期:2018.04-2019.02
软件环境:springcloud,kafka,elasticsearch,hbase,hive等
开发工具: eclipse+jdk+maven
中心信用卡核心数据服务系统设计与研发,中信银行信用卡中心将新信用卡核心系统分为账户处理系统、授权处理系统,大数据服务与应用系统,将大数据平台引入到信用卡核心系统中,通过业务读写分离模式让大数据平台进行查询时加快响应时间。
功能包括:1)基于(es+hbase)实时授权服务查询
2)hive离线报表
3)kafka数据外发
责任描述:1)负责springboot,spring cloud,zipkin微服务体系,elasticsearch,hbase数据库的建模设计, openshift平台环境的使用及部署微服务,信用卡核心系统运营支撑平台的技术体系架构。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/673417.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号