Trafodion之DTM介绍

DTM,全称Distributed Transaction Management,即分布式事务管理器,是Trafodion支持事务的重要组件部分。
DTM是一个进程,每个数据库节点一个,可以通过sqcheck查看到DTM进程,个数与节点数一致,如下输出,

[trafodion@p08 ~]$ sqcheck

*** Checking Trafodion Environment ***

Checking if processes are up.
Checking attempt: 1; user specified max: 2. Execution time in seconds: 3.

The Trafodion environment is up!


Process                 Configured      Actual      Down
-------                 ----------      ------      ----
DTM                     4               4           
RMS                     8               8           
DcsMaster               1               1           
DcsServer               4               4           
mxosrvr                 200             200         
RestServer              1               1           
。。。

DTM的主要特性包括:

  1. 采用OCC(Optimistic Concurrency Control)原理
    (1) 读永远不会被阻塞
    (2) 事务之间不会相互影响,一个正在处理的事务对另一个正在处理的事务不可见
    (3) 冲突检测发生在commit阶段,当一个事务在commit的时候发现与另一个已提交的事务有冲突时,事务将会abort
    (4) 对于事务冲突的问题,应用端需要增加retry重试机制
  2. 支持BEGIN WORK,COMMIT WORK,ROLLBACK WORK,SET TRANSACTION语法
    (1) BEGIN WORK用于开启一个事务,若没有BEGIN WORK,SQL执行默认为AUTOCOMMIT模式
  3. 事务默认的隔离级别为读提交(READ COMMITTED)
  4. 支持多个ESP进程在同一个事务中运行
  5. 在发生region server、transaction manager或节点失效时,具有事务自动恢复机制
  6. HBase发生region拆分或rebalance均衡时保证事务的一致性

DTM架构可以用以下两张图片概括,
Trafodion之DTM介绍_第1张图片
Trafodion之DTM介绍_第2张图片

你可能感兴趣的:(Trafodion之DTM介绍)