SlideShare a Scribd company logo
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
Trafodion Distributed
Transaction Management
April 2015
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
Agenda
Trafodion Distributed Transaction Management
• Capabilities
• Architecture
• Life of a transaction
– BEGIN WORK
– get / put / delete
– COMMIT WORK
• Prepare phase 1
• Commit phase 2
– ABORT WORK
– Transaction Recovery
• Control Point processing
• Performance
• Futures
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
• Multi-version Concurrency Control (MVCC) non-locking optimistic concurrency control algorithm
– Reads are never blocked
– Transactions do not see changes made by other active transactions
– Conflict checking done at commit time; transaction aborts if it made changes in conflict with already committed
transaction
– Applications need to retry transactions which abort due to conflicts
• BEGIN WORK, COMMIT WORK, ROLLBACK WORK, SET TRANSACTION
– If BEGIN WORK is not used to initiate a transaction, SQL defaults to AUTOCOMMIT with HBase transactional
support
• READ COMMITTED as the transactional isolation level, which is also the default
– Stronger than ANSI SQL READ COMMITTED in that it prohibits lost updates but allows non-repeatable reads and
read skew
• Multiple SQL processes participating in the same transaction concurrently
– Such as multiple parallel insert processes launched by the transaction initiating process e.g. for a large parallel
INSERT…SELECT operation
• Recovery after region server, transaction manager, or node failure
• Transactional integrity across HBase region splits and rebalancing of region
Capabilities
Trafodion Distributed Transaction Management
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.4
Node n
SQL Process
Transaction
Manager
Library
Resource
Manager
Library
SQL Process
Transaction
Manager
Library
Resource
Manager
Library
SQL Process
Transaction
Manager
Library
Resource
Manager
Library
Transaction
Manager
HBase trx Region Server
HBase Region Server
TLOG
HBase RegionHBase RegionTrx Region Endpoint
coproc
Node 2
SQL Process
Transaction
Manager
Library
Resource
Manager
Library
SQL Process
Transaction
Manager
Library
Resource
Manager
Library
SQL Process
Transaction
Manager
Library
Resource
Manager
Library
Transaction
Manager
HBase trx Region Server
HBase Region Server
TLOG
HBase RegionHBase RegionTrx Region Endpoint
coproc
Scalable Architecture
Trafodion Distributed Transaction Management
...
Implemented using HBase 0.98 coprocessors
Node 1
SQL Process
Transaction
Manager
Library
Resource
Manager
Library
SQL Process
Transaction
Manager
Library
Resource
Manager
Library
SQL Process
Transaction
Manager
Library
Resource
Manager
Library
Transaction
Manager
HBase trx Region Server
HBase Region Server
TLOG
HBase RegionHBase RegionTrx Region Endpoint
coproc
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.5
Peeling the onion – Component Architecture
Trafodion Distributed Transaction Management
SQL Transaction initiating process
Transaction Manager
Library
HBase RegionServer
TLO
G
register(region,
tx1)
begin/commit/abort(tx1
)
get/put/
delete(tx1
)
commitRequest/commit/abort(tx1)
Trx Region
Endpoint
Trx Region
Endpoint
Trx Region
Endpoint
C++
Jav
a
HLOG
Transaction Manager Log
Meta info/state about
transaction (more than one
region in a txn)
HBase table(s)
HBase Write Ahead Log
Region level transaction
info
Each region
server has its
own HLOG
Transaction Manager
DTM Core
Branch I/F
Transaction Management
JNI
TransactionManager
TrxRegionEndpoint
coprocessor client
open/perform/
close
scanner(tx1)
Jav
a
transactional
aggregation(tx1)
Coprocessors
implemented
TrxRegionEndpoint
implements SQL
transactions
TrxRegionObserver
implements recovery
process
SQL JNI
Resource Manager
Library
TrxRegionEndpoint
coprocessor client
Transaction
alTable
Transaction
alScanner
Transactional operations
get/put/delete TrxRegionEndpoi
nt
coprocessor
client
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.6
begintransaction
request
BEGIN WORK – BEGINTRANSACTION
Trafodion Distributed Transaction Management
SQL Transaction initiating process
Transaction Manager
Library
HBase RegionServer
Transaction Manager
DTM Core
Branch I/F
Transaction Management
JNI
TransactionManager
TrxRegionEndpoint
coprocessor client
BEGINTRANSACT
ION or BEGINTX
Trx Region
Endpoint
Trx Region
Endpoint
Trx Region
Endpoint
new transaction object
allocated
Assign new transid
TransactionManager.
beginTransaction(transid)
new
TransactionState
transid
transid is allocated by
TM for distributed
support
1
2
3
4
5
6
Txn Object
Txn State
Resource Manager
Library
TrxRegionEndpoint
coprocessor client
Transaction
alTable
Transaction
alScanner
Transactional operations
get/put/delete TrxRegionEndpoi
nt
coprocessor
client
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.7
Transaction Manager
DTM Core
Branch I/F
Transaction Management
JNI
TransactionManager
TrxRegionEndpoint
coprocessor client
Txn Object
Txn State
Transaction Manager
DTM Core
Branch I/F
Transaction Management
JNI
TransactionManager
TrxRegionEndpoint
coprocessor client
SQL Transaction initiating process
Resource Manager
Library
TrxRegionEndpoint
coprocessor client
Transaction
alTable
Transaction
alScanner
Transactional operations
get/put/delete TrxRegionEndpoi
nt
coprocessor
client
get / put / delete
Trafodion Distributed Transaction Management
Transaction Manager
Library
HBase RegionServer
Trx Region
Endpoint
Trx Region
Endpoint
Trx Region
Endpoint
TransactionalTable.put(TransactionState,
region)
If region not in
participatingRegions list of
TransactionState add it & initiate
registration
TransactionManager.register
Region which adds it to the
TransactionState.participatin
gRegions list
1
8
3
7
10
SQL Transaction initiating process
Transaction Manager
Library
HBase RegionServer
Trx Region
Endpoint
Trx Region
Endpoint
Trx Region
Endpoint
TrxRegionEndpoint.beginTransaction(transid) for
region executed if transaction not initiated for the
region
call register
(region,
transid)
4
put(transid,
region)
Look up TransactionState by
transid – create object if not
there
2
TransactionStateObjAdds participant to the
participating processes
list of the Transaction
Object
6
5
If region is not
registered for this
transaction, calls
HBaseTxn.registerRegi
on
9
TrxRegionEndpoint.put(transid) for
region
11
Update region transaction
object context to include puts,
deletes
Resource Manager
Library
TrxRegionEndpoint
coprocessor client
Transaction
alTable
Transaction
alScanner
Transactional operations
get/put/delete TrxRegionEndpoi
nt
coprocessor
client
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.8
Node 2 Node 3 Node 4Node 1
get / put / delete – multiple participating processes
Trafodion Distributed Transaction Management
Transaction
Manager
SQL Transaction initiating
processResource
Manager
Library
Transaction
Manager
Library
HBase RegionServer
Trx
Region
Endpoint
Trx
Region
Endpoint
Trx
Region
Endpoint
Transaction
Manager
SQL Transaction initiating
processResource
Manager
Library
Transaction
Manager
Library
HBase RegionServer
Trx
Region
Endpoint
Trx
Region
Endpoint
Trx
Region
Endpoint
Transaction
Manager
SQL Transaction initiating
processResource
Manager
Library
Transaction
Manager
Library
HBase RegionServer
Trx
Region
Endpoint
Trx
Region
Endpoint
Trx
Region
Endpoint
Transaction
Manager
SQL Transaction initiating
processResource
Manager
Library
Transaction
Manager
Library
HBase RegionServer
Trx
Region
Endpoint
Trx
Region
Endpoint
Trx
Region
Endpoint
Single process
updates multiple
regions
Multiple processes
update multiple
regions
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.9
Transaction Manager
DTM Core
Branch I/F
Transaction Management
JNI
TransactionManager
TrxRegionEndpoint
coprocessor client
Txn Object
Txn State
endtransaction
COMMIT WORK – ENDTRANSACTION – Phase 1, prepare
Trafodion Distributed Transaction Management
SQL Transaction initiating process
Transaction Manager
Library
HBase RegionServer
Trx Region
Endpoint
Trx Region
Endpoint
Trx Region
Endpoint
prepare_branches
HBaseTxn.prepareComm
it
TransactionManage
r.
prepareCommit
1
2
3
4
5
ENDTRANSACTIO
N
SQL Transaction initiating process
Transaction Manager
Library
HBase RegionServer
Trx Region
Endpoint
Trx Region
Endpoint
Trx Region
Endpoint
TrxRegionEndpoint.commitRequest(transid)
against each region in participatingRegions list,
sent in parallel
6
Region endpoint coprocessor
checks for conflicts /
concurrency issue
If conflict it votes abort
else checks for writes in
region
If no writes, votes read-only
& is excluded from phase 2
HLOG
If writes performed, context for
transid, including all updates, is
forced written to HLOG
7
Abort if
conflict
encountered
9
8 Votes abort, read-only, or
commit to transaction
manager
HLOG
Resource Manager
Library
TrxRegionEndpoint
coprocessor client
Transaction
alTable
Transaction
alScanner
Transactional operations
get/put/delete TrxRegionEndpoi
nt
coprocessor
client
Resource Manager
Library
TrxRegionEndpoint
coprocessor client
Transaction
alTable
Transaction
alScanner
Transactional operations
get/put/delete TrxRegionEndpoi
nt
coprocessor
client
Transaction Manager
DTM Core
Branch I/F
Transaction Management
JNI
TransactionManager
TrxRegionEndpoint
coprocessor client
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.10
Transaction Manager
DTM Core
Branch I/F
Transaction Management
JNI
TransactionManager
TrxRegionEndpoint
coprocessor client
Txn Object
Txn State
COMMIT WORK – ENDTRANSACTION – Phase 2, commit
Trafodion Distributed Transaction Management
SQL Transaction initiating process
Transaction Manager
Library
HBase RegionServer
Trx Region
Endpoint
Trx Region
Endpoint
Trx Region
Endpoint
commit_branche
s
TransactionManag
er.
doCommit
commit
2
3
1
5
SQL Transaction initiating process
Transaction Manager
Library
HBase RegionServer
Trx Region
Endpoint
Trx Region
Endpoint
Trx Region
Endpoint
TrxRegionEndpoint.commit(transid) against
each region in participatingRegions list, sent
in parallel
If at least one
region voted
commit & the rest
voted commit or
read-only
TLO
G
commit_branches
HBaseTxn.doCom
mit
Forces write of
committed trans
state record
4
Unforced write of
forgotten trans state record
9
doCommit forgets
transaction & returns
control to TM
1
0
All puts and deletes are written to
HBase tables from in-memory
transaction state
HBase WAL writes are disabled since
these were already recorded during
prepare
7
8
HLOG
Context for transid as
committed txn is written
unforced to HLOG
6
HLOG
Used for control point / aging
process discussed later
Records hashed key, ASN,
txn id & state, and tables in
txn
Reduces recovery
time
Resource Manager
Library
TrxRegionEndpoint
coprocessor client
Transaction
alTable
Transaction
alScanner
Transactional operations
get/put/delete TrxRegionEndpoi
nt
coprocessor
client
Resource Manager
Library
TrxRegionEndpoint
coprocessor client
Transaction
alTable
Transaction
alScanner
Transactional operations
get/put/delete TrxRegionEndpoi
nt
coprocessor
client
Transaction Manager
DTM Core
Branch I/F
Transaction Management
JNI
TransactionManager
TrxRegionEndpoint
coprocessor client
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.11
Transaction Manager
DTM Core
Branch I/F
Transaction Management
JNI
TransactionManager
TrxRegionEndpoint
coprocessor client
Txn Object
Txn State
HLOG HLOG
ABORT WORK – ABORTTRANSACTION
Trafodion Distributed Transaction Management
SQL Transaction initiating process
Transaction Manager
Library
HBase RegionServer
Trx Region
Endpoint
Trx Region
Endpoint
Trx Region
Endpoint
rollback_branche
s
TransactionManag
er.
abort
Abort
3
4
2
6
SQL Transaction initiating process
Transaction Manager
Library
HBase RegionServer
Trx Region
Endpoint
Trx Region
Endpoint
Trx Region
Endpoint
TrxRegionEndpoint.abortTransaction(transid)
against each region in participatingRegions list, sent
in parallel
If writes associated with txn,
unforced write of abort to
HLOG
8
rollback_branche
s
HBaseTxn.abort
does not write trans
record
If forgotten records not
written, presume abort
5
9
Abort forgets
transaction & returns
control to TM
10
1
TM does forget
processing
No writes to log
HRegion.abort sets status of txn to abort
Removes txn from commit list if previously voted
commit
Remove txn from pending list
7
TLO
G
Reduces recovery
time
Resource Manager
Library
TrxRegionEndpoint
coprocessor client
Transaction
alTable
Transaction
alScanner
Transactional operations
get/put/delete TrxRegionEndpoi
nt
coprocessor
client
Resource Manager
Library
TrxRegionEndpoint
coprocessor client
Transaction
alTable
Transaction
alScanner
Transactional operations
get/put/delete TrxRegionEndpoi
nt
coprocessor
client
Transaction Manager
DTM Core
Branch I/F
Transaction Management
JNI
TransactionManager
TrxRegionEndpoint
coprocessor client
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.13
Transaction Manager
DTM Core
Branch I/F
Transaction Management
JNI
TransactionManager
TrxRegionEndpoint
coprocessor client
Transaction Manager
DTM Core
Branch I/F
Transaction Management
JNI
TransactionManager
TrxRegionEndpoint
coprocessor client
Update txn
state obj from
last state of
transid, &
participating
regions in
TLOG
Transaction Recovery
Trafodion Distributed Transaction Management
SQL Transaction initiating process
Transaction Manager
Library
HBase RegionServer
SQL Transaction initiating process
Transaction Manager
Library
HBase RegionServer
...
1
When failed server(s) are
reintegrated, Region
Server reads HLOG. If its
empty, indicating clean
shutdown, it resumes txn
processing. Otherwise it
initiates recovery for
regions.
HLOG HLOG
3
Each Region with in-doubt transactions posts need for
recovery to bulletin of TM that originated the transaction if not
yet posted
1
6
Collates list of in-doubt transactions
from all regions and creates empty
transaction state object for each txn
7
Recovery thread re-drives phase 2
Commit / Abort will be
done as normal for in-
doubt txns
8
9
Zookeeper
Bulletin Board for
TM
4
TM builds in-doubt
region list and initiates
recovery for those
regions
5
TM disables transactions during
recovery
TLO
G
Table names mapped to regions
Accommodates region splits &
moves
Txn StateTxn StateTxn State
Resource Manager
Library
TrxRegionEndpoint
coprocessor client
Transaction
alTable
Transaction
alScanner
Transactional operations
get/put/delete TrxRegionEndpoi
nt
coprocessor
client
In-doubt transaction
1. No prepare record  abort transaction
2. Commit record  re-drive commit in redo
processing
3. Abort record  do nothing
4. Prepare record  needs to know commit or
abort?
Resource Manager
Library
TrxRegionEndpoint
coprocessor client
Transaction
alTable
Transaction
alScanner
Transactional operations
get/put/delete TrxRegionEndpoi
nt
coprocessor
client
Trx Region
Observer
Trx Region
Observer
Trx Region
Observer
Trx Region
Observer
Trx Region
Observer
Trx Region
Observer
Trx Region Observer
coprocessor for all
Regions builds in-doubt
txn list
In-doubt regions
deregister from bulletin
board
Trx Region
Endpoint
Trx Region
Endpoint
Trx Region
Endpoint
Trx Region
Endpoint
Trx Region
Endpoint
Trx Region
Endpoint
2
Gather in-doubt
transactions from in-doubt
regions
10
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.14
Transaction Manager
DTM Core
Branch I/F
Transaction Management
JNI
TransactionManager
TrxRegionEndpoint
coprocessor clientTLO
G
Trafodion Distributed Transaction Management
Used to re-drive transaction recovery
• After server or cluster failure to ensure data
consistency given in-flight operations at time of
failure
• Control points written to Control Point table at a
configurable 1interval, currently set at 2 minutes
• Re-drives of transaction commits (redo) driven by
recovery needs of regions
Used for aging
• TLOG entries prior to 2 control points can be aged
out and only two entries maintained in control point
table
• Commit records rewritten to log, along with writing
txn state of all running transactions, until all
commits received and forgotten record written
Transaction Recovery – Control Point processing
SQL Transaction initiating
process
Transaction Manager
Library
CP
Forced write of key
& 2ASN for txn state
record written to CP
Unforced grouped
writes of txn record
for each running
txn
2monotonically increasing value indicating the audit write sequence number1control point interval is represented by two consecutive control point records where the first
record defines the ASN from the start of the interval and the second defines the ASN at the end
of the interval
Txn StateTxn StateTxn State
Txn ObjectTxn ObjectTxn Object
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.15
Performance objective: overhead within 20%
Trafodion Distributed Transaction Management
Order Entry: multi-statement transactional
workload
• 5 transaction types (New Orders, Payments,
Order Status, Deliver, and Stock Level checks
• On average has about 20 statements per
transaction
0 128 256 384 512 640 768 896 1,024
Throughput(TPM)
Concurrency (Streams)
OrderEntry
Traf 1.1 Autcommit
Meets current
objective!
With max variance at
11.3%
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.16
Trafodion Distributed Transaction Management
Optimizations
Single operation / region transactionss
Transaction flow
Isolation support
* Stateless Stateful Concurrency Control
– Repeatable read
– Snapshot isolation
– First writer instead of first committer wins
Serialized snapshot isolation
*DDL transaction protection
Row Locking paradigm for certain tables
Tables involved in long running transactions
Pessimistic locking for highly concurrent
operations
High Availability
Flexible cluster growth – add nodes on the fly
Handle region splits/rebalancing during
transactions
Better integration with HBase clusters
Handle complex failure scenarios
Manageability
Transaction management & metrics via REST
APIs
Futures
*Technology preview in Trafodion R1.1
© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
Thank you

More Related Content

What's hot

management of distributed transactions
management of distributed transactionsmanagement of distributed transactions
management of distributed transactionsNilu Desai
 
Introduction to database-Transaction Concurrency and Recovery
Introduction to database-Transaction Concurrency and RecoveryIntroduction to database-Transaction Concurrency and Recovery
Introduction to database-Transaction Concurrency and Recovery
Ajit Nayak
 
Two phase commit protocol in dbms
Two phase commit protocol in dbmsTwo phase commit protocol in dbms
Two phase commit protocol in dbms
Dilouar Hossain
 
Transaction concurrency control
Transaction concurrency controlTransaction concurrency control
Transaction concurrency controlAnand Grewal
 
Transaction & Concurrency Control
Transaction & Concurrency ControlTransaction & Concurrency Control
Transaction & Concurrency Control
Ravimuthurajan
 
Chapter 12 transactions and concurrency control
Chapter 12 transactions and concurrency controlChapter 12 transactions and concurrency control
Chapter 12 transactions and concurrency controlAbDul ThaYyal
 
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
Sachin Chauhan
 
Distributed concurrency control
Distributed concurrency controlDistributed concurrency control
Distributed concurrency control
Binte fatima
 
4. concurrency control
4. concurrency control4. concurrency control
4. concurrency controlAbDul ThaYyal
 
Distributed Coordination
Distributed CoordinationDistributed Coordination
Distributed Coordination
siva krishna
 
Optimistic concurrency control in Distributed Systems
Optimistic concurrency control in Distributed SystemsOptimistic concurrency control in Distributed Systems
Optimistic concurrency control in Distributed Systems
mridul mishra
 
Databases: Concurrency Control
Databases: Concurrency ControlDatabases: Concurrency Control
Databases: Concurrency ControlDamian T. Gordon
 
Distributed DBMS - Unit 8 - Distributed Transaction Management & Concurrency ...
Distributed DBMS - Unit 8 - Distributed Transaction Management & Concurrency ...Distributed DBMS - Unit 8 - Distributed Transaction Management & Concurrency ...
Distributed DBMS - Unit 8 - Distributed Transaction Management & Concurrency ...
Gyanmanjari Institute Of Technology
 
Concurrent transactions
Concurrent transactionsConcurrent transactions
Concurrent transactions
Sajan Sahu
 
6 two phasecommit
6 two phasecommit6 two phasecommit
6 two phasecommit
ashish61_scs
 
Ch15
Ch15Ch15
Concurrent control
Concurrent controlConcurrent control
Concurrent control
Felix Makundi
 
Concurrency control
Concurrency controlConcurrency control
Concurrency control
Subhasish Pati
 

What's hot (20)

management of distributed transactions
management of distributed transactionsmanagement of distributed transactions
management of distributed transactions
 
Introduction to database-Transaction Concurrency and Recovery
Introduction to database-Transaction Concurrency and RecoveryIntroduction to database-Transaction Concurrency and Recovery
Introduction to database-Transaction Concurrency and Recovery
 
Two phase commit protocol in dbms
Two phase commit protocol in dbmsTwo phase commit protocol in dbms
Two phase commit protocol in dbms
 
Transaction concurrency control
Transaction concurrency controlTransaction concurrency control
Transaction concurrency control
 
Transaction & Concurrency Control
Transaction & Concurrency ControlTransaction & Concurrency Control
Transaction & Concurrency Control
 
Chapter 12 transactions and concurrency control
Chapter 12 transactions and concurrency controlChapter 12 transactions and concurrency control
Chapter 12 transactions and concurrency control
 
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
 
Distributed concurrency control
Distributed concurrency controlDistributed concurrency control
Distributed concurrency control
 
24904 lecture11
24904 lecture1124904 lecture11
24904 lecture11
 
4. concurrency control
4. concurrency control4. concurrency control
4. concurrency control
 
Distributed Coordination
Distributed CoordinationDistributed Coordination
Distributed Coordination
 
Optimistic concurrency control in Distributed Systems
Optimistic concurrency control in Distributed SystemsOptimistic concurrency control in Distributed Systems
Optimistic concurrency control in Distributed Systems
 
Databases: Concurrency Control
Databases: Concurrency ControlDatabases: Concurrency Control
Databases: Concurrency Control
 
Distributed DBMS - Unit 8 - Distributed Transaction Management & Concurrency ...
Distributed DBMS - Unit 8 - Distributed Transaction Management & Concurrency ...Distributed DBMS - Unit 8 - Distributed Transaction Management & Concurrency ...
Distributed DBMS - Unit 8 - Distributed Transaction Management & Concurrency ...
 
Chapter 13
Chapter 13Chapter 13
Chapter 13
 
Concurrent transactions
Concurrent transactionsConcurrent transactions
Concurrent transactions
 
6 two phasecommit
6 two phasecommit6 two phasecommit
6 two phasecommit
 
Ch15
Ch15Ch15
Ch15
 
Concurrent control
Concurrent controlConcurrent control
Concurrent control
 
Concurrency control
Concurrency controlConcurrency control
Concurrency control
 

Viewers also liked

Chapelle sixtine capela sixtina explicata
Chapelle sixtine capela sixtina explicataChapelle sixtine capela sixtina explicata
Chapelle sixtine capela sixtina explicataVASILE Viorel
 
input and output devices
input and output devicesinput and output devices
input and output devicesjomsss1234
 
Academic reference letter for Anne Louise Madsen I
Academic reference letter for Anne Louise Madsen IAcademic reference letter for Anne Louise Madsen I
Academic reference letter for Anne Louise Madsen IAnne Louise Madsen
 
Manual electrolux frigorífico en3888oox
Manual electrolux   frigorífico en3888oox Manual electrolux   frigorífico en3888oox
Manual electrolux frigorífico en3888oox
Alsako Electrodomésticos
 
Hyper-Local Marketing
Hyper-Local MarketingHyper-Local Marketing
Hyper-Local Marketing
Affiliate Summit
 
Safe farm workers, safe families and communities: How social protection impro...
Safe farm workers, safe families and communities: How social protection impro...Safe farm workers, safe families and communities: How social protection impro...
Safe farm workers, safe families and communities: How social protection impro...
SIANI
 
Աշխարհի յոթ հրաշալիքներ
Աշխարհի յոթ հրաշալիքներԱշխարհի յոթ հրաշալիքներ
Աշխարհի յոթ հրաշալիքներ
AnTadevosyan
 
Manual electrolux horno eoc2420aox
Manual electrolux   horno eoc2420aoxManual electrolux   horno eoc2420aox
Manual electrolux horno eoc2420aox
Alsako Electrodomésticos
 
Automation
AutomationAutomation
Automation
Mphasis
 
The contribution of muslims in the field of social sciences....ppt
The contribution of muslims in the field of social sciences....pptThe contribution of muslims in the field of social sciences....ppt
The contribution of muslims in the field of social sciences....ppt
Sami Uddin
 
The Walt Disney Company - Critique Report
The Walt Disney Company - Critique ReportThe Walt Disney Company - Critique Report
The Walt Disney Company - Critique ReportJayson French, M.B.A.
 
Atlassian JIRA Core
Atlassian JIRA CoreAtlassian JIRA Core
Atlassian JIRA Core
Onlio
 
Panoramio
PanoramioPanoramio
Panoramiopipaugs
 
Treatment of wastewater
Treatment of wastewaterTreatment of wastewater
Treatment of wastewater
Arpit Budania
 

Viewers also liked (15)

Chapelle sixtine capela sixtina explicata
Chapelle sixtine capela sixtina explicataChapelle sixtine capela sixtina explicata
Chapelle sixtine capela sixtina explicata
 
input and output devices
input and output devicesinput and output devices
input and output devices
 
Academic reference letter for Anne Louise Madsen I
Academic reference letter for Anne Louise Madsen IAcademic reference letter for Anne Louise Madsen I
Academic reference letter for Anne Louise Madsen I
 
Manual electrolux frigorífico en3888oox
Manual electrolux   frigorífico en3888oox Manual electrolux   frigorífico en3888oox
Manual electrolux frigorífico en3888oox
 
Hyper-Local Marketing
Hyper-Local MarketingHyper-Local Marketing
Hyper-Local Marketing
 
Leading Professionals of the World_Series 2012
Leading Professionals of the World_Series 2012Leading Professionals of the World_Series 2012
Leading Professionals of the World_Series 2012
 
Safe farm workers, safe families and communities: How social protection impro...
Safe farm workers, safe families and communities: How social protection impro...Safe farm workers, safe families and communities: How social protection impro...
Safe farm workers, safe families and communities: How social protection impro...
 
Աշխարհի յոթ հրաշալիքներ
Աշխարհի յոթ հրաշալիքներԱշխարհի յոթ հրաշալիքներ
Աշխարհի յոթ հրաշալիքներ
 
Manual electrolux horno eoc2420aox
Manual electrolux   horno eoc2420aoxManual electrolux   horno eoc2420aox
Manual electrolux horno eoc2420aox
 
Automation
AutomationAutomation
Automation
 
The contribution of muslims in the field of social sciences....ppt
The contribution of muslims in the field of social sciences....pptThe contribution of muslims in the field of social sciences....ppt
The contribution of muslims in the field of social sciences....ppt
 
The Walt Disney Company - Critique Report
The Walt Disney Company - Critique ReportThe Walt Disney Company - Critique Report
The Walt Disney Company - Critique Report
 
Atlassian JIRA Core
Atlassian JIRA CoreAtlassian JIRA Core
Atlassian JIRA Core
 
Panoramio
PanoramioPanoramio
Panoramio
 
Treatment of wastewater
Treatment of wastewaterTreatment of wastewater
Treatment of wastewater
 

Similar to Trafodion Distributed Transaction Management

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
Felipe Hernandez Vazquez
 
ACID Transactions in Apache Phoenix with Apache Tephra™ (incubating), by Poor...
ACID Transactions in Apache Phoenix with Apache Tephra™ (incubating), by Poor...ACID Transactions in Apache Phoenix with Apache Tephra™ (incubating), by Poor...
ACID Transactions in Apache Phoenix with Apache Tephra™ (incubating), by Poor...
Cask Data
 
SAP Change Control Management & TR import automation tool
SAP Change Control Management & TR import automation toolSAP Change Control Management & TR import automation tool
SAP Change Control Management & TR import automation tool
JustAcademy
 
Autonomous transaction
Autonomous transactionAutonomous transaction
Autonomous transaction
Rajeev Rastogi (KRR)
 
Spring Transaction Management
Spring Transaction ManagementSpring Transaction Management
Spring Transaction Management
Ye Win
 
The End of a Myth: Ultra-Scalable Transactional Management
The End of a Myth: Ultra-Scalable Transactional ManagementThe End of a Myth: Ultra-Scalable Transactional Management
The End of a Myth: Ultra-Scalable Transactional Management
Ricardo Jimenez-Peris
 
Spring transaction management
Spring transaction managementSpring transaction management
Spring transaction management
Harshit Choudhary
 
Atomic Service Transactions
Atomic Service Transactions Atomic Service Transactions
Atomic Service Transactions WSO2
 
Apache Tephra
Apache TephraApache Tephra
Apache Tephra
Mike Frampton
 
DataTorrent Presentation @ Big Data Application Meetup
DataTorrent Presentation @ Big Data Application MeetupDataTorrent Presentation @ Big Data Application Meetup
DataTorrent Presentation @ Big Data Application Meetup
Thomas Weise
 
IMCSummit 2015 - Day 1 IT Business Track - Designing a Big Data Analytics Pla...
IMCSummit 2015 - Day 1 IT Business Track - Designing a Big Data Analytics Pla...IMCSummit 2015 - Day 1 IT Business Track - Designing a Big Data Analytics Pla...
IMCSummit 2015 - Day 1 IT Business Track - Designing a Big Data Analytics Pla...
In-Memory Computing Summit
 
Transaction design patterns
Transaction design patternsTransaction design patterns
Transaction design patterns
Ben Abdallah Helmi
 
Apache Apex Meetup at Cask
Apache Apex Meetup at CaskApache Apex Meetup at Cask
Apache Apex Meetup at Cask
Apache Apex
 
End of the Myth: Ultra-Scalable Transactional Management by Ricardo Jiménez-P...
End of the Myth: Ultra-Scalable Transactional Management by Ricardo Jiménez-P...End of the Myth: Ultra-Scalable Transactional Management by Ricardo Jiménez-P...
End of the Myth: Ultra-Scalable Transactional Management by Ricardo Jiménez-P...
Big Data Spain
 
Flink Forward Berlin 2018: Viktor Klang - Keynote "The convergence of stream ...
Flink Forward Berlin 2018: Viktor Klang - Keynote "The convergence of stream ...Flink Forward Berlin 2018: Viktor Klang - Keynote "The convergence of stream ...
Flink Forward Berlin 2018: Viktor Klang - Keynote "The convergence of stream ...
Flink Forward
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera ClusterWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera Cluster
Continuent
 
SAPHana_basic12345678234567890865456.pdf
SAPHana_basic12345678234567890865456.pdfSAPHana_basic12345678234567890865456.pdf
SAPHana_basic12345678234567890865456.pdf
SravanthiVaka1
 
Java Distributed Transactions
Java Distributed TransactionsJava Distributed Transactions
Java Distributed Transactions
Anjana Fernando
 
Patterns in the cloud
Patterns in the cloudPatterns in the cloud
Patterns in the cloud
David Manning
 

Similar to Trafodion Distributed Transaction Management (20)

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
 
ACID Transactions in Apache Phoenix with Apache Tephra™ (incubating), by Poor...
ACID Transactions in Apache Phoenix with Apache Tephra™ (incubating), by Poor...ACID Transactions in Apache Phoenix with Apache Tephra™ (incubating), by Poor...
ACID Transactions in Apache Phoenix with Apache Tephra™ (incubating), by Poor...
 
SAP Change Control Management & TR import automation tool
SAP Change Control Management & TR import automation toolSAP Change Control Management & TR import automation tool
SAP Change Control Management & TR import automation tool
 
Autonomous transaction
Autonomous transactionAutonomous transaction
Autonomous transaction
 
Spring Transaction Management
Spring Transaction ManagementSpring Transaction Management
Spring Transaction Management
 
The End of a Myth: Ultra-Scalable Transactional Management
The End of a Myth: Ultra-Scalable Transactional ManagementThe End of a Myth: Ultra-Scalable Transactional Management
The End of a Myth: Ultra-Scalable Transactional Management
 
Spring transaction management
Spring transaction managementSpring transaction management
Spring transaction management
 
HiveACIDPublic
HiveACIDPublicHiveACIDPublic
HiveACIDPublic
 
Atomic Service Transactions
Atomic Service Transactions Atomic Service Transactions
Atomic Service Transactions
 
Apache Tephra
Apache TephraApache Tephra
Apache Tephra
 
DataTorrent Presentation @ Big Data Application Meetup
DataTorrent Presentation @ Big Data Application MeetupDataTorrent Presentation @ Big Data Application Meetup
DataTorrent Presentation @ Big Data Application Meetup
 
IMCSummit 2015 - Day 1 IT Business Track - Designing a Big Data Analytics Pla...
IMCSummit 2015 - Day 1 IT Business Track - Designing a Big Data Analytics Pla...IMCSummit 2015 - Day 1 IT Business Track - Designing a Big Data Analytics Pla...
IMCSummit 2015 - Day 1 IT Business Track - Designing a Big Data Analytics Pla...
 
Transaction design patterns
Transaction design patternsTransaction design patterns
Transaction design patterns
 
Apache Apex Meetup at Cask
Apache Apex Meetup at CaskApache Apex Meetup at Cask
Apache Apex Meetup at Cask
 
End of the Myth: Ultra-Scalable Transactional Management by Ricardo Jiménez-P...
End of the Myth: Ultra-Scalable Transactional Management by Ricardo Jiménez-P...End of the Myth: Ultra-Scalable Transactional Management by Ricardo Jiménez-P...
End of the Myth: Ultra-Scalable Transactional Management by Ricardo Jiménez-P...
 
Flink Forward Berlin 2018: Viktor Klang - Keynote "The convergence of stream ...
Flink Forward Berlin 2018: Viktor Klang - Keynote "The convergence of stream ...Flink Forward Berlin 2018: Viktor Klang - Keynote "The convergence of stream ...
Flink Forward Berlin 2018: Viktor Klang - Keynote "The convergence of stream ...
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera ClusterWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #2: Galera Cluster
 
SAPHana_basic12345678234567890865456.pdf
SAPHana_basic12345678234567890865456.pdfSAPHana_basic12345678234567890865456.pdf
SAPHana_basic12345678234567890865456.pdf
 
Java Distributed Transactions
Java Distributed TransactionsJava Distributed Transactions
Java Distributed Transactions
 
Patterns in the cloud
Patterns in the cloudPatterns in the cloud
Patterns in the cloud
 

More from Rohit Jain

In search of database nirvana - The challenges of delivering Hybrid Transacti...
In search of database nirvana - The challenges of delivering Hybrid Transacti...In search of database nirvana - The challenges of delivering Hybrid Transacti...
In search of database nirvana - The challenges of delivering Hybrid Transacti...
Rohit Jain
 
Trafodion overview
Trafodion overviewTrafodion overview
Trafodion overview
Rohit Jain
 
4 - Trafodion Open Source Community
4 - Trafodion Open Source Community4 - Trafodion Open Source Community
4 - Trafodion Open Source Community
Rohit Jain
 
3 - Trafodion Technology Look
3 - Trafodion Technology Look3 - Trafodion Technology Look
3 - Trafodion Technology Look
Rohit Jain
 
2 - Trafodion and Hadoop HBase
2 - Trafodion and Hadoop HBase2 - Trafodion and Hadoop HBase
2 - Trafodion and Hadoop HBase
Rohit Jain
 
1 - The Case for Trafodion
1 - The Case for Trafodion1 - The Case for Trafodion
1 - The Case for Trafodion
Rohit Jain
 

More from Rohit Jain (6)

In search of database nirvana - The challenges of delivering Hybrid Transacti...
In search of database nirvana - The challenges of delivering Hybrid Transacti...In search of database nirvana - The challenges of delivering Hybrid Transacti...
In search of database nirvana - The challenges of delivering Hybrid Transacti...
 
Trafodion overview
Trafodion overviewTrafodion overview
Trafodion overview
 
4 - Trafodion Open Source Community
4 - Trafodion Open Source Community4 - Trafodion Open Source Community
4 - Trafodion Open Source Community
 
3 - Trafodion Technology Look
3 - Trafodion Technology Look3 - Trafodion Technology Look
3 - Trafodion Technology Look
 
2 - Trafodion and Hadoop HBase
2 - Trafodion and Hadoop HBase2 - Trafodion and Hadoop HBase
2 - Trafodion and Hadoop HBase
 
1 - The Case for Trafodion
1 - The Case for Trafodion1 - The Case for Trafodion
1 - The Case for Trafodion
 

Recently uploaded

一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
一比一原版(UniSA毕业证书)南澳大学毕业证如何办理一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
slg6lamcq
 
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
John Andrews
 
一比一原版(CBU毕业证)卡普顿大学毕业证如何办理
一比一原版(CBU毕业证)卡普顿大学毕业证如何办理一比一原版(CBU毕业证)卡普顿大学毕业证如何办理
一比一原版(CBU毕业证)卡普顿大学毕业证如何办理
ahzuo
 
Ch03-Managing the Object-Oriented Information Systems Project a.pdf
Ch03-Managing the Object-Oriented Information Systems Project a.pdfCh03-Managing the Object-Oriented Information Systems Project a.pdf
Ch03-Managing the Object-Oriented Information Systems Project a.pdf
haila53
 
【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】
【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】
【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】
NABLAS株式会社
 
Malana- Gimlet Market Analysis (Portfolio 2)
Malana- Gimlet Market Analysis (Portfolio 2)Malana- Gimlet Market Analysis (Portfolio 2)
Malana- Gimlet Market Analysis (Portfolio 2)
TravisMalana
 
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
axoqas
 
原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样
原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样
原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样
u86oixdj
 
06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...
06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...
06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...
Timothy Spann
 
Everything you wanted to know about LIHTC
Everything you wanted to know about LIHTCEverything you wanted to know about LIHTC
Everything you wanted to know about LIHTC
Roger Valdez
 
Machine learning and optimization techniques for electrical drives.pptx
Machine learning and optimization techniques for electrical drives.pptxMachine learning and optimization techniques for electrical drives.pptx
Machine learning and optimization techniques for electrical drives.pptx
balafet
 
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Subhajit Sahu
 
The affect of service quality and online reviews on customer loyalty in the E...
The affect of service quality and online reviews on customer loyalty in the E...The affect of service quality and online reviews on customer loyalty in the E...
The affect of service quality and online reviews on customer loyalty in the E...
jerlynmaetalle
 
做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样
做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样
做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样
axoqas
 
一比一原版(UofS毕业证书)萨省大学毕业证如何办理
一比一原版(UofS毕业证书)萨省大学毕业证如何办理一比一原版(UofS毕业证书)萨省大学毕业证如何办理
一比一原版(UofS毕业证书)萨省大学毕业证如何办理
v3tuleee
 
My burning issue is homelessness K.C.M.O.
My burning issue is homelessness K.C.M.O.My burning issue is homelessness K.C.M.O.
My burning issue is homelessness K.C.M.O.
rwarrenll
 
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
Subhajit Sahu
 
Nanandann Nilekani's ppt On India's .pdf
Nanandann Nilekani's ppt On India's .pdfNanandann Nilekani's ppt On India's .pdf
Nanandann Nilekani's ppt On India's .pdf
eddie19851
 
Criminal IP - Threat Hunting Webinar.pdf
Criminal IP - Threat Hunting Webinar.pdfCriminal IP - Threat Hunting Webinar.pdf
Criminal IP - Threat Hunting Webinar.pdf
Criminal IP
 
Best best suvichar in gujarati english meaning of this sentence as Silk road ...
Best best suvichar in gujarati english meaning of this sentence as Silk road ...Best best suvichar in gujarati english meaning of this sentence as Silk road ...
Best best suvichar in gujarati english meaning of this sentence as Silk road ...
AbhimanyuSinha9
 

Recently uploaded (20)

一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
一比一原版(UniSA毕业证书)南澳大学毕业证如何办理一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
 
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
 
一比一原版(CBU毕业证)卡普顿大学毕业证如何办理
一比一原版(CBU毕业证)卡普顿大学毕业证如何办理一比一原版(CBU毕业证)卡普顿大学毕业证如何办理
一比一原版(CBU毕业证)卡普顿大学毕业证如何办理
 
Ch03-Managing the Object-Oriented Information Systems Project a.pdf
Ch03-Managing the Object-Oriented Information Systems Project a.pdfCh03-Managing the Object-Oriented Information Systems Project a.pdf
Ch03-Managing the Object-Oriented Information Systems Project a.pdf
 
【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】
【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】
【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】
 
Malana- Gimlet Market Analysis (Portfolio 2)
Malana- Gimlet Market Analysis (Portfolio 2)Malana- Gimlet Market Analysis (Portfolio 2)
Malana- Gimlet Market Analysis (Portfolio 2)
 
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
 
原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样
原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样
原版制作(Deakin毕业证书)迪肯大学毕业证学位证一模一样
 
06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...
06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...
06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...
 
Everything you wanted to know about LIHTC
Everything you wanted to know about LIHTCEverything you wanted to know about LIHTC
Everything you wanted to know about LIHTC
 
Machine learning and optimization techniques for electrical drives.pptx
Machine learning and optimization techniques for electrical drives.pptxMachine learning and optimization techniques for electrical drives.pptx
Machine learning and optimization techniques for electrical drives.pptx
 
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
 
The affect of service quality and online reviews on customer loyalty in the E...
The affect of service quality and online reviews on customer loyalty in the E...The affect of service quality and online reviews on customer loyalty in the E...
The affect of service quality and online reviews on customer loyalty in the E...
 
做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样
做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样
做(mqu毕业证书)麦考瑞大学毕业证硕士文凭证书学费发票原版一模一样
 
一比一原版(UofS毕业证书)萨省大学毕业证如何办理
一比一原版(UofS毕业证书)萨省大学毕业证如何办理一比一原版(UofS毕业证书)萨省大学毕业证如何办理
一比一原版(UofS毕业证书)萨省大学毕业证如何办理
 
My burning issue is homelessness K.C.M.O.
My burning issue is homelessness K.C.M.O.My burning issue is homelessness K.C.M.O.
My burning issue is homelessness K.C.M.O.
 
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
 
Nanandann Nilekani's ppt On India's .pdf
Nanandann Nilekani's ppt On India's .pdfNanandann Nilekani's ppt On India's .pdf
Nanandann Nilekani's ppt On India's .pdf
 
Criminal IP - Threat Hunting Webinar.pdf
Criminal IP - Threat Hunting Webinar.pdfCriminal IP - Threat Hunting Webinar.pdf
Criminal IP - Threat Hunting Webinar.pdf
 
Best best suvichar in gujarati english meaning of this sentence as Silk road ...
Best best suvichar in gujarati english meaning of this sentence as Silk road ...Best best suvichar in gujarati english meaning of this sentence as Silk road ...
Best best suvichar in gujarati english meaning of this sentence as Silk road ...
 

Trafodion Distributed Transaction Management

  • 1. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Trafodion Distributed Transaction Management April 2015
  • 2. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Agenda Trafodion Distributed Transaction Management • Capabilities • Architecture • Life of a transaction – BEGIN WORK – get / put / delete – COMMIT WORK • Prepare phase 1 • Commit phase 2 – ABORT WORK – Transaction Recovery • Control Point processing • Performance • Futures
  • 3. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. • Multi-version Concurrency Control (MVCC) non-locking optimistic concurrency control algorithm – Reads are never blocked – Transactions do not see changes made by other active transactions – Conflict checking done at commit time; transaction aborts if it made changes in conflict with already committed transaction – Applications need to retry transactions which abort due to conflicts • BEGIN WORK, COMMIT WORK, ROLLBACK WORK, SET TRANSACTION – If BEGIN WORK is not used to initiate a transaction, SQL defaults to AUTOCOMMIT with HBase transactional support • READ COMMITTED as the transactional isolation level, which is also the default – Stronger than ANSI SQL READ COMMITTED in that it prohibits lost updates but allows non-repeatable reads and read skew • Multiple SQL processes participating in the same transaction concurrently – Such as multiple parallel insert processes launched by the transaction initiating process e.g. for a large parallel INSERT…SELECT operation • Recovery after region server, transaction manager, or node failure • Transactional integrity across HBase region splits and rebalancing of region Capabilities Trafodion Distributed Transaction Management
  • 4. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.4 Node n SQL Process Transaction Manager Library Resource Manager Library SQL Process Transaction Manager Library Resource Manager Library SQL Process Transaction Manager Library Resource Manager Library Transaction Manager HBase trx Region Server HBase Region Server TLOG HBase RegionHBase RegionTrx Region Endpoint coproc Node 2 SQL Process Transaction Manager Library Resource Manager Library SQL Process Transaction Manager Library Resource Manager Library SQL Process Transaction Manager Library Resource Manager Library Transaction Manager HBase trx Region Server HBase Region Server TLOG HBase RegionHBase RegionTrx Region Endpoint coproc Scalable Architecture Trafodion Distributed Transaction Management ... Implemented using HBase 0.98 coprocessors Node 1 SQL Process Transaction Manager Library Resource Manager Library SQL Process Transaction Manager Library Resource Manager Library SQL Process Transaction Manager Library Resource Manager Library Transaction Manager HBase trx Region Server HBase Region Server TLOG HBase RegionHBase RegionTrx Region Endpoint coproc
  • 5. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.5 Peeling the onion – Component Architecture Trafodion Distributed Transaction Management SQL Transaction initiating process Transaction Manager Library HBase RegionServer TLO G register(region, tx1) begin/commit/abort(tx1 ) get/put/ delete(tx1 ) commitRequest/commit/abort(tx1) Trx Region Endpoint Trx Region Endpoint Trx Region Endpoint C++ Jav a HLOG Transaction Manager Log Meta info/state about transaction (more than one region in a txn) HBase table(s) HBase Write Ahead Log Region level transaction info Each region server has its own HLOG Transaction Manager DTM Core Branch I/F Transaction Management JNI TransactionManager TrxRegionEndpoint coprocessor client open/perform/ close scanner(tx1) Jav a transactional aggregation(tx1) Coprocessors implemented TrxRegionEndpoint implements SQL transactions TrxRegionObserver implements recovery process SQL JNI Resource Manager Library TrxRegionEndpoint coprocessor client Transaction alTable Transaction alScanner Transactional operations get/put/delete TrxRegionEndpoi nt coprocessor client
  • 6. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.6 begintransaction request BEGIN WORK – BEGINTRANSACTION Trafodion Distributed Transaction Management SQL Transaction initiating process Transaction Manager Library HBase RegionServer Transaction Manager DTM Core Branch I/F Transaction Management JNI TransactionManager TrxRegionEndpoint coprocessor client BEGINTRANSACT ION or BEGINTX Trx Region Endpoint Trx Region Endpoint Trx Region Endpoint new transaction object allocated Assign new transid TransactionManager. beginTransaction(transid) new TransactionState transid transid is allocated by TM for distributed support 1 2 3 4 5 6 Txn Object Txn State Resource Manager Library TrxRegionEndpoint coprocessor client Transaction alTable Transaction alScanner Transactional operations get/put/delete TrxRegionEndpoi nt coprocessor client
  • 7. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.7 Transaction Manager DTM Core Branch I/F Transaction Management JNI TransactionManager TrxRegionEndpoint coprocessor client Txn Object Txn State Transaction Manager DTM Core Branch I/F Transaction Management JNI TransactionManager TrxRegionEndpoint coprocessor client SQL Transaction initiating process Resource Manager Library TrxRegionEndpoint coprocessor client Transaction alTable Transaction alScanner Transactional operations get/put/delete TrxRegionEndpoi nt coprocessor client get / put / delete Trafodion Distributed Transaction Management Transaction Manager Library HBase RegionServer Trx Region Endpoint Trx Region Endpoint Trx Region Endpoint TransactionalTable.put(TransactionState, region) If region not in participatingRegions list of TransactionState add it & initiate registration TransactionManager.register Region which adds it to the TransactionState.participatin gRegions list 1 8 3 7 10 SQL Transaction initiating process Transaction Manager Library HBase RegionServer Trx Region Endpoint Trx Region Endpoint Trx Region Endpoint TrxRegionEndpoint.beginTransaction(transid) for region executed if transaction not initiated for the region call register (region, transid) 4 put(transid, region) Look up TransactionState by transid – create object if not there 2 TransactionStateObjAdds participant to the participating processes list of the Transaction Object 6 5 If region is not registered for this transaction, calls HBaseTxn.registerRegi on 9 TrxRegionEndpoint.put(transid) for region 11 Update region transaction object context to include puts, deletes Resource Manager Library TrxRegionEndpoint coprocessor client Transaction alTable Transaction alScanner Transactional operations get/put/delete TrxRegionEndpoi nt coprocessor client
  • 8. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.8 Node 2 Node 3 Node 4Node 1 get / put / delete – multiple participating processes Trafodion Distributed Transaction Management Transaction Manager SQL Transaction initiating processResource Manager Library Transaction Manager Library HBase RegionServer Trx Region Endpoint Trx Region Endpoint Trx Region Endpoint Transaction Manager SQL Transaction initiating processResource Manager Library Transaction Manager Library HBase RegionServer Trx Region Endpoint Trx Region Endpoint Trx Region Endpoint Transaction Manager SQL Transaction initiating processResource Manager Library Transaction Manager Library HBase RegionServer Trx Region Endpoint Trx Region Endpoint Trx Region Endpoint Transaction Manager SQL Transaction initiating processResource Manager Library Transaction Manager Library HBase RegionServer Trx Region Endpoint Trx Region Endpoint Trx Region Endpoint Single process updates multiple regions Multiple processes update multiple regions
  • 9. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.9 Transaction Manager DTM Core Branch I/F Transaction Management JNI TransactionManager TrxRegionEndpoint coprocessor client Txn Object Txn State endtransaction COMMIT WORK – ENDTRANSACTION – Phase 1, prepare Trafodion Distributed Transaction Management SQL Transaction initiating process Transaction Manager Library HBase RegionServer Trx Region Endpoint Trx Region Endpoint Trx Region Endpoint prepare_branches HBaseTxn.prepareComm it TransactionManage r. prepareCommit 1 2 3 4 5 ENDTRANSACTIO N SQL Transaction initiating process Transaction Manager Library HBase RegionServer Trx Region Endpoint Trx Region Endpoint Trx Region Endpoint TrxRegionEndpoint.commitRequest(transid) against each region in participatingRegions list, sent in parallel 6 Region endpoint coprocessor checks for conflicts / concurrency issue If conflict it votes abort else checks for writes in region If no writes, votes read-only & is excluded from phase 2 HLOG If writes performed, context for transid, including all updates, is forced written to HLOG 7 Abort if conflict encountered 9 8 Votes abort, read-only, or commit to transaction manager HLOG Resource Manager Library TrxRegionEndpoint coprocessor client Transaction alTable Transaction alScanner Transactional operations get/put/delete TrxRegionEndpoi nt coprocessor client Resource Manager Library TrxRegionEndpoint coprocessor client Transaction alTable Transaction alScanner Transactional operations get/put/delete TrxRegionEndpoi nt coprocessor client Transaction Manager DTM Core Branch I/F Transaction Management JNI TransactionManager TrxRegionEndpoint coprocessor client
  • 10. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.10 Transaction Manager DTM Core Branch I/F Transaction Management JNI TransactionManager TrxRegionEndpoint coprocessor client Txn Object Txn State COMMIT WORK – ENDTRANSACTION – Phase 2, commit Trafodion Distributed Transaction Management SQL Transaction initiating process Transaction Manager Library HBase RegionServer Trx Region Endpoint Trx Region Endpoint Trx Region Endpoint commit_branche s TransactionManag er. doCommit commit 2 3 1 5 SQL Transaction initiating process Transaction Manager Library HBase RegionServer Trx Region Endpoint Trx Region Endpoint Trx Region Endpoint TrxRegionEndpoint.commit(transid) against each region in participatingRegions list, sent in parallel If at least one region voted commit & the rest voted commit or read-only TLO G commit_branches HBaseTxn.doCom mit Forces write of committed trans state record 4 Unforced write of forgotten trans state record 9 doCommit forgets transaction & returns control to TM 1 0 All puts and deletes are written to HBase tables from in-memory transaction state HBase WAL writes are disabled since these were already recorded during prepare 7 8 HLOG Context for transid as committed txn is written unforced to HLOG 6 HLOG Used for control point / aging process discussed later Records hashed key, ASN, txn id & state, and tables in txn Reduces recovery time Resource Manager Library TrxRegionEndpoint coprocessor client Transaction alTable Transaction alScanner Transactional operations get/put/delete TrxRegionEndpoi nt coprocessor client Resource Manager Library TrxRegionEndpoint coprocessor client Transaction alTable Transaction alScanner Transactional operations get/put/delete TrxRegionEndpoi nt coprocessor client Transaction Manager DTM Core Branch I/F Transaction Management JNI TransactionManager TrxRegionEndpoint coprocessor client
  • 11. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.11 Transaction Manager DTM Core Branch I/F Transaction Management JNI TransactionManager TrxRegionEndpoint coprocessor client Txn Object Txn State HLOG HLOG ABORT WORK – ABORTTRANSACTION Trafodion Distributed Transaction Management SQL Transaction initiating process Transaction Manager Library HBase RegionServer Trx Region Endpoint Trx Region Endpoint Trx Region Endpoint rollback_branche s TransactionManag er. abort Abort 3 4 2 6 SQL Transaction initiating process Transaction Manager Library HBase RegionServer Trx Region Endpoint Trx Region Endpoint Trx Region Endpoint TrxRegionEndpoint.abortTransaction(transid) against each region in participatingRegions list, sent in parallel If writes associated with txn, unforced write of abort to HLOG 8 rollback_branche s HBaseTxn.abort does not write trans record If forgotten records not written, presume abort 5 9 Abort forgets transaction & returns control to TM 10 1 TM does forget processing No writes to log HRegion.abort sets status of txn to abort Removes txn from commit list if previously voted commit Remove txn from pending list 7 TLO G Reduces recovery time Resource Manager Library TrxRegionEndpoint coprocessor client Transaction alTable Transaction alScanner Transactional operations get/put/delete TrxRegionEndpoi nt coprocessor client Resource Manager Library TrxRegionEndpoint coprocessor client Transaction alTable Transaction alScanner Transactional operations get/put/delete TrxRegionEndpoi nt coprocessor client Transaction Manager DTM Core Branch I/F Transaction Management JNI TransactionManager TrxRegionEndpoint coprocessor client
  • 12. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.13 Transaction Manager DTM Core Branch I/F Transaction Management JNI TransactionManager TrxRegionEndpoint coprocessor client Transaction Manager DTM Core Branch I/F Transaction Management JNI TransactionManager TrxRegionEndpoint coprocessor client Update txn state obj from last state of transid, & participating regions in TLOG Transaction Recovery Trafodion Distributed Transaction Management SQL Transaction initiating process Transaction Manager Library HBase RegionServer SQL Transaction initiating process Transaction Manager Library HBase RegionServer ... 1 When failed server(s) are reintegrated, Region Server reads HLOG. If its empty, indicating clean shutdown, it resumes txn processing. Otherwise it initiates recovery for regions. HLOG HLOG 3 Each Region with in-doubt transactions posts need for recovery to bulletin of TM that originated the transaction if not yet posted 1 6 Collates list of in-doubt transactions from all regions and creates empty transaction state object for each txn 7 Recovery thread re-drives phase 2 Commit / Abort will be done as normal for in- doubt txns 8 9 Zookeeper Bulletin Board for TM 4 TM builds in-doubt region list and initiates recovery for those regions 5 TM disables transactions during recovery TLO G Table names mapped to regions Accommodates region splits & moves Txn StateTxn StateTxn State Resource Manager Library TrxRegionEndpoint coprocessor client Transaction alTable Transaction alScanner Transactional operations get/put/delete TrxRegionEndpoi nt coprocessor client In-doubt transaction 1. No prepare record  abort transaction 2. Commit record  re-drive commit in redo processing 3. Abort record  do nothing 4. Prepare record  needs to know commit or abort? Resource Manager Library TrxRegionEndpoint coprocessor client Transaction alTable Transaction alScanner Transactional operations get/put/delete TrxRegionEndpoi nt coprocessor client Trx Region Observer Trx Region Observer Trx Region Observer Trx Region Observer Trx Region Observer Trx Region Observer Trx Region Observer coprocessor for all Regions builds in-doubt txn list In-doubt regions deregister from bulletin board Trx Region Endpoint Trx Region Endpoint Trx Region Endpoint Trx Region Endpoint Trx Region Endpoint Trx Region Endpoint 2 Gather in-doubt transactions from in-doubt regions 10
  • 13. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.14 Transaction Manager DTM Core Branch I/F Transaction Management JNI TransactionManager TrxRegionEndpoint coprocessor clientTLO G Trafodion Distributed Transaction Management Used to re-drive transaction recovery • After server or cluster failure to ensure data consistency given in-flight operations at time of failure • Control points written to Control Point table at a configurable 1interval, currently set at 2 minutes • Re-drives of transaction commits (redo) driven by recovery needs of regions Used for aging • TLOG entries prior to 2 control points can be aged out and only two entries maintained in control point table • Commit records rewritten to log, along with writing txn state of all running transactions, until all commits received and forgotten record written Transaction Recovery – Control Point processing SQL Transaction initiating process Transaction Manager Library CP Forced write of key & 2ASN for txn state record written to CP Unforced grouped writes of txn record for each running txn 2monotonically increasing value indicating the audit write sequence number1control point interval is represented by two consecutive control point records where the first record defines the ASN from the start of the interval and the second defines the ASN at the end of the interval Txn StateTxn StateTxn State Txn ObjectTxn ObjectTxn Object
  • 14. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.15 Performance objective: overhead within 20% Trafodion Distributed Transaction Management Order Entry: multi-statement transactional workload • 5 transaction types (New Orders, Payments, Order Status, Deliver, and Stock Level checks • On average has about 20 statements per transaction 0 128 256 384 512 640 768 896 1,024 Throughput(TPM) Concurrency (Streams) OrderEntry Traf 1.1 Autcommit Meets current objective! With max variance at 11.3%
  • 15. © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.16 Trafodion Distributed Transaction Management Optimizations Single operation / region transactionss Transaction flow Isolation support * Stateless Stateful Concurrency Control – Repeatable read – Snapshot isolation – First writer instead of first committer wins Serialized snapshot isolation *DDL transaction protection Row Locking paradigm for certain tables Tables involved in long running transactions Pessimistic locking for highly concurrent operations High Availability Flexible cluster growth – add nodes on the fly Handle region splits/rebalancing during transactions Better integration with HBase clusters Handle complex failure scenarios Manageability Transaction management & metrics via REST APIs Futures *Technology preview in Trafodion R1.1
  • 16. © Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Thank you