一种数据读取及写入的方法和装置的制造方法_4

文档序号:8487848阅读:来源:国知局
据记录标识及对应的数据内容写入所述新的数据记录中; 在所述新索引节点下记录所述的目标数据记录标识及所述新的数据记录的虚拟地址。
12. 根据权利要求11所述的方法,其特征在于,还包括: 当从所述空闲索引记录根节点中选取一虚拟地址后,更新所述空闲索引记录根节点指 向下一虚拟地址; 当从所述空闲数据记录根节点中选取一虚拟地址后,更新所述空闲数据记录根节点指 向下一虚拟地址。
13. 根据权利要求10或11或12所述的方法,其特征在于,所述虚拟地址包括高16位 及低16位两部分,所述高16位中记录对应的索引节点的地址相对数据头的偏移,所述低16 位中记录所述索引节点内部的偏移。
14. 根据权利要求13所述的方法,其特征在于,采用如下公式计算所述目标数据记录 虚拟地址对应的物理地址: 物理地址=(所述共享内存基地址+所述数据头大小+当前数据记录的位置*每条数 据记录的大小+offset in record) 〇
15. 根据权利要求11所述的方法,其特征在于,还包括: 封装所述共享内存的数据访问接口。
16. -种数据读取装置,其特征在于,所述装置包括: 请求接收模块,用于接收数据读取请求,所述数据读取请求包括目标数据记录标识; 虚拟地址获取模块,用于在预设的关系数据表中匹配到所述目标数据记录标识时,获 得与所述目标数据记录标识对应的目标数据记录虚拟地址;其中,所述关系数据表包括多 个数据记录标识与对应的数据记录的虚拟地址的关联关系; 物理地址计算模块,用于计算所述目标数据记录虚拟地址对应的物理地址,其中,所述 物理地址中存储数据记录标识与对应的数据内容的键值对; 数据读取模块,用于从所述物理地址中获得与所述目标数据记录标识对应的数据内 容。
17. 根据权利要求16所述的装置,其特征在于,所述关系数据表保存在共享内存中。
18. 根据权利要求17所述的装置,其特征于,所述关系数据表包括数据头、索引记录以 及数据记录; 所述数据头进一步包括索引根节点,空闲数据记录索引根节点,空闲索引记录根节 占. 其中,所述索引根节点用于记录数据记录标识及对应的已使用的索引节点的虚拟地 址; 所述索引记录用于记录所述索引节点的信息,所述索引节点的信息包括数据记录标识 与对应的数据记录的虚拟地址; 所述数据记录用于记录已写入的数据记录标识和对应的数据内容; 所述空闲数据记录索引根节点用于记录未使用的数据记录的虚拟地址; 所述空闲索引记录根节点用于记录未使用的索引节点的虚拟地址。
19. 根据权利要求18所述的装置,其特征在于,所述虚拟地址包括高16位及低16位两 部分,所述高16位中记录对应的索引节点的地址相对数据头的偏移,所述低16位中记录所 述索引节点内部的偏移。
20. 根据权利要求19所述的装置,其特征在于,还包括: 地址获取模块,用于在所述索引根节点中匹配所述目标数据记录标识,获取对应的索 引节点的虚拟地址; 计算模块,用于计算所述索引节点的虚拟地址对应的索引节点物理地址; 关系获得模块,用于在所述索引节点物理地址中获得所述索引节点中记录的数据记录 标识与所述数据记录虚拟地址的关联关系。
21. 根据权利要求19所述的装置,其特征在于,采用如下公式计算所述目标数据记录 虚拟地址对应的物理地址: 物理地址=(所述共享内存基地址+所述数据头大小+当前数据记录的位置*每条数 据记录的大小+offset in record) 〇
22. 根据权利要求17所述的装置,其特征在于,还包括: 封装模块,用于封装所述共享内存的数据访问接口。
23. -种数据写入装置,其特征在于,所述装置包括: 请求接收模块,用于接收数据写入请求,所述数据写入请求包括目标数据记录标识及 对应的数据内容; 判断模块,用于判断在预设的关系数据表中是否匹配到所述目标数据记录标识,其中, 所述关系数据表包括多个数据记录标识与对应的数据记录的虚拟地址的关联关系,所述关 系数据表还包括空闲索引资源; 第一写入模块,用于在判定在预设的关系数据表中匹配到所述目标数据记录标识时, 获得与所述目标数据记录标识对应的目标数据记录虚拟地址,计算所述目标数据记录虚拟 地址对应的物理地址,并将所述目标数据的数据内容写入所述物理地址中的对应位置; 第二写入模块,用于在判定在预设的关系数据表中没有匹配到所述目标数据记录标识 时,获取所述空闲索引资源,并将所述目标数据记录标识及对应的数据内容写入所述空闲 索引资源中。
24. 根据权利要求23所述的装置,其特征在于,所述关系数据表保存在共享内存中。
25. 根据权利要求24所述的装置,其特征于,所述关系数据表包括数据头、索引记录以 及数据记录;所述数据头进一步包括索引根节点,空闲数据记录索引根节点,空闲索引记录 根节点; 其中,所述索引根节点用于记录数据记录标识及对应的已使用的索引节点的虚拟地 址; 所述索引记录用于记录所述已使用索引节点的信息,所述已使用索引节点的信息包括 数据记录标识与对应的数据记录的虚拟地址; 所述数据记录用于记录已写入的数据记录标识和对应的数据内容; 所述空闲数据记录索引根节点用于记录未使用的数据记录的虚拟地址; 所述空闲索引记录根节点用于记录未使用的索引节点的虚拟地址。
26. 根据权利要求25所述的装置,其特征在于,所述空闲索引资源包括所述空闲索引 记录根节点及所述空闲数据记录根节点;所述第二写入模块包括: 第一选取子模块,用于从所述空闲索引记录根节点中选取一虚拟地址,将所述虚拟地 址对应的索引节点作为新索引节点; 第二选取子模块,用于从所述空闲数据记录根节点中选取一虚拟地址,将所述虚拟地 址对应的数据记录作为新的数据记录; 写入子模块,用于将所述目标数据记录标识及对应的数据内容写入所述新的数据记录 中; 更新子模块,用于在所述新索引节点下记录所述的目标数据记录标识及所述新的数据 记录的虚拟地址。
27. 根据权利要求26所述的装置,其特征在于,还包括: 第一更新模块,用于更新所述空闲索引记录根节点指向下一虚拟地址; 第二更新模块,用于更新所述空闲数据记录根节点指向下一虚拟地址。
28. 根据权利要求25或26或27所述的装置,其特征在于,所述虚拟地址包括高16位 及低16位两部分,所述高16位中记录对应的索引节点的地址相对数据头的偏移,所述低16 位中记录所述索引节点内部的偏移。
29. 根据权利要求28所述的装置,其特征在于,采用如下公式计算所述目标数据记录 虚拟地址对应的物理地址: 物理地址=(所述共享内存基地址+所述数据头大小+当前数据记录的位置*每条数 据记录的大小+offset in record) 〇
30.根据权利要求26所述的装置,其特征在于,还包括: 封装模块,用于封装所述共享内存的数据访问接口。
【专利摘要】本发明实施例提供了一种数据读取及写入的方法和装置,其中所述数据读取方法包括:接收数据读取请求,所述数据读取请求包括目标数据记录标识;当在预设的关系数据表中匹配到所述目标数据记录标识时,获得与所述目标数据记录标识对应的目标数据记录虚拟地址;其中,所述关系数据表包括多个数据记录标识与对应的数据记录的虚拟地址的关联关系;计算所述目标数据记录虚拟地址对应的物理地址,其中,所述物理地址中存储数据记录标识与对应的数据内容的键值对;从所述物理地址中获得与所述目标数据记录标识对应的数据内容。本发明可以提高数据处理效率。
【IPC分类】G06F17-30
【公开号】CN104809183
【申请号】CN201510185480
【发明人】龙勇
【申请人】北京奇艺世纪科技有限公司
【公开日】2015年7月29日
【申请日】2015年4月17日
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1