SlideShare a Scribd company logo
1 of 9
Download to read offline
© Peter R. Egli 2015
1/9
Rev. 1.10
TPM – Transaction Processing Monitor indigoo.com
Peter R. Egli
INDIGOO.COM
TPM
TRANSACTION
PROCESSING MONITOR
OVERVIEW OF TPM FOR
DISTRIBUTED TRANSACTION PROCESSING
© Peter R. Egli 2015
2/9
Rev. 1.10
TPM – Transaction Processing Monitor indigoo.com
Contents
1. What are Transaction Processing Monitors?
2. Properties of DB transactions
3. Two-Phase Commit architecture
4. Two-Phase Commit sequence
5. TPM structure
© Peter R. Egli 2015
3/9
Rev. 1.10
TPM – Transaction Processing Monitor indigoo.com
1. What are Transaction Processing Monitors (TPM)?
Typical problem of distributed applications:
Operations involving multiple databases (DB) require transactional access.
The operation is either successful or fails, but always has to leave all involved databases in a
consistent state.
TPM:
TPMs are an early solution for distributed transactions (booking systems, bank account
transfers etc.).
TPMs support distributed database transactions by coordinating multiple DB accesses.
Client
Server
1
Server
2
DB
DB
Debit account
Credit account
Transfer
Client TPM
Server
1
DB
Server
2
DB
© Peter R. Egli 2015
4/9
Rev. 1.10
TPM – Transaction Processing Monitor indigoo.com
2. Properties of DB transactions (1/2)
Relational databases support ACID properties:
1. Atomicity
2. Consistency
3. Isolation
4. Durability
Atomicity: Consistent state before & after transaction.
Consistency: No integrity constraint violations
Account 1 Account 2
Key Name balance_key
1 Egli 3
2 Müller 1
3 Meier 5
4 Huber 7
5 Gates 2
Key balance
1 2.95 CHF
2 56'342'786'129.98 CHF
3 88.70 CHF
4 23.67 CHF
5 14'78 CHF
Integrity violation (missing entry with key=7)
Transfer
1000 CHF
Account 1 Account 2
-1'000 CHF +1'000 CHF
Case 1:
Successful
transaction
Account 1 Account 2
-0 CHF +0 CHF
Case 2:
Failed
transaction
or
© Peter R. Egli 2015
5/9
Rev. 1.10
TPM – Transaction Processing Monitor indigoo.com
2. Properties of DB transactions (2/2)
Isolation: DB accesses are isolated from each other so they do not impact each other.
Typically this is done with some sort of locking of resources (tables in DB) and serialization of
the requests.
Durability: Transaction is persistent, even in case of errors (crash of DB, error etc.)
Commit data to
disk after restart
Write to DB
Write data
to disk buffer
Successful
transaction
Failed
transaction
Commit data
to disk
Crash of
DB
Request 1
Request 2
Execution Execution
Request 2
Time
Execution
© Peter R. Egli 2015
6/9
Rev. 1.10
TPM – Transaction Processing Monitor indigoo.com
3. Two-Phase Commit architecture
TPMs employ a mechanism called Two-Phase Commit to support distributed DB transactions.
Transaction manager (Coordinator):
The coordinator serves as coordination point in the distributed transaction.
Resource manager:
The resource managers (aka "Cohort") perform the individual transactional DB accesses and
are able to either commit or rollback an individual DB access.
Undo / redo logs:
Undo / redo logs are used by the
transaction managers for transactional
access to their respective DB.
Transaction
Manager
(Coordinator)
Resource
manager
(cohort)
DB
Undo/Redo
logs
Resource
manager
(cohort)
DB
Undo/Redo
logs
Client interface
for distributed
transactions
© Peter R. Egli 2015
7/9
Rev. 1.10
TPM – Transaction Processing Monitor indigoo.com
Commit request
phase
(=voting phase)
Commit phase
(=completion phase)
4. Two-Phase Commit sequence (1/2)
A. Successful transaction:
When all transaction managers agree with the commit (vote "yes"), the transaction can be
successfully committed.
Request1
Client
Transaction
Manager
Resource
manager
Resource
manager
Query to commit2
Query to commit2
* Prepare for commit
* Write undo / redo logs
3
3 * Prepare for commit
* Write undo / redo logs
Ack (agreement)4
Ack (agreement)4
Commit5
Commit5
* Commit
* Release all locks
6
6 * Commit
* Release all locks
Ack7
Ack7
Ack8
© Peter R. Egli 2015
8/9
Rev. 1.10
TPM – Transaction Processing Monitor indigoo.com
Commit request
phase
(=voting phase)
Commit phase
(=completion phase)
4. Two-Phase Commit sequence (2/2)
A. Failed transaction:
When either of the transaction manager does not positively acknowledge the transaction,
the coordinator sends a rollback command to all transaction managers.
Request1
Client
Transaction
Manager
Resource
manager
Resource
manager
Query to commit2
Query to commit2
* Prepare for commit
* Write undo / redo logs
3 * Prepare for commit
* Write undo / redo logs
Ack (agreement)4
Not Ack (or timeout)4
Rollback5
Rollback5
* Undo transaction
* Release all locks
6
6 * Undo transaction
* Release all locks
Ack7
Ack7
Negative Ack8
3
© Peter R. Egli 2015
9/9
Rev. 1.10
TPM – Transaction Processing Monitor indigoo.com
5. TPM structure
TPMs represent complete systems akin to operating systems capable of running entire
applications. Resource managers may be internal or external to the TPM.
Binding
Scheduling
Load Balancing
Appl. Lifecycle
Log manager
(undo/redo)
Recovery
manager
TPM
Service (application)
AuthenticationPresentation
E.g. transactional
RPC XA interface=2PC
(X/Open)Client
Request
Queue
DB
Transaction
Manager
Resource
manager
Response
Queue

More Related Content

What's hot

Hardware multithreading
Hardware multithreadingHardware multithreading
Hardware multithreadingFraboni Ec
 
PPT-IOT HEART ATTACK final ppt.pptx
PPT-IOT HEART ATTACK final ppt.pptxPPT-IOT HEART ATTACK final ppt.pptx
PPT-IOT HEART ATTACK final ppt.pptxPoojaG86
 
Operating system 03 handling of interrupts
Operating system 03 handling of interruptsOperating system 03 handling of interrupts
Operating system 03 handling of interruptsVaibhav Khanna
 
Micro programmed control
Micro programmed  controlMicro programmed  control
Micro programmed controlShashank Singh
 
Uni Processor Architecture
Uni Processor ArchitectureUni Processor Architecture
Uni Processor ArchitectureAshish KC
 
Advanced Operating System- Introduction
Advanced Operating System- IntroductionAdvanced Operating System- Introduction
Advanced Operating System- IntroductionDebasis Das
 
A comprehensive formal verification solution for ARM based SOC design
A comprehensive formal verification solution for ARM based SOC design A comprehensive formal verification solution for ARM based SOC design
A comprehensive formal verification solution for ARM based SOC design chiportal
 
Applet Architecture - Introducing Java Applets
Applet Architecture - Introducing Java AppletsApplet Architecture - Introducing Java Applets
Applet Architecture - Introducing Java Appletsamitksaha
 
Real Time Operating Systems
Real Time Operating SystemsReal Time Operating Systems
Real Time Operating SystemsPawandeep Kaur
 
Transport Layer Security
Transport Layer SecurityTransport Layer Security
Transport Layer SecurityChhatra Thapa
 
Embedded System Tools ppt
Embedded System Tools  pptEmbedded System Tools  ppt
Embedded System Tools pptHalai Hansika
 
OS concepts 2 handling of interrupts
OS concepts 2 handling of interruptsOS concepts 2 handling of interrupts
OS concepts 2 handling of interruptsVaibhav Khanna
 
IO Techniques in Computer Organization
IO Techniques in Computer OrganizationIO Techniques in Computer Organization
IO Techniques in Computer OrganizationOm Prakash
 

What's hot (20)

Hardware multithreading
Hardware multithreadingHardware multithreading
Hardware multithreading
 
Unit 3
Unit 3Unit 3
Unit 3
 
message passing
 message passing message passing
message passing
 
PPT-IOT HEART ATTACK final ppt.pptx
PPT-IOT HEART ATTACK final ppt.pptxPPT-IOT HEART ATTACK final ppt.pptx
PPT-IOT HEART ATTACK final ppt.pptx
 
Operating system 03 handling of interrupts
Operating system 03 handling of interruptsOperating system 03 handling of interrupts
Operating system 03 handling of interrupts
 
Micro programmed control
Micro programmed  controlMicro programmed  control
Micro programmed control
 
Uni Processor Architecture
Uni Processor ArchitectureUni Processor Architecture
Uni Processor Architecture
 
Advanced Operating System- Introduction
Advanced Operating System- IntroductionAdvanced Operating System- Introduction
Advanced Operating System- Introduction
 
Deadlock
DeadlockDeadlock
Deadlock
 
A comprehensive formal verification solution for ARM based SOC design
A comprehensive formal verification solution for ARM based SOC design A comprehensive formal verification solution for ARM based SOC design
A comprehensive formal verification solution for ARM based SOC design
 
Applet Architecture - Introducing Java Applets
Applet Architecture - Introducing Java AppletsApplet Architecture - Introducing Java Applets
Applet Architecture - Introducing Java Applets
 
Real Time Operating Systems
Real Time Operating SystemsReal Time Operating Systems
Real Time Operating Systems
 
Transport Layer Security
Transport Layer SecurityTransport Layer Security
Transport Layer Security
 
Embedded System Tools ppt
Embedded System Tools  pptEmbedded System Tools  ppt
Embedded System Tools ppt
 
OS concepts 2 handling of interrupts
OS concepts 2 handling of interruptsOS concepts 2 handling of interrupts
OS concepts 2 handling of interrupts
 
CISC & RISC Architecture
CISC & RISC Architecture CISC & RISC Architecture
CISC & RISC Architecture
 
Message passing in Distributed Computing Systems
Message passing in Distributed Computing SystemsMessage passing in Distributed Computing Systems
Message passing in Distributed Computing Systems
 
Real Time Operating Systems
Real Time Operating SystemsReal Time Operating Systems
Real Time Operating Systems
 
IO Techniques in Computer Organization
IO Techniques in Computer OrganizationIO Techniques in Computer Organization
IO Techniques in Computer Organization
 
Internet Key Exchange Protocol
Internet Key Exchange ProtocolInternet Key Exchange Protocol
Internet Key Exchange Protocol
 

Viewers also liked

Tech Tips to Boost Office Productivity
Tech Tips to Boost Office ProductivityTech Tips to Boost Office Productivity
Tech Tips to Boost Office ProductivityAdrienne Bryant
 
Introduction to Information System
Introduction to Information SystemIntroduction to Information System
Introduction to Information SystemGiO Friginal
 
Office productivity tools
Office productivity toolsOffice productivity tools
Office productivity toolsUllees Selim
 
Total Productive Maintenance
Total Productive MaintenanceTotal Productive Maintenance
Total Productive MaintenanceDEEPAK SAHOO
 
Planning A Cloud Implementation
Planning A Cloud ImplementationPlanning A Cloud Implementation
Planning A Cloud ImplementationRex Wang
 
MOM - Message Oriented Middleware
MOM - Message Oriented MiddlewareMOM - Message Oriented Middleware
MOM - Message Oriented MiddlewarePeter R. Egli
 
Production planning & control(ppc)
Production planning & control(ppc)Production planning & control(ppc)
Production planning & control(ppc)Abu Bashar
 
5's kaizen, 5S Hindi Presentation in pdf
5's kaizen, 5S Hindi Presentation in pdf5's kaizen, 5S Hindi Presentation in pdf
5's kaizen, 5S Hindi Presentation in pdfSelf-employed
 
Presentation on Total Productive Maintenance
Presentation on Total Productive MaintenancePresentation on Total Productive Maintenance
Presentation on Total Productive MaintenanceMahendra K SHUKLA
 
