参考:Co-Design software and hardware for SSD storage in Alibaba Data Center – From Alibaba
目前数据中心遇到的主要挑战:
- 多用户,快速变换的workload
- QoS (响应时间)
- 不断降低TCO(总体拥有成本)的诉求
- IO Determinism
- 软硬件的协同优化
在FMS2019上,Ali分享了他们的一些优化方案
SMART Data Placement
策略:通过侦测写入的Pattern,将数据分为热数据和冷数据,然后将数据分门别类放好(阿里提供数据放置的接口)
收益:降低WA,减少GC,提高QoS
不同类型的服务,存储,数据库和计算产生的数据,被归类到不同的写入流中,写到不同的地方。
Multi-Stream
在顺序写,随机写1,随机写2和读取4个线程同时工作的情况下,多流(Multi-stream)方案与传统方案相比:
- 总体带宽更高;
- 平均WA更小;
- 平均时延更低;
网络带宽与SSD带宽不均衡导致的问题
网络带宽的迭代非常迅速,现在已经有了100G的网卡和网络交换机,为了填饱这么高的带宽,后端用于存储的SSD紧赶慢赶,容量不断飙升。以100G网络为例,通常会为其配备24块4T的SSD,总共96TB的空间。
那么问题来了,公有云卖钱的时候,是看IOPS/GB:站在用户的角度,不会管云服务提供商一共配置了多少SSD的容量,而是只关注自己购买的那一部分容量能够提供的性能。SSD容量越来越大,反而导致IOPS/GB 的降低。与以往相比,云服务商的成本其实是提高了。
混合存储
混合存储,古已有之,Ali的做法是:
将存储分为Fast Pool和Slow Pool两块,快的部分用SCM,Intel Optane,慢的部分用QLC和HDD,TLC两边都用;
前端写入到Fast Pool的3份数据,经过后台优化–增加纠删码码并压缩,真正写入后台的数据量只有0.5。这样操作,整体DWPD以及IOPS要求降低为原来的1/6, 同时避免了增加纠删码导致的时延增加。
注:水平有限,不理解为什么前端写入的数据是3份?知道的朋友请留言指点。
未来计划:
- 为存储引擎定制化FTL
- QLC在open Channel的部署
- Open Channel中的计算能力的提高