欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

獲取排名的方法及系統(tǒng)的制作方法

文檔序號:6499576閱讀:331來源:國知局
獲取排名的方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明提出一種獲取排名的方法及系統(tǒng),其方法包括:獲取實(shí)時(shí)數(shù)據(jù);統(tǒng)計(jì)所述實(shí)時(shí)數(shù)據(jù)的總用戶數(shù)量;獲取所述實(shí)時(shí)數(shù)據(jù)在至少一個(gè)數(shù)據(jù)值區(qū)間中的用戶數(shù)量的分布規(guī)律;將所述總用戶數(shù)量及所述分布規(guī)律作為中間數(shù)據(jù)進(jìn)行儲存;接收用戶排名查詢請求以及所查詢用戶的實(shí)際數(shù)據(jù)值;根據(jù)查詢用戶的實(shí)際數(shù)據(jù)值、所述中間數(shù)據(jù)以及概率分布的數(shù)學(xué)規(guī)則,計(jì)算查詢用戶的排名。本發(fā)明具有運(yùn)算量低、節(jié)約存儲空間、實(shí)時(shí)性以及無法證偽的優(yōu)點(diǎn)。
【專利說明】獲取排名的方法及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)【技術(shù)領(lǐng)域】,特別涉及一種獲取排名的方法及系統(tǒng)。
【背景技術(shù)】
[0002]隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,互聯(lián)網(wǎng)已經(jīng)成為人們工作學(xué)習(xí)中一個(gè)重要的部分。在互聯(lián)網(wǎng)應(yīng)用中,經(jīng)常需要對用戶數(shù)據(jù)進(jìn)行排名。傳統(tǒng)的方法是全量提取需要排名的用戶屬性值(例如會員成長值、游戲的玩家經(jīng)驗(yàn)值等),消耗大量機(jī)器資源進(jìn)行排序計(jì)算,最后將排序后每個(gè)用戶的名次保存起來,需要的時(shí)候拉取并展示這個(gè)名次。
[0003]但是現(xiàn)有的這種排名方式存在一些缺點(diǎn):
[0004](I)現(xiàn)有的排名方法需要對所有的用戶數(shù)據(jù)進(jìn)行排序計(jì)算,運(yùn)算量大,對海量的用戶數(shù)據(jù)進(jìn)行排名時(shí),會消耗大量的計(jì)算機(jī)資源,成本高昂。
[0005](2)現(xiàn)有方法經(jīng)過計(jì)算后的排名結(jié)果中,包含了所有用戶的數(shù)據(jù),存要儲用戶數(shù)據(jù)的排名結(jié)果,會消耗大量的存儲空間。
[0006](3)現(xiàn)有方法是對全量用戶數(shù)據(jù)進(jìn)行計(jì)算,運(yùn)算量大,運(yùn)算時(shí)間長,很難在短時(shí)間內(nèi)對用戶數(shù)據(jù)進(jìn)行實(shí)時(shí)采集,因此是基于離線數(shù)據(jù)進(jìn)行的分析計(jì)算,排名數(shù)據(jù)無法做到實(shí)時(shí)更新。

【發(fā)明內(nèi)容】

[0007]本發(fā)明的目的是提供一種獲取排名的方法及系統(tǒng),以解決現(xiàn)有的排名方式運(yùn)算量大、耗費(fèi)存儲空間、無法實(shí)時(shí)更新的問題。
[0008]本發(fā)明提出一種獲取排名的方法,包括:
[0009]獲取實(shí)時(shí)數(shù)據(jù);
[0010]統(tǒng)計(jì)所述實(shí)時(shí)數(shù)據(jù)的總用戶數(shù)量;
[0011]獲取所述實(shí)時(shí)數(shù)據(jù)在至少一個(gè)數(shù)據(jù)值區(qū)間中的用戶數(shù)量的分布規(guī)律;
[0012]將所述總用戶數(shù)量及所述分布規(guī)律作為中間數(shù)據(jù)進(jìn)行儲存;
[0013]接收用戶排名查詢請求以及所查詢用戶的實(shí)際數(shù)據(jù)值;
[0014]根據(jù)查詢用戶的實(shí)際數(shù)據(jù)值、所述中間數(shù)據(jù)以及概率分布的數(shù)學(xué)規(guī)則,計(jì)算查詢用戶的排名。
[0015]本發(fā)明還提出一種獲取排名的系統(tǒng),包括:
[0016]數(shù)據(jù)獲取模塊,用于獲取實(shí)時(shí)數(shù)據(jù);
[0017]統(tǒng)計(jì)模塊,用于統(tǒng)計(jì)所述實(shí)時(shí)數(shù)據(jù)的總用戶數(shù)量;
[0018]分布規(guī)律獲取模塊,用于獲取所述實(shí)時(shí)數(shù)據(jù)在至少一個(gè)數(shù)據(jù)值區(qū)間中的用戶數(shù)量的分布規(guī)律;
[0019]存儲模塊,用于存儲中間數(shù)據(jù),所述中間數(shù)據(jù)包括所述總用戶數(shù)量及所述分布規(guī)律;
[0020]交互模塊,用于與用戶終端進(jìn)行通信;[0021]計(jì)算模塊,用于根據(jù)查詢用戶的實(shí)際數(shù)據(jù)值、所述中間數(shù)據(jù)以及概率分布的數(shù)學(xué)規(guī)則,計(jì)算查詢用戶的排名。
[0022]相對于現(xiàn)有技術(shù),本發(fā)明的有益效果是:
[0023](I)減少了計(jì)算量,不用對全量數(shù)據(jù)值進(jìn)行排名運(yùn)算,根據(jù)用戶的實(shí)際數(shù)據(jù)值和中間數(shù)據(jù),并結(jié)合概率分布的數(shù)學(xué)規(guī)則就可以計(jì)算出用戶排名,而且可以根據(jù)對排名的不同精確度要求,設(shè)計(jì)不同的區(qū)間分段方式。
[0024](2)減少了存儲量,不需要存儲用戶的排名,僅僅需要存儲中間數(shù)據(jù),用戶的排名就可以根據(jù)當(dāng)時(shí)的數(shù)據(jù)值動態(tài)的計(jì)算出來。
[0025](3)排名的實(shí)時(shí)性,用戶的數(shù)據(jù)值提升后,獲取的用戶排名便會隨之變高。
[0026](4)用戶無法證偽(即證明他的排名不是真正的排名),因?yàn)楸景l(fā)明的計(jì)算方式是符合排名的有序性的(即數(shù)據(jù)值高的人排名一定比數(shù)據(jù)值低的人高,數(shù)據(jù)值提升后排名會隨之變高),用戶其實(shí)關(guān)注的并不是自己的真實(shí)名次,關(guān)注的核心是和別人名次的比較,以及自己數(shù)據(jù)值提升后帶來的名次提升,因而通過本發(fā)明方案獲取的用戶排名具有很高的真實(shí)性。
[0027]當(dāng)然,實(shí)施本發(fā)明的任一產(chǎn)品并不一定需要同時(shí)達(dá)到以上所述的所有優(yōu)點(diǎn)。
[0028]上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說明書的內(nèi)容予以實(shí)施,并且為了讓本發(fā)明的上述和其他目的、特征和優(yōu)點(diǎn)能夠更明顯易懂,以下特舉較佳實(shí)施例,并配合附圖,詳細(xì)說明如下。
【專利附圖】