Logistics and supply chain management
Logistics and supply chain managementLogistics and supply chain management
Logistics and supply chain managementsnbagh1008
 
Cloud computing project report
Cloud computing project reportCloud computing project report
Cloud computing project reportNaveed Farooq
 

Viewers also liked (16)

Transaction Processing System
Transaction Processing SystemTransaction Processing System
Transaction Processing System
 
Tech Tips to Boost Office Productivity
Tech Tips to Boost Office ProductivityTech Tips to Boost Office Productivity
Tech Tips to Boost Office Productivity
 
Introduction to Information System
Introduction to Information SystemIntroduction to Information System
Introduction to Information System
 
Office productivity tools
Office productivity toolsOffice productivity tools
Office productivity tools
 
Office TPM
Office TPMOffice TPM
Office TPM
 
Total Productive Maintenance
Total Productive MaintenanceTotal Productive Maintenance
Total Productive Maintenance
 
Text Mining - Data Mining
Text Mining - Data MiningText Mining - Data Mining
Text Mining - Data Mining
 
Hindi 5 s
Hindi 5 sHindi 5 s
Hindi 5 s
 
Planning A Cloud Implementation
Planning A Cloud ImplementationPlanning A Cloud Implementation
Planning A Cloud Implementation
 
MOM - Message Oriented Middleware
MOM - Message Oriented MiddlewareMOM - Message Oriented Middleware
MOM - Message Oriented Middleware
 
tpm presentation
tpm presentationtpm presentation
tpm presentation
 
Production planning & control(ppc)
Production planning & control(ppc)Production planning & control(ppc)
Production planning & control(ppc)
 
5's kaizen, 5S Hindi Presentation in pdf
5's kaizen, 5S Hindi Presentation in pdf5's kaizen, 5S Hindi Presentation in pdf
5's kaizen, 5S Hindi Presentation in pdf
 
Presentation on Total Productive Maintenance
Presentation on Total Productive MaintenancePresentation on Total Productive Maintenance
Presentation on Total Productive Maintenance
 
Logistics and supply chain management
Logistics and supply chain managementLogistics and supply chain management
Logistics and supply chain management
 
Cloud computing project report
Cloud computing project reportCloud computing project report
Cloud computing project report
 

Similar to Transaction Processing Monitors (TPM)

3 distributed transactions-cocurrency-query
3 distributed transactions-cocurrency-query3 distributed transactions-cocurrency-query
3 distributed transactions-cocurrency-queryM Rezaur Rahman
 
Lecture1414_20592_Lecture1419_Transactions.ppt (2).pdf
Lecture1414_20592_Lecture1419_Transactions.ppt (2).pdfLecture1414_20592_Lecture1419_Transactions.ppt (2).pdf
Lecture1414_20592_Lecture1419_Transactions.ppt (2).pdfbadboy624277
 
Distributed datababase Transaction and concurrency control
Distributed datababase Transaction and concurrency controlDistributed datababase Transaction and concurrency control
Distributed datababase Transaction and concurrency controlbalamurugan.k Kalibalamurugan
 
Recovery in Multi database Systems
Recovery in Multi database SystemsRecovery in Multi database Systems
Recovery in Multi database SystemsMoutasm Tamimi
 
Transactions (Distributed computing)
Transactions (Distributed computing)Transactions (Distributed computing)
Transactions (Distributed computing)Sri Prasanna
 
[WSO2Con EU 2018] Managing Transactions in Your Microservices Architecture
[WSO2Con EU 2018] Managing Transactions in Your Microservices Architecture [WSO2Con EU 2018] Managing Transactions in Your Microservices Architecture
[WSO2Con EU 2018] Managing Transactions in Your Microservices Architecture WSO2
 
What is Database Backup? The 3 Important Recovery Techniques from transaction...
What is Database Backup? The 3 Important Recovery Techniques from transaction...What is Database Backup? The 3 Important Recovery Techniques from transaction...
What is Database Backup? The 3 Important Recovery Techniques from transaction...Raj vardhan
 
