9f0163c6359f4c4cd107ddf257133740.ppt
- Количество слайдов: 54
CINCO Collaborative and interoperable computing Advanced e. Business-Transactions for Dynamic Inter-Organizational Business Process Collaboration Alex Norta, Ph. D University of Helsinki October 2 nd, 2007
Agenda B 2 B Collaboration Context Advanced Transactions before Service-Oriented Computing (SOC) Characteristics of electronic business transactions (e. BT) Industry Initiatives for e. BT Transaction Frameworks Conclusion
1. B 2 B Collaboration Context
An e. Business-Collaboration Concept
e. Sourcing: a Definition e. Sourcing is: o o matching on an external level conceptually formulated service consuming and providing processes that belong to the domains of autonomous organizations for the formation of an inter-organizationally linked business process More information online: − http: //www. cs. helsinki. fi/u/anorta/research/e. Sourcing/
Tackling Complexity: Three-Level Framework Conceptual level: o Internal level: o processes are mapped to internal level legacy systems, WFMS External level: o o o stretches across organizational domains automatic, dynamically forged collaboration processes projected from conceptual level
e. Sourcing and Control-Flow: an Example Consumer Domain
e. Sourcing and Control-Flow: an Example External Level
e. Sourcing and Control-Flow: an Example Provider Domain
Question!!!!! Who still claims that electronic business collaboration can be safeguarded merely with flat ACID transactions?
Why care for business transactions? Ø To ensure the reliability of inter-organizational electronic business collaboration To facilitate a loose coupling of business processes To enable highly dynamic establishment of business collaboration Conclusion o being flatly ACID is not enough o operational business semantics should be reflected o no single conventional transaction model is able to meet all requirements
Service-Enabled Electronic Business Collaboration
2. Advanced Transactions before Service-Oriented Computing (SOC) Two strategies to achieve different structures inside an advanced transaction: Modularize a complex transaction and nest in hierarchies o e. g. , distributed transactions, nested transactions, multilevel transactions, and open nested transactions Decompose a long-lasting transaction into shorter subtransactions o e. g. , chained transactions, sagas
Save points and Check points (1) Prerequisites of distributed and nested transactions Save points: o a point in a transaction that can be “rolled back to” o rollback does not affect transaction before rollback o multiple save points may exist within one transaction Checkpoint: log entry about save point Complex error recovery in DB applications o error recovery by rolling back to save point o no need to abort entire transaction
Distributed and Nested Transactions (1) Suitable for complex-structured applications o e. g. , integration of several DB systems Distributed transactions integrate geographically bottom-up o global transaction: represented by multi-DB system o local transaction: controlled by local DB management system Local and global integrity constraints are aligned If sub-transaction fails, whole transaction is aborted o e. g. , two-phase commit protocol (2 PC) realized in the X/Open Distributed Transaction Processing (X/Open DTP) software architecture
Distributed and Nested Transactions (2) Nested transactions divide top-down according to functionality Sub-transactions are composed in hierarchy o o each is atomic and may abort independently only leaves perform DB-operations Parent-transaction triggers alternative sub-transaction when one fails Overall transaction may still succeed when subtransaction fails
Distributed and Nested Transactions (3) Open nested transactions are a variant of nested transactions o also called multilevel transactions Transaction tree has its levels corresponding to the layers of the underlying system architecture o leaves in different levels are allowed Pre-commit allows early commit of sub-transaction o semantic undo if root-transaction fails
Distributed and Nested Transactions (4)
Chained Transactions and Sagas (1) For decomposing long running transactions o into small sequentially executing sub-transactions Chained Transaction: o variant of safe-point mechanism o sub-transaction in a chain roughly equals a save-point interval o o difference: each sub-transaction is atomic, while each interval is part of atomic transaction sub-transaction triggers next upon commit Rollback returns to last committed sub-transaction o atomicity and isolation not guaranteed by whole chain
Chained Transactions and Sagas (2) Saga: based on chain transaction o each sub-transaction has compensating sub-transaction o with exception of last sub-transaction o entire transaction can be undone with compensating subtransactions Useful for compensating business processes o semantic rollback of already carried out tasks o applicable for workflow management systems Also Saga may be interleaved with other transactions o isolation is not guaranteed
Chained Transactions and Sagas (3)
Challenges of Electronic Business Transactions ACID properties are too restrictive o entire process fails when one task fails Statically coupled workflows not suitable o instead flexible, dynamic, loose coupling of systems Solution is combining several web services in a business process o requires special business-transaction concept Reasons: o o data in the back end of web services can’t be locked over long time multiple transaction concepts in one business collaboration
3. Characteristics of e. BT (1) e. BT: o is automated, complex, long running, with multiple parties o requires commitments that must be negotiated o supports contracts, shipping and logistics, varied payment instruments, exception handling e. BT combines conventional transactions with unconventional features o reflect semantics and behavior of business tasks
Characteristics of e. BT (2) e. BT has unconventional atomicities: payment atomicity o • basic level of atomicity • payment-atomic protocols affect fund transfer goods atomicity o • are payment atomic and affect exact transfer of goods for money delivery atomicity o • to prove exactly which goods were delivered, are payment and goodsatomic contract atomicity o • e. BT is governed by contracts and update accounts
Characteristics of e. BT (3) Generic characteristics: o o o who is involved in the transaction what is being transacted the destination of payment and delivery the transaction time frame permissible operations Special purpose characteristics o o o links to other transactions receipts and acknowledgments identification of money transferred outside national boundaries
Characteristics of e. BT (4) Advanced characteristics: o o o the ability to support reversible (compensatible) and repaired (contingency) transactions the ability to reconcile and link transactions with other transactions the ability to specify contractual agreements, liabilities and dispute resolution policies the ability to support secure EDI, e. g. , SET <www. setcom. org>, transactions that guarantee integrity of information, confidentiality and nonrepudiation the ability for transactions to be monitored logged and recovered
Managing e. BT
4. Industry Initiatives for e. BT Three possible standard candidates: 1. Business Transaction Protocol 2. Web Services Transaction • WS-Coordination • WS-Atomic. Transaction • WS-Business. Activity 3. Web Services Composite Application Framework • Web Services Context • Web Services Coordination Framework • Web Services Transaction Management
4 a. Business Transaction Protocol (BTP) [1] BTP for managing B 2 B transactions over the internet o XML-based but not exclusively for web services o complex, long running, multi-step Direct communication between transaction manager and backend system o contradicts web-service philosophy of autonomy o leads to security problems
Business Transaction Protocol (BTP) [2] BTP similar to 2 PC o o first phase: tentative state changes called provisional effect second phase: either confirmation called final effect or cancellation that is called counter effect For participants in BTP o called consensus group o business logics to decide whom to commit or to cancel
Business Transaction Protocol (BTP) [3] BTP specifies two transaction types: o o atom: either all participants of a consensus group confirm or all are cancelled cohesion: relaxed atomicity; business rules decide which participant is confirmed or cancelled Cohesions are long running transaction o participants commit results in confirm sets o confirm sets are atoms
4 b. Web-Services Transactions Consists of: o WS-Coordination (WS-C) o WS-Atomic. Transaction (WS-AT) o WS-Business. Activity (WS-BA) Differently to BTP, disjoint coordination and transactional framework Three specifications aim at o reliable and consistent business transactions o with inter-connected web services
WS-Coordination (WS-C) [1] A generic coordination infrastructure for web services possible to plug in specific coordination protocols o Three services specified for coordination protocol: activation service o • creates new activity coordinator for specific coordination protocol registration service o o responsible for the enrolment of new participants and selection of coordination protocol coordination service o o o ensures registered web services are completed with chosen protocol defines behavior and operations required for activity completion
WS-Coordination (WS-C) [2] A generic coordination infrastructure for web services possible to plug in specific coordination protocols o Three services specified for coordination protocol: activation service o • creates new activity coordinator for specific coordination protocol registration service o o responsible for the enrolment of new participants and selection of coordination protocol coordination service o o o ensures registered web services are completed with chosen protocol defines behavior and operations required for activity completion, currently WS-AT, WS-BA
WS-Atomic. Transaction (WS-AT) Focused on existing transaction systems and protocols with strict ACID requirements WS-AT is extension to WSDL that allows to o offer application as web services o specify the ACID properties Requirements for WS-AT participants (2 PC) o o single all or nothing decision for participants o updates are isolated until committed any participant can abort the entire system Problem: high trust required between participants
WS-Business. Activity (WS-BA) [1] Supports long-running business transactions o o provides mechanisms to reach overall agreement atomic transactions to preserve the autonomy of participating organizations High-level transaction o drives transaction that spans multiple atomic transactions o handles business transactions Atomic transactions o handle systems exceptions transparently
WS-Business. Activity (WS-BA) [2] Two coordination protocols Business. Agreement. With. Participant. Completion o • all participants driven to same state Business. Agreement. With. Coordinator. Completion o • coordinator chooses participant to be committed or compensated
4 c. Web Services Composite Application Framework (WS-CAF) Purpose of WS-CAF o develop an inter-operable, easy to use framework for composite web services WS-CAF comprises several specifications o WS Context (WS-CTX): first level o WS Coordination Framework (WS-CF): second level o WS Transaction Management (WS-TXM): third level
Web Services Context (WS-CTX) Defines a generic context management mechanism for sharing common system data (i. e. , context) across multiple web services o different to BTP and WS-Tx WS-coordination combines context and coordination BTP combines context, coordination, transaction management
Web Services Coordination Framework (WS -CF) Manages and coordinates multiple web services that are grouped together in one or more activities to perform some task together WS-CF is more thorough than WS-Coordination Three main components of WS-CF architecture o o o coordinator: participant register to receive context and outcome of an activity participant: offers operations that are executed during coordination sequence processing coordination service: defines the behaviour for a specific coordination model
Web Services Transaction Management (WS-TXM) [1] Specifies three transaction protocols o employs context information and coordination protocols ACID transaction o enabling tightly-coupled network-based transactions o for intra-organizational interoperability between systems Long Running Action (LRA) o one phase protocol (differently to ACID transaction) o Saga-similar compensation of business interactions o supports nesting and recovery mechanisms, e. g. , checkpointing
Web Services Transaction Management (WS-TXM) [2] Business Process Transaction Model o integrates different heterogeneous transaction systems o one overall business-to-business transaction o coordinator is overall business-transaction manager o o interposition: coordinator used for hiding each domain with own transaction system and protocol root coordinator: the business transaction manager has subordinate coordinators
Comparison of industry standards A need exists for an open standard o o to realize the interoperability both in web services and business areas integration of existing transaction concepts with WS-CAF ? BTP lacks integration ability o o problem of strong coupling requirement between web services however, suitable standard candidate when combined with agent technology
5. Transaction Frameworks Several transaction frameworks are integrated Conceptual transaction frameworks o ACTA o BTF Technical transaction frameworks o CORBA Activity Service Framework o J 2 EE Transaction Framework
5 a. ACTA (1) Unifies existing models to o o reason about the concurrency and recovery properties capture the semantics of complex transactions Interactions among transactions are expressed in terms of effects of transactions o on other transactions o on objects they access
ACTA (2) Effects of transactions on other transactions commit dependency describes the relationship of one transaction T 1 to another transaction T 2 o dependency rule regulates that T 1 cannot commit until T 2 either commits or aborts o abort-dependency describes the relationship of T 1 to T 2 o • if T 2 aborts, T 1 should also abort
ACTA (3) Effects of transactions on objects captured by o two object sets o concept of delegation Every transaction is associated with several other objects o contained in a view set or access set
ACTA (4) Changes to the objects through three forms of delegation State delegation o ability of delegator transaction to move the objects from its access set to the delegatee transaction’s access set Status delegation o ability of the delegator to undo the changes on the objects before those objects are moved to the access set of the delegatee Limited delegation o ability to make the changes to the objects persistent in the view set before adding them to the access set of the delegatee
ACTA (5) Specification of transaction recovery properties o delegation mechanism combined with commit and abort dependencies ACTA allows for o specification of the structure and behaviour of transactions o reasoning about their concurrency and recovery properties ASSET transaction model based on ACTA o uses primitives at a programming language level o ’history’, ’delegation’, ’dependency’, ’conflict set’ etc.
5 b. Business Transaction Framework (BTF) [1] Support for contract-driven, inter-organizational business processes Basic idea of the BTF: o o extract and group existing transaction models into an Abstract Transaction Construct (ATC) library select the required ATCs to compose a transaction hierarchy on demand
Business Transaction Framework (BTF) [2] Three phases exist along the BTF life-cycle definition phase o • ATCs are abstracted based on a taxonomy of classic transaction models composition phase o • constructs of ATC library are used to build a transaction plan for a complex process within the composition phase execution phase o • abstract plans resulting from the composition phase are instantiated to form real business transactions
Business Transaction Framework (BTF) [3]
6. Conclusion Trend of transaction management o o need for more functionalities and better performance in distributed, heterogeneous collaboration environment dominated by service-oriented computing Research needs (among many) o o o exploring the requirements of business transactions in business process semantics of business collaborations must be clarified, e. g. , unconventional atomicities, semantic rollback develop an automated composition of several transaction concepts for a heterogeneous system environment
CINCO Collaborative and interoperable computing Thank you for listening! Questions, comments?
9f0163c6359f4c4cd107ddf257133740.ppt