当前位置: 首页 > article >正文

风控系统指标版本管理,前端实现

个人博客:无奈何杨(wnhyang)

个人语雀:wnhyang

Github:wnhyang - Overview


前言

本文算是前文《基于LiteFlow的风控系统指标版本控制》的完善。

前文已经说明了在基于规则引擎系统中版本管理的重要性,并说明了主表+历史表的实现思路和实现方法。

依照着上篇“历史既是历史又是运行”的思路在前端项目中实现版本管理。开发版本不代表最终效果😂

指标状态流转

image

1、创建:无-待发布,新创建的指标都是待发布状态,数据落在主表中;

2、更新:待发布-待发布或已上线-待发布,简单来讲只要是更新都会回到待发布状态,更新并不改变指标的发布状态,只更新主表;

3、发布:待发布-已上线,发布后主表指标状态改为已发布,同时在版本库中生成一个最新版本,新增或修改LiteFlowchainEL表达式;

4、下线:已上线-待发布,下线后指标状态回到待发布状态,对应的LiteFlowchain记录被删除;

5、版本切换:版本库-待发布,版本切换生效于版本库中某个版本用于切换某个版本到主表中,还需要再次发布才生效;

3、删除:待发布-无,删除某指标,清理指标历史数据。

运行区与编辑区

如下是前端指标管理页面,有两个tab分别是运行区和编辑区。

运行区展示已发布的每条指标的最新版本,操作有查看历史版本和下线。

image

编辑区展示所有主表数据,展示指标的名称、状态、类型等,操作有查看历史版本、查看引用、复制、编辑、发布、删除。

image

下面根据指标状态流转依次说明。

创建

创建只能在编辑区操作,有两种方式:1、新建按钮创建;2、复制已有指标创建。

新建按钮创建就是默认所有表单项为空,全都需要输入,如下。

image

复制创建就是将某一个指标的信息预填入表单中,省去一些数据录入的步骤,如下。

image

状态流转:无-待发布,新建的指标都是待发布状态。

更新

更新也是在编辑区操作,通过点击编辑按钮,确认弹框表单数据触发。

image

状态流转:待发布-待发布或已上线-待发布,只要是更新就都回到待发布状态。

发布

发布也是在编辑区操作,且只能发布待发布状态的指标,如下发布了已上线的指标提示“指标版本已存在”。

image

一旦发布了版本就会出现的运行区,且在版本库中新增一个版本。

image

状态流转:待发布-已上线,同时新增或修改LiteFlowchainEL表达式,这里就不体现了。

下线

下线是在运行区操作的,表示设置当前指标版本不可用。

另外在编辑区尝试删除指标时会有判断,如果该指标有对应的运行的版本则不可删除。

image

只有通过在运行区下线后方可删除。

image

状态流转:已上线-待发布,下线后指标状态回到待发布状态,同时删除了对应的LiteFlowchain记录。

版本切换

这是设置版本管理的目的,运行区和编辑区都可以操作,弹框展示当前指标所有历史版本,展开行后展示历史版本详细信息。如果想要回到某个版本,切换版本即可,操作后会将选中版本的数据会写到编辑区对应的指标上。

image

不过这时还未发布,真正的版本切换还未完成,需要再次编辑发布,有点类似于git revert <commit-hash>

状态流转:版本库-待发布。

删除

前面下线已说明,只能删除没有版本运行的指标,不然报错。

状态流转:待发布-无。

扩展

1、窗口类型

目前指标只有时间窗口类型,未来考虑加入会话窗口等,丰富指标场景。

2、指标类型

目前已有:次数统计、求和、最大值、最小值、平均、关联次数、历史取值。

未来考虑:移动距离、移动速度、趋势、方差、标准差、业务链、连续次数(不同与次数统计,中间插入其他状态则重新统计)

3、指标表单校验

指标类型不同,需要的表单项也不同,可选的字段类型也不同,如:数字类计算指标(求和、最大值、最小值、平均等),计算字段应该只能是数字类型。移动距离/速度,限制计算的字段类型为IP或经纬度数据。等等等。

4、指标编辑时某些字段不可更改

这个其实在这篇文章《风控系统之指标回溯,历史数据重跑》已经初步说明了,要么实现指标回溯,那么编辑时所有字段是可以更改的,要么就不让更改。什么意思呢?目前所有指标都是流式计算而来的,如果某个字段更改,那么流式计算的结果将不准确。