Distributed Transactions(flat and nested) and Atomic Commit Protocols
Distributed Transactions(flat and nested) and Atomic Commit ProtocolsDistributed Transactions(flat and nested) and Atomic Commit Protocols
Distributed Transactions(flat and nested) and Atomic Commit ProtocolsSachin Chauhan
 
Distributed Coordination
Distributed CoordinationDistributed Coordination
Distributed Coordinationsiva krishna
 
Transactionsmanagement
TransactionsmanagementTransactionsmanagement
TransactionsmanagementSanjeev Gupta
 
Dartabase Transaction.pptx
Dartabase Transaction.pptxDartabase Transaction.pptx
Dartabase Transaction.pptxBibus Poudel
 
Dbms ii mca-ch11-recovery-2013
Dbms ii mca-ch11-recovery-2013Dbms ii mca-ch11-recovery-2013
Dbms ii mca-ch11-recovery-2013Prosanta Ghosh
 

Similar to Transaction Processing Monitors (TPM) (20)

3 distributed transactions-cocurrency-query
3 distributed transactions-cocurrency-query3 distributed transactions-cocurrency-query
3 distributed transactions-cocurrency-query
 
Lecture1414_20592_Lecture1419_Transactions.ppt (2).pdf
Lecture1414_20592_Lecture1419_Transactions.ppt (2).pdfLecture1414_20592_Lecture1419_Transactions.ppt (2).pdf
Lecture1414_20592_Lecture1419_Transactions.ppt (2).pdf
 
Bab8 transaction
Bab8 transactionBab8 transaction
Bab8 transaction
 
Lec13s transaction
Lec13s transactionLec13s transaction
Lec13s transaction
 
Chapter 13
Chapter 13Chapter 13
Chapter 13
 
Distributed datababase Transaction and concurrency control
Distributed datababase Transaction and concurrency controlDistributed datababase Transaction and concurrency control
Distributed datababase Transaction and concurrency control
 
Lec08
Lec08Lec08
Lec08
 
Recovery in Multi database Systems
Recovery in Multi database SystemsRecovery in Multi database Systems
Recovery in Multi database Systems
 
Transactions (Distributed computing)
Transactions (Distributed computing)Transactions (Distributed computing)
Transactions (Distributed computing)
 
[WSO2Con EU 2018] Managing Transactions in Your Microservices Architecture
[WSO2Con EU 2018] Managing Transactions in Your Microservices Architecture [WSO2Con EU 2018] Managing Transactions in Your Microservices Architecture
[WSO2Con EU 2018] Managing Transactions in Your Microservices Architecture
 
What is Database Backup? The 3 Important Recovery Techniques from transaction...
What is Database Backup? The 3 Important Recovery Techniques from transaction...What is Database Backup? The 3 Important Recovery Techniques from transaction...
What is Database Backup? The 3 Important Recovery Techniques from transaction...
 
Distributed Transactions(flat and nested) and Atomic Commit Protocols
Distributed Transactions(flat and nested) and Atomic Commit ProtocolsDistributed Transactions(flat and nested) and Atomic Commit Protocols
Distributed Transactions(flat and nested) and Atomic Commit Protocols
 
Transition scope
Transition scopeTransition scope
Transition scope
 
Distributed Coordination
Distributed CoordinationDistributed Coordination
Distributed Coordination
 
DBMS UNIT IV.pptx
DBMS UNIT IV.pptxDBMS UNIT IV.pptx
DBMS UNIT IV.pptx
 
Transactionsmanagement
TransactionsmanagementTransactionsmanagement
Transactionsmanagement
 
Dartabase Transaction.pptx
Dartabase Transaction.pptxDartabase Transaction.pptx
Dartabase Transaction.pptx
 
Data (1)
Data (1)Data (1)
Data (1)
 
Dbms ii mca-ch11-recovery-2013
Dbms ii mca-ch11-recovery-2013Dbms ii mca-ch11-recovery-2013
Dbms ii mca-ch11-recovery-2013
 
Managing transactions 11g release 1 (10.3
Managing transactions   11g release 1 (10.3Managing transactions   11g release 1 (10.3
Managing transactions 11g release 1 (10.3
 

More from Peter R. Egli

LPWAN Technologies for Internet of Things (IoT) and M2M Scenarios
LPWAN Technologies for Internet of Things (IoT) and M2M ScenariosLPWAN Technologies for Internet of Things (IoT) and M2M Scenarios
LPWAN Technologies for Internet of Things (IoT) and M2M ScenariosPeter R. Egli
 
Data Networking Concepts
Data Networking ConceptsData Networking Concepts
Data Networking ConceptsPeter R. Egli
 
Communication middleware
Communication middlewareCommunication middleware
Communication middlewarePeter R. Egli
 
Business Process Model and Notation (BPMN)
Business Process Model and Notation (BPMN)Business Process Model and Notation (BPMN)
Business Process Model and Notation (BPMN)Peter R. Egli
 
Microsoft .NET Platform
Microsoft .NET PlatformMicrosoft .NET Platform
Microsoft .NET PlatformPeter R. Egli
 
Overview of Cloud Computing
Overview of Cloud ComputingOverview of Cloud Computing
Overview of Cloud ComputingPeter R. Egli
 
MQTT - MQ Telemetry Transport for Message Queueing
MQTT - MQ Telemetry Transport for Message QueueingMQTT - MQ Telemetry Transport for Message Queueing
MQTT - MQ Telemetry Transport for Message QueueingPeter R. Egli
 
Enterprise Application Integration Technologies
Enterprise Application Integration TechnologiesEnterprise Application Integration Technologies
Enterprise Application Integration TechnologiesPeter R. Egli
 
Overview of Microsoft .Net Remoting technology
Overview of Microsoft .Net Remoting technologyOverview of Microsoft .Net Remoting technology
Overview of Microsoft .Net Remoting technologyPeter R. Egli
 
Android Native Development Kit
Android Native Development KitAndroid Native Development Kit
Android Native Development KitPeter R. Egli
 
Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)Peter R. Egli
 
Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)Peter R. Egli
 
Overview of Spanning Tree Protocol (STP & RSTP)
Overview of Spanning Tree Protocol (STP & RSTP)Overview of Spanning Tree Protocol (STP & RSTP)
Overview of Spanning Tree Protocol (STP & RSTP)Peter R. Egli
 
MSMQ - Microsoft Message Queueing
MSMQ - Microsoft Message QueueingMSMQ - Microsoft Message Queueing
MSMQ - Microsoft Message QueueingPeter R. Egli
 
Common Object Request Broker Architecture - CORBA
Common Object Request Broker Architecture - CORBACommon Object Request Broker Architecture - CORBA
Common Object Request Broker Architecture - CORBAPeter R. Egli
 
Component Object Model (COM, DCOM, COM+)
Component Object Model (COM, DCOM, COM+)Component Object Model (COM, DCOM, COM+)
Component Object Model (COM, DCOM, COM+)Peter R. Egli
 
JMS - Java Messaging Service
JMS - Java Messaging ServiceJMS - Java Messaging Service
JMS - Java Messaging ServicePeter R. Egli
 
Web Services (SOAP, WSDL, UDDI)
Web Services (SOAP, WSDL, UDDI)Web Services (SOAP, WSDL, UDDI)
Web Services (SOAP, WSDL, UDDI)Peter R. Egli
 
REST - Representational State Transfer
REST - Representational State TransferREST - Representational State Transfer
REST - Representational State TransferPeter R. Egli
 

More from Peter R. Egli (20)

LPWAN Technologies for Internet of Things (IoT) and M2M Scenarios
LPWAN Technologies for Internet of Things (IoT) and M2M ScenariosLPWAN Technologies for Internet of Things (IoT) and M2M Scenarios
LPWAN Technologies for Internet of Things (IoT) and M2M Scenarios
 
Data Networking Concepts
Data Networking ConceptsData Networking Concepts
Data Networking Concepts
 
Communication middleware
Communication middlewareCommunication middleware
Communication middleware
 
Business Process Model and Notation (BPMN)
Business Process Model and Notation (BPMN)Business Process Model and Notation (BPMN)
Business Process Model and Notation (BPMN)
 
Microsoft .NET Platform
Microsoft .NET PlatformMicrosoft .NET Platform
Microsoft .NET Platform
 
Overview of Cloud Computing
Overview of Cloud ComputingOverview of Cloud Computing
Overview of Cloud Computing
 
MQTT - MQ Telemetry Transport for Message Queueing
MQTT - MQ Telemetry Transport for Message QueueingMQTT - MQ Telemetry Transport for Message Queueing
MQTT - MQ Telemetry Transport for Message Queueing
 
Enterprise Application Integration Technologies
Enterprise Application Integration TechnologiesEnterprise Application Integration Technologies
Enterprise Application Integration Technologies
 
Overview of Microsoft .Net Remoting technology
Overview of Microsoft .Net Remoting technologyOverview of Microsoft .Net Remoting technology
Overview of Microsoft .Net Remoting technology
 
Android Native Development Kit
Android Native Development KitAndroid Native Development Kit
Android Native Development Kit
 
Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)
 
Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)
 
