CN107918877B - 数据获取方法及装置 - Google Patents
数据获取方法及装置 Download PDFInfo
- Publication number
- CN107918877B CN107918877B CN201610882138.8A CN201610882138A CN107918877B CN 107918877 B CN107918877 B CN 107918877B CN 201610882138 A CN201610882138 A CN 201610882138A CN 107918877 B CN107918877 B CN 107918877B
- Authority
- CN
- China
- Prior art keywords
- data
- hit
- hit probability
- time period
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0207—Discounts or incentives, e.g. coupons or rebates
Abstract
本发明公开了一种数据获取方法及装置,属于互联网技术领域。该方法应用于指定事件的发生过程,包括:当接收到数据获取请求时,获取目标命中概率组,目标命中概率组包括数据池中每种数据在当前时间周期内的命中概率,目标命中概率组由当前时间周期之前的历史命中数据确定;根据目标命中概率组和指定随机算法,从数据池中获取命中数据;将命中数据发送至终端。本发明在指定事件的发生过程中,根据当前时间周期之前的历史命中数据,调整数据池中每种数据在当前时间周期内的命中概率,进而改变当前时间周期内所获取的命中数据,使得当前时间周期的命中数据与历史命中数据的实际平均数值尽可能的接近理论平均数值,提高了数据获取方式的合理性。
Description
技术领域
本发明涉及互联网技术领域,特别涉及一种数据获取方法及装置。
背景技术
在互联网应用场景下,为了推广应用程序,提高用户的活跃度,应用程序运营商经常会在特定的时间段内推出一些付费抽奖业务,这些付费抽奖业务形式丰富,常见的有砸金蛋、转盘、刮奖等等。如果将付费抽奖业务奖池中的奖品看作数据池中的数据,为了最大限度地让利用户,同时避免应用服务器亏损,在付费抽奖业务推出之前,应用服务器会预先为数据池中每种数据设置一个命中概率,基于预先设置的命中概率,应用服务器可从数据池中获取数据。
现有的数据获取过程为:终端向应用服务器发送数据获取请求,当接收到终端发送的数据获取请求时,应用服务器根据每种数据确定的命中概率,采用线性同余算法,从数据池中获取数据,并将获取的数据发送至终端。
然而,由于线性同余算法为一类伪随机算法,在有限的时间内采用线性同余算法按照确定的命中概率所获取的数据无法达到绝对的均匀分布,这使得应用服务器所获取的数据的实际平均数值与理论平均数值之间的偏差较大,因此,现有的数据获取方式并不合理。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种数据获取方法及装置。所述技术方案如下:
一方面,提供了一种数据获取方法,所述方法应用于指定事件的发生过程中,所述指定事件设置有多个时间周期,且所述指定事件对应一个数据池,所述数据池内包括多种数据,不同种数据具有不同数值,所述方法包括:
当接收到终端发送的数据获取请求时,获取目标命中概率组,所述目标命中概率组包括所述数据池中每种数据在当前时间周期内的命中概率,所述目标命中概率组由所述当前时间周期之前的历史命中数据确定;
根据所述目标命中概率组和指定随机算法,从所述数据池中获取命中数据;
将所述命中数据发送至所述终端。
另一方面,提供了一种数据获取装置,所述装置应用于指定事件的发生过程,所述指定事件设置有多个时间周期,且所述指定事件对应一个数据池,所述数据池内包括多种数据,不同种数据具有不同数值,所述装置包括:
第一获取模块,用于当获取到终端发送的数据获取请求时,获取目标命中概率组,所述目标命中概率组包括所述数据池中每种数据在当前时间周期内的命中概率,所述目标命中概率组由所述当前时间周期之前的历史命中数据确定;
第二获取模块,用于根据所述目标命中概率组和指定随机算法,从所述数据池中获取命中数据;
第一发送模块,用于将所述命中数据发送至所述终端。
本发明实施例提供的技术方案带来的有益效果是:
在指定事件的发生过程中,根据当前时间周期之前的历史命中数据,调整数据池中每种数据在当前时间周期内的命中概率,进而改变当前时间周期内所获取的命中数据,使得当前时间周期的命中数据与历史命中数据的实际平均数值尽可能的接近理论平均数值,提高了数据获取方式的合理性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例提供的一种数据获取装置的架构图;
图2是本发明另一个实施例提供的一种数据获取过程的示意图;
图3是本发明另一个实施例提供的一种数据获取方法的流程图;
图4是本发明另一个实施例提供的一种数据获取装置的结构示意图;
图5是根据一示例性实施例示出的一种用于数据获取的服务器。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
为了解决现有技术中的问题,提供一种更为合理的数据获取方式,本发明实施例提供了一种数据获取装置,参见图1,该数据获取装置包括数据获取单元101、命中概率动态调整单元102、命中概率配置单元103。
其中,数据获取单元101具有通信能力,能够与终端及命中概率动态调整单元102进行通信;数据获取单元101还具有计算能力,能够根据指定随机算法和命中概率动态调整单元所存储的命中概率,从数据池中获取命中数据。
命中概率动态调整单元102具有通信能力,不仅可与数据获取单元101进行通信,还可与命中概率配置单元103进行通信,基于该通信能力,在与命中概率配置单元103通信的过程中,可将收集到的命中数据及终端的用户身份信息上报至命中概率配置单元103,还可接收命中概率配置单元103发送的命中概率组。
命中概率配置单元103具有数据存储及处理能力,可存储命中数据及用户身份信息,也可对所存储的命中数据进行计算,还可对命中概率组进行重新配置。命中概率配置单元103包括命中数据存储子单元1031、离线计算子单元1032、后台配置子单元1033。其中,命中数据存储子单元1031用于存储命中概率动态调整单元上报的命中数据,该命中数据存储子单元1031可以为Hadoop数据库,该Hadoop数据库为一种分布式数据库,具有高容错性及高吞吐量,适合有着大数据集的应用程序。离线计算子单元1032用于在到达一个时间周期时,对命中数据存储子单元1031中存储的该时间周期之前的历史命中数据进行计算,得到历史命中数据的实际平均数值;离线计算子单元1032还用于计算历史命中数据的实际平均数值与理论平均数值之间的差值,并将该差值发送至后台配置子单元1033。后台配置子单元1033用于存储差值范围与命中概率组之间的对应关系,当接收到历史命中数据的实际平均数值与理论平均数值之间的差值时,根据该差值所在的差值范围,获取该差值对应的命中概率组,进而将该差值对应的命中概率组发送至命中概率动态调整单元102。当然,后台配置子单元1033还支持应用程序管理员对差值范围与命中概率组的定制化设定。
基于图1所示的数据获取装置,图2示出了一种数据获取过程的示意图,参见图2,该数据获取过程如下:
1)、数据获取单元101获取命中数据,将命中数据异步上报至命中概率动态调整单元102中的MQ(Message Queue,消息队列)客户端,该MQ客户端自带存储转发功能,可以为java中的ActiveMQ,能够避免消息在传输过程丢失,同时还支持与消息使用方进行解耦。
2)、命中概率动态调整单元102中的MQ客户端将接收到的命中数据推送至命中概率配置单元103中的命中数据存储子单元1031。
3)、命中数据存储子单元1031,通过提供命中数据存储服务,将接收到的命中数据存储到Hadoop数据库中,该Hadoop数据库可在用户量级较大的场景,避免单机容量瓶颈的问题,同时可借助大数据计算工具,例如spark storm等,还能够复用大数据生态的计算能力。
4)、命中数据配置单元103中的离线计算子单元1032,通过提供命中数据计算服务,可在达到一个时间周期时,计算该时间周期之前的历史命中数据的实际平均数值与理论平均数值之间的差值。
5)、离线计算子单元1032向后台配置子单元1033发送通知消息,该通知消息中至少携带历史命中数据的平均数值与理论平均数值之间的差值。
6)、后台配置子单元1033可根据通知消息中的差值以及预先设置的差值范围与命中概率组之间的对应关系,获取该差值对应的命中概率组,并发送至命中概率动态调整单元102中的ZOOKEEPER客户端,该ZOOKEEPER为一种比较稳定的开源框架,能够到达配置管理、实时推送的目的。
7)、命中概率动态调整单元102中的ZOOKEEPER客户端将该差值对应的命中概率组发送至数据获取单元101,由数据获取单元101获取命中数据。
本发明实施例提供了一种数据获取方法,以应用服务器执行本方法为例,该应用服务器为应用程序的后台服务器,包括图1所示的数据获取装置。参见图3,本发明实施例提供的方法流程包括:
301、在指定事件的发生过程中,终端向应用服务器发送数据获取请求。
其中,终端为当前时刻参与指定事件的终端,终端可以为智能手机、平板电脑、笔记本电脑等,本实施例不对终端的产品类型作具体的限定。为了满足用户的使用需求,终端中安装有多种应用程序,例如即时通信类应用程序、购物类应用程序、支付类应用程序、打车类应用程序。
其中,指定事件为应用服务器在特定时间内面向特定群体所推出的付费业务,如元旦期间面向安装有应用程序A的用户推出的付费抽奖活动等。为了吸引更多用户参与,应用服务器会为指定事件设置一个数据池,该数据池内包括多种数据,且不同种数据具有不同数值。另外,为了减轻应用服务器中离线计算子单元的数据处理压力,在执行本实施例提供的数据获取方法之前,应用服务器还预先为指定事件设置多个时间周期,每当达到一个时间周期时,应用服务器中的离线计算子单元会将对命中数据存储子单元中所存储的历史命中数据进行计算。其中,时间周期可以为1秒、2秒、3秒等等。命中数据为在指定事件的发生过程中,应用服务器从指定事件对应的数据池中所获取到的数据。该命中数据包括命中数据的数值、命中数据的命中概率等等,且该命中数据存储于应用服务器中的命中数据存储子单元。历史命中数据为当前时间周期之前所获取的命中数据,包括从指定事件的起始发生时刻到当前时间周期之间的时间间隔内应用服务器所获取到的全部数据。
在指定事件的发生过程中,当用户想要参与指定事件,用户可通过终端向应用服务器发送数据获取请求,以触发应用服务器返回命中数据,该数据获取请求中至少携带用户的身份信息,如用户在应用程序上注册的账号、用户的IP(Internet Protocol,网络互联协议)地址等等。
在本实施例中,终端向应用服务器发送数据获取请求的过程包括但不限如下两种方式:
第一种方式、终端通过网页浏览器以TCP(Transmission Control Protocol传输控制协议)或者UDP(User Datagram Protocol,用户数据报协议)的方式向服务器发送数据获取请求。
第二种方式、终端通过对应用服务器发送的业务请求进行处理,以TCP或UDP的方式向应用服务器发送数据获取请求。
当然,终端还可采用其他方式向应用服务器发送数据获取请求,本实施例不再一一说明。
302、当接收到终端发送的数据获取请求时,应用服务器获取目标命中概率组。
其中,目标命中概率组包括数据池中每种数据在当前时间周期内的命中概率,该目标命中概率组由当前时间周期之前的历史命中数据确定。由于第一时间周期之前应用服务器还未获取到任何命中数据,因此,为了确保数据获取过程顺利进行,应用程序管理员会预先为指定事件对应的数据池设置一个初始目标命中概率组,该初始目标命中概率组包括数据池中的每种数据在第一个时间周期内的命中概率,用于在第一个时间周期内获取命中数据。
在本实施例中,应用服务器在获取目标命中概率组时,可采用如下两种方式:
第一种方式、应用服务器在当前时间周期内,根据历史命中数据,确定目标命中概率组。
在该种方式下,在当前时间周期内,每当接收到数据获取请求,应用服务器需要根据当前时间周期之前的历史命中数据,确定目标命中概率组。对于在当前时间周期内,应用服务器根据当前时间周期之前的历史命中数据,确定目标命中概率可采用如下步骤(1)~(3):
(1)、在当前时间周期内,应用服务器计算当前时间周期之前的历史命中数据的平均数值。
当达到当前时间周期时,应用服务器的离线计算子单元从命中数据存储子单元中获取当前时间周期之前的历史命中数据,并计算历史命中数据的平均数值。
例如,当前时间周期为第三个时间周期,应用服务器的离线计算子单元从命中数据存储子单元中获取第三个时间周期之前的历史命中数据,该第三个时间周期之前的历史命中数据的数值分别为8元、8.3元、8.4元、8.2元、8.6元、8.3元、8.3元,离线计算子单元计算第三个时间周期之前的历史命中数据的平均数值为(8元+8.3元+8.4元+8.2元+8.6元+8.3元+8.3元)/7=8.3元。
(2)、应用服务器计算历史命中数据的平均数值与理论平均数值之间的差值。
其中,理论平均数值为指定事件发生之前由应用程序管理员设置,该理论平均数值根据数据池中每种数据的数值和初始目标命中概率组确定。例如,用户每次抽奖需要支付10元,用户可从奖池中抽取的奖品的数值分别为4元、10元和50元,预先设置的初始目标命中概率组为:数值为4元的数据的命中概率为0.7、数值为10元的数据的命中概率为0.2、数值为50元的数据的命中概率为0.1,根据数据池中每种数据的数值和初始目标命中概率组,可得到理论平均数值=4*0.7+10*0.2+50*0.1=9.8元。
应用服务器中的离线计算子单元根据历史命中数据的平均数值,计算历史命中数据的平均数值与理论平均数值之间的差值,进而将历史命中数据的平均数值与理论平均数值之间的差值发送至后台配置子单元。
(3)、应用服务器根据该差值,从差值范围与命中概率组之间的对应关系中,获取差值对应的命中概率组,将该差值对应的命中概率组作为目标命中概率组。
当接收到历史命中数据的平均数值与理论平均数值之间的差值,应用服务器中的后台配置子单元根据历史命中数据的平均数值与理论平均数值之间的差值,从差值范围与命中概率组之间的对应关系中,获取该差值对应的命中概率组,并将该差值对应的命中概率组作为目标命中概率组,进而将所获取到的目标命中概率组发送至应用服务器的命中概率动态调整单元,由命中概率动态调整单元存储到概率数据库中。
第二种方式、应用服务器从概率数据库中获取目标命中概率组。
在该种方式下,应用服务器维护一个概率数据库,该概率数据库设置于服务器的命中概率动态调整单元中,预先存储有根据当前时间周期之前的历史命中数据确定的目标命中概率组。如果当前时间周期为第二个时间周期,概率数据库中可存储有第二个时间周期对应的目标命中概率组,该第二个时间周期对应的目标命中概率组可根据对第一个时间周期的历史命中数据确定,用于在第二时间周期内获取命中数据;如果当前的时间周期为第四个时间周期,概率数据库中可存储有第四个时间周期对应的目标命中概率组,该第四个时间周期对应的目标命中概率组可根据第一个时间周期、第二个时间周期及第三个时间周期的历史命中数据确定,用于在第四个时间周期内获取命中数据。
对于应用服务器根据当前时间周期之前的历史命中数据,确定目标命中概率组的过程与上述第一种方式确定目标概率组的方式相同,具体参见上述第一种方式,此处不再赘述。
因此,基于概率数据库中所存储的目标命中概率组,在当前时间周期内,当接收到终端发送的数据获取请求时,应用服务器可直接从概率数据库中获取目标命中概率组,提高了数据获取速率。
在本实施例中,历史命中数据的平均数值与理论平均数值之间的差值不同,所获取的目标命中概率组在数据获取过程中所起到的作用也是不同的。如果历史命中数据与理论平均数值之间的差值为正值,说明当前时间周期之前所获取的历史命中数据的平均数值相对理论平均数值要大,为了减小实际平均数值与理论平均数值之间的偏差,所获取的目标命中概率应相对上一时间周期内所获取的命中数据的数值,减少在当前时间周期内所获取的历史命中数据的数值;如果历史命中数据与理论平均数值之间的差值为负值,说明当前时间周期之前所获取的历史命中数据的实际平均数值相对理论平均数值要小,为了减小实际平均数值与理论平均数值之间的偏差,所获取的目标命中概率应相对上一时间周期内所获取的命中数据的数值,增大在当前时间周期内所获取的历史命中数据的数值。
在本实施例中,差值范围与命中概率组之间的对应关系存储于后台配置子单元中,可由应用程序管理员触发进行更新。具体更新过程为:应用程序管理员通过修改后台代码触发应用服务器生成更新指令,该更新指令中至少包括更新的差值范围与命中概率组之间的对应关系,当获取到更新指令,应用服务器根据更新指令,更新差值范围与命中概率组之间的对应关系,并将更新后的差值范围与命中概率组之间的对应关系存储于后台配置子单元中。
需要说明的是,上述数据获取过程所获取的目标命中概率组仅针对于当前时间周期,随着时间的流逝,当达到下一时间周期时,应用服务器需要重新获取目标命中概率组,具体的获取方式与上述获取方式相同,所不同的是,下一时间周期对应的目标命中概率组由下一时间周期之前的历史命中数据确定,而下一时间周期之前的历史命中数据包括当前时间周期内的命中数据及当前时间周期之前的历史命中数据。
303、应用服务器根据目标命中概率组和指定随机算法,从数据池中获取命中数据。
其中,指定随机算法为能够从数据池中随机获取数据的算法,包括但不限于线性同余算法等。基于所获取的目标命中概率组,服务器中的数据获取单元可采用指定随机算法,从数据池中随机获取命中数据。
304、应用服务器将命中数据发送至终端。
应用服务器中的数据获取单元可通过有线网络或无线网络将命中数据发送至终端。
由于指定事件所对应的数据池中的数据数量有限,为了避免同一用户多次参与指定事件,应用服务器中的数据获取单元将命中数据发送至终端后,应用服务器中的命中概率动态调整单元还将用户的身份信息及命中数据发送至命中概率配置单元,由命中概率配置单元中的命中数据存储子单元存储用户的身份信息与命中数据之间的对应关系。当再次接收到终端发送的数据获取请求时,应用服务器中的数据存储单元可根据数据获取请求中携带的用户的身份信息,查找命中数据存储子单元中是否存储有用户的身份信息对应的命中数据,如果存储有用户的身份信息对应的命中数据,则向终端发送提醒消息,该提醒消息用于提醒用户已获取命中数据;如果不存在用户的身份信息对应的命中数据,则通过上述步骤301至304为终端获取命中数据。
对于上述数据获取过程,下面以指定事件为付费抽奖业务、数据池中的数据为奖池中的奖品为例,进行详细说明。
为了推广应用程序,提高用户的活跃度,应用服务器推出一项付费抽奖业务,用户通过支付一定的费用,即可参与抽奖活动。对于用户A,如果用户A想要参与该抽奖活动,该用户A在支付相应的费用后,可通过终端向应用服务器发送抽奖请求,当接收到抽奖请求时,应用服务器中的数据获取单元获取目标命中概率组,该目标命中概率组包括奖池中每种奖品在当前时间周期内的命中概率,并采用线性同余算法,从奖池中获取奖品,进而将获取的奖品发送至终端。
本发明实施例提供的方法,在指定事件的发生过程中,根据当前时间周期之前的历史命中数据,调整数据池中每种数据在当前时间周期内的命中概率,进而改变当前时间周期内所获取的命中数据,使得当前时间周期的命中数据与历史命中数据的实际平均数值尽可能的接近理论平均数值,提高了数据获取方式的合理性。
参见图4,本发明实施例提供了一种数据获取装置,该装置应用于指定事件的发生过程,该指定事件设置有多个时间周期,且该指定事件对应一个数据池,数据池内包括多种数据,不同种数据具有不同数值,该装置包括:
第一获取模块401,用于当接收到终端发送的数据获取请求时,获取目标命中概率组,该目标命中概率组包括数据池中每种数据在当前时间周期内的命中概率,该目标命中概率组由当前时间周期之前的历史命中数据确定;
第二获取模块402,用于根据目标命中概率组和指定随机算法,从数据池中获取命中数据;
第一发送模块403,用于将命中数据发送至终端。
在本发明的另一个实施例中,第一获取模块401,还用于从概率数据库中获取目标命中概率组,该概率数据库中预先存储有根据历史命中数据确定的目标命中概率组。
在本发明的另一个实施例中,第一获取模块401,还用于在当前时间周期内,根据历史命中数据,确定目标命中概率组。
在本发明的另一个实施例中,第一获取模块401,还用于计算历史命中数据的平均数值;计算历史命中数据的平均数值与理论平均数值之间的差值;根据该差值,从差值范围与命中概率组之间的对应关系中,获取该差值对应的命中概率组;将该差值对应的命中概率组作为目标命中概率组。
在本发明的另一个实施例中,该装置还包括:
第三获取模块,用于获取更新指令;
更新模块,用于根据更新指令,更新差值范围与命中概率组之间的对应关系;
第一存储模块,用于存储更新后的差值范围与命中概率组之间的对应关系。
在本发明的另一个实施例中,如果该差值为正值,则目标命中概率组用于相对上一时间周期内所获取的命中数据的数值,减小在当前时间周期内所获取的命中数据的数值;
如果差值为负值,则目标命中概率组用于相对上一时间周期内所获取的命中数据的数值,增大在当前时间周期内所获取的命中数据的数值。
在本发明的另一个实施例中,该数据获取请求中至少携带用户的身份信息;
该装置还包括:
第二存储模块,用于存储用户的身份信息与命中数据之间的对应关系;
第二发送模块,用于当再次接收到终端发送的数据获取请求时,向终端发送提醒消息,提醒消息用于提醒用户已获取命中数据。
综上,本发明实施例提供的装置,在指定事件的发生过程中,根据当前时间周期之前的历史命中数据,调整数据池中每种数据在当前时间周期内的命中概率,进而改变当前时间周期内所获取的命中数据,使得当前时间周期的命中数据与历史命中数据的实际平均数值尽可能的接近理论平均数值,提高了数据获取方式的合理性。
图5是根据一示例性实施例示出的一种用于数据获取的服务器。参照图5,服务器500包括处理组件522,其进一步包括一个或多个处理器,以及由存储器532所代表的存储器资源,用于存储可由处理组件522的执行的指令,例如应用程序。存储器532中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件522被配置为执行指令,以执行上述数据获取方法中服务器所执行的功能。
服务器500还可以包括一个电源组件526被配置为执行服务器500的电源管理,一个有线或无线网络接口550被配置为将服务器500连接到网络,和一个输入输出(I/O)接口558。服务器500可以操作基于存储在存储器532的操作系统,例如Windows ServerTM,Mac OSXTM,UnixTM,LinuxTM,FreeBSDTM或类似。
本发明实施例提供的服务器,在指定事件的发生过程中,根据当前时间周期之前的历史命中数据,调整数据池中每种数据在当前时间周期内的命中概率,进而改变当前时间周期内所获取的命中数据,使得当前时间周期的命中数据与历史命中数据的实际平均数值尽可能的接近理论平均数值,提高了数据获取方式的合理性。
本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中的存储器中所包含的计算机可读存储介质;也可以是单独存在,未装配入终端中的计算机可读存储介质。该计算机可读存储介质存储有一个或者一个以上程序,该一个或者一个以上程序被一个或者一个以上的处理器用来执行数据获取方法。
本发明实施例提供的计算机可读存储介质,在指定事件的发生过程中,根据当前时间周期之前的历史命中数据,调整数据池中每种数据在当前时间周期内的命中概率,进而改变当前时间周期内所获取的命中数据,使得当前时间周期的命中数据与历史命中数据的实际平均数值尽可能的接近理论平均数值,提高了数据获取方式的合理性。
需要说明的是:上述实施例提供的数据获取装置在获取数据时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将数据获取装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的数据获取装置与数据获取方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (14)
1.一种数据获取方法,其特征在于,所述方法应用于指定事件的发生过程中,所述指定事件设置有多个时间周期,且所述指定事件对应一个数据池,所述数据池内包括多种数据,不同种数据具有不同数值,所述方法包括:
当接收到终端发送的数据获取请求时,获取目标命中概率组,所述目标命中概率组包括所述数据池中每种数据在当前时间周期内的命中概率,所述目标命中概率组由所述当前时间周期之前的历史命中数据确定,所述目标命中概率组的确定过程为:计算所述历史命中数据的平均数值;计算所述历史命中数据的平均数值与理论平均数值之间的差值;根据所述差值,从差值范围与命中概率组之间的对应关系中,获取所述差值对应的命中概率组;将所述差值对应的命中概率组作为所述目标命中概率组,所述理论平均数值根据所述数据池中每种数据的数值和初始目标命中概率组确定;
根据所述目标命中概率组和指定随机算法,从所述数据池中获取命中数据;
将所述命中数据发送至所述终端。
2.根据权利要求1所述的方法,其特征在于,所述获取目标命中概率组,包括:
从概率数据库中获取所述目标命中概率组,所述概率数据库中预先存储有根据所述历史命中数据确定的所述目标命中概率组。
3.根据权利要求1所述的方法,其特征在于,所述获取目标命中概率组,包括:
在所述当前时间周期内,根据所述历史命中数据,确定所述目标命中概率组。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取更新指令;
根据所述更新指令,更新所述差值范围与命中概率组之间的对应关系;
存储更新后的差值范围与命中概率组之间的对应关系。
5.根据权利要求1至3中任一项所述的方法,其特征在于,
如果所述差值为正值,则所述目标命中概率组用于相对上一时间周期内所获取的命中数据的数值,减小在所述当前时间周期内所获取的命中数据的数值;
如果所述差值为负值,则所述目标命中概率组用于相对所述上一时间周期内所获取的命中数据的数值,增大在所述当前时间周期内所获取的命中数据的数值。
6.根据权利要求1至3中任一项所述的方法,其特征在于,所述数据获取请求中至少携带用户的身份信息;
所述将所述命中数据发送至所述终端之后,还包括:
存储所述用户的身份信息与所述命中数据之间的对应关系;
当再次接收到所述终端发送的数据获取请求时,向所述终端发送提醒消息,所述提醒消息用于提醒所述用户已获取所述命中数据。
7.一种数据获取装置,其特征在于,所述装置应用于指定事件的发生过程,所述指定事件设置有多个时间周期,且所述指定事件对应一个数据池,所述数据池内包括多种数据,不同种数据具有不同数值,所述装置包括:
第一获取模块,用于当接收到终端发送的数据获取请求时,获取目标命中概率组,所述目标命中概率组包括所述数据池中每种数据在当前时间周期内的命中概率,所述目标命中概率组由所述当前时间周期之前的历史命中数据确定,所述目标命中概率组的确定过程为:计算所述历史命中数据的平均数值;计算所述历史命中数据的平均数值与理论平均数值之间的差值;根据所述差值,从差值范围与命中概率组之间的对应关系中,获取所述差值对应的命中概率组;将所述差值对应的命中概率组作为所述目标命中概率组,所述理论平均数值根据所述数据池中每种数据的数值和初始目标命中概率组确定;
第二获取模块,用于根据所述目标命中概率组和指定随机算法,从所述数据池中获取命中数据;
第一发送模块,用于将所述命中数据发送至所述终端。
8.根据权利要求7所述的装置,其特征在于,所述第一获取模块,还用于从概率数据库中获取所述目标命中概率组,所述概率数据库中预先存储有根据所述历史命中数据确定的所述目标命中概率组。
9.根据权利要求7所述的装置,其特征在于,所述第一获取模块,还用于在所述当前时间周期内,根据所述历史命中数据,确定所述目标命中概率组。
10.根据权利要求7所述的装置,其特征在于,所述装置还包括:
第三获取模块,用于获取更新指令;
更新模块,用于根据所述更新指令,更新所述差值范围与命中概率组之间的对应关系;
第一存储模块,用于存储更新后的差值范围与命中概率组之间的对应关系。
11.根据权利要求7至9中任一项所述的装置,其特征在于,
如果所述差值为正值,则所述目标命中概率组用于相对上一时间周期内所获取的命中数据的数值,减小在所述当前时间周期内所获取的命中数据的数值;
如果所述差值为负值,则所述目标命中概率组用于相对所述上一时间周期内所获取的命中数据的数值,增大在所述当前时间周期内所获取的命中数据的数值。
12.根据权利要求7至9中任一项所述的装置,其特征在于,所述数据获取请求中至少携带用户的身份信息;
所述装置还包括:
第二存储模块,用于存储所述用户的身份信息与所述命中数据之间的对应关系;
第二发送模块,用于当再次接收到所述终端发送的数据获取请求时,向所述终端发送提醒消息,所述提醒消息用于提醒所述用户已获取所述命中数据。
13.一种服务器,其特征在于,所述服务器包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行,以实现权利要求1至6中任一项所述的数据获取方法。
14.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以实现如权利要求1至6中任一项所述的数据获取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610882138.8A CN107918877B (zh) | 2016-10-08 | 2016-10-08 | 数据获取方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610882138.8A CN107918877B (zh) | 2016-10-08 | 2016-10-08 | 数据获取方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107918877A CN107918877A (zh) | 2018-04-17 |
CN107918877B true CN107918877B (zh) | 2021-08-10 |
Family
ID=61892357
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610882138.8A Active CN107918877B (zh) | 2016-10-08 | 2016-10-08 | 数据获取方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107918877B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108924660A (zh) * | 2018-08-16 | 2018-11-30 | 乐蜜有限公司 | 一种直播中的虚拟物品获取方法、装置、服务器及终端 |
CN111488625B (zh) * | 2020-03-30 | 2023-10-03 | 广州酷狗计算机科技有限公司 | 数据处理的方法及装置 |
CN112926822A (zh) * | 2021-01-19 | 2021-06-08 | 北京电解智科技有限公司 | 一种资源分配方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103685154A (zh) * | 2012-09-04 | 2014-03-26 | 深圳市世纪光速信息技术有限公司 | 基于互联网络的概率产品数据处理方法及服务器 |
CN104239065A (zh) * | 2014-09-29 | 2014-12-24 | 广州金山网络科技有限公司 | 一种随机选择的目标对象的命中概率的生成方法及装置 |
CN104679791A (zh) * | 2013-12-03 | 2015-06-03 | 腾讯科技(深圳)有限公司 | 获取数据包的处理方法和装置 |
CN104935633A (zh) * | 2015-04-24 | 2015-09-23 | 北京金山安全软件有限公司 | 一种信息发布方法及服务设备 |
JP2015531919A (ja) * | 2012-08-08 | 2015-11-05 | テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド | ユーザを選択するための方法、装置およびシステム |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IT1179803B (it) * | 1984-10-30 | 1987-09-16 | Cselt Centro Studi Lab Telecom | Metodo e dispositivo per la correzione di errori causati da rumore di tipo impulsivo su segnali vocali codificati con bassa velocita di ci fra e trasmessi su canali di comunicazione radio |
US8147321B2 (en) * | 2007-02-09 | 2012-04-03 | Rite-Solutions, Inc. | Method and apparatus for electronic random prize distribution with fixed prize inventory and unknown participant count |
CN104156551B (zh) * | 2013-05-14 | 2017-12-15 | 腾讯科技(深圳)有限公司 | 基于时间间隔动态调整目标数据命中的方法和装置 |
CN105389117B (zh) * | 2015-12-07 | 2020-09-08 | 腾讯科技(深圳)有限公司 | 获取资源的方法和装置以及资源处理方法、装置和系统 |
CN105894338A (zh) * | 2016-06-30 | 2016-08-24 | 广东电网有限责任公司珠海供电局 | 资源分配的概率调整方法及装置 |
-
2016
- 2016-10-08 CN CN201610882138.8A patent/CN107918877B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015531919A (ja) * | 2012-08-08 | 2015-11-05 | テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド | ユーザを選択するための方法、装置およびシステム |
CN103685154A (zh) * | 2012-09-04 | 2014-03-26 | 深圳市世纪光速信息技术有限公司 | 基于互联网络的概率产品数据处理方法及服务器 |
CN104679791A (zh) * | 2013-12-03 | 2015-06-03 | 腾讯科技(深圳)有限公司 | 获取数据包的处理方法和装置 |
CN104239065A (zh) * | 2014-09-29 | 2014-12-24 | 广州金山网络科技有限公司 | 一种随机选择的目标对象的命中概率的生成方法及装置 |
CN104935633A (zh) * | 2015-04-24 | 2015-09-23 | 北京金山安全软件有限公司 | 一种信息发布方法及服务设备 |
Also Published As
Publication number | Publication date |
---|---|
CN107918877A (zh) | 2018-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11711442B2 (en) | Push notification delivery system | |
CN107918877B (zh) | 数据获取方法及装置 | |
US20130067015A1 (en) | Counting and reseting broadcast system badge counters | |
EP2756476A2 (en) | Marketplace for timely event data distribution | |
US9104488B2 (en) | Support server for redirecting task results to a wake-up server | |
WO2021051747A1 (zh) | 数据更新方法、系统、装置、电子设备及计算机存储介质 | |
CN104601702B (zh) | 集群远程过程调用方法及系统 | |
CN111614748A (zh) | 可扩展的对等匹配 | |
CN110944219B (zh) | 资源分配方法、装置、服务器及存储介质 | |
CN111225029A (zh) | 一种动态消息推送方法、系统和汽车诊断服务器 | |
KR20160013884A (ko) | 온라인 스토어를 통해 소프트웨어 컴포넌트를 업데이트하는 기법 | |
CN112751847A (zh) | 接口调用请求的处理方法、装置、电子设备及存储介质 | |
CN112839067A (zh) | 一种数据同步方法及装置 | |
CN111212135A (zh) | 消息订阅方法、装置、系统、电子设备及存储介质 | |
CN112328362A (zh) | 一种基于容器技术实现函数计算服务的方法 | |
CN112583895A (zh) | Tcp通信方法、系统及装置 | |
CN111897659B (zh) | 业务处理频率的控制方法、系统、装置、电子设备 | |
CN111475315A (zh) | 服务器及订阅通知推送控制、执行方法 | |
CN114785526B (zh) | 基于区块链的多用户多批次权重分配计算及存储处理系统 | |
CN109602413B (zh) | 心跳检测方法、装置、存储介质及服务器 | |
CN112926822A (zh) | 一种资源分配方法和装置 | |
CN114641033B (zh) | 5g消息推送速度控制方法、装置、设备及介质 | |
US11586632B2 (en) | Dynamic transaction coalescing | |
CN114610765B (zh) | 流计算方法、装置、设备及存储介质 | |
CN116232946A (zh) | 一种基于api的cdn设备监控系统、方法及终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |