gydtep
发表于 2022-11-10 11:57:44
它基于BERT训练大量未标记的视频文本对。目前,针对图像和文本的多模态预训练模型主要可以分为单流模型和双流模型两种架构。VideoBERT,B2T2
gydtep
发表于 2022-11-11 13:32:16
盒马业务有如下几个特点:线上线下一体化、仓储配送一体化、超市餐饮一体化、经营作业一体化、多业态与平台化。
gydtep
发表于 2022-11-12 17:58:57
除了跟Insert Undo Record相同的头尾信息,以及主键Key Fileds之外,Update Undo Record增加了:
Transaction Id记录了产生这个历史版本事务Id,用作后续MVCC中的版本可见性判断
gydtep
发表于 2022-11-14 15:58:34
像庖丁解InnoDB之REDO LOG中介绍的那样。除了通用的一些MLOG_2BYTES、MLOG_4BYTES类型之外,Undo本身也有自己对应的Redo Log类型:MLOG_UNDO_INIT类型在Undo Page舒适化的时候记录初始化
gydtep
发表于 2022-11-15 18:50:14
其中,trx_purge_get_next_rec会从上到下遍历一个Undo Log中的所有Undo Record,这个跟前面讲过的Rollback时候从下到上的遍历方向是相反的,还是以同样的场景为例,
gydtep
发表于 2022-11-16 18:34:33
再加上常规的Record修改,因此这里的Update Undo Record会对应三种Type:TRX_UNDO_UPD_EXIST_REC、TRX_UNDO_DEL_MARK_REC和TRX_UNDO_UPD_DEL_REC。他们的存储内容也类似:
gydtep
发表于 2022-11-17 17:08:42
示例中有三个事务操作了表t上,主键id是1的记录,首先事务I插入了这条记录并且设置filed a的值是A,之后事务J和事务K分别将这条id为1的记录中的filed a的值修改为了B和C。
gydtep
发表于 2022-11-18 15:13:33
获得了可用的Undo Segment之后,该事务会在合适的位置初始化自己的Undo Log Header,之后,其所有修改产生的Undo Record都会顺序的通过trx_undo_report_row_operation顺序的写入当前的Undo Log,
gydtep
发表于 2022-11-19 18:18:09
这个过程在函数row_search_mvcc中,其中trx_undo_prev_version_build会根据当前的rollptr找到对应的Undo Record位置,这里如果是rollptr指向的是insert类型,或者
gydtep
发表于 2022-11-22 07:38:28
事务结束的时候,对于需要Purge的Update类型的Undo Log,会按照事务提交的顺序trx_no,挂载到Rollback Segment Header的History List上。