加载中...

Percolator 是 Google 于 2010 年发表的增量数据处理系统,最初用于将网页索引的更新从 MapReduce 全量重算改为随抓取随更新,使索引新鲜度大幅提升。它构建在 Bigtable 之上,最著名的遗产是其分布式事务模型。
Percolator 在 Bigtable 的单行事务之上实现了跨行跨表的快照隔离事务:借助全局授时服务(TSO)分配单调时间戳,采用两阶段提交——预写阶段给所有写入加锁并选定一个主锁(primary lock),提交阶段先提交主锁行,其余行异步提交;读事务遇到残留锁时按主锁状态决定前滚或回滚(roll forward/back),无需独立协调者也能崩溃恢复。
TiDB 的事务层几乎完整采用 Percolator 模型,微信开源的 phxsql 之外亦有多个系统借鉴其"以存储层原子性搭建事务"的思路。

登录 后参与讨论
暂无讨论,来发表第一条评论吧