1. Flowable数据库表结构概述
Flowable作为一款轻量级的工作流引擎,其数据库设计采用了模块化的思想,将不同功能的数据存储在不同的表中。理解这些表的结构和关系,对于开发人员排查问题、优化性能以及进行二次开发都至关重要。
Flowable的数据库表主要分为五大模块:
- 流程引擎核心表(ACT_RE_*)
- 运行时数据表(ACT_RU_*)
- 历史数据表(ACT_HI_*)
- 身份认证表(ACT_ID_*)
- 表单相关表(ACT_FO_*)
每个模块都有其特定的职责,下面我们将逐一深入解析这些表的结构和使用场景。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 流程定义与部署表详解
2.1 ACT_RE_DEPLOYMENT表
ACT_RE_DEPLOYMENT表记录了所有流程部署的基本信息,是流程部署的入口表。每次部署流程时,都会在此表中生成一条记录。
关键字段说明:
ID_:部署的唯一标识符,采用UUID格式NAME_:部署时指定的名称,用于业务识别DEPLOY_TIME_:部署操作的时间戳TENANT_ID_:多租户标识,用于SaaS场景
实际开发中,我们经常需要查询最近的部署记录:
sql复制SELECT * FROM ACT_RE_DEPLOYMENT
ORDER BY DEPLOY_TIME_ DESC
LIMIT 5;
2.2 ACT_RE_PROCDEF表
ACT_RE_PROCDEF表存储了流程定义的元数据信息,每个部署的流程都会在此表中生成记录。
重要字段解析:
KEY_:对应BPMN文件中process元素的id属性VERSION_:流程版本号,每次部署相同KEY的流程时会自动递增RESOURCE_NAME_:BPMN文件在部署包中的名称DGRM_RESOURCE_NAME_:自动生成的流程图名称
查询特定流程的最新版本:
sql复制SELECT * FROM ACT_RE_PROCDEF
WHERE KEY_ = 'leaveProcess'
ORDER BY VERSION_ DESC
LIMIT 1;
2.3 ACT_GE_BYTEARRAY表
ACT_GE_BYTEARRAY表是Flowable的通用资源存储表,以二进制形式保存各种资源文件。
典型使用场景:
- 存储BPMN 2.0 XML文件
- 保存流程图形化表示
- 存储流程变量中的二进制数据
查询特定部署的资源文件:
sql复制SELECT NAME_, BYTES_ FROM ACT_GE_BYTEARRAY
WHERE DEPLOYMENT_ID_ = '部署ID';
