一种数据提取方法及系统与流程

文档序号:17081636发布日期:2019-03-09 00:20阅读:511来源:国知局
一种数据提取方法及系统与流程

本发明涉及计算机数据处理技术领域,尤其涉及一种数据提取方法及系统。



背景技术:

随着手机的普及,手机游戏得到越来越多人的青睐。关于手机游戏上的数据,有些数据并不是一种直观的数据,需要服务器对一系列数据进行操作,涉及到好几个数据表才能够得出结果。所以当游戏用户请求查看某些数据时,服务器后台需要进行相应的计算,有些数据可能涉及的操作比较多,计算量大,故响应时间会有延迟;而且,当多个游戏用户同时发生请求信息时,服务器内存的工作压力大,会导致服务器堵塞,响应超时等情况,降低用户的体验。

名词解释:

redis系统:redis是一个key-value存储系统。和memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)和zset(有序集合)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。



技术实现要素:

为了解决上述技术问题,本发明的目的是提供一种能够使响应更加快速的数据提取方法。

本发明的另一目的是提供一种能够使响应更加快速的数据提取系统。

本发明方法所采用的技术方案是:

一种数据提取方法,包括以下步骤:

s1、获取新增用户数、用户在线时长和用户充值信息,作为游戏数据存储在数据表上;

s2、接收到用户对游戏数据的访问请求时,从数据表获取相应的数据发送至用户端。

进一步,所述步骤s1中通过以下步骤获取新增用户数:

a1、检测到用户端通过用户账号访问服务器后,将用户账号记录到redis系统的字典中;

a2、判断用户账号是否为新用户账号,并在判断为新账号时,将新用户账号以及新用户账号注册的日期记录至新用户表中;

a3、根据新用户表获取当天的新增用户数。

进一步,所述步骤s1中通过以下步骤获取用户在线时长:

检测到用户端通过用户账号访问服务器后,记录用户账号开始游戏的第一时间以及离开游戏的第二时间;

根据第一时间和第二时间累计统计用户账号当天的在线时长。

进一步,所述步骤s1中通过以下步骤获取用户充值信息:

记录用户账号当天的充值次数和充值金额,并将充值次数和充值金额作为用户充值信息。

进一步,所述步骤a2,具体包括以下步骤:

将用户账号与预设的账号库内的账号进行比对,若比对成功,该用户账号判定为旧用户账号;反之,该用户账号判定为新用户账号,并将新用户账号以及新用户账号注册的日期记录至新用户表中;

将新用户表中的新用户账号保存至账号库中。

本发明系统所采用的技术方案是:

一种数据提取系统,该系统包括:

获取信息模块,用于获取新增用户数、用户在线时长和用户充值信息,作为游戏数据存储在数据表上;

响应模块,用于接收到用户对游戏数据的访问请求时,从数据表获取相应的数据发送至用户端。

进一步,所述获取信息模块包括新用户数单元,所述新用户数单元包括:

第一子单元,用于检测到用户端通过用户账号访问服务器后,将用户账号记录到redis系统的字典中;

第二子单元,用于判断用户账号是否为新用户账号,并在判断为新账号时,将新用户账号以及新用户账号注册的日期记录至新用户表中;

第三子单元,用于根据新用户表获取当天的新增用户数。

进一步,所述获取信息模块包括在线时长单元,所述在线时长单元包括:

第四子单元,用于检测到用户端通过用户账号访问服务器后,记录用户账号开始游戏的第一时间以及离开游戏的第二时间;

第五子单元,用于根据第一时间和第二时间累计统计用户账号当天的在线时长。

进一步,所述获取信息模块包用户充值单元;

所述用户充值单元用于记录用户账号当天的充值次数和充值金额,并将充值次数和充值金额作为用户充值信息。

进一步,所述第二子单元具体用于:将用户账号与预设的账号库内的账号进行比对,若比对成功,该用户账号判定为旧用户账号;反之,该用户账号判定为新用户账号,并将新用户账号以及新用户账号注册的日期记录至新用户表中;将新用户表中的新用户账号保存至账号库中。

本发明系统所采用的另一技术方案是:

一种数据提取系统,包括:

至少一个处理器;

至少一个存储器,用于存储至少一个程序;

当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现上述的一种数据提取方法。

本发明的有益效果是:本发明预先获取新增用户数、用户在线时长和用户充值信息存储在数据表上,当用户发送请求信息查看响应的信息时,服务器无需进行计算,直接从数据表上获取相应的信息发送至用户端,减少服务器的计算量,避免服务器堵塞,提高了服务器响应的速度与质量,提高了用户的操作体验。

附图说明

图1是本发明一种数据提取方法的步骤流程图;

图2是本发明一种数据提取系统的结构框图。

具体实施方式

实施例一

如图1所示,本实施例提供了一种数据提取方法,包括以下步骤:

b1、获取新增用户数、用户在线时长和用户充值信息,作为游戏数据存储在数据表上。

b2、接收到用户对游戏数据的访问请求时,从数据表获取相应的数据发送至用户端。

上述方法,服务器后台,实时获取更新数据,并将数据保存在数据表上。当用户需要查看数据时,发送请求信息后,服务器直接在数据表上获取相应的信息发送至用户端。避免服务器在接收到请求信息后,在进行计算相应的数据,影响了响应的速度;如果服务器同时接收到多个请求时,计算压力大,容易造成堵塞,从而显示不出相应的网页,降低了用户的操作体验。因此,通过本方法,可以快速地得到数据,提高了服务器的响应效率与质量,提高用户的操作体验。

