内存数据库(MMDB)与磁盘关系数据库(DRDB)比较 一、传统数据库与实时数据库 传统数据库系统(Traditional Database Sy stem,TDBS)处理对永久数据的管理,实现事务对永久数据的存取,同时维护其完整性、一致性。所以传统的数据库具有 ACID(Atomicity ,Consistency ,Isolation,Du rability )特征,即原子性、一致性、隔离性和永久性。传统数据库管理系统的典型代表是关系型数据库RDBMS(Relational Database Management Sy stem),我们平常用到的商用数据库管理系统如 Oracle, Informix , Sy base, SQL Serv er 等都是 RDBMS。RDBMS 已发展了很多年,其技术成熟度已广为人接受,其可靠性、可用性已被广泛验证,并在传统的商务和管理事务型的应用领域获得了极大成功,然而它们在现代的(非传统)工程和时间关键型应用面前却显得软弱无力,其主要原因是其数据存取服务的实时性很难得到保障,由此导致了实时数据库系统(Real-time DataBase Sy stem)的产生和发展。 实时数据库系统就是其事务和数据都可以具有定时特性或显式的定时限制的数据库系统,系统的正确性不仅依赖于逻辑结果,而且还依赖于逻辑结果产生的时间。近年来,实时数据库系统已发展成现代数据库系统研究的重要方向之一,在数据库研究领域受到极大关注。实时数据库系统通常简称为实时数据库(Real-time Database,RTDB)。 二、磁盘数据库与内存数据库 正如前面所述,我们平常用到的商业关系数据库系统,其主要目标是保证数据存取的 ACID 特征,为各类商务及事务应用提供强大的数据管理与存取服务。但它们的数据服务的实时性很难得到保障,其根本原因在于: 传统数据库是磁盘数据库(Disk Resident Database,DRDB),即数据的主拷贝(Primary DB)在磁盘上,数据库管理系统为了向应用系统提供存取服务,将用户需要访问的数据装入主存中,即对数据的管理是“基于磁盘的缓存技术”。而我们知道,磁盘相对于主存来说是极其低速的存储介质,且磁盘存取速度还和欲存取的数据的物理位置和当前磁头状态有关。另外,管理缓存(cache)或缓冲(bu ffer),无论是在操作系统(OS)层,还是数据库管理系统层,都需要付出较大的代价(时间和空间,尤以时间代价为甚)。因此,即使将磁盘数据全部缓存到主存,其管理代价仍较大,存取速度仍然无法满足多数实时性应用系统的要求。 为了实现实时数据库系统,人们自然想到了基于内存的数据库,即内存...