sql server2014支持内存数据库功能。
内存可以说是数据库性能的生命线。理论上,如果内存足够,SQL SERVER可以将所有的数据都装载到内存里,访问、修改什么的,都在内存中进行,只有在checkpoint的时候才写回硬盘。只有内存不够,数据库才会被迫经常Lazy Write,换页。
那么,内存数据库跟以前的将数据装载到内存,有什么区别呢?
我的理解是这样:
1)、内存数据库是将指定的表存放于内存,而不是整个库。这是强制行为,并非数据库出于性能考虑,内存充裕时就加载,内存不够时就置换
2)、内存数据库用文件流的方式组织磁盘中的数据文件,而不是区、页
在内存数据库中,磁盘上存储的数据文件不在是区、页的存储方式,而是基于文件流存储。文件流存储的一个特点之一就是支持快速的读操作,这在数据库重启时将文件流中的数据load到内存中时很能提高效率。
3)、内存数据库的更改、删除是采用新增记录的方式
update,并非修改内存中的对应记录,而是新增一条不同的记录,查询时,系统会合并这些记录返回;
删除的话,也是新增记录,并记录在另一个文件:delta file。
内存数据库的数据文件分data file和delta file,而且是成对出现。
内存数据库可能是SQL SERVER2014最令人期待的功能。据说,数据库有三大发展趋势:
1)内存数据库
2)云计算
3)一体机
参考文章: