Activiti数据库表详解:运行时、历史与标识信息

5星 · 超过95%的资源 需积分: 15 30 下载量 190 浏览量 更新于2024-07-19 收藏 97KB DOCX 举报
"这篇文档详细解析了Activiti的工作流引擎中的23张核心表,包括它们的逻辑结构设计、表的含义以及相关的索引信息,旨在帮助读者理解Activiti在运行时如何存储和管理数据。" 在Activiti工作流引擎中,数据库表的设计是根据其功能和生命周期来划分的,主要分为四大类: 1. **逻辑结构设计**: - **ACT_RE_***: Repository(存储)表,用于存储静态信息,如流程定义、流程资源(如图片、规则)等,由RepositoryService接口操作。 - **ACT_RU_***: Runtime(运行时)表,用于存储运行时数据,如流程变量、用户任务、变量、职责(Job)等,由RuntimeService接口管理。这些数据在流程实例结束后会被删除,以保持表的小巧和高效。 - **ACT_ID_***: Identity(组织机构)表,由IdentityService接口操作,包含用户记录和流程中涉及的用户、组等标识信息。 - **ACT_HI_***: History(历史)表,由HistoryService接口处理,记录流程执行的历史数据,如结束的流程实例、变量、任务等。 - **ACT_GE_***: General(通用)数据及设置表,包含多种情况下使用的数据。 2. **表及索引信息**: - **act_ge_bytearray**: 存储二进制数据,如流程定义图片、XML以及可序列化的变量。需要注意避免部署无关文件,以免引发问题。 - **act_ge_property**: 属性数据表,存储流程引擎级别的数据。 - **act_hi_actinst**: 历史活动信息表,记录流程流转过的所有节点,不同于HI_TASKINST仅记录用户任务内容。 - **act_hi_attachment**: 历史附件表,记录流程中的附件信息。 - **act_hi_comment**: 历史意见表,存储用户的评论记录。 每个表都有其特定的结构和索引设计,用于优化查询性能和数据管理。例如,act_hi_actinst可能包含关于活动实例的详细信息,如活动ID、流程实例ID、任务ID等,而索引则可以加速对这些关键字段的查询。 了解这些表的结构和作用对于开发、调试和优化Activiti流程至关重要,因为它提供了对流程实例执行状态和历史的深入洞察。通过正确理解和使用这些表,开发者可以有效地跟踪流程执行,分析性能瓶颈,并确保数据的一致性和完整性。