高级数据库二十四:内存存不下的内存数据库

Larger-than-Memory Databases

背景

我们知道DRAM价格非常昂贵,且运行耗电量也非常大。

那么当内存数据库存储的信息更大了之后,我们就希望使用更加便宜的存储设备,希望改善DRAM带来的一些不利条件。

新技术

因此就产生了Larger-than-Memory Databases这种技术。即,允许内存中的DBMS存储/访问磁盘上的数据,而无需重新引入面向磁盘的DBMS的所有慢速缺点。

需要了解硬件访问方法

  • 内存中存储 = 面向元组(从比特位上来解决问题)
  • 磁盘存储 = 块定位(基于页的方式)

OLAP vs. OLTP

OLAP查询通常访问整个表。因此,DBMS不能利用任何面向磁盘的缓冲池,来处理事务或者减少工作量。

例如,你在内存中存储了zone map这类聚合函数的一些信息,而其他的数据有一部分在内存中,有一个部分在磁盘中。

当程序发现无法简单地用zone map中的聚合函数做统计信息的时候,还是一样地要扫描磁盘来获得数据。那么和面向磁盘的数据库没有区别。

因此这项技术是无法适用于OLAP的,它仅能够解决OLTP的问题。

对于OLTP的工作负载,总是可以将数据分成冷热两个部分。

  • 之前的课堂上,我们可以假设txns将几乎总是访问
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值