• 基于flowable的upp(统一流程平台)运行性能优化(2)


    upp整体架构决定了我们的内部并不全依赖于核心组件,我们完全由能力在外围控制核心组件的行为,所以有必要回归下upp的整体结构:

    基于(1)的分析,业务模型压缩方案基本确认。运行期需要压缩数据模型如下:

    act_ge_*

    a.act_ge_bytearray:

    这张表存储的是flowable中使用的大对象,如流程发布后的运行图/变量表中的大对象信息。运行图需要进行版本管理,所以不需要关注。

    所以整个来看关注运行期变量/与历史沉积变量

    --运行期总变量信息:

    select *from act_ge_bytearray where DEPLOYMENT_ID_ is null and NAME_='var-flow_assignee'

    --运行期有效变量信息:

    select *from act_ge_bytearray where DEPLOYMENT_ID_ is null and NAME_='var-flow_assignee' and ID_ in(select BYTEARRAY_ID_ from act_ru_variable where BYTEARRAY_ID_ is not null)

    --历史沉积变量信息

    select * from act_ge_bytearray where  DEPLOYMENT_ID_ is null and NAME_='hist.var-flow_assignee'

    --历史沉积有效变量信息

    select * from act_ge_bytearray where  DEPLOYMENT_ID_ is null and NAME_='hist.var-flow_assignee' and ID_ in(select BYTEARRAY_ID_ from act_hi_varinst ahv where BYTEARRAY_ID_ is not null)

    act_ru_*

    b.act_ru_actinst

    c.act_ru_execution

    d.act_ru_task

    e.act_ru_variable

    本质上运行期的信息不需要调整,但upp的结构提醒着我们一切皆有可能。

    业务数据终审是基于wfengine的流程索引表、撤回重选流程的数据运行期信息已经不再有意义。所以需要清理的信息将基于流程实例索引表与流程实例轮次表进行处理。

    ---需要考虑运行沉积时间:【15天到6个月】

    select *from act_hi_procinst where PROC_INST_ID_ in(select FLW_PROC_INSTANCE_ID from dhcc_flw_bizdata_index dfbi where FLW_STATUS='完成')

    ---需要考虑沉积时间
    select *from act_hi_procinst where PROC_INST_ID_ in(select FLW_PROC_INSTANCE_ID from dhcc_flw_bizdata_index_hi dfbih)

    根据获取到的流程实例对象进行数据转存操作。

    act_hi_*

    f.act_hi_comment

    g.act_hi_identitylink

    h.act_hi_instance_rel

    i.act_hi_procinst

    j.act_hi_actinst

    k.act_hi_taskinst

    *l.act_hi_taskinst_approve

    *m.act_hi_taskinst_approve_delete

    n.act_hi_varinst

    由于我们对审批记录信息进入重选构建(带*表),所以,当流程终审完或撤回重选流程后,相应的数据在表中沉积一段时间后,可以进行转存。转存的数据员类似ru表的检测。

    ---需要考虑运行沉积时间:【15天到6个月】

    select *from act_hi_procinst where PROC_INST_ID_ in(select FLW_PROC_INSTANCE_ID from dhcc_flw_bizdata_index dfbi where FLW_STATUS='完成')

    ---需要考虑沉积时间
    select *from act_hi_procinst where PROC_INST_ID_ in(select FLW_PROC_INSTANCE_ID from dhcc_flw_bizdata_index_hi dfbih)

    根据获取的流程实例,对相应的数据进行转存操作。

  • 相关阅读:
    我想外包开发一个预约类小程序,大概需要多少钱?
    电机控制、运动控制、过程控制三者关系
    【JVM】关于JVM,你需要掌握这些 | 一文彻底吃透JVM系列
    java基础的复习
    STM32个人笔记-SDIO接口
    DGIOT短信字段与腾讯云服务器短信字段的对应关系
    Cmake常用命令
    蓝牙耳机哪种通话效果最好?通话质量最好的蓝牙耳机盘点
    C++11 多线程学习
    计划管理这一块儿,ERP和MES真的划等号?
  • 原文地址:https://blog.csdn.net/tubierr/article/details/126116008