BPEL Compiler Liveness Analysis for Data Blob Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Business Process Execution Language (BPEL) processes often require significant storage space when dehydrated, as all variables are stored during suspension, leading to inefficient use of resources, especially when multiple processes are run concurrently.
Innovation Solution
A method that identifies live variables at dehydration points through liveness analysis, creating an optimization data structure to store only live variables, reducing the size of the BPEL data blob and minimizing storage needs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If all variables are stored during dehydration to free memory and processing resources, then resource utilization is improved, but storage space requirement increases significantly
Solution Approach 1:
The patent extracts only the necessary live variables from the complete set of process variables during dehydration, storing them in a compact form in the database, while leaving non-live variables unstored. This selective extraction resolves the contradiction by reducing storage space requirements while maintaining the ability to restore essential process state.
Solution Approach 2:
The patent segments the variable set into live and non-live categories using liveness analysis, storing only the live variable segment in the database. This segmentation allows the system to free memory and processing resources effectively while minimizing storage space consumption by excluding redundant non-live variables.
2Productivity
If multiple BPEL processes are run concurrently with full dehydration, then processing capacity is improved, but total storage space consumption increases
Solution Approach 1:
By extracting only live variables from each concurrently executing BPEL process during dehydration, the system enables higher processing capacity while keeping the storage space required for each process minimal. This resolves the contradiction by eliminating redundant storage of non-live variables across multiple concurrent processes.
3Productivity
If dehydrated BPEL processes are stored until manually purged, then resource availability is improved, but storage space is wasted by processes no longer needing rehydration
Solution Approach 1:
The patent implements automatic discarding of dehydrated process state when it is no longer needed, using liveness analysis to determine when variables are permanently unreachable. This automatic discarding mechanism recovers storage space by removing obsolete data, resolving the contradiction between maintaining resource availability and preventing storage waste.
Data Source
AI summary
Various arrangements for reducing a size of a Business Process Execution Language (BPEL) data blob for storage may be presented. One or more dehydration points within compiled BPEL code may be identified. A liveness analysis for the one or more dehydration points may be performed. At each of the one or more dehydration points, one or more live variables from a set of variables may be identified. An optimization data structure may be created for each dehydration point identifies the one or more live variables.