【附圖說明】
[0029]圖1為本發(fā)明實(shí)施例的一種獲取排名的方法的流程圖;
[0030]圖2為本發(fā)明實(shí)施例的一種獲取排名的系統(tǒng)的結(jié)構(gòu)圖;
[0031]圖3為本發(fā)明實(shí)施例的一種分布規(guī)律獲取模塊結(jié)構(gòu)圖;
[0032]圖4為本發(fā)明實(shí)施例的另一種分布規(guī)律獲取模塊結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0033]為更進(jìn)一步闡述本發(fā)明達(dá)成預(yù)定發(fā)明目的所采取的技術(shù)手段及功效,以下結(jié)合附圖及較佳實(shí)施例,對依據(jù)本發(fā)明提出的獲取排名的方法及系統(tǒng)其【具體實(shí)施方式】、方法、步驟及功效,詳細(xì)說明如后。
[0034]有關(guān)本發(fā)明的前述及其他技術(shù)內(nèi)容、特點(diǎn)及功效,在以下配合參考圖式的較佳實(shí)施例詳細(xì)說明中將可清楚的呈現(xiàn)。通過【具體實(shí)施方式】的說明,當(dāng)可對本發(fā)明為達(dá)成預(yù)定目的所采取的技術(shù)手段及功效得以更加深入且具體的了解,然而所附圖式僅是提供參考與說明之用,并非用來對本發(fā)明加以限制。
[0035]請參見圖1,其為本發(fā)明實(shí)施例的一種獲取排名的方法的流程圖,其包括以下步驟:
[0036]SI I,獲取實(shí)時(shí)數(shù)據(jù)。
[0037]所述實(shí)時(shí)數(shù)據(jù)是排名計(jì)算的數(shù)據(jù)基礎(chǔ),本發(fā)明所述的用戶數(shù)據(jù)指的是用戶的各種屬性值數(shù)據(jù),如時(shí)間、游戲的玩家經(jīng)驗(yàn)值等,這些數(shù)據(jù)可以按照數(shù)值的大小進(jìn)行排名,實(shí)時(shí)數(shù)據(jù)可以在預(yù)設(shè)時(shí)間段進(jìn)行定時(shí)采集,間隔時(shí)間越短,獲取排名的實(shí)時(shí)性越高,準(zhǔn)確性也越高。實(shí)時(shí)數(shù)據(jù)也可以采用抽樣的方式采集,例如用戶數(shù)據(jù)的分布如果是無規(guī)律的,可以不用全局掃描,而按照一定比例抽樣采集用戶數(shù)據(jù),這樣可以進(jìn)一步地節(jié)省計(jì)算機(jī)資源。當(dāng)然,采用抽樣方式采集實(shí)時(shí)數(shù)據(jù)的話,最后需要將用戶排名按照抽樣比例還原成全量用戶數(shù)據(jù)中的排名。
[0038]S12,統(tǒng)計(jì)所述實(shí)時(shí)數(shù)據(jù)的總用戶數(shù)量。
[0039]獲取到作為排名計(jì)算基礎(chǔ)的實(shí)時(shí)數(shù)據(jù)后,通過對獲取到的實(shí)時(shí)數(shù)據(jù)進(jìn)行全局掃描,可以統(tǒng)計(jì)出這些數(shù)據(jù)包含的總用戶數(shù)量,一般一個(gè)數(shù)據(jù)值對應(yīng)一個(gè)用戶,例如進(jìn)行用戶在線時(shí)間的排名時(shí),所獲取到的實(shí)時(shí)數(shù)據(jù)即為時(shí)間數(shù)據(jù),在掃描這些實(shí)時(shí)數(shù)據(jù)的過程中,發(fā)現(xiàn)一個(gè)時(shí)間數(shù)據(jù)即作一次計(jì)數(shù),從而可以統(tǒng)計(jì)出該總用戶數(shù)量。
[0040]S13,獲取所述實(shí)時(shí)數(shù)據(jù)在至少一個(gè)數(shù)據(jù)值區(qū)間中的用戶數(shù)量的分布規(guī)律。
[0041]用戶某種數(shù)據(jù)值的分布,數(shù)學(xué)上可以看成是一種概率分布。如果當(dāng)前所有用戶屬性值的下限是NI,上限是N2,用戶數(shù)是M,可以看成是M個(gè)值對象在(NI,N2)區(qū)間上的一種分布。常見的分布有均勻分布(即NI到N2上每一個(gè)點(diǎn)分布的對象數(shù)相等)和正態(tài)分布(越靠近NI到N2中點(diǎn)的點(diǎn),分布的對象數(shù)越多)。這里所述的分布規(guī)律是指將一個(gè)數(shù)據(jù)值區(qū)間中的用戶分布假設(shè)成均勻分布,從而根據(jù)落在該區(qū)間中的用戶數(shù)量獲取到的用戶值對象的分布情況??梢杂脕肀憩F(xiàn)用戶分布規(guī)律的數(shù)據(jù)括數(shù)據(jù)值區(qū)間的數(shù)據(jù)最大值和數(shù)據(jù)最小值、數(shù)據(jù)值區(qū)間中的用戶數(shù)量、實(shí)時(shí)數(shù)據(jù)中最小數(shù)據(jù)值或最大數(shù)據(jù)值到數(shù)據(jù)值區(qū)間的各個(gè)節(jié)點(diǎn)之間用戶數(shù)量等,可以根據(jù)排名計(jì)算需要獲取表現(xiàn)分布規(guī)律的多種數(shù)據(jù)。
[0042]S14,將所述總用戶數(shù)量及所述分布規(guī)律作為中間數(shù)據(jù)進(jìn)行儲存。
[0043]S15,接收用戶排名查詢請求以及所查詢用戶的實(shí)際數(shù)據(jù)值。
[0044]S16,根據(jù)查詢用戶的實(shí)際數(shù)據(jù)值、所述中間數(shù)據(jù)以及概率分布的數(shù)學(xué)規(guī)則,計(jì)算查詢用戶的排名。
[0045]下面以兩種較佳的排名計(jì)算方式進(jìn)行說明:
[0046]第一種方式,也是最簡單實(shí)現(xiàn)方式,即找出實(shí)時(shí)數(shù)據(jù)中的最低數(shù)據(jù)值和最高數(shù)據(jù)值,這種情況下的分布規(guī)律即是指在最低數(shù)據(jù)值和最高數(shù)據(jù)值的區(qū)間中用戶值對象的分布情況,而在最低數(shù)據(jù)值和最高數(shù)據(jù)值的區(qū)間中的用戶數(shù)量即實(shí)時(shí)數(shù)據(jù)的總用戶數(shù)量,所以這種情況下中間數(shù)據(jù)僅包括了最低數(shù)據(jù)值、最高數(shù)據(jù)值和總用戶數(shù)量。
[0047]當(dāng)接收到用戶排名查詢請求時(shí),根據(jù)用戶的實(shí)際數(shù)據(jù)值、中間數(shù)據(jù)以及概率分布的數(shù)學(xué)規(guī)則就可以直接計(jì)算出較為近似的排名,假設(shè)用戶均勻分布的情況下,按照概率分布,那么最高數(shù)據(jù)值到實(shí)際數(shù)據(jù)值之間的用戶數(shù)量比上總用戶數(shù)量之間的比值,與最高數(shù)據(jù)值與實(shí)際數(shù)據(jù)值的差值比上最高數(shù)據(jù)值與最低數(shù)據(jù)值的差值相同,這樣就能計(jì)算出最高數(shù)據(jù)值到實(shí)際數(shù)據(jù)值之間的用戶數(shù)量,即計(jì)算出排在查詢用戶之前的用戶數(shù)量,計(jì)算公式如下:
[0048]P= (m(n2_n) / (n2_nl))+1
[0049]其中,P為查詢用戶的排名,m為實(shí)時(shí)數(shù)據(jù)的總用戶數(shù)量,nl為實(shí)時(shí)數(shù)據(jù)的最低數(shù)據(jù)值,n2為實(shí)時(shí)數(shù)據(jù)的最高數(shù)據(jù)值,η為查詢用戶的實(shí)際數(shù)據(jù)值。
[0050]第一種方式的計(jì)算結(jié)果可能和實(shí)際情況有一些偏差,因?yàn)閷?shí)際上用戶的分布不會是剛好是均勻的,因此本申請還揭示了第二種方式,可以通過增加分布區(qū)間數(shù)的方式來提高計(jì)算的精確度,這種情況下的分布規(guī)律是指在多個(gè)屬性值區(qū)間中用戶值對象的分布情況。
[0051]首先找出實(shí)時(shí)數(shù)據(jù)中的最低數(shù)據(jù)值和最高數(shù)據(jù)值;接著在最低數(shù)據(jù)值和最高數(shù)據(jù)值之間依次拆分成多個(gè)屬性值區(qū)間,拆分的屬性值區(qū)間越多,則最終計(jì)算出的排名精確性越高;獲取各個(gè)屬性值區(qū)間的相對最低數(shù)據(jù)值和相對最高數(shù)據(jù)值,一個(gè)屬性值區(qū)間的相對最低數(shù)據(jù)值和相對最高數(shù)據(jù)值是指這個(gè)屬性值區(qū)間中最低的數(shù)據(jù)值和最高的數(shù)據(jù)值;獲取落在所述最低數(shù)據(jù)值到各個(gè)屬性值區(qū)間的相對最高數(shù)據(jù)值之間的用戶數(shù)量(即獲取落在最低數(shù)據(jù)值到各個(gè)屬性值區(qū)間各個(gè)節(jié)點(diǎn)之間的用戶數(shù)量)。所以這種情況下中間數(shù)據(jù)包括了實(shí)時(shí)數(shù)據(jù)的最低數(shù)據(jù)值和最高數(shù)據(jù)值、實(shí)時(shí)數(shù)據(jù)的總用戶數(shù)量、屬性值區(qū)間的數(shù)量,各個(gè)屬性值區(qū)間的相對最低數(shù)據(jù)值和相對最高數(shù)據(jù)值、以及落在各個(gè)屬性值區(qū)間的用戶數(shù)量。
[0052]當(dāng)接收到用戶排名查詢請求時(shí),根據(jù)用戶的實(shí)際數(shù)據(jù)值、中間數(shù)據(jù)以及概率分布的數(shù)學(xué)規(guī)則就可以直接計(jì)算出較為近似的排名,計(jì)算公式如下:
[0053]P= (m-1y+(ky-n) (iy-1x)/(ky-kx))+l
[0054]其中,P為查詢用戶的排名,m為實(shí)時(shí)數(shù)據(jù)的總用戶數(shù)量,IX為落在所述最低數(shù)據(jù)值到查詢用戶所在屬性值區(qū)間的相對最低數(shù)據(jù)值之間的用戶數(shù)量,iy為落在所述最低數(shù)據(jù)值到查詢用戶所在屬性值區(qū)間的相對最高數(shù)據(jù)值之間的用戶數(shù)量,kx為查詢用戶所在屬性值區(qū)間的相對最低數(shù)據(jù)值,ky為查詢用戶所在屬性值區(qū)間的相對最高數(shù)據(jù)值,η為查詢用戶的實(shí)際數(shù)據(jù)值。
[0055]例如將實(shí)時(shí)數(shù)據(jù)的最低數(shù)據(jù)值到最高數(shù)據(jù)值區(qū)間(nl,n2)拆分成10個(gè)相等的區(qū)間(nl,kl,k2...k9,n2);然后對實(shí)時(shí)數(shù)據(jù)進(jìn)行一遍掃描,計(jì)算出落在nl到每個(gè)節(jié)點(diǎn)上的用戶數(shù)i,即il表示屬性值 在nl到kl之間的用戶數(shù)…i3表示屬性值在nl到k3之間的用戶數(shù)…i9表示屬性值在nl到k9之間的用戶數(shù);假設(shè)η在k4和k5之間,且每一個(gè)屬性值區(qū)間內(nèi)的用戶分布是均勻的,就可以計(jì)算出屬性為η的用戶排名P如下:P= (m-15+(k5-n)(i5-14)/(k5-k4))+l。
[0056]上面將(nl,n2)區(qū)間拆分成了 10段,實(shí)際運(yùn)用中可以根據(jù)情況拆分成任意段,段數(shù)越多越接近真實(shí)排名情況,但是相應(yīng)的計(jì)算量和消耗的存儲空間也越大。此外,每個(gè)區(qū)間段不需要是等長的,可以根據(jù)事先的分析來確定段的長度,稀疏的數(shù)據(jù)分布區(qū),區(qū)間段可以長一些,密集的數(shù)據(jù)分布區(qū),區(qū)間段短一些,這樣數(shù)據(jù)會更精確。
[0057]當(dāng)然,如果實(shí)時(shí)數(shù)據(jù)是抽樣采集的,用戶排名P還要除以抽樣比例,并獲取用戶的最終排名。
[0058]下面用一具體應(yīng)用來舉例說明本發(fā)明。
[0059]某游戲需要對全量用戶的總游戲時(shí)間進(jìn)行排名,應(yīng)用戶請求告知其游戲時(shí)間的當(dāng)前名詞。假設(shè)該游戲共設(shè)有64個(gè)數(shù)據(jù)庫,實(shí)現(xiàn)方案如下:
[0060]1.從64臺分布式數(shù)據(jù)庫中隨機(jī)抽取一臺作為抽樣的樣本。
[0061]2.提取最短的和最高的游戲時(shí)長,并設(shè)計(jì)了一種分段方法(如分為100段)。
[0062]3.從樣本數(shù)據(jù)庫中計(jì)算出落在每一段里的用戶數(shù)量,并根據(jù)概率推算出全量用戶情況下落在每一段里的用戶數(shù)量(抽樣數(shù)據(jù)庫每一段里的用戶數(shù)量與全量數(shù)據(jù)庫每一段里的用戶數(shù)量的比值為1/64)。
[0063]4.將預(yù)處理的結(jié)果保存到一份配置文件中,供查詢服務(wù)讀取。
[0064]5.需要展示用戶排名的時(shí)候,對查詢服務(wù)發(fā)起請求,帶上用戶當(dāng)前的游戲時(shí)長。這樣查詢服務(wù)就可以根據(jù)已經(jīng)提取的預(yù)處理結(jié)果和當(dāng)前用戶的游戲時(shí)長,近似的估算出用戶在全量用戶中的名次并給予返回了。
[0065]采用本發(fā)明來獲取用戶排名具有以下優(yōu)點(diǎn):
[0066](I)減少了計(jì)算量,不用對全量數(shù)據(jù)值進(jìn)行排名運(yùn)算,根據(jù)用戶的實(shí)際數(shù)據(jù)值和中間數(shù)據(jù),并結(jié)合概率分布的數(shù)學(xué)規(guī)則就可以計(jì)算出用戶排名,而且可以根據(jù)對排名的不同精確度要求,設(shè)計(jì)不同的區(qū)間分段方式。
[0067](2)減少了存儲量,不需要存儲用戶的排名,僅僅需要存儲中間數(shù)據(jù),用戶的排名就可以根據(jù)當(dāng)時(shí)的數(shù)據(jù)值動態(tài)的計(jì)算出來。
[0068](3)排名的實(shí)時(shí)性,用戶的數(shù)據(jù)值提升后,獲取的用戶排名便會隨之變高。
[0069](4)用戶無法證偽(即證明他的排名不是真正的排名),因?yàn)楸景l(fā)明的計(jì)算方式是符合排名的有序性的(即數(shù)據(jù)值高的人排名一定比數(shù)據(jù)值低的人高,數(shù)據(jù)值提升后排名會隨之變高),用戶其實(shí)關(guān)注的并不是自己的真實(shí)名次,關(guān)注的核心是和別人名次的比較,以及自己數(shù)據(jù)值提升后帶來的名次提升,因而通過本發(fā)明方案獲取的用戶排名具有很高的真實(shí)性。
[0070]本發(fā)明還提出一種獲取排名的系統(tǒng),如圖2所示,其包括數(shù)據(jù)獲取模塊21、統(tǒng)計(jì)模塊22、分布規(guī)律獲取模塊23、存儲模塊24、交互模塊25及計(jì)算模塊26。統(tǒng)計(jì)模塊22和分布規(guī)律獲取模塊23都連接到數(shù)據(jù)獲取模塊21,存儲模塊24分別與統(tǒng)計(jì)模塊22和分布規(guī)律獲取模塊23相連,計(jì)算模塊26連接到存儲模塊24,交互模塊25連接到計(jì)算模塊26。
[0071]在進(jìn)行排名計(jì)算之前,要先獲取中間數(shù)據(jù)。首先由數(shù)據(jù)獲取模塊21獲取實(shí)時(shí)數(shù)據(jù),可以通過全量采集用戶數(shù)據(jù)獲得實(shí)時(shí)數(shù)據(jù),也可以通過抽樣采集用戶數(shù)據(jù)獲得實(shí)時(shí)數(shù)據(jù)。獲得實(shí)時(shí)數(shù)據(jù)后,通過統(tǒng)計(jì)模塊22統(tǒng)計(jì)實(shí)時(shí)數(shù)據(jù)的總用戶數(shù)量,以及通過分布規(guī)律獲取模塊23獲取所述實(shí)時(shí)數(shù)據(jù)在至少一個(gè)數(shù)據(jù)值區(qū)間中的用戶數(shù)量的分布規(guī)律,并將總用戶數(shù)量和分布規(guī)律作為中間數(shù)據(jù)存入存儲模塊24中。分布規(guī)律是指將一個(gè)數(shù)據(jù)值區(qū)間中的用戶分布假設(shè)成均勻分布,從而根據(jù)落在該區(qū)間中的用戶數(shù)量獲取到的用戶值對象的分布情況??梢杂脕肀憩F(xiàn)用戶分布規(guī)律的數(shù)據(jù)括數(shù)據(jù)值區(qū)間的數(shù)據(jù)最大值和數(shù)據(jù)最小值、數(shù)據(jù)值區(qū)間中的用戶數(shù)量、實(shí)時(shí)數(shù)據(jù)中最小數(shù)據(jù)值或最大數(shù)據(jù)值到數(shù)據(jù)值區(qū)間的各個(gè)節(jié)點(diǎn)之間用戶數(shù)量等,可以根據(jù)排名計(jì)算需要獲取表現(xiàn)分布規(guī)律的多種數(shù)據(jù)。
[0072]交互模塊25用于與用戶終端進(jìn)行通信,當(dāng)交互模塊25接收到用戶的排名查詢請求時(shí),計(jì)算模塊26從數(shù)據(jù)庫中獲取該用戶的實(shí)際數(shù)據(jù)值,并從存儲模塊24中獲取中間數(shù)據(jù),然后根據(jù)查詢用戶的實(shí)際數(shù)據(jù)值、所述中間數(shù)據(jù)以及概率分布的數(shù)學(xué)規(guī)則,計(jì)算查詢用戶的排名。最后通過交互模塊25將用戶排名反饋給相應(yīng)的用戶終端。
[0073]根據(jù)分布規(guī)律獲取模塊23獲取的分布規(guī)律的不同,計(jì)算模塊26可以依照多種不同的公式來計(jì)算用戶排名,下面以兩種較佳的計(jì)算方式進(jìn)行說明。
[0074]請參見圖3,其為本發(fā)明實(shí)施例的一種分布規(guī)律獲取模塊結(jié)構(gòu)圖,此分布規(guī)律獲取模塊23包括數(shù)據(jù)值獲取單元231,數(shù)據(jù)值獲取單元231用于獲取實(shí)時(shí)數(shù)據(jù)中的最低數(shù)據(jù)值和最高數(shù)據(jù)值。本實(shí)施例分布規(guī)律獲取模塊23所獲取的分布規(guī)律是指在最低數(shù)據(jù)值和最高數(shù)據(jù)值的區(qū)間中用戶值對象的分布情況,而在最低數(shù)據(jù)值和最高數(shù)據(jù)值的區(qū)間中的用戶數(shù)量即實(shí)時(shí)數(shù)據(jù)的總用戶數(shù)量,所以這種情況下中間數(shù)據(jù)僅包括了最低數(shù)據(jù)值、最高數(shù)據(jù)值和總用戶數(shù)量。[0075]當(dāng)接收到用戶排名查詢請求時(shí),計(jì)算模塊26便可以根據(jù)用戶的實(shí)際數(shù)據(jù)值、中間數(shù)據(jù)以及概率分布的數(shù)學(xué)規(guī)則計(jì)算出較為近似的排名,假設(shè)用戶均勻分布的情況下,按照概率分布,那么最高數(shù)據(jù)值到實(shí)際數(shù)據(jù)值之間的用戶數(shù)量比上總用戶數(shù)量之間的比值,與最高數(shù)據(jù)值與實(shí)際數(shù)據(jù)值的差值比上最高數(shù)據(jù)值與最低數(shù)據(jù)值的差值相同,這樣就能計(jì)算出最高數(shù)據(jù)值到實(shí)際數(shù)據(jù)值之間的用戶數(shù)量,即計(jì)算出排在查詢用戶之前的用戶數(shù)量,計(jì)算模塊26采用的計(jì)算公式如下:
[0076]P= (m(n2_n) / (n2_nl))+1
[0077]其中,P為查詢用戶的排名,m為實(shí)時(shí)數(shù)據(jù)的總用戶數(shù)量,nl為實(shí)時(shí)數(shù)據(jù)的最低數(shù)據(jù)值,n2為實(shí)時(shí)數(shù)據(jù)的最高數(shù)據(jù)值,η為查詢用戶的實(shí)際數(shù)據(jù)值。
[0078]請參見圖4,本發(fā)明實(shí)施例的一種分布規(guī)律獲取模塊結(jié)構(gòu)圖,此分布規(guī)律獲取模塊23包括數(shù)據(jù)值獲取單元231、區(qū)間拆分單元232、相對數(shù)據(jù)值獲取單元233、區(qū)間用戶統(tǒng)計(jì)單元234。數(shù)據(jù)值獲取單元231用于獲取實(shí)時(shí)數(shù)據(jù)中的最低數(shù)據(jù)值和最高數(shù)據(jù)值;區(qū)間拆分單元232用于在所述最低數(shù)據(jù)值和最高數(shù)據(jù)值之間依次拆分成多個(gè)屬性值區(qū)間;相對數(shù)據(jù)值獲取單元233用于獲取各個(gè)屬性值區(qū)間的相對最低數(shù)據(jù)值和相對最高數(shù)據(jù)值;區(qū)間用戶統(tǒng)計(jì)單元234用于獲取落在所述最低數(shù)據(jù)值到各個(gè)屬性值區(qū)間的相對最高數(shù)據(jù)值之間的用戶數(shù)量。這種情況下中間數(shù)據(jù)包括了實(shí)時(shí)數(shù)據(jù)的最低數(shù)據(jù)值和最高數(shù)據(jù)值、實(shí)時(shí)數(shù)據(jù)的總用戶數(shù)量、屬性值區(qū)間的數(shù)量,各個(gè)屬性值區(qū)間的相對最低數(shù)據(jù)值和相對最高數(shù)據(jù)值、以及落在各個(gè)屬性值區(qū)間的用戶數(shù)量。
[0079]當(dāng)接收到用戶排名查詢請求時(shí),計(jì)算模塊26可以根據(jù)用戶的實(shí)際數(shù)據(jù)值、中間數(shù)據(jù)以及概率分布的數(shù)學(xué)規(guī)則就可以直接計(jì)算出較為近似的排名,計(jì)算公式如下:
[0080]P= (m-1y+(ky-n) (iy-1x)/(ky-kx))+l
[0081]其中,P為查詢用戶的排名,m為實(shí)時(shí)數(shù)據(jù)的總用戶數(shù)量,IX為落在所述最低數(shù)據(jù)值到查詢用戶所在屬性值區(qū)間的相對最低數(shù)據(jù)值之間的用戶數(shù)量,iy為落在所述最低數(shù)據(jù)值到查詢用戶所在屬性值區(qū)間的相對最高數(shù)據(jù)值之間的用戶數(shù)量,kx為查詢用戶所在屬性值區(qū)間的相對最低數(shù)據(jù)值,ky為查詢用戶所在屬性值區(qū)間的相對最高數(shù)據(jù)值,η為查詢用戶的實(shí)際數(shù)據(jù)值。
[0082]當(dāng)然,如果實(shí)時(shí)數(shù)據(jù)是抽樣采集的,用戶排名P還要除以抽樣比例,并獲取用戶的最終排名。
[0083]通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明實(shí)施例可以通過硬件實(shí)現(xiàn),也可以借助軟件加必要的通用硬件平臺的方式來實(shí)現(xiàn)?;谶@樣的理解,本發(fā)明實(shí)施例的技術(shù)方案可以以軟件產(chǎn)品的形式體現(xiàn)出來,該軟件產(chǎn)品可以存儲在一個(gè)非易失性存儲介質(zhì)(可以是⑶-R0M,U盤,移動硬盤等)中,包括若干指令用以使得一臺計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明實(shí)施例各個(gè)實(shí)施場景所述的方法。
[0084]以上所述,僅是本發(fā)明的較佳實(shí)施例而已,并非對本發(fā)明作任何形式上的限制,雖然本發(fā)明已以較佳實(shí)施例揭露如上,然而并非用以限定本發(fā)明,任何熟悉本專業(yè)的技術(shù)人員,在不脫離本發(fā)明技術(shù)方案范圍內(nèi),當(dāng)可利用上述揭示的技術(shù)內(nèi)容作出些許更動或修飾為等同變化的等效實(shí)施例,但凡是未脫離本發(fā)明技術(shù)方案內(nèi)容,依據(jù)本發(fā)明的技術(shù)實(shí)質(zhì)對以上實(shí)施例所作的任何簡單修改、等同變化與修飾,均仍屬于本發(fā)明技術(shù)方案的范圍內(nèi)。
【權(quán)利要求】
1.一種獲取排名的方法,其特征在于,包括: 獲取實(shí)時(shí)數(shù)據(jù); 統(tǒng)計(jì)所述實(shí)時(shí)數(shù)據(jù)的總用戶數(shù)量; 獲取所述實(shí)時(shí)數(shù)據(jù)在至少一個(gè)數(shù)據(jù)值區(qū)間中的用戶數(shù)量的分布規(guī)律; 將所述總用戶數(shù)量及所述分布規(guī)律作為中間數(shù)據(jù)進(jìn)行儲存; 接收用戶排名查詢請求以及所查詢用戶的實(shí)際數(shù)據(jù)值; 根據(jù)查詢用戶的實(shí)際數(shù)據(jù)值、所述中間數(shù)據(jù)以及概率分布的數(shù)學(xué)規(guī)則,計(jì)算查詢用戶的排名。
2.如權(quán)利要求1所述的獲取排名的方法,其特征在于,所述實(shí)時(shí)數(shù)據(jù)為抽樣獲取的數(shù)據(jù)。
3.如權(quán)利要求1所述的獲取排名方法,其特征在于,所述獲取所述實(shí)時(shí)數(shù)據(jù)在至少一個(gè)數(shù)據(jù)值區(qū)間中的用戶數(shù)量的分布規(guī)律的步驟包括:獲取所述實(shí)時(shí)數(shù)據(jù)中的最低數(shù)據(jù)值和最高數(shù)據(jù)值。
4.如權(quán)利要求3所述的獲取排名的方法,其特征在于,計(jì)算查詢用戶的排名時(shí)依照公式:
P = (m(n2_n)/ (n2_nl))+l 其中,P為查詢用戶的排名,m為實(shí)時(shí)數(shù)據(jù)的總用戶數(shù)量,nl為實(shí)時(shí)數(shù)據(jù)的最低數(shù)據(jù)值,n2為實(shí)時(shí)數(shù)據(jù)的最高數(shù)據(jù)值,η為查詢用戶的實(shí)際數(shù)據(jù)值。
5.如權(quán)利要求1所述的獲取排名的方法,其特征在于,所述獲取所述實(shí)時(shí)數(shù)據(jù)在至少一個(gè)數(shù)據(jù)值區(qū)間中的用戶數(shù)量的分布規(guī)律的步驟包括: 獲取所述實(shí)時(shí)數(shù)據(jù)中的最低數(shù)據(jù)值和最高數(shù)據(jù)值; 在所述最低數(shù)據(jù)值和最高數(shù)據(jù)值之間依次拆分成多個(gè)屬性值區(qū)間; 獲取各個(gè)屬性值區(qū)間的相對最低數(shù)據(jù)值和相對最高數(shù)據(jù)值; 獲取落在所述最低數(shù)據(jù)值到各個(gè)屬性值區(qū)間的相對最高數(shù)據(jù)值之間的用戶數(shù)量。
6.如權(quán)利要求5所述的獲取排名的方法,其特征在于,計(jì)算查詢用戶的排名時(shí)依照公式:
P = (m-1y+ (ky-n) (iy-1x)/ (ky-kx))+l 其中,P為查詢用戶的排名,m為實(shí)時(shí)數(shù)據(jù)的總用戶數(shù)量,IX為落在所述最低數(shù)據(jù)值到查詢用戶所在屬性值區(qū)間的相對最低數(shù)據(jù)值之間的用戶數(shù)量,iy為落在所述最低數(shù)據(jù)值到查詢用戶所在屬性值區(qū)間的相對最高數(shù)據(jù)值之間的用戶數(shù)量,kx為查詢用戶所在屬性值區(qū)間的相對最低數(shù)據(jù)值,ky為查詢用戶所在屬性值區(qū)間的相對最高數(shù)據(jù)值,η為查詢用戶的實(shí)際數(shù)據(jù)值。
7.一種獲取排名的系統(tǒng),其特征在于,包括: 數(shù)據(jù)獲取模塊,用于獲取實(shí)時(shí)數(shù)據(jù); 統(tǒng)計(jì)模塊,用于統(tǒng)計(jì)所述實(shí)時(shí)數(shù)據(jù)的總用戶數(shù)量; 分布規(guī)律獲取模塊,用于獲取所述實(shí)時(shí)數(shù)據(jù)在至少一個(gè)數(shù)據(jù)值區(qū)間中的用戶數(shù)量的分布規(guī)律; 存儲模塊,用于存儲中 間數(shù)據(jù),所述中間數(shù)據(jù)包括所述總用戶數(shù)量及所述分布規(guī)律; 交互模塊,用于與用戶終端進(jìn)行通信;計(jì)算模塊,用于根據(jù)查詢用戶的實(shí)際數(shù)據(jù)值、所述中間數(shù)據(jù)以及概率分布的數(shù)學(xué)規(guī)則,計(jì)算查詢用戶的排名。
8.如權(quán)利要求7所述的獲取排名的系統(tǒng),其特征在于,所述實(shí)時(shí)數(shù)據(jù)為抽樣獲取的數(shù)據(jù)。
9.如權(quán)利要求7所述的獲取排名的系統(tǒng),其特征在于,所述分布規(guī)律獲取模塊進(jìn)一步包括: 數(shù)據(jù)值獲取單元,用于獲取實(shí)時(shí)數(shù)據(jù)中的最低數(shù)據(jù)值和最高數(shù)據(jù)值。
10.如權(quán)利要求9所述的獲取排名的系統(tǒng),其特征在于,所述計(jì)算模塊計(jì)算查詢用戶的排名時(shí)依照公式:
P= (m(n2_n) / (n2_nl))+1 其中,P為查詢用戶的排名,m為實(shí)時(shí)數(shù)據(jù)的總用戶數(shù)量,nl為實(shí)時(shí)數(shù)據(jù)的最低數(shù)據(jù)值,n2為實(shí)時(shí)數(shù)據(jù)的最高數(shù)據(jù)值, η為查詢用戶的實(shí)際數(shù)據(jù)值。
11.如權(quán)利要求7所述的獲取排名的系統(tǒng),其特征在于,所述分布規(guī)律獲取模塊進(jìn)一步包括: 數(shù)據(jù)值獲取單元,用于獲取實(shí)時(shí)數(shù)據(jù)中的最低數(shù)據(jù)值和最高數(shù)據(jù)值; 區(qū)間拆分單元,用于在所述最低數(shù)據(jù)值和最高數(shù)據(jù)值之間依次拆分成多個(gè)屬性值區(qū)間; 相對數(shù)據(jù)值獲取單元,用于獲取各個(gè)屬性值區(qū)間的相對最低數(shù)據(jù)值和相對最高數(shù)據(jù)值; 區(qū)間用戶統(tǒng)計(jì)單元,用于獲取落在所述最低數(shù)據(jù)值到各個(gè)屬性值區(qū)間的相對最高數(shù)據(jù)值之間的用戶數(shù)量。
12.如權(quán)利要求11所述的獲取排名的系統(tǒng),其特征在于,所述計(jì)算模塊計(jì)算查詢用戶的排名時(shí)依照公式:
P = (m-1y+ (ky-n) (iy-1x)/ (ky-kx))+l 其中,P為查詢用戶的排名,m為實(shí)時(shí)數(shù)據(jù)的總用戶數(shù)量,IX為落在所述最低數(shù)據(jù)值到查詢用戶所在屬性值區(qū)間的相對最低數(shù)據(jù)值之間的用戶數(shù)量,iy為落在所述最低數(shù)據(jù)值到查詢用戶所在屬性值區(qū)間的相對最高數(shù)據(jù)值之間的用戶數(shù)量,kx為查詢用戶所在屬性值區(qū)間的相對最低數(shù)據(jù)值,ky為查詢用戶所在屬性值區(qū)間的相對最高數(shù)據(jù)值,η為查詢用戶的實(shí)際數(shù)據(jù)值。
【文檔編號】G06F17/30GK103970768SQ201310034180
【公開日】2014年8月6日 申請日期:2013年1月29日 優(yōu)先權(quán)日:2013年1月29日
【發(fā)明者】張亞圣 申請人:騰訊科技(深圳)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
宣恩县| 镇安县| 白山市| 长乐市| 邻水| 汽车| 江孜县| 凯里市| 东辽县| 蒲江县| 布尔津县| 荣昌县| 蒙阴县| 宜君县| 浦东新区| 海阳市| 乐亭县| 桦甸市| 鲁山县| 祁东县| 德安县| 万荣县| 曲周县| 双鸭山市| 锦州市| 清镇市| 莫力| 呼和浩特市| 孟津县| 平昌县| 靖江市| 新乡县| 泰宁县| 广州市| 平果县| 衡南县| 华容县| 南澳县| 德保县| 太白县| 阳西县|