一种固定内存使用的键值对查询方法

April 6, 2013 · One minute read

三天清明假期,我终于搞定了假期前的问题。思想是这样的,把键值对查询系统看成是一个函数系统,而各个分区以及键本身可以进一步分成相对独立的各个子函数系统,使用一个固定大小的缓存区域,按序载入子函数系统。这个设计的好处在于,内存使用可以相对固定下来,根据数据的增长而有计划的调整,避免了原先设计中无法应对内存增长的情况。同时,我把函数系统分成两个层次,复杂度是一个二分查找加上一个哈希查询,和原来的设计相同。但是由于涉及两次较大的IO操作,所以在初始以及悲观情况下,查询性能会下降一到两个数量级,不过综合下来比原先的悲观情况要好得多。