2016-2022 All Rights Reserved.平安财经网.复制必究 联系QQ 备案号:
本站除标明“本站原创”外所有信息均转载自互联网 版权归原作者所有。
邮箱:toplearningteam#gmail.com (请将#换成@)
大多数现代网站将数据存储在数据库中,并且由于数据库查询相对较慢,因此大多数站点还维护所谓的缓存服务器,其列出了用于更快访问的常见查询的结果。用于诸如Google或Facebook等主要Web服务的数据中心可能有多达1,000个专用于缓存的服务器。
高速缓存服务器通常使用随机存取存储器(RAM),这种存储器快速但昂贵并且耗电。本周,在超大型数据库国际会议上,来自麻省理工学院计算机科学与人工智能实验室(CSAIL)的研究人员正在推出一种新的数据中心缓存系统,而不是使用闪存,这是大多数智能手机中使用的内存类型。
每千兆字节的内存,闪存消耗的能量约为RAM的5%,成本约为十分之一。它还具有大约100倍的存储密度,这意味着可以将更多数据塞入更小的空间。除了降低成本和降低功耗之外,闪存缓存系统还可以显着减少数据中心所需的缓存服务器数量。
闪存的缺点是它比RAM慢得多。“这就是难以置信的地方,”Arvind说,他是计算机科学工程的Charles和Jennifer Johnson教授,也是会议论文的高级作者。“人们说,'真的吗?你可以用闪存做到这一点吗?' 闪存中的访问时间比DRAM [动态RAM]长10,000倍。“
但由于它与DRAM相关性较慢,因此闪存访问仍然比人类对新感官刺激的反应快得多。用户不会注意到需要花费0.0002秒处理的请求(通过互联网进行典型的往返旅行时间)与需要0.0004秒的请求之间的区别,因为它涉及闪存查询。
保持同步
更重要的问题是跟上充斥数据中心的要求。CSAIL研究人员的系统,名为BlueCache,通过使用“流水线”的通用计算机科学技术来做到这一点。在基于闪存的缓存服务器返回第一个查询的结果到达它之前,它可以开始执行接下来的10,000个查询。第一个查询可能需要200微秒才能处理,但对后续查询的响应将以0.02微秒的间隔出现。
然而,即使使用流水线技术,CSAIL研究人员也必须部署一些巧妙的工程技巧,以使闪存缓存能够与DRAM缓存竞争。在测试中,他们将BlueCache与可能被称为基于闪存的缓存服务器的默认实现进行了比较,后者只是一个配置用于缓存的数据中心数据库服务器。(虽然与DRAM相比速度较慢,但闪存比磁性硬盘驱动器要快得多,而磁性硬盘驱动器几乎在数据中心中取代了它。)BlueCache的速度是默认实现速度的4.2倍。
在报纸上加入Arvind是第一作者徐硕涛和他的麻省理工学院电气工程与计算机科学研究生Sang-Woo Jun; 刘明,当工作完成时,他是麻省理工学院的研究生,现在在微软研究院工作; Sungjin Lee,韩国大邱庆北科技学院计算机科学与工程系助理教授,曾在Arvind实验室担任博士后项目; 和Jamey Hicks,自由软件架构师和麻省理工学院的联盟成员,负责软件咨询公司Accelerated Tech。
研究人员的第一个技巧是为每个BlueCache闪存缓存添加一点DRAM - 每百万兆字节闪存几兆字节。DRAM存储一个表,该表将数据库查询与相应查询结果的闪存地址配对。这不会使缓存查找更快,但它会检测缓存未命中 - 尚未导入缓存的数据的识别 - 效率更高。
这一点DRAM不会影响系统的节能效果。实际上,由于其所有增加的效率,BlueCache消耗的功率仅为默认实现的4%。
工程效率
通常,缓存系统只有三个操作:从缓存中读取值,将新值写入缓存,以及从缓存中删除值。正如默认实现所做的那样,徐不是依靠软件来执行这些操作,而是为每个操作开发了专用硬件电路,从而提高了速度并降低了功耗。
在BlueCache服务器内部,闪存通过称为“总线”的线路连接到中央处理器,该线路与任何数据连接一样,具有最大容量。BlueCache在将它们发送到内存之前会积累足够的查询以耗尽该容量,从而确保系统始终尽可能高效地使用通信带宽。
通过所有这些优化,BlueCache能够像基于DRAM的系统一样高效地执行写操作。如果它检索的每个查询结果至少为8千字节,那么它在读取操作时也同样有效。(因为闪存会为任何请求返回至少8千字节的数据,因此对于非常小的查询结果,效率会下降。)
与大多数数据中心缓存系统一样,BlueCache是一个所谓的键值存储或KV存储。在这种情况下,键是数据库查询,值是响应。
“由Arvind及其麻省理工学院团队开发的基于闪存的KV商店架构解决了许多限制当今企业系统利用闪存全部潜力的能力的问题,”数据中心性能和生态系统计划主管Vijay Balakrishnan说道。在三星半导体的内存解决方案实验室。“这种类型的系统的可行性超出了缓存范围,因为许多数据密集型应用程序使用基于KV的软件堆栈,麻省理工学院团队已经证明可以将其淘汰。通过将可编程芯片与闪存集成并重写软件堆栈,已经证明,完全可扩展的,性能增强的存储技术,如本文所述,可以大大改善现有架构。“
2016-2022 All Rights Reserved.平安财经网.复制必究 联系QQ 备案号:
本站除标明“本站原创”外所有信息均转载自互联网 版权归原作者所有。
邮箱:toplearningteam#gmail.com (请将#换成@)