Web services
Web servicesWeb services
Web services
 
Overview of Spanning Tree Protocol (STP & RSTP)
Overview of Spanning Tree Protocol (STP & RSTP)Overview of Spanning Tree Protocol (STP & RSTP)
Overview of Spanning Tree Protocol (STP & RSTP)
 
MSMQ - Microsoft Message Queueing
MSMQ - Microsoft Message QueueingMSMQ - Microsoft Message Queueing
MSMQ - Microsoft Message Queueing
 
Common Object Request Broker Architecture - CORBA
Common Object Request Broker Architecture - CORBACommon Object Request Broker Architecture - CORBA
Common Object Request Broker Architecture - CORBA
 
Component Object Model (COM, DCOM, COM+)
Component Object Model (COM, DCOM, COM+)Component Object Model (COM, DCOM, COM+)
Component Object Model (COM, DCOM, COM+)
 
JMS - Java Messaging Service
JMS - Java Messaging ServiceJMS - Java Messaging Service
JMS - Java Messaging Service
 
Web Services (SOAP, WSDL, UDDI)
Web Services (SOAP, WSDL, UDDI)Web Services (SOAP, WSDL, UDDI)
Web Services (SOAP, WSDL, UDDI)
 
REST - Representational State Transfer
REST - Representational State TransferREST - Representational State Transfer
REST - Representational State Transfer
 

Recently uploaded

Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 

Recently uploaded (20)

Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 

