[发明专利]用户数据存储方法、读取方法及系统有效
申请号: | 201210564064.5 | 申请日: | 2012-12-21 |
公开(公告)号: | CN103885887B | 公开(公告)日: | 2018-07-27 |
发明(设计)人: | 王瑶;田明;刘里 | 申请(专利权)人: | 腾讯科技(北京)有限公司 |
主分类号: | G06F12/02 | 分类号: | G06F12/02;G06F3/06 |
代理公司: | 北京派特恩知识产权代理有限公司 11270 | 代理人: | 李睿;姚开丽 |
地址: | 100080 北京市海淀区海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用户 数据 存储 方法 读取 系统 | ||
本发明涉及互联网海量数据存储技术领域,公开了一种用户数据存储方法,包括步骤:将用户的用户数据存储在预先创建的基础文件的文件体中,使同一用户的用户数据连续存储,所述基础文件存储预定用户数的用户数据;在所述基础文件的文件头中记录用户数据在基础文件中的存储位置的位置索引。还公开了一种用户数据存储系统、用户数据读取方法及系统。本发明通过采用基础文件来存储预定用户数的用户数据,且用户数据连续的存储在基础文件中,从而提高了数据的查询或读取的效率;且不需要像现有技术一样维护全量用户的第一个数据节点信息,避免了额外的内存资源开销,降低了运维成本。
技术领域
本发明涉及互联网海量数据存储技术领域,特别涉及一种用户数据存储方法、读取方法及系统。
背景技术
用户原创内容(User Generated Content,UGC)是一种用户使用互联网的新方式,即由原来的以下载为主变成下载和上传并重。社区网络、视频分享和博客等都是UGC的主要应用形式。随着全球互联网业务的不断发展,UGC业务正在日渐崛起,引起了业界的广泛关注。
由于数据是用户产生的,海量的用户催生出海量的数据,同时又会带来海量的读写量。如何有效地存储这些用户数据,如何提供高并发的读写服务是技术领域必然面临的问题。
现有技术中将用户数据以数据文件的形式存储,所有文件都是串起来的,组成一个链,文件个数越多,链就越长。一个文件由若干个“节点”组成,每个节点代表一个数据单元,每个数据单元只能存储一个用户的数据。每个用户的数据由若干个不连续的节点组成,一个用户的所有节点在逻辑上是头尾相连的,组成一个链。也就是说,一个文件里有多个节点,且可能存放多个用户的数据。一个用户的数据是由多个不连续的节点组成,也就是说一个用户的数据可能分布在多个文件中。其文件存储结构示意图如图1所示,内存索引中标记所有用户在文件中第一个节点的位置。一次读请求的处理逻辑是:先读取内存索引,获取用户在文件中的第一个节点的位置。找到该节点获取该节点的数据,如果满足读取条件则返回,否则通过第一个节点,继续找第二个节点的数据(每个节点都有指向下一个节点位置的信息),依此类推,直到用户所有节点都读取完毕或者满足读取条件为止。
上述用户数据的存储方法具有如下缺陷:
1、若每个文件大小为2GB,随着时间的推移,数据量越来越多,文件个数也越来越多,用户的数据也越来越长,用户数据分布的文件数会越来越多,读取一个用户的数据可能要打开操作多个数据文件,处理的复杂度是O(n),这样会导致互联网产品运营成本高、数据查询效率低、服务质量差;
2、内存索引保存用户的第一个节点的数据,如果内存索引里的数据丢失,将丢失用户的第一个节点的信息,也就找不到后继节点的位置,那用户的数据也将丢失;
3、内存索引需要保存全量用户的第一条节点信息,而用户数又非常多,这需要消耗非常大的内存。
尤其是对于微博数据,海量用户频繁地读取、更新微博数据,上述缺陷更加明显,在时间和空间上随着用户量的增加而剧增。
如果能有一种简单、高效、低成本的方法,将极大地缩减运维复杂度以及成本,也能为以后类似的服务模型提供一种新的思路。
发明内容
本发明的目的在于提供一种用户数据存储方法及系统,旨在解决海量用户数据在存储时资源消耗大、运维成本高及查询时效率低的问题。
为解决上述技术问题,本发明提供了一种用户数据存储方法,包括步骤:
将用户的用户数据存储在预先创建的基础文件的文件体中,使同一用户的用户数据连续存储,所述基础文件存储预定用户数的用户数据;
在所述基础文件的文件头中记录用户数据在基础文件中的存储位置的位置索引。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(北京)有限公司,未经腾讯科技(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210564064.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种成兔饲料
- 下一篇:一种骨干网容量受限时的多基站协作传输方法
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置