加快处理 微软为SQL Server增内存技术

为了加快联机事务处理(OLTP),微软正在向其SQL Server关系数据库管理系统添加内存功能。

下一代SQL Server将能够在服务器的工作内存内托管数据库表甚至整个数据库。微软总经理Doug Leland表示:“任何受硬盘I/O限制的应用程序都能够从中受益—通过将其数据转移到内存中。”目前,微软正在与一些客户测试这个内存技术(被称为Hekaton)。

通过将数据库表存储在内存中,服务器可以更快速地使用数据表进行通信,因为数据库服务器不需要立即从磁盘读取或者写入数据。微软预计,其内存技术将别标准SQL Server快50倍。

Hekaton技术主要针对OLTP工作负载,例如网上银行系统、企业资源规划(ERP)系统以及企业大量使用磁盘的事务处理系统。 Hekaton只能在一台服务器上运行,不过它对于使用多少内存没有硬性限制,一台服务器上能够安装多少RAM,该技术就能够扩展到多少内存。

Hekaton能够维护关系数据库需要的所有ACID属性(原子性、一致性、隔离性和持久性),它将序列号事务日志写入到内存,然后定期将这些日志写入到磁盘。该软件使用多种压缩算法以将更多数据放入内存。

为了帮助数据库管理员部署这种内存技术,下一版本的SQL Server将提供一个工具,来帮助管理员指定可以在内存中运行的数据库或者单个数据库表,并且,使用这些数据的应用程序不需要做出任何改变。此外,Hekaton将能够编译存储程序,使它们可以在内存中运行。Leland表示:“你可以编译你的存储程序,然后将它们作为本机代码来运行。”

对于想要更快处理数据的企业而言,内存技术非常具有吸引力。Oracle公司的Exadata和SAP公司的HANA都属于这类产品。将内存技术添加到SQL Server本身将会简化客户的IT架构,因为它消除了购买和维护单独的内存技术的必要。

Leland指出,这并不是微软第一次涉足内存技术。PowerPivot和Power View都是用内存技术来允许用户快速操作Excel内的大量数据。

本周在西雅图举行的SQL Server专业协会(PASS)上,微软宣布了这项新技术,同时,微软还推出了其他一些新产品。

该公司还宣布将很快推出下一版本的数据仓库设备:SQL Server 2012并行数据仓库(PDW),这个新版本的数据仓库设备使用新的数据处理引擎(被称为PolyBase),它将能够运行由Apache Hadoop管理的关系型数据和非关系型数据的查询。Hadoop查询将通过Apache Hive数据库仓库软件来通信。

该公司还推出了SQL Server 2012 SP1,该版本允许Excel 2013用户直接使用SQL Server数据。

微软并没有透露发布下一版本SQL Server的具体时间。