Elastic Scaling of Distributed Transactions
-
Distributed two-phase locking easily blocks when one node is
unavailable.
-
Distributed two-phase locking protocol is a source of significant communication overhead.
-
Deadlocks in homogenous distributed environment are more frequent and considerably more difficult to detect.
-
With distributed transactions, the releasing of locks is subject to the two-phase rule for the scope of the entire global transaction.
-
Consistency of distributed transactions is dependent on strict
serialization with distributed two-phase locking, which excludes the scaling as viable option.
The elastic scaling of Cloud computing platforms:
-
Cannot scale distributed relational DB transactions.
-
Do not support stateful sessions or sessions' affinity impairs the elastic load balancing.
-
Cannot create new instances in responsive manner. It takes minutes to create a new instance and seconds to revive a stopped one.
The elastic scaling of Transactum Engine:
-
Does not use distributed two-phase locking.
-
Uses invariants to make operations on distributed data follow certain access patterns.
-
Supports stateful sessions. The elasticity of load balancing
and elasticity of scaling are not affected by sessions' affinity.
-
Creates a new instance in less than 100ms and revives a recycled instance in less than 10ms.