如下指标,如果在发布后被规则引用了,但配置的有点问题,要修改如下任意一项修改都会造成之前计算结果的不可靠,时间改为更大的100分钟?窗口大小改为时?条件新增为在某设备上的?等等

image

5、指标引用

前面说明了有此功能,但实际还没做好。

指标引用用于查找引用指标的规则,避免误删除指标,导致规则判断有误。

6、版本对比,高亮差异

7、指标导出导入和清理

指标导出导入,指标删除后清理历史计算数据。

8、指标大盘

总体查看指标运行情况,哪些指标使用率低,配合的规则效果差,等等。

以上一些不止适用于指标管理,规则、策略也一样,总之还有很多要做。

最后题外话

回顾一下年前一周到现在吧。年前一个月我的状态都很差,睡的好觉屈指可数,但是做的事情还不少。终于熬到了过年,像学生时代一样只要放假就会放空自己,又回到“归零”状态,挺好的。原本还想着回家后能继续做自己的事情,然而并没有那么容易。

原本计划着完成几篇文章,拖着拖着大概就都要舍弃了

  • 因为有更重要的事,集五福、蚂蚁森林、游戏等都变成浪费时间的事情了
  • 轮到我们制造年味了吗?
  • 回家一趟,我不敢轻易xx了
  • 游戏科学、DeepSeak、宇树,中国硅谷?
  • 县城高考状元擦边赚米,有人买房买车,有人还在为理想而活
  • 哪吒2-黑神话-流浪地球,有没有用心观众一眼就能看出来
  • 信息差永不过时,无论是电商差价,还是新的应用(如DeepSeak)
  • 离家回工作地,快递、外卖、司机早就回来了,或是说都没走,他们是唤醒城市的人吗?不,我算吗?

写在最后

拙作艰辛,字句心血,望诸君垂青,多予支持,不胜感激。


个人博客:无奈何杨(wnhyang)

个人语雀:wnhyang

Github:wnhyang - Overview


http://www.kler.cn/a/535586.html

相关文章:

  • 第二次连接k8s平台注意事项
  • 告别手动操作!用Ansible user模块高效管理 Linux账户
  • 【玩转全栈】--创建一个自己的vue项目
  • 【玩转 Postman 接口测试与开发2_018】第14章:利用 Postman 初探 API 安全测试
  • langchain教程-5.DocumentLoader/多种文档加载器
  • Mac M1 ComfyUI 中 AnyText插件安装问题汇总?
  • sql版本序列号
  • Linux 源码编译安装httpd 2.4,提供系统服务管理脚本并测试
  • 在IDEA中高亮的注释
  • Ubuntu 上可以安装ms sqlserver?(不能上网2)
  • 数据结构:排序—插入排序(一)
  • React 中常见的Hooks,安排!
  • LabVIEW2025中文版软件安装包、工具包、安装教程下载
  • CAD导入与解析,助力工业数据可视化高效呈现
  • Java项目: 基于SpringBoot+mybatis+maven+mysql实现的装饰工程管理系统(含源码+数据库+毕业论文)
  • inquirer介绍及配合lerna在Vue中使用示例
  • 如何利用行为驱动开发(BDD)提升自动化测试的效率和准确性?
  • 【ActiveMq RocketMq RabbitMq Kafka对比】
  • GSMA SGP.31 eSIM IoT 架构与需求笔记
  • (2025,LVLM,高分辨率图像处理,子图划分,全局语义引导注意力权重分配)
  • 【杂谈】-文明的量子跃迁:AI时代人类物种的自我重构
  • Mind 爱好者周刊 第12期(上)| 心智游移增强统计学习、认知是一种涌现特性、大脑、心智和身体的数据集、fMRI 数据中大脑网络的时变空间传播分析方法……
  • Windows Docker笔记-Docker拉取镜像
  • Java项目: 基于SpringBoot+mybatis+maven+mysql实现的健身房管理系统(含源码+数据库+毕业论文)
  • MATLAB | 基于长时间序列栅格数据的Mann-Kendall与Pettitt突变检验分析
  • 刷题笔记 动态规划-1 动态规划理论基础