管理持久储存的数据

每当数据持久存储在数据库中时,就有必要删除或归档某些数据。定期清除可节省磁盘空间并提高性能。

数据

IBM Business Process Manager 保留以下类型数据。 所有这些数据都是定期清除或归档的候选项。表中提供了更特定的指导信息。

IBM Business Process Manager Standard
Process Center 在开发流程应用程序和 Toolkit 时会保存其 Snapshot。
Process Server 保存已部署的流程应用程序的 Snapshot。
Process Server 还保存在 Process Designer 中创建的业务流程定义 (BPD) 流程的实例及任务。
IBM Document Store 是文档附件的内置存储位置。
Performance Data Warehouse 保存从 Tracking Groups 和自动跟踪收集的事件数据。
保留中间消息的持久预订事件。
安装消息存储在系统临时文件夹中 (%temp%)。
某些索引数据存储在内存索引中以支持用户交互。
保留共享业务对象。
IBM Business Process Manager Advanced
除了 IBM Business Process Manager Standard 中提及的数据,Advanced 还存储关于服务功能的信息。
除了在 Process Designer 中创建的实例和任务,Process Server Advanced 还保存在 Integration Designer 中创建的 BPEL 流程的实例和任务。
Process Server 还存储关于失败事件的信息。您可以通过 Failed Event Manager 查看该信息。
WebSphere Application Server
生产期间以及执行其他跟踪时存储系统和跟踪日志。
WebSphere Transaction Manager 保存正在进行事务的事务日志。
系统还保存由 IBM BPM 使用的数据库中的事务日志。

Process Center

表 1. Process Center 管理的清除活动
活动 描述 资源
Process Center 中的归档

对项目归档不会将其删除或回收其在数据库中的空间。归档对项目进行标记,这样在缺省情况下,它就不会显示在 Process Center 项目列表中。 对项目归档不会对其所有 Snapshot 和工件进行归档。

您可以归档个别命名的 Snapshot,而不是归档整个项目。

Process Center 中的删除

要删除项目,必须先对其进行归档。要实际删除项目,请选择以显示归档的项目;然后单击您要除去项目旁的删除。删除项目会删除所有 Snapshot 和流程实例。只有用户界面有此删除功能。删除项目没有其他脚本方式。

每次您在 Process Designer 中保存工件时都会创建未命名的 Snapshot。命名的 Snapshot 只是一个赋予了名称的未命名 Snapshot。这些未命名的 Snapshot 保存在数据库中以提供项目历史记录,但应对它们定期进行清除。LSW_PO_VERSIONS 表在未定期删除未命名的 Snapshot 时会飞速增长。

您可以手动删除任何 Snapshot。您还可以配置 IBM BPM 以在不再需要未命名的 Snapshot 时将它们自动删除。

您可以使用 BPMSnapshotCleanup wsadmin 命令删除 Snapshot。要删除命名的 Snapshot,必须先对其进行归档。

在 Process Center (IBM BPM Advanced) 中删除

除了为 IBM BPM Standard 描述的操作,您还需要知道 Process Center 回放服务器上创建的业务级别应用程序 (BLA) 和企业应用程序。如果 Process Center 中的流程应用程序或 Toolkit 包含模块或库,那么可直 接或通过 Toolkit 为包含高级内容的每个流程应用程序或 Toolkit 的 Tip 以及包含高级内容的每个命名 Snapshot 创建 BLA。此高级内容会快速累积,累积会影响启动服务器所需的时间、内存使用率以及总体性能。

如果 Snapshot 包含 Advanced Integration Service(例如,SCA 模块或 BPEL 流程),那么您可以使用 Process Center Console 从 Process Center 服务器取消部署此 Snapshot。

如果您使用的是外观模式,那么通常流程应用程序的最新 Snapshot 只需要一个 BLA。要删除 BLA,请单击 Process Center“Snapshot”页面上的取消部署选项。要删除命名的 Snapshot,请单击取消激活,然后单击取消部署

删除 BPMN 流程实例 删除流程实例时,还会删除任务实例。BPMProcessInstancesCleanup wsadmin 命令使您可删除特定实例或删除在指定日期范围内完成的实例。
取消部署流程应用程序或 Toolkit Tip (IBM BPM Advanced)

Tip 是流程应用程序或 Toolkit 的当前工作版本。取消部署 TIP 时,所有 Advanced Integration Service 工件和关联的业务级应用程序 (BLA) 都将从此服务器中除去。流程应用程序定义和其他工件仍保留在存储库中。

如果您正使用外观模式且正在 IBM Integration Designer 单元测试环境 (UTE) 中测试高级内容,那么几乎无需部署任何 TIP。但是,由于发生更改时自动部署 TIP,因此要求在不需要时取消部署 TIP。

从运行时数据库中删除已完成的任务 长时间运行的流程实例可以在运行时数据库中生成许多已完成的任务。 当已完成任务的数量足够大时,可能会影响运行时数据库的性能。您可以通过在运行时数据库中清除运行时不再需要的已完成任务来解决该问题。

如果要迁移流程实例,那么删除已完成的任务也会很有用。通过除去已完成的任务,仅迁移新位置中流程实例需要的信息。

Process Server

表 2. Process Server 管理员的清除活动
活动 描述 资源
取消激活 Snapshot

使用 BPMDeactivate 命令可取消激活 Snapshot。取消激活允许所有现有实例完成处理,但不会创建任何新的流程实例。 在网络部署环境中,必须在包含负责处理 Process Server 或 Process Center 应用程序的应用程序集群成员的节点上运行此命令。请勿从 Deployment Manager 概要文件运行此命令。

您可以取消激活 Process Center Server 或 Process Server 上正在运行的流程应用程序 Snapshot。如果您的流程应用程序使用 BPEL 流程作为主条目组件,那么必须在 WebSphere 管理控制台中停止对应的 BPEL 模板。如果该 BPEL 流程调用 BPD,那么必须允许任何现有实例在停止模板之后但在取消激活 Snapshot 之前完成。

在 Process Server 上删除 IBM BPM Standard 中的 Snapshot

经过一段时间以后,Process Server 会累积流程应用程序的许多 Snapshot。您可以删除不再使用的 Snapshot。当您删除 Snapshot 时,还要删除与其相关联的所有业务流程定义。

Snapshot 不能具有任何正在运行的实例。Snapshot 不能处于活动状态。

在删除流程应用程序 Snapshot 时不会自动删除 Toolkit Snapshot。使用 BPMShowSnapshot 命令来获取流程应用程序所依赖的 Toolkit Snapshot 的列表。如果任何其他流程应用程序或 Toolkit 不需要这些 Toolkit Snapshot,请使用 BPMDeleteSnapshot 命令删除这些项。

删除 BPMN 流程实例 删除流程实例时,还会删除任务实例。BPMProcessInstancesCleanup wsadmin 命令使您可删除特定实例或删除在指定日期范围内完成的实例。
在任务完成时删除系统和决策任务 缺省情况下,会在任务完成时保存关于系统和决策任务的数据。这些数据在保存之后将无法删除。如果您不希望在 Process Server 上存储系统和决策任务的审计数据,那么在 Process Designer 中创建系统或决策任务时请选择完成时删除任务 在 BPD 中实施活动
在任务完成时删除关于用户、决策或系统任务的执行数据 缺省情况下,将在活动完成之后保存该活动的运行时执行状态。这些数据在保存之后将无法删除。如果您不想存储执行数据(如变量值)以供在流程完成后进行查看,请从 Process Designer 中 BPD 图的“任务标题”部分中选择清除状态 在 BPD 中实施活动
在 Process Server (IBM BPM Advanced) 上删除 Snapshot

如果流程应用程序包含 IBM Integration Designer 中的内容,那么会创建具有 EAR 文件的业务级别应用程序 (BLA)。在 Process Server 上安装流程应用程序后,将在服务器上部署 BLA 及其包含的 EAR 文件。在删除 Snapshot 之前,您需要停止 IBM BPM Advanced 中的流程并取消部署内容。

删除 BPEL 流程实例 (IBM BPM Advanced)

使用 deleteCompletedProcessInstances.py 管理脚本来选择性地从已达到已完成、已终止或失败结束状态的任何顶级 BPEL 业务流程实例的 BPC 数据库或 Business Process Archive 数据库中执行删除操作。

删除 BPEL 人员任务实例 (IBM BPM Advanced)

使用 Business Process Choreographer Explorer 单独删除人员任务。您也可以使用 Jython 脚本 deleteCompletedTaskInstances.pydeleteCompletedProcessInstances.py

