个人博客:无奈何杨(wnhyang)
个人语雀:wnhyang
Github:wnhyang - Overview
前言
本文算是前文《基于LiteFlow的风控系统指标版本控制》的完善。
前文已经说明了在基于规则引擎系统中版本管理的重要性,并说明了主表+历史表的实现思路和实现方法。
依照着上篇“历史既是历史又是运行”的思路在前端项目中实现版本管理。开发版本不代表最终效果😂
指标状态流转
1、创建:无-待发布,新创建的指标都是待发布状态,数据落在主表中;
2、更新:待发布-待发布或已上线-待发布,简单来讲只要是更新都会回到待发布状态,更新并不改变指标的发布状态,只更新主表;
3、发布:待发布-已上线,发布后主表指标状态改为已发布,同时在版本库中生成一个最新版本,新增或修改LiteFlow
表chain
的EL
表达式;
4、下线:已上线-待发布,下线后指标状态回到待发布状态,对应的LiteFlow
表chain
记录被删除;
5、版本切换:版本库-待发布,版本切换生效于版本库中某个版本用于切换某个版本到主表中,还需要再次发布才生效;
运行区与编辑区
运行区展示已发布的每条指标的最新版本,操作有查看历史版本和下线。
编辑区展示所有主表数据,展示指标的名称、状态、类型等,操作有查看历史版本、查看引用、复制、编辑、发布、删除。
下面根据指标状态流转依次说明。
创建
创建只能在编辑区操作,有两种方式:1、新建按钮创建;2、复制已有指标创建。
新建按钮创建就是默认所有表单项为空,全都需要输入,如下。
复制创建就是将某一个指标的信息预填入表单中,省去一些数据录入的步骤,如下。
状态流转:无-待发布,新建的指标都是待发布状态。
更新
更新也是在编辑区操作,通过点击编辑按钮,确认弹框表单数据触发。
状态流转:待发布-待发布或已上线-待发布,只要是更新就都回到待发布状态。
发布
发布也是在编辑区操作,且只能发布待发布状态的指标,如下发布了已上线的指标提示“指标版本已存在”。
一旦发布了版本就会出现的运行区,且在版本库中新增一个版本。
状态流转:待发布-已上线,同时新增或修改LiteFlow
表chain
的EL
表达式,这里就不体现了。
下线
下线是在运行区操作的,表示设置当前指标版本不可用。
另外在编辑区尝试删除指标时会有判断,如果该指标有对应的运行的版本则不可删除。
只有通过在运行区下线后方可删除。
状态流转:已上线-待发布,下线后指标状态回到待发布状态,同时删除了对应的LiteFlow
表chain
记录。
版本切换
这是设置版本管理的目的,运行区和编辑区都可以操作,弹框展示当前指标所有历史版本,展开行后展示历史版本详细信息。如果想要回到某个版本,切换版本即可,操作后会将选中版本的数据会写到编辑区对应的指标上。
不过这时还未发布,真正的版本切换还未完成,需要再次编辑发布,有点类似于git revert <commit-hash>
。
状态流转:版本库-待发布。
删除
前面下线已说明,只能删除没有版本运行的指标,不然报错。
状态流转:待发布-无。
扩展
1、窗口类型
目前指标只有时间窗口类型,未来考虑加入会话窗口等,丰富指标场景。
2、指标类型
目前已有:次数统计、求和、最大值、最小值、平均、关联次数、历史取值。
未来考虑:移动距离、移动速度、趋势、方差、标准差、业务链、连续次数(不同与次数统计,中间插入其他状态则重新统计)
3、指标表单校验
指标类型不同,需要的表单项也不同,可选的字段类型也不同,如:数字类计算指标(求和、最大值、最小值、平均等),计算字段应该只能是数字类型。移动距离/速度,限制计算的字段类型为IP
或经纬度数据。等等等。
4、指标编辑时某些字段不可更改
这个其实在这篇文章《风控系统之指标回溯,历史数据重跑》已经初步说明了,要么实现指标回溯,那么编辑时所有字段是可以更改的,要么就不让更改。什么意思呢?目前所有指标都是流式计算而来的,如果某个字段更改,那么流式计算的结果将不准确。
如下指标,如果在发布后被规则引用了,但配置的有点问题,要修改如下任意一项修改都会造成之前计算结果的不可靠,时间改为更大的100分钟?窗口大小改为时?条件新增为在某设备上的?等等
5、指标引用
前面说明了有此功能,但实际还没做好。
指标引用用于查找引用指标的规则,避免误删除指标,导致规则判断有误。
6、版本对比,高亮差异
7、指标导出导入和清理
8、指标大盘
总体查看指标运行情况,哪些指标使用率低,配合的规则效果差,等等。
以上一些不止适用于指标管理,规则、策略也一样,总之还有很多要做。
最后题外话
回顾一下年前一周到现在吧。年前一个月我的状态都很差,睡的好觉屈指可数,但是做的事情还不少。终于熬到了过年,像学生时代一样只要放假就会放空自己,又回到“归零”状态,挺好的。原本还想着回家后能继续做自己的事情,然而并没有那么容易。
原本计划着完成几篇文章,拖着拖着大概就都要舍弃了
- 因为有更重要的事,集五福、蚂蚁森林、游戏等都变成浪费时间的事情了
- 轮到我们制造年味了吗?
- 回家一趟,我不敢轻易xx了
- 游戏科学、DeepSeak、宇树,中国硅谷?
- 县城高考状元擦边赚米,有人买房买车,有人还在为理想而活
- 哪吒2-黑神话-流浪地球,有没有用心观众一眼就能看出来
- 信息差永不过时,无论是电商差价,还是新的应用(如DeepSeak)
- 离家回工作地,快递、外卖、司机早就回来了,或是说都没走,他们是唤醒城市的人吗?不,我算吗?
写在最后
拙作艰辛,字句心血,望诸君垂青,多予支持,不胜感激。
个人博客:无奈何杨(wnhyang)
个人语雀:wnhyang
Github:wnhyang - Overview