其中,步骤b1中获取新增用户数的步骤,具体包括c1~c3:

c1、检测到用户端通过用户账号访问服务器后,将用户账号记录到redis系统的字典中。

c2、判断用户账号是否为新用户账号,并在判断为新账号时,将新用户账号以及新用户账号注册的日期记录至新用户表中。

其中,步骤c2具体包括步骤c21~c22:

c21、将用户账号与预设的账号库内的账号进行比对,若比对成功,该用户账号判定为旧用户账号;反之,该用户账号判定为新用户账号,并将新用户账号以及新用户账号注册的日期记录至新用户表中。

c22、将新用户表中的新用户账号保存至账号库中。

c3、根据新用户表获取当天的新增用户数。

在游戏中,用户有时需要查看该游戏当天该用户的新增人数。在服务器后台中,当用户账号登录游戏时,服务器记录用户账号的访问,并对比判断该用户账号是否为新用户账号,如果是新用户账号,则记录该新用户账号,并记录新用户账号注册的日期。根据新用户表可直接获取当天的新增用户数,将新增用户数存储在数据表上,当用户需要查看该信息时,服务器直接从数据表获取新增用户数发送至用户端,而无需在接收到请求后,再进行计算,而且如果多个用户请求,还需要计算多次,造成计算量的浪费,降低了相应的速率。

其中,步骤b1中获取用户在线时长的步骤,具体包括d1~d2:

d1、检测到用户端通过用户账号访问服务器后,记录用户账号开始游戏的第一时间以及离开游戏的第二时间。

d2、根据第一时间和第二时间累计统计用户账号当天的在线时长。

当用户通过用户账号登录游戏服务器时,服务器会登记登录时间,并在用户退出登录时,服务器登记退出时间,通过登录时间和退出时间可以计算出游戏在线时间,如果用户当天登录几次游戏,则用户当天的在线时长为多次在线时长的总和,服务器将该在线时长信息保存在数据表上。当用户需要了解自己当天的游戏时间,发送相应的请求信息,服务器直接从数据表上获取数据相应用户端,而无需进行计算,极大地加快了响应速度,提高了用户的体验。

其中,步骤b1中获取用户充值信息的步骤,具体为:记录用户账号当天的充值次数和充值金额,并将充值次数和充值金额作为用户充值信息。

当用户在玩游戏过程中,进行充值时,服务器会记录用户的充值情况,比如记录充值次数及每次充值的数额。在本实施例中,游戏预先设置好充值的选项,比如可充值10元、50元或100元,服务器会通过条件刷选,统计用户的充值范围,选择用户经常充值的数值作为优选充值推荐,当用户需要充值,推荐给用户。

上述方法中,服务器预先将新增用户数、用户在线时长和用户充值信息等这些信息进行计算并保存在数据表中,当用户需要请求访问时,直接从数据表中调取数据反馈给用户端,无需进行计算,减少服务器的压力,提高服务器的响应效率,间接提高用户体验;且本法方法易于实现,能够广泛适用于计算机数据技术领域。

实施例二

如图2所示,本实施例提供了一种数据提取系统,该系统包括:

获取信息模块,用于获取新增用户数、用户在线时长和用户充值信息,作为游戏数据存储在数据表上;

响应模块,用于接收到用户对游戏数据的访问请求时,从数据表获取相应的数据发送至用户端。

上述系统的工作原理为:服务器预先将新增用户数、用户在线时长和用户充值信息等信息计算并保存在数据表,当用户发送请求信息时,直接从数据表获取数据发送给用户端,无需进行计算后,再发送用户端,提高了响应的速率,间接地提升了用户的体验。

进一步作为优选的实施方式,所述获取信息模块包括新用户数单元,所述新用户数单元包括:

第一子单元,用于检测到用户端通过用户账号访问服务器后,将用户账号记录到redis系统的字典中;

第二子单元,用于判断用户账号是否为新用户账号,并在判断为新账号时,将新用户账号以及新用户账号注册的日期记录至新用户表中;

第三子单元,用于根据新用户表获取当天的新增用户数。

进一步作为优选的实施方式,所述获取信息模块包括在线时长单元,所述在线时长单元包括:

第四子单元,用于检测到用户端通过用户账号访问服务器后,记录用户账号开始游戏的第一时间以及离开游戏的第二时间;

第五子单元,用于根据第一时间和第二时间累计统计用户账号当天的在线时长。

进一步作为优选的实施方式,所述获取信息模块包用户充值单元;

所述用户充值单元用于记录用户账号当天的充值次数和充值金额,并将充值次数和充值金额作为用户充值信息。

进一步作为优选的实施方式,所述第二子单元具体用于:将用户账号与预设的账号库内的账号进行比对,若比对成功,该用户账号判定为旧用户账号;反之,该用户账号判定为新用户账号,并将新用户账号以及新用户账号注册的日期记录至新用户表中;将新用户表中的新用户账号保存至账号库中。

实施例三

本实施例提供了一种数据提取系统,包括:

至少一个处理器;

至少一个存储器,用于存储至少一个程序;

当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现实施例一所述的一种数据提取方法。

本实施例的一种数据提取系统,可执行本发明方法实施例一所提供的一种数据提取方法,可执行方法实施例的任意组合实施步骤,具备该方法相应的功能和有益效果。

以上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1