大规模存储的未来——内存云?
2019-02-26 来源:多智时代
中国IDC圈8月2日报道:计算机系统中最快的存储方式是传统上主要用作内存的RAM.由于硬盘的访问性能多年来有恶化的趋势,而RAM的成本不断降低,近年来,有很多研究者都在探索如何用内存取代硬盘。
Steven Robbins的文章指出,图灵奖得主Jim Gray很早就提出了“内存将成为硬盘,硬盘将成为磁带”的说法(出自2006年Tim Bray一篇讨论网格计算的博客,2003年的访谈中他已经表达了同样的意思)。2008年Dare Obsanjo在分析Twitter的架构时也看到,类似的新型应用的最大负担是硬盘I/O,因此会倾向于将随机操作都放到RAM里,只将顺序操作留给硬盘。
Tcl/Tk的创始人、美国工程院院士、ACM Fellow John Ousterhout 2008年离开工业界到斯坦福大学任教,主要的研究项目是RAMCloud——内存云,更是将这一趋势推到了极致。顾名思义,RAMCloud就是这样一种新型数据中心存储系统,它是由成千上万台普通服务器的主存所组成的大规模系统,任何时候、所有信息都存储在这些快速的DRAM(动态随机访问存储器,即俗称的内存)中,内存取代了传统系统中的硬盘,而硬盘只作为备份使用。
2009年底Ousterhout团队曾经在SIGOPS Operating Systems Review发表了论文“The Case for RAMCloud”,引起了广泛。最新出版的Communications of ACM 2011年8月刊发表了Ousterhout与他的团队合作撰写的同名论文,更加全面和完整地阐述了内存云的理论与实践。
文章指出,在过去四十年,计算机系统的主要存储方式是硬盘,文件系统和关系型数据库都是基于硬盘发展起来的。但是,虽然硬盘的容量提高很快(自1980年代中期以来提高超过1000倍),但性能相比之下却一直难如人意,传输速率仅提高50倍,延迟更是只提高了2倍。如果按容量/带宽来衡量,硬盘的访问延迟实际上急剧恶化了。
与此同时,互联网迅猛发展之后,Web应用架构往往采用计算与存储分离的方式,在数据中心中有专门负责应用的业务逻辑、前端呈现的应用服务器,另外还有专门的存储服务器。其中应用服务器是无状态的,只存储当前浏览器请求的状态。这种分离和无状态的方式使系统能够很好地扩展到成百上千台服务器,满足动辄数百万用户的访问需求。但是,这种架构也使数据访问的延迟问题加剧了——典型的网站为了生成一个HTML页面,需要发出一两百次内部请求,访问多次硬盘。
于是,硬盘访问速度成为目前计算机系统发展的主要瓶颈。
为了解决数据访问延迟问题,研发人员和研究者们提出了各种解决方案:用memcached等缓存(Cache),数据库的分区,更多地用闪存替代硬盘,SSD,采用MapReduce和Hadoop等异步作业调度,NoSQL,分布式文件系统等等。
Ousterhout团队则提出一种新的解决方案——RAMCloud(内存云),将在线数据的主要存储中心从硬盘迁移到DRAM上,而硬盘只作为备份/归档之用。这种内存云可以同时实现大规模(100~1000 TB)和低延迟(同一数据中心应用程序访问少量内存云数据只需5~10ms,比目前系统快100~1000倍)。
什么是RAMCloud?
RAMCloud架构的原理在于将存储所有商业服务器的信息在主存储器上,并使用数百上千的服务器创建大型存储系统。据称,存储在RAMCloud上的数据的延迟要比存储在基于硬盘的系统上低100-1000倍,而吞吐量则会高100-1000倍。
虽然个体存储容易改变,但RAMCloud可以利用复制和备份技术以保障数据的耐久性和可用性,就像传统基于磁盘的系统那样。
RAMCloud可提供低延迟和大规模,并将从以下三点改变存储行业的现状。首先,RAMCloud会消除开发大规模Web应用所面临的可扩展性问题。其次将启用新的应用类,比当今深入100-1000倍操作数据将成为可能;RAMCloud集群可以支持单个的代谢那个程序或许多较小的应用程序,并可在小型应用转变为大型应用的开发时保证没有额外的复杂性。
在不久的将来,云计算一定会彻底走入我们的生活,有兴趣入行未来前沿产业的朋友,可以收藏云计算,及时获取人工智能、大数据、云计算和物联网的前沿资讯和基础知识,让我们一起携手,引领人工智能的未来!
标签: idc ssd 大数据 服务器 互联网 数据库 应用服务器 云计算
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。