这是一篇综述性质的文章,讲的是云计算环境的数据存储,这里先罗列下文章目录结构。
- Introduction
- Overview
- A Comparison of Data-Intensive Networks
- Terms and Definitions
- Data-intensive Application
- Architecture, Goals and Chanllenges of Intra-Cloud Storage
- Architecture, Goals and Chanllenges of Inter-Cloud Storage
- Data Model
- Data Structure
- Data Abstraction
- Data Access Model
- Data Dispersion
- Data Replication
- Erasure Coding
- Hybrid Scheme
- Data Consistency
- Consistency Level
- Consistency Metric
- Consistency Model
- Eventual Consistency
- Causal and Causal+ Consistency
- Ordering and Adaptive-Level Consistency
- Transactions
- Transactional Data Stores
- Coordination Mechanisms in Transactional Data Store
- Data Management Cost
- Cost Optimization Based on a Single QoS Metric
- Cost Optimization Based on Multi-QoS Metric
- Cost Trade-Offs
- Summary and Future Directions
Introduction
数据量越来越大,几乎每两年翻一倍。云计算提供了一种新的处理数据的选择:无限的池化资源;高可靠/可扩展/灵活的组件;按用付费的模式。Storage as a Service(StaaS)是其中重要的一环。
数据存储有多个维度可以考察。
!http://loopjump.com/wp-content/uploads/2022/09/1-300x94.png
Overview
!http://loopjump.com/wp-content/uploads/2022/09/2-1024x999.png
Data Model
!http://loopjump.com/wp-content/uploads/2022/09/3-300x147.png
Model - SMR与DUR:SMR大家都比较熟悉,DUR的思路是指多副本的数据库实例,每个副本都可以执行事务,但事务结束的时候要做certification,判断事务与本地和其他副本上的其他事务是否有冲突。SMR可以实现linearizability,DUR可以实现serializability。DUR有点像MySQL MGR的方案。
Placement - Hash:数据按hash值分布到所属节点(比如Dynamo);Closest:将数据放在对该数据的请求路由次数最多的节点;MultiGet:关联数据放一块;Associated Data Placement:Closest和MultiGet的结合。
Erasure Code:(k,m)-erasure coding将数据拆为等大的k块,并生成额外的m块校验性质的块,总计n=k+m块,任意m块损坏都可以从其他k块回复原始数据。EC的价值在于达到同样的容错能力需要的存储成本更低,比如(3,2)-EC可以容忍2个块失效,整体存储成本与同等可靠性的3副本比只有66%。
Transaction
!http://loopjump.com/wp-content/uploads/2022/09/5-300x203.png
Architecture
- TopDown:如Spanner,replication层在事务层下面;
- Reversed TopDown:如Replicated Commit(VLDB12’),2PC事务过程感知多副本,每个AZ内的各个数据shard的副本独立进行2PC Prepare/Commit,详见原文图示。Replicated Commit名字起的挺好,Spanner是replicate commitment,这里是副本分别尝试commit。
Commitment Protocol:这里有点不清晰的是实际上AB=Consensus,所以分类看起来有点乱。不过也可能我没注意到具体的细节差异。
隔离级别:这里就更乱了,论文还列举了个PSI,看文章的描述,类似于Practical Fast Replication(NSDI19’)中的command order的意思。
Data Management Cost
主要是成本, QoS。
Future
!http://loopjump.com/wp-content/uploads/2022/09/6-1022x1024.png
扫描二维码,分享此文章