tso是什么组成的

问下,tso是由物理+逻辑组成的吗?

TiDB 中的 TimeStamp Oracle (TSO) | PingCAP 文档中心

先物理,后逻辑。。。

一直以为是个物理逻辑组成的。。还是要把文档读一遍才行

由两部分组成:高48位是物理部分,表示Unix时间的毫秒数;低18位是逻辑部分,是一个数值计数器,用于在物理时间相同的情况下区分不同的TSO

问下,独立一个select 语句需要tso吗

分布式事务一般需要申请2个tso,这句话对吗?
开始和结束一个,应该对吧

物理和逻辑时间戳

简单的事务是的,如果复杂的可能不止

说是一般,这句话应该算对?

问下,独立一个select 语句需要tso吗

物理和逻辑吧

tidb 用的是 SI ,所有的读写请求在事务开始时都会获取 tso。同时也存在部分优化,对于只读语句,它的 tso 并不是向 PD 获取的,而是直接是用 u64::MAX

大佬,请教一下,只读语句没有tso的话是怎么做mvcc的?

只读就相当于每次都是读的最新数据吧,此时 tso 使用 u64::MAX ,它肯定大于key 上记录的 时间戳,自然就能读到最新的数据

不是没有 tso,只是 tso 取了最大值

此时 tso 使用 u64::MAX 这个从哪里可以看到相关资料吗

想不起来在哪里看到的了

可以等等社区大佬们的回复

物理时间戳和逻辑时间戳