1 .一种MySQL数据库数据存储方法,其特征在于,所述方法包括:
将需要写入所述MySQL数据库的目标数据基于预设顺序写入内存中的跳跃表;
当所述跳跃表的数据量达到预设阈值时,将所述跳跃表转换为只读跳跃表,并在内存
中创建新的跳跃表以接收新的目标数据;
将所述只读跳跃表转换为存储文件存入所述MySQL数据库所在的磁盘。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述MySQL数据库所在的磁盘划分为多级存储空间,其中下一级存储空间的空间容
量是上一级存储空间的空间容量的预设倍数,每级存储空间用于存储多个用于记录数据的
存储文件,所述存储文件存入所述MySQL数据库时从空间容量最小的存储空间开始进行存
储;
若当前存储文件存入所述当前存储空间会使所述当前存储空间的文件总量超过所述
当前存储空间的空间容量,则将所述当前存储空间内的部分存储文件转移至下一级存储空
间;
利用所述当前存储文件覆盖所述当前存储空间内的所述部分存储文件;
将所述部分存储文件与第二存储文件根据文件中数据的来源在所述下一级存储空间
内进行文件合并,所述第二存储文件是所述下一级存储空间中原有的存储文件。
3 .根据权利要求2所述的方法,其特征在于,所述目标数据是基于键值对的形式进行存
储,所述将所述部分存储文件与第二存储文件根据文件中数据的来源进行文件合并,包括:
根据所述部分存储文件与所述第二存储文件中数据的数据键对所述部分存储文件与
所述第二存储文件进行合并。
4 .根据权利要求1所述的方法,其特征在于,所述存储文件具有表征存储时间顺序的标
记。
5 .根据权利要求4所述的方法,其特征在于,当对所述MySQL数据库中的数据进行修改
或删除时,所述方法还包括:
将需要修改的数据写入内存中的跳跃表;
将需要删除的数据添加预设标记写入内存中的跳跃表。
6 .根据权利要求1所述的方法,其特征在于,所述方法还包括:
在从所述MySQL数据库中读取目标数据时,通过布隆过滤器判断所述目标数据是否存
在于所述MySQL数据库中;
若存在,则从跳跃表中查找所述目标数据;
若所述跳跃表中不存在所述目标数据,则从只读跳跃表中查找所述目标数据;
若所述只读跳跃表中不存在所述目标数据,则从距离当前时间最近的存储文件开始,
遍历查找所述目标数据。
7 .根据权利要求6所述的方法,其特征在于,所述方法还包括:
监控各个存储文件的读操作频率,并将读操作频率超过预设阈值的存储文件加载到内
存中。
8.一种MySQL数据库数据存储装置,其特征在于,所述装置包括:
预写模块,用于将需要写入所述MySQL数据库的目标数据基于预设顺序写入内存中的
跳跃表;
权 利 要 求 书
1/2 页
2
评论