非易失性内存技术及数据库
内容
“
年开始这个项目的研究,当时不确定非易失性内存技术是否可商用。
年
商用了
产品,
对下一代数据库系统的影响吸引了广大研究者”
和
。
采访了《非易失性内存数据库管理系统》的作者:
和
。谈论了
非易失性内存
技术及
对下一代数据库系统的影响。
Q1
:非易失性内存技术是什么?
:他是一种广泛的技术,包括相变内存和忆阻器。具有低延迟读、堪比
的写速度,并具有持久特性和堪比
的大存储容量。市场上
基于
!
技术
"#
出产了傲腾
$
模块的产品。
Q2
:基于易失性内存和持久内存的数据库管理系统有哪些潜在的变化?
:现有的数据库管理系统分为两大类:
)面向磁盘;
)面向内存。面向磁盘
的数据库管理系统和
%
年代的第一代关系数据库基于的假设相同,比如
&
的
系统。
基于两层存储,用易失性的内存比如
作为缓存,使用慢速、非易失的块设备作为持
久存储器,比如
。这些系统基于一个悲观的假设:事务可以访问不在内存中的数据,
为了访问磁盘上数据需要很长延迟。采用传统技术,比如沉重的并发控制机制来客服这些
限制。
最近出现的商品化产品大大扩展了单机
内存。但是面向磁盘的数据库系统并不是
针对数据全部驻留在内存场景而设计。针对
,面向磁盘数据库许多部件都显得冗余。
相反,面向内存的数据库架构假设所有数据都在内存,因此不需要慢速、面向磁盘的部
件。因此面向内存的数据库优于面向磁盘的数据库。但是由于
易失,系统崩溃后,
为了恢复仍需要沉重的部件。随着
的出现,面向磁盘和面向内存的数据库架构都将发
生颠覆性影响。
Q3
:现存的数据库管理系统为什么不能充分利用
NVM
技术优点?
:
特性有:
)可字节寻址:
和其他非易失性存储(仅支持以块为单位进行数据传输)不同,支
持字节可寻址。
)高速写负载:相比
,
写速度能高一个数量级。更重要的是随机写和顺序写差距
很小。
)读写不对称。某些
技术,写会比读花费的时间长。另外,过度写单个内存单元会
损坏它。
优点显而易见,在数据库系统中充分利用他们非常重要。我们对面向磁盘和面向内
存数据库在
上进行了评估,他们性能差不多。当前数据库管理系统假设内存是易失的,
因此他们的架构需要将数据持久化到持久设备。这说明为充分利用
特性,需要重构数
据库管理系统。
Q4
:利用
NVM
,哪些传统数据库系统部件不是必要的?
:针对
,需要重新设计数据库系统的几个关键部件:
)日志和恢复协议;
评论