对硬盘的设想:纸存、执行存

固态硬盘出现后,发现它的擦写次数受限,越是便宜的固态硬盘,擦写次数越少。于是,有了“纸存”的设想,即硬盘上的单元只能改写一次,就像拿钢笔在纸上写字一样。这时,文件系统、数据库该怎么设计?

现在有600TBW的固态硬盘,即累计写入600TB数据。以后有600TB的“纸存”,他们都能写入600TB数据。

另外,有“执行存”设想,即存储器可以执行指令,例如B+树需要3次IO完成一次索引,在这里它只要一次IO就够了。如果理解为硬盘里边有一个专用的微型CPU也可以,多次查询在硬盘中完成,不经过RAM和CPU。

设有一个8GB的硬盘文件,里边存储着1G个有序的数,若有“执行存”,则可以在硬盘上完成二分查找。从30次IO减为1次,省去不少时间。

在位置p1上的数据d1,经过修改,成为p2处的d2,在p1处留下一个指针,指向p2,即可找到d2。实际上,每个单元需要能够写两次,第二次就是最后一次了。

例:把abcd修改成axcd:
一开始:abcd
修改后:aPcdx
解释:P是一个指针,它指向x。以64比特为单位?每个单位配备一比特标记F,该标记为1说明是指针,为0说明是普通数据,或为空。

再次修改后:aPcdPy
解释:第一个P指向第5个位置,再次修改后,第5个位置也是P,它指向y。这时的数据是aycd。

修改多次后,出现一个P的链表,它以F=0为终止。
若针对一个位置修改多次,则P链表会很长。若没有“执行存”功能,恐怕速度会很慢。所以,纸存和执行存都需要。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值