微软的 David Campbell 在文章《内存数据库即将到到临界点(The coming in-memory database tipping point)》中说到,内存数据库离广泛采用越来越近了。他还说明了微软在这个领域的策略。
据 David 所说,以下各种趋势使得内存数据库会在五年内变得普遍:
- 带宽和容量(硬盘、RAM)会得到提升,延迟会越来越小。
- 多核 CPU 需要有效使用。
- 随机存取磁盘上少量数据的能力,赶不上从磁盘读取的序列带宽(sequential bandwidth)的步伐。
数据库设计人员引领了新的设计方法:
- 压缩以在 RAM 中存放更多数据——当需要的时候解压,这会比从磁盘读取使用更少的 CPU 周期,可能会降低几个数量级。
- 新数据库算法——例如,基于列的方法 v.s. 传统基于行的方法,从而在多核系统中分布负载。
Gartner 在他的研究论文《2012 年十大技术趋势(The Top 10 Technology Trends for 2012)》中认为内存中计算(in-memory computing)是一种新趋势。其他厂商也已经计划迎合这个市场——例如,SAP 创建了 HANA 平台,Oracle 开发了 TimesTen 产品。
微软针对这个趋势做了什么呢? David 解释说:
我们已经创建了基于列的存储引擎,并作为 Microsoft Excel 的“ PowerPivot ”插件的一部分发布。在 SQL Server 2012 中,这会作为 xVelocity 内存分析引擎发布,它是 SQL Server 分析服务的一部分。
我们的技术方法不仅考虑了最佳容量,还考虑了如何作为完整数据平台的一部分来整合和交付——最终这种方式会让客户获得最高的价值。
内存数据库并不是一种新的技术术语,我们已经拥有多种流行的持久和瞬变的数据库,像 Redis 和 Memcached ,它们被用于缓存或者低延迟的数据访问。然而,有趣的是,我们发现,即便是专注于企业用户传统的关系型数据库提供商,现在也开始认真地采用内存中计算了。
评论