按照读写的性质来分 分为读少写多和 写少读多 RocksDB适用于第一种。
磁盘中的数据结构
就地写和追加写
找到某一个页 然后将数据刷入到这一个页中. 这就导致了一个问题 就是追加写入的数据冗余
由于存在数据冗余 所以必须要对数据进行一定的处理才能保持查找性能
- 数据以块的方式进行存储
- 查找的方法为二分查找 是一种减治的方法
- 拆分 尽量减少大块的写阻塞 在内存中就采用就地写的方式就好了
- 压缩合并 利用归并排序的原理 将数据进行一个合并
故障恢复
由于内存中的数据是不稳定的 因此需要进行日志的记录