[发明专利]数据读写方法及系统有效
申请号: | 201110144738.1 | 申请日: | 2011-05-31 |
公开(公告)号: | CN102810092B | 公开(公告)日: | 2017-07-07 |
发明(设计)人: | 袁清 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 广州华进联合专利商标代理有限公司44224 | 代理人: | 何平,曾旻辉 |
地址: | 518044 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据 读写 方法 系统 | ||
【技术领域】
本发明涉及计算机技术领域,特别涉及一种数据读写方法及系统。
【背景技术】
随着互联网技术的发展,用户数量越来越多,每个用户发布的信息也越来越多,数据总量开始急剧膨胀,形成海量的数据,如何对这些海量的数据进行有效管理,以保证用户快速发表数据和读取数据,成为后台技术面临的巨大挑战。
SSD(Solid State Disk,固态硬盘)是互联网中一种最新存储技术,它是由控制单元和存储单元(DRAM或FLASH芯片)两部分组成。存储单元负责存储数据,控制单元负责读取、写入数据。SSD能够在低于1ms的时间内对任意位置存储单元完成I/O(输入/输出)操作,其随机读性能可达到每秒上万次,顺序写性能可达每秒4k~5k,但是其随机写性能比较差,每秒只有几十次,并且会严重影响随机读性能。
传统的数据读写一般采用内存索引加上数据库永久存储的方式实现,该方式代码设计复杂,且需考虑缓存和数据库中的数据的一致性,导致数据读写速度慢,且当缓存大量失效时,并发的流量集中在数据库上,会使数据库瞬间压力暴增,读写性能急剧下降。
【发明内容】
基于此,有必要提供一种提高读写速度的数据读写方法。
一种数据读写方法,包括以下步骤:
获取写操作请求及用户标识号,根据所述用户标识号从第一数据文件中读取与所述用户标识号相对应的数据块,再根据所述写操作请求及所述读取的数据块生成新的数据块,并将新的数据块顺序写入到所述第一数据文件中;
记录所述新的数据块与用户标识号的对应关系以及所述新的数据块的偏移地址信息;
获取读操作请求及用户标识号,根据所述读操作请求、用户标识号与新的数据块的对应关系及新的数据块的偏移地址信息从所述第一数据文件中读取与所述用户标识号相对应的新的数据块。
优选地,还包括步骤:记录写操作,生成写操作备份文件。
优选地,还包括步骤:
计算所述第一数据文件的利用率;
判断所述第一数据文件的利用率是否小于预设阈值,若是,则将所述第一数据文件中的有效的数据块进行数据转移到第二数据文件中,否则返回到计算所述第一数据文件的利用率的步骤。
优选地,还包括步骤:在预定间隔时间内扫描所述第一数据文件,当第一数据文件中的数据块无效时,删除所述第一数据文件。
优选地,还包括步骤:判断所述第一数据文件中的数据块是否为空,若是,则将所述第一数据文件中的所述数据块的索引设置为空指针。
此外,还有必要提供一种提高读写速度的数据读写系统。
一种数据读写系统,包括:
主写进程模块,用于获取写操作请求及用户标识号,根据所述用户标识号从第一数据文件中读取与所述用户标识号相对应的数据块,再根据所述写操作请求及读取的数据块生成新的数据块,并将新的数据块顺序写入到所述第一数据文件中;
存储模块,用于记录所述新的数据块与用户标识号的对应关系以及所述新的数据块的偏移地址信息;
读进程模块,用于获取读操作请求及用户标识号,根据所述读操作请求、用户标识号与新的数据块的对应关系及新的数据块的偏移地址信息从所述第一数据文件中读取与所述用户标识号相对应的新的数据块。
优选地,还包括辅助写进程模块,所述辅助写进程模块用于记录写操作,生成写操作备份文件。
优选地,还包括重整进程模块,所述重整进程模块用于计算所述第一数据文件的利用率,并判断所述第一数据文件的利用率是否小于预设阈值;所述主写进程模块还用于在所述重整进程模块判断出所述第一数据文件的利用率小于预设阈值时,将所述第一数据文件中的有效的数据块进行数据转移到第二数据文件中。
优选地,所述重写进程模块还用于在预定间隔时间内扫描所述第一数据文件,当第一数据文件中的数据块无效时,删除所述第一数据文件。
优选地,还包括指针设置模块,所述指针设置模块用于在所述第一数据文件中的数据块为空时,将所述第一数据文件中的所述数据块索引设置为空指针。
上述数据读写方法及系统,采用写操作时,将第一数据文件中的与用户标识号相对应的数据块读取出来,再根据写操作及读取的数据块生成新的数据块,并将新的数据块顺序写入到第一数据文件中,读操作时,根据用户标识号查找到对应的新的数据块读取出来,实现了多用户数据的快速读写,提高了读写速度。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110144738.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种光热电一体化发电模块
- 下一篇:通过分子键合来键合的方法
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置