Browse Prior Art Database

Methodology for performing database CRUD operations using XPath like syntax and XML from Tivoli Inteligent Orchestrator (TIO) workflows.

IP.com Disclosure Number: IPCOM000124820D
Original Publication Date: 2005-May-09
Included in the Prior Art Database: 2005-May-09
Document File: 3 page(s) / 81K

Publishing Venue

IBM

Abstract

TIO users needed a simple way to perform CRUD (create/read/update/delete) operations on the TIO's database from the workflow language. A solution to this problem is offered by providing a methodology that requires enhancing the workflow language, developing a query language for interrogating the database and creating a framework that would support this methodology. The described methodology combines a simplified XPath like syntax for querying the database with an XML format to insert/update data in the database.

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 50% of the total text.

Page 1 of 3

Methodology for performing database CRUD operations using XPath like syntax and XML from Tivoli Inteligent Orchestrator (TIO) workflows.

Disclosed is a methodology for performing CRUD (create/read/update/delete) operations from TIO workflows using XPath like syntax and XML.

Tivoli Intelligent Orchestrator's deployment engine is responsible for creating, storing, and running repeatable workflows that automate the configuration and allocation of data center assets . A workflow can represent either an entire reconfiguration process affecting multiple servers or a single step in a larger reconfiguration process. For example, modifications to data center infrastructure (route changes, VLAN assignments), configuration and allocation of servers (software installation, configuration), and specific command actions (reboot server, power off device, install image) can all be accomplished using workflows. After the workflows make changes to the real environment, these changes have to be mirrored in TIO's database, so that it is synchronized with the real world (datacenter). This has been done using a logical device operation (LDO) post operation that was not visible to the workflow developers. Also, in order to query the database for different values needed by the workflows or to update the database while the workflow is executing, developers had no other choice but to use java plugins provided with the application. Again, the workflow developer had no access to the internal logic of the plugins and it was not easy for them to create new ones, in case they needed. Basically, workflow developers needed a simple way to perform CRUD operations on the TIO's database from the workflow language.

A solution to this problem is offered by providing a methodology that requires enhancing the workflow language, developing a query language for interrogating the database and creating a framework that would support this methodology. The described methodology combines a simplified XPath like syntax for querying the database with an XML format to insert/update data in the database.

Using this methodology the user can:

- query the database for any DCM (data center model) object and its attributes; for instance to retrieve all server names that belong to a given cluster the user would write: array serverNames = DCMQuery(/cluster[@id=$clusterID]/server/@name)

- insert new DCM objects in TIO's database; for instance to insert a new OS image in the database, the syntax would be: var newImageId = DCMInsert <<EOF <image name="$NewImageName" boot-server="$destBootServerName" image-type="$imageTypeName" version="$imageVersion" description="$imageDescription" status="$imageStatusName"> <file name="$NewImageName" path="$destPath"/>

</image>

- update an exiting DCM object; for instance to update an existing OS image, user would write:

1

Page 2 of 3

DCMUpdate parent = DCMQuery(/image[@id=$ImageID])<<EOF

<image name="$imageName" boot-server="$bootServerName" is-pending="fa...