一种网络游戏数据库分表的方法技术

技术编号:5548960 阅读:543 留言:0更新日期:2012-04-11 18:40
一种网络游戏数据库分表的方法,该方法包括:将网络游戏数据库设置为由取值范围限定的虚拟圆,在所述虚拟圆上包括至少一个表,其中每个表中的虚拟节点在所述虚拟圆上均匀分布;计算待分表数据的随机数,在所述取值范围内根据所述随机数将所述待分表数据插入虚拟节点中。应用本发明专利技术实施例以后,在表数量变化的情况下,减少需要重建的数据量。

【技术实现步骤摘要】

本专利技术涉及网络
,更具体地,涉及。
技术介绍
网络游戏上线之后,网络游戏系统产生的数据越来越多。为了保证网络游戏系统 高效地读写数据库中的数据,需要对数据库中所存储的数据分表。使用哈希算法将大量数 据均勻分布到多个表中,从而有效地控制单表数据量,提高读写效率。例如假设表总数为N,那么输入值为K的数据应该保存在序号为Hash (K)mod N的 表里。K对N取模,得到K所属表,将K保存在所属表中。按照上述的哈希算法,能够有效地 将网络游戏系统产生的数据均勻分布在多个表里。另外,可以根据负载情况动态地增减表数量,再将增减表中的数据均勻分布到各 个表中,这样数据库系统就拥有平滑扩容能力。将数据库负载与程序逻辑分离,为开发人员 提供高效的可扩展的数据库架构。例如表总数N发生改变,那么通过Hash (K) mod N重新计算发生变化的表中的数 据所属表。即以前存储在X号表的数据,重新计算后保存到了 Y号表。下面举例说明重新计算数据所属表。假设有3个数据样本X,Y,Z,Hash (X) = 1,Hash(Y) =2,Hash(Z) =3。有0,1,2三个表,则可用表数量为3,根据取本文档来自技高网...

【技术保护点】
一种网络游戏数据库分表的方法,其特征在于,该方法包括:将网络游戏数据库设置为由取值范围限定的虚拟圆,在所述虚拟圆上包括至少一个表,其中每个表中的虚拟节点在所述虚拟圆上均匀分布;计算待分表数据的随机数,在所述取值范围内根据所述随机数将所述待分表数据插入虚拟节点中。

【技术特征摘要】

【专利技术属性】
技术研发人员:杨纮宇
申请(专利权)人:北京像素软件科技股份有限公司
类型:发明
国别省市:11[]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1