Transaction Processing Monitors (TPM)

  • 1. © Peter R. Egli 2015 1/9 Rev. 1.10 TPM – Transaction Processing Monitor indigoo.com Peter R. Egli INDIGOO.COM TPM TRANSACTION PROCESSING MONITOR OVERVIEW OF TPM FOR DISTRIBUTED TRANSACTION PROCESSING
  • 2. © Peter R. Egli 2015 2/9 Rev. 1.10 TPM – Transaction Processing Monitor indigoo.com Contents 1. What are Transaction Processing Monitors? 2. Properties of DB transactions 3. Two-Phase Commit architecture 4. Two-Phase Commit sequence 5. TPM structure
  • 3. © Peter R. Egli 2015 3/9 Rev. 1.10 TPM – Transaction Processing Monitor indigoo.com 1. What are Transaction Processing Monitors (TPM)? Typical problem of distributed applications: Operations involving multiple databases (DB) require transactional access. The operation is either successful or fails, but always has to leave all involved databases in a consistent state. TPM: TPMs are an early solution for distributed transactions (booking systems, bank account transfers etc.). TPMs support distributed database transactions by coordinating multiple DB accesses. Client Server 1 Server 2 DB DB Debit account Credit account Transfer Client TPM Server 1 DB Server 2 DB
  • 4. © Peter R. Egli 2015 4/9 Rev. 1.10 TPM – Transaction Processing Monitor indigoo.com 2. Properties of DB transactions (1/2) Relational databases support ACID properties: 1. Atomicity 2. Consistency 3. Isolation 4. Durability Atomicity: Consistent state before & after transaction. Consistency: No integrity constraint violations Account 1 Account 2 Key Name balance_key 1 Egli 3 2 Müller 1 3 Meier 5 4 Huber 7 5 Gates 2 Key balance 1 2.95 CHF 2 56'342'786'129.98 CHF 3 88.70 CHF 4 23.67 CHF 5 14'78 CHF Integrity violation (missing entry with key=7) Transfer 1000 CHF Account 1 Account 2 -1'000 CHF +1'000 CHF Case 1: Successful transaction Account 1 Account 2 -0 CHF +0 CHF Case 2: Failed transaction or
  • 5. © Peter R. Egli 2015 5/9 Rev. 1.10 TPM – Transaction Processing Monitor indigoo.com 2. Properties of DB transactions (2/2) Isolation: DB accesses are isolated from each other so they do not impact each other. Typically this is done with some sort of locking of resources (tables in DB) and serialization of the requests. Durability: Transaction is persistent, even in case of errors (crash of DB, error etc.) Commit data to disk after restart Write to DB Write data to disk buffer Successful transaction Failed transaction Commit data to disk Crash of DB Request 1 Request 2 Execution Execution Request 2 Time Execution
  • 6. © Peter R. Egli 2015 6/9 Rev. 1.10 TPM – Transaction Processing Monitor indigoo.com 3. Two-Phase Commit architecture TPMs employ a mechanism called Two-Phase Commit to support distributed DB transactions. Transaction manager (Coordinator): The coordinator serves as coordination point in the distributed transaction. Resource manager: The resource managers (aka "Cohort") perform the individual transactional DB accesses and are able to either commit or rollback an individual DB access. Undo / redo logs: Undo / redo logs are used by the transaction managers for transactional access to their respective DB. Transaction Manager (Coordinator) Resource manager (cohort) DB Undo/Redo logs Resource manager (cohort) DB Undo/Redo logs Client interface for distributed transactions
  • 7. © Peter R. Egli 2015 7/9 Rev. 1.10 TPM – Transaction Processing Monitor indigoo.com Commit request phase (=voting phase) Commit phase (=completion phase) 4. Two-Phase Commit sequence (1/2) A. Successful transaction: When all transaction managers agree with the commit (vote "yes"), the transaction can be successfully committed. Request1 Client Transaction Manager Resource manager Resource manager Query to commit2 Query to commit2 * Prepare for commit * Write undo / redo logs 3 3 * Prepare for commit * Write undo / redo logs Ack (agreement)4 Ack (agreement)4 Commit5 Commit5 * Commit * Release all locks 6 6 * Commit * Release all locks Ack7 Ack7 Ack8
  • 8. © Peter R. Egli 2015 8/9 Rev. 1.10 TPM – Transaction Processing Monitor indigoo.com Commit request phase (=voting phase) Commit phase (=completion phase) 4. Two-Phase Commit sequence (2/2) A. Failed transaction: When either of the transaction manager does not positively acknowledge the transaction, the coordinator sends a rollback command to all transaction managers. Request1 Client Transaction Manager Resource manager Resource manager Query to commit2 Query to commit2 * Prepare for commit * Write undo / redo logs 3 * Prepare for commit * Write undo / redo logs Ack (agreement)4 Not Ack (or timeout)4 Rollback5 Rollback5 * Undo transaction * Release all locks 6 6 * Undo transaction * Release all locks Ack7 Ack7 Negative Ack8 3
  • 9. © Peter R. Egli 2015 9/9 Rev. 1.10 TPM – Transaction Processing Monitor indigoo.com 5. TPM structure TPMs represent complete systems akin to operating systems capable of running entire applications. Resource managers may be internal or external to the TPM. Binding Scheduling Load Balancing Appl. Lifecycle Log manager (undo/redo) Recovery manager TPM Service (application) AuthenticationPresentation E.g. transactional RPC XA interface=2PC (X/Open)Client Request Queue DB Transaction Manager Resource manager Response Queue