磁盘数据库 vs 内存数据库

内存数据库 

全部数据存储在内存中,具备更极致的读写性能 

在数据库发展早期,由于硬件性能的局限,数据库系统通常采用基于磁盘的设计,数据在内存中进行相应处理并以磁盘块 为单位存储在磁盘上。而内存数据库(IMDB)是一种将全部数据存储在内存中,无需进行磁盘I/O即可对数据进行增删查 改,具备高读写性能的数据库。其设计理念最早可以追溯到IBM于1976年推出的 IMS/VS Fast Path 数据库,它体现了数 据分层的思想,将活跃数据放在物理内存中进行访问和管理。随着互联网的发展,用户对数据量、操作频率和响应速度有 了越来越高的要求,而磁盘数据库面对多并发、高频率的访问时暴露出越来越多的问题;同时内存的容量不断增加,单价 越来越低,计算机操作系统地址空间得到更大的支持,把全部数据放到内存中具备了可实现性。各商业、开源的内存数据 库纷纷问世,内存数据库进入了高速发展的阶段。随着未来非易失内存NVM(实现内存存储的所有数据在电流关掉后也 不会消失)的发展与成熟,内存数据库的应用范围将会得到进一步的跃升。

数据持久化 

通过事务日志和检查点机制,满足“高性能+持久性”双需求 

由于现阶段NVM尚未达到应用水平,而存储在DRAM中的数据在重启后则会丢失,不能满足用户持久存储数据的要求。因此,内存数据库需要考虑数据的持久化问题。当前主要的方法包括日志机制 (Log) 和检查点机制 (Checkpoint)。日志 即将每一次数据的更新操作(增删查改)记录在 Log Records文件中并写入磁盘;检查点即采用一定策略,周期性地将内 存中的数据同步到磁盘里。两种持久化方式都可以单独使用,但在实践中通常采用两者结合的方案。检查点可以配合相关 日志进行数据库的恢复,二者的结合可以减少检查点对正常事务的影响,减轻系统恢复的开销并缩减日志文件的大小,实 现恢复速度的大幅提升。

磁盘数据库 vs 内存数据库 

在安全和性能方面各有优劣,往往搭配处理冷热数据

内存数据库具有“实时性能、IT架构/数据结构简单、灵活扩展”的优点,在对读写性能有极致要求的场景有着广泛地应用, 例如电信计费、嵌入式控制系统、呼叫中心应用程序和电商秒杀平台等。但由于内存本身特性,以其为架构中心的产品在 “数据持久性、容量限制、成本控制”方面较传统的磁盘数据库不具备相对优势。对数据遗失容忍度较低的企业还需要考 虑相应的数据持久化方案。另外非易失内存(NVM)及其适配架构、产品还并不成熟。因此许多企业为满足多重约束, 现阶段主要采取“磁盘数据库+内存数据库”配套使用的解决方案,分别处理冷热数据。

互联互通社区


互联互通社区专注于IT互联网交流与学习,旨在打造最具价值的IT互联网智库中心,关注公众号:互联互通社区,每日获取最新报告并附带专题内容辅助学习。

方案咨询、架构设计、数字化转型、中台建设、前沿技术培训与交流,合作请+微信:hulianhutongshequ

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值