使用人员任务管理器或业务流程管理器管理控制台页面中的清除服务来调度作业以删除任务或流程实例。

Business Process Choreographer 的清除过程
删除 Business Process Choreographer 对象 各种数据库对象都在正在运行的系统中累计,例如,审计日志条目、任务和流程实例、任务和流程模板以及人员查询。定期运行管理脚本来删除 Business Process Choreographer 数据库中不再需要的对象可防止存储空间的浪费。 删除 Business Process Choreographer 对象
删除组
  • 安全组来自已配置的用户存储库,如 LDAP。在删除流程实例或任务时,永不删除安全组。
  • 团队(以前称为参与者组)与 Snapshot 关联。
  • 如果向用户或组的列表分配任务,那么将形成一个临时组。当所有任务都不再使用临时组时,将自动从服务器中删除临时组。
  • 动态组是通过表达式定义的,如来自加拿大的所有用户。每次启动服务器时,组的成员资格都可能会发生变化,动态组的作用域限定为 Snapshot。
  • 内部组可包含来自多个用户存储库的用户。 通过 Process Admin Console 创建和删除内部组。
删除未使用的特别组 在使用特别组的任务之间共享特别组。由于可以共享特别组,因此在删除任务时不会删除特别组。您可以采用以下方式清除未使用的特别组:
  • 在任务清除期间使用管理控制台。
  • 在删除流程实例时删除未使用的特别组。
  • 向定制清除脚本添加一个步骤。
IBM Business Process Manager 缺省安全组
删除持久消息

如果为某些事件启用了持久预订,那么持久预订消息存在并持久存储在 LSW_DUR_MSG_RECEIVED 数据库表中。

BPMDeleteDurableMessages 命令
从运行时数据库中删除已完成的任务 长时间运行的流程实例可以在运行时数据库中生成许多已完成的任务。 当已完成任务的数量足够大时,可能会影响运行时数据库的性能。您可以通过在运行时数据库中清除运行时不再需要的已完成任务来解决该问题。

如果要迁移流程实例,那么删除已完成的任务也会很有用。通过除去已完成的任务,仅迁移新位置中流程实例需要的信息。

清除共享业务对象 保存共享业务对象的新版本时,将自动删除不再需要的共享业务对象的旧版本。系统根据以下配置属性执行清除:
maxVersionCount
指定应保留的版本数。例如,maxVersionCount 为 4 表示至少应保留 4 个版本。
minAgeForCleanup
指定防止删除最新版本的小时数。例如,minAgeForCleanup 为 48 表示不应删除 48 小时内创建的版本,无论 maxVersionCount 如何指定。
清除共享业务对象

Performance Data Warehouse

表 3. 数据库管理员的清除活动
活动 描述 资源
清除旧实例 任务和流程实例都记录在数据库中,即使任务和流程已完成也如此。
归档 Performance Data Warehouse 中的数据 您可以归档 Snapshot,并使用 ARCHIVED 时间戳记标记这些 Snapshot 中的所有元数据。在生成 Performance Data Warehouse 模式和视图时,IBM Business Process Manager 不使用归档的元数据。 在 Performance Data Warehouse 数据库中归档和复原数据
清除 Performance Data Warehouse 中的数据 跟踪的 BPD 事件保存在 Performance Data Warehouse 的数据库中。请使用 prune 命令从 Performance Data Warehouse 数据库中除去您不再需要的数据。

文件系统

表 4. 临时目录的清除活动
活动 描述 资源
清除 IBM BPM 临时目录 安装期间和执行某些其他运行时操作期间,文件放置在系统临时目录 (%temp%) 中。 您可以在安装完成时删除这些文件。从临时目录中删除这些文件时服务器必须停止。  
管理 WebSphere 日志文件
IBM Websphere Application Server 将在以下目录中创建临时文件:
  • profile root/profile name/config/temp
  • profile root/profile name/temp
  • profile root/profile name/wstemp
您可以在概要文件节点上停止服务器之后删除 temp 文件。您可以在关闭部署管理器之后删除 wstemp 目录的内容。
一些其他 WebSphere 日志文件将自动清除数据。
  • SystemOut.log 文件包含关于 JVM 进程中重大事件的消息。日志文件将自动滚动更新并清除最旧的数据。您可以在滚动更新之前使用后台批处理进程捕获最旧的日志。
  • 永不删除事务日志。它会自行清除。