内存数据库解析与主流产品对比(一)
作者: 实验室小陈 / 大数据开放实验室 8月26日,星环邀请来自华东师范大学软件工程学院的博士生导师宫学庆教授带来《数据库前沿技术系列讲座》,分享数据库业内前沿发展和研究热点。现将宫学庆教授的培训第一讲内容:内存数据库的技术发展分享给大家。 — 基于磁盘的数据库管理系统 — 传统的数据库管理系统(DBMS)通常是采用基于磁盘的设计,原因在于早期数据库管理系统设计时受到了硬件资源如单CPU、单核、可用内存小等条件的限制,把整个数据库放到内存里是不现实的,只能放在磁盘上。由于磁盘是一个非常慢的存储设备(相对于CPU的速度),因此学术界和工业界发展出的数据库管理系统在架构上都必须适应当时的硬件条件,沿用至今的Oracle和MySQL等数据库管理系统仍然采用的是这种架构设计。 伴随着技术的发展,内存已经越来越便宜,容量也越来越大。单台计算机的内存可以配置到几百GB甚至TB级别。对于一个数据库应用来说,这样的内存配置已经足够将所有的业务数据加载到内存中进行使用。虽然大数据处理的数据量可能是PB级别的,但那些数据一般是非结构化的数据。通常来讲,结构化数据的规模并不会特别大,例如一个银行10年到20年的交易数据加在一起可能只有几十TB。这样规模的结构化数据如果放在基于磁盘的DBMS中,在面对大规模SQL查询和交易处理时,受限于磁盘的I/O性能,很多时候数据库系统会成为整个应用系统的性能瓶颈。