《PolarDB-SCC: A Cloud-Native Database Ensuring Low Latency for Strongly Consistent Reads》
很多数据库系统通过类似于binlog复制或者redo复制的方式提供RO节点来提升整个系统的读吞吐,RW节点上产生更新,同步到RO节点apply变更。但只读请求发到RO节点上可能会读到陈旧的数据。如果想读到最新的数据(例如read-after-write一致性)呢?
首先读到最新数据或者强一致性读,指的是RO上启动的只读请求,...
PolarDB Serverless论文
《PolarDB Serverless: A Cloud Native Database for Disaggregated Data Centers》
PolarDB架构
PolarDB是存储计算分离的架构。底层是定制的PolarFS层,它是一个分布式的、支持一写多读的文件系统层。上层是MySQL(InnoDB)计算层,支持一个RW节点和若干RO节点,计算层包含事务、BufferPool等,RW节点写事务产生redo并推送到RO节点,RW上的脏页被淘汰时刷入PolarFS,RO节点读取页面时,如果BufferP...
PolarFS论文
《PolarFS : An Ultra-low Latency and Failure Resilient Distributed File System for Shared Storage Cloud Database》 VLDB2018
Introduction
存储计算分离:
存储节点和计算节点可以分别独立灵活配置硬件
存储池化,降低碎片、利用率不均、空间浪费,存储集群的容量和吞吐透明水平扩展
计算节点无状态,数据库弹性更好(迁移更容易),可靠性提升
PolarFS:
利用RDMA和NVMe SSD新硬...
浅析Aurora Quorum
Aurora在SIGMOD18'的论文《Amazon Aurora: On Avoiding Distributed Consensus for I/Os, Commits, and Membership Changes》中描述了Aurora关于共识方案的选择和Quorum方案的详细内容,本文这里做一些简单的分析。
Aurora架构背景
在描述Aurora的Quorum方案前,先介绍下Aurora的系统架构。
Aurora是share-storage、一写多读的架构,构建在MySQL(InnoDB)代码库上,当然后来增加了mult...