Browse Prior Art Database

Dynamic business process runtime optimization by evaluation of a push-down strategy for business process activities to a database layer

IP.com Disclosure Number: IPCOM000181612D
Original Publication Date: 2009-Apr-07
Included in the Prior Art Database: 2009-Apr-07
Document File: 6 page(s) / 55K

Publishing Venue

IBM

Abstract

We propose a dynamic optimization algorithm to run part of the business process navigation logic on the database tier, rather than on the application tier. Particularly in the context of XML databases and operations on XML data, this approach can significantly reduce network traffic and CPU load and thereby improves overall performance.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 24% of the total text.

Page 1 of 6

Dynamic business process runtime optimization by evaluation of a push -down strategy for business process activities to a database layer

Workflow Management Systems support the definition and execution of business processes. A business process definition includes the control flow as a directed graph as well as meta data for activities and variables defined in the business process. With the evolution of XML and XML schema as way to model and describe meta data, modern workflow management systems include XML support in many places, including variable and message definition based on XML schema definitions.

The solution proposed here is about a dynamic optimization algorithm to run part of the business process navigation logic on the database tier, rather than on the application tier. Particularly in the context of XML databases and operations on XML data, this approach can significantly reduce network traffic and CPU load and thereby improves overall performance.

The solution includes two major parts

     The concept of executing activities of a business process, comprising data operations on XML data in a database management system
A cost-based algorithm to identify activities and sets of activities for consideration of "push down" for execution in a database management system
The solution is applicable (but is not limited) to business process management systems where

The business process is described in a business process execution language, such as WS-BPEL (an OASIS standard). A business process includes the definition of a set of activities, links between activities and variables. For example, a business process definition could model an order processing system with activities describing steps like stock control, packaging and payment.

Data objects (such as business process variables or business objects) are defined in an XML language, for example SDO (system data objects) . A data object is structured hierarchically and comprises elements. For example, in the context of an order business process, such a data object may be an XML document representing a customer address with elements describing name, address, and phone number.

The database used to store and maintain state of business processes is capable to store and operate on XML data. It offers user defined functions (UDF) or comparable constructs by which XML data functions can be combined in SQL calls. Examples for those database management systems include.DB2 UDB 9.5 for Linux, Unix and Windows with the pureXML feature.

1

Page 2 of 6

Fig. 1 business process with activities, interacting with business process data (1)

Fig. 1 illustrates a business process model with activities A1- A5 and business process variables V1 and V2. The variables V1 and V2 contain (business) data in a structure defined by an XML schema. Activities A1-A3 may access variable data V1 and V2...