本申請涉及信息技術(shù)領(lǐng)域,尤其涉及一種滑動窗口業(yè)務(wù)數(shù)據(jù)確定方法及裝置。
背景技術(shù):
隨著信息技術(shù)和計算機(jī)技術(shù)的迅速發(fā)展,很多業(yè)務(wù)都可以在網(wǎng)絡(luò)上進(jìn)行,網(wǎng)絡(luò)上進(jìn)行的業(yè)務(wù)相應(yīng)地會對應(yīng)地產(chǎn)生很多業(yè)務(wù)數(shù)據(jù)。
為了便于分析業(yè)務(wù)的運營情況,經(jīng)常需要基于在時間軸上滑動的滑動窗口,確定滑動窗口在某一時刻時包含的業(yè)務(wù)數(shù)據(jù)的一個或多個統(tǒng)計值,也即,確定滑動窗口對應(yīng)的時間區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)的一個或多個統(tǒng)計值。業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值可以是從對應(yīng)業(yè)務(wù)維度對業(yè)務(wù)數(shù)據(jù)進(jìn)行統(tǒng)計獲得的。比如,對于電子支付業(yè)務(wù),咨詢“轉(zhuǎn)出到賬”可以是電子支付業(yè)務(wù)的一個業(yè)務(wù)維度,其對應(yīng)的業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值可以是咨詢“轉(zhuǎn)出到賬”的用戶數(shù)量,假定將滑動窗口對應(yīng)的時間區(qū)間長度設(shè)置為5分鐘,并按照當(dāng)前時刻相應(yīng)地使滑動窗口滑動,以確定滑動窗口在當(dāng)前時刻時包含的業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值(也即,最近5分鐘內(nèi)咨詢“轉(zhuǎn)出到賬”的用戶數(shù)量)。
在現(xiàn)有技術(shù)中,通常采用單位時間區(qū)間統(tǒng)計值相加的方式,確定滑動窗口在某一時刻時包含的業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值,其中,滑動窗口對應(yīng)的時間區(qū)間包含有多個單位時間區(qū)間,比如,單位時間可以為1分鐘,則5分鐘的滑動窗口可以包含有5個單位時間區(qū)間。具體地,可以實時地確定各單位時間內(nèi)業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值,當(dāng)需要確定滑動窗口在某一時刻時包含的業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值時,可以獲取(如,可以查詢至內(nèi)存中等)滑動窗口對應(yīng)的各單位時間區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值,并通過對獲取的統(tǒng)計值相加,確定出滑動窗口在該時刻時包含的 業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值。
但是,上述采用單位時間區(qū)間統(tǒng)計值相加的方式,所需獲取的數(shù)據(jù)數(shù)目較多,對系統(tǒng)資源的消耗較大。
技術(shù)實現(xiàn)要素:
本申請實施例提供一種滑動窗口數(shù)據(jù)確定方法及裝置,用以解決現(xiàn)有技術(shù)中確定滑動窗口在某一時刻時包含的業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值所采用的方式所需獲取的數(shù)據(jù)數(shù)目較多,對系統(tǒng)資源的消耗較大的問題。
本申請實施例采用下述技術(shù)方案:
本申請實施例提供的一種滑動窗口數(shù)據(jù)確定方法,包括:
獲取滑動窗口在第一時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值;以及
獲取第一區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)的第一統(tǒng)計值,所述第一區(qū)間為所述第一時刻至第二時刻的時間區(qū)間;以及
獲取第二區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)的第二統(tǒng)計值,所述第二區(qū)間的長度不小于所述第一區(qū)間的長度,所述第二區(qū)間起始于所述滑動窗口在第一時刻時的起始時刻;
根據(jù)所述滑動窗口在第一時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值、所述第一統(tǒng)計值和所述第二統(tǒng)計值,確定所述滑動窗口在所述第二時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值。
本申請實施例提供的一種滑動窗口數(shù)據(jù)確定裝置,包括:
獲取模塊,獲取滑動窗口在第一時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值;以及
獲取第一區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)的第一統(tǒng)計值,所述第一區(qū)間為所述第一時刻至第二時刻的時間區(qū)間;以及
獲取第二區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)的第二統(tǒng)計值,所述第二區(qū)間的長度不小于所述第一區(qū)間的長度,所述第二區(qū)間起始于所述滑動窗口在第一時刻時的起始時刻;
確定模塊,根據(jù)所述滑動窗口在第一時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值、所述第一統(tǒng)計值和所述第二統(tǒng)計值,確定所述滑動窗口在所述第二時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值。
本申請實施例采用的上述至少一個技術(shù)方案能夠達(dá)到以下有益效果:第二時刻可以是背景技術(shù)中所述的某一時刻,第一時刻可以是早于第二時刻的時刻,第一區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)即為所述業(yè)務(wù)從第一時刻至第二時刻產(chǎn)生的增量數(shù)據(jù),這種基于增量數(shù)據(jù),確定滑動窗口在第二時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值的方式相比于現(xiàn)有技術(shù),所需獲取的數(shù)據(jù)數(shù)目較少,可以減少對系統(tǒng)資源的消耗,因此,可以部分或全部地解決現(xiàn)有技術(shù)中的問題。
附圖說明
此處所說明的附圖用來提供對本申請的進(jìn)一步理解,構(gòu)成本申請的一部分,本申請的示意性實施例及其說明用于解釋本申請,并不構(gòu)成對本申請的不當(dāng)限定。在附圖中:
圖1為本申請實施例提供的滑動窗口數(shù)據(jù)確定方法的流程示意圖;
圖2為本申請實施例提供的滑動窗口數(shù)據(jù)確定方法的原理示意圖;
圖3為本申請實施例提供的滑動窗口數(shù)據(jù)確定方法的原理的一種詳細(xì)示意圖;
圖4為本申請實施例提供的滑動窗口數(shù)據(jù)確定方法的原理的另一種詳細(xì)示意圖;
圖5為本申請實施例提供的在一種實際應(yīng)用場景下,滑動窗口數(shù)據(jù)確定流程示意圖;
圖6為本申請實施例提供的對應(yīng)于圖1的滑動窗口數(shù)據(jù)確定裝置結(jié)構(gòu)示意圖。
具體實施方式
為使本申請的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本申請具體實施例及相應(yīng)的附圖對本申請技術(shù)方案進(jìn)行清楚、完整地描述。顯然,所描述的實施例僅是本申請一部分實施例,而不是全部的實施例。基于本申請中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本申請保護(hù)的范圍。
以下結(jié)合附圖,對本申請的方案進(jìn)行說明。
圖1為本申請實施例提供的滑動窗口數(shù)據(jù)確定方法的流程示意圖。
圖1中的流程的執(zhí)行主體可以是業(yè)務(wù)相關(guān)的設(shè)備,比如,作為該業(yè)務(wù)的服務(wù)器或客戶機(jī)的設(shè)備等。所述設(shè)備具體可以是個人計算機(jī)、大中型計算機(jī)、計算機(jī)集群中的設(shè)備、手機(jī)、平板電腦、智能手表、車載移動臺等,本申請對作為所述執(zhí)行主體的設(shè)備并不做限定,本申請對所述業(yè)務(wù)的類型和內(nèi)容也不做限定。
通過執(zhí)行圖1中的流程,可以確定滑動窗口在第二時刻時所包含業(yè)務(wù)數(shù)據(jù)在一個或多個業(yè)務(wù)維度的統(tǒng)計值,所述第二時刻可以是當(dāng)前時刻或者早于當(dāng)前時刻的任一時刻。需要說明的是,圖1中的流程中提到的“統(tǒng)計值”均指業(yè)務(wù)數(shù)據(jù)在同一個業(yè)務(wù)維度的統(tǒng)計值,可以針對業(yè)務(wù)數(shù)據(jù)的多個業(yè)務(wù)維度中的每個業(yè)務(wù)維度,分別執(zhí)行圖1中的流程,以確定滑動窗口在第二時刻時所包含業(yè)務(wù)數(shù)據(jù)在所述每個業(yè)務(wù)維度的統(tǒng)計值。本申請對所述業(yè)務(wù)維度的具體內(nèi)容并不做限定,對于不同的業(yè)務(wù),可以有不同的業(yè)務(wù)維度,
圖1中的流程可以包括以下步驟:
S101:獲取滑動窗口在第一時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值。
在本申請實施例中,所述第一時刻可以是早于第二時刻的任一時刻?!盎瑒哟翱谠诘谝粫r刻時”表示的含義可以是:滑動窗口對應(yīng)的時間區(qū)間的終止時刻為第一時刻時。
在本申請實施例中,滑動窗口在第一時刻時所包含業(yè)務(wù)數(shù)據(jù)指:對于滑動窗口在第一時刻時對應(yīng)的時間區(qū)間,屬于該時間區(qū)間的業(yè)務(wù)數(shù)據(jù)。
在本申請實施例中,步驟S101中獲取的統(tǒng)計值可以是預(yù)先保存,以及可以直接拿來(比如,通過查詢獲取、或者通過被推送獲取等)使用的。
具體地,步驟S101中獲取的統(tǒng)計值可以也是預(yù)先采用圖1中的方法確定出來后,再保存的,也即,滑動窗口在第一時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值,與滑動窗口在第二時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值均可以是采用本申請的方案確定出來的,可以根據(jù)已預(yù)先確定的滑動窗口在早于某一時刻(比如,第二時刻)的一個時刻(比如,第一時刻)時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值,確定滑動窗口在所述某一時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值。需要說明的是,若對于早于某一時刻的任意時刻,均尚未確定滑動窗口在所述任意時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值,則可以采用本申請的方案以外的其他方案,確定滑動窗口在所述某一時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值。
在本申請實施例中,滑動窗口在第一時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值可以是預(yù)先保存在執(zhí)行主體上的,也可以是保存在執(zhí)行主體可以訪問的任一其他設(shè)備上的。
S102:獲取第一區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)的第一統(tǒng)計值,所述第一區(qū)間為所述第一時刻至第二時刻的時間區(qū)間。
在本申請實施例中,所述第一區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)即為:所述業(yè)務(wù)在第一時刻至第二時刻的過程中產(chǎn)生的增量數(shù)據(jù)。
需要說明的是,所述第一統(tǒng)計值中的“第一”與步驟S103中所述第二統(tǒng)計值中的“第二”是為了便于描述所起的名字,并沒有實際含義。
若不考慮是否便于描述,則第一區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)的第一統(tǒng)計值也可以稱為:第一區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值;第二區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)的第二統(tǒng)計值也可以稱為:第二區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值。在基于圖1中的方法,確定滑動窗口在第二時刻時所包含業(yè)務(wù)數(shù)據(jù)的在某一業(yè)務(wù)維度的統(tǒng)計值時,步驟S101中所述統(tǒng)計值、步驟S102中所述第一統(tǒng)計值、步驟S103中所述第三統(tǒng)計值這三者均為在所述某一業(yè)務(wù)維度的統(tǒng)計值,區(qū)別在于統(tǒng)計時所基于的業(yè)務(wù)數(shù)據(jù)所屬的時 間區(qū)間不同。
在本申請實施例中,所述第一統(tǒng)計值可以是根據(jù)預(yù)先確定的一個或多個單位時間區(qū)間的內(nèi)業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值確定的,或者,所述第一統(tǒng)計值也可以是直接根據(jù)第一區(qū)間內(nèi)的業(yè)務(wù)數(shù)據(jù)確定的,等等。
S103:獲取第二區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)的第二統(tǒng)計值,所述第二區(qū)間的長度不小于所述第一區(qū)間的長度,所述第二區(qū)間起始于所述滑動窗口在第一時刻時的起始時刻。
在本申請實施例中,所述第二區(qū)間可以終止于滑動窗口在第二時刻時的起始時刻,在這種情況下,第二區(qū)間的長度等于第一區(qū)間的長度,第二區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)未包含在第二時刻時的滑動窗口中。
在本申請實施例中,所述第二區(qū)間也可以終止于滑動窗口在第二時刻時的起始時刻之后的特定時刻,在這種情況下,第二區(qū)間的長度大于第一區(qū)間的長度,第二區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)部分未包含或部分包含在第二時刻時的滑動窗口中。后面會結(jié)合對特定時刻的解釋,對這種情況進(jìn)行詳細(xì)說明,這里先不展開。
在本申請實施例中,步驟S101~S103可以同時執(zhí)行,也可以是基于一定的先后順序分別執(zhí)行。在后一種情況下,本申請對步驟S101~S103執(zhí)行的先后順序并不做限定,比如,可以按照步驟S101、S102、S103的順序執(zhí)行,也可以按照步驟S101、S103、S102的順序執(zhí)行,等等,后一個步驟可以在前一個步驟尚未執(zhí)行完畢時就開始執(zhí)行。
S104:根據(jù)所述滑動窗口在第一時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值、所述第一統(tǒng)計值和所述第二統(tǒng)計值,確定所述滑動窗口在所述第二時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值。
在本申請實施例中,可以確定滑動窗口在第一時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值與第一統(tǒng)計值之和與第二統(tǒng)計值之差,作為所述滑動窗口在所述第二時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值。
需要說明的是,在實際應(yīng)用中,上一段中的運算順序也可以進(jìn)行調(diào)整,并 不影響最后的運算結(jié)果,比如,對于步驟S104,也可以確定滑動窗口在第一時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值與第二統(tǒng)計值之差與第一統(tǒng)計值之和,或者,作為所述滑動窗口在所述第二時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值;或者,也可以確定第一統(tǒng)計值與第二統(tǒng)計值之差與滑動窗口在第一時刻時所包含業(yè)務(wù)數(shù)據(jù)之和,作為所述滑動窗口在所述第二時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值。
為了便于理解,結(jié)合圖2進(jìn)行說明,圖2為本申請實施例提供的滑動窗口數(shù)據(jù)確定方法的原理示意圖。
在圖2中,a為滑動窗口在第一時刻時對應(yīng)的時間區(qū)間,b為第一區(qū)間,c為第二區(qū)間,d為滑動窗口在第二時刻時對應(yīng)的時間區(qū)間。需要說明的是,第二時刻時的滑動窗口本應(yīng)也位于時間軸上,但是由于會與第一時刻時的滑動窗口部分重疊,不便于觀看,因此,在圖2中,并未將第二時刻時的滑動窗口畫在時間軸上,而是向垂直于時間軸的方向平移了一段距離,畫在了時間軸的上方。
可以看到,從時間上來看,d=a+b-c,則這些時間區(qū)間對應(yīng)的統(tǒng)計值之間也具有對應(yīng)的關(guān)系,由于a對應(yīng)的統(tǒng)計值為滑動窗口在第一時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值,b對應(yīng)的統(tǒng)計值為第一統(tǒng)計值,c對應(yīng)的統(tǒng)計值為第二統(tǒng)計值,d對應(yīng)的統(tǒng)計值為滑動窗口在第二時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值,則滑動窗口在第二時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值等于:滑動窗口在第一時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值與第一統(tǒng)計值之和再減去第二統(tǒng)計值。
在本申請實施例中,在確定滑動窗口在第二時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值后,還可以保存確定的該統(tǒng)計值,以便于后續(xù)還可以利用保存的該統(tǒng)計值,確定滑動窗口在晚于第二時刻的時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值。
通過上述方法,第二時刻可以是背景技術(shù)中所述的某一時刻,第一時刻可以是早于第二時刻的時刻,第一區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)即為所述業(yè)務(wù)從第一時刻至第二時刻產(chǎn)生的增量數(shù)據(jù),這種基于增量數(shù)據(jù),確定滑動窗口在第二時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值的方式相比于現(xiàn)有技術(shù),所需獲取的數(shù)據(jù)數(shù)目較少,可以 減少對系統(tǒng)資源的消耗,因此,可以部分或全部地解決現(xiàn)有技術(shù)中的問題。后面還會結(jié)合實例,對技術(shù)效果詳細(xì)說明,這里先不展開。
基于上述方法,本申請實施例還提供了圖1中的方法的一些具體實施方案,以及擴(kuò)展方案,下面進(jìn)行說明。
在本申請實施例中,可以預(yù)先在時間軸上劃分出預(yù)定單位時間區(qū)間。比如,將時間軸上的每1分鐘分別劃分為一個預(yù)定單位時間區(qū)間,則預(yù)先確定各單位時間區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值即為:預(yù)先確定當(dāng)前時刻之前的每分鐘內(nèi)業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值,以及還可以確定當(dāng)前時刻所屬的一分鐘(這一分鐘可能尚未全部度過)內(nèi)業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值)內(nèi)業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值。
需要說明的是,“1分鐘”是預(yù)定單位時間區(qū)間的長度示例,預(yù)定單位時間區(qū)間也可以是其他長度,比如,1秒鐘、10秒鐘、或半分鐘等。
進(jìn)一步地,由于第一區(qū)間、第二區(qū)間均是位于時間軸上的時間區(qū)間,因此,第一區(qū)間、第二區(qū)間是包含在由各預(yù)定單位時間區(qū)間構(gòu)成的區(qū)間內(nèi)的。在這種情況下,對于步驟S102、S103,獲取第一區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)的第一統(tǒng)計值,以及獲取第二區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)的第二統(tǒng)計值,具體可以包括:根據(jù)預(yù)先確定的所述各預(yù)定單位時間區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值,獲取所述第一區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)的第一統(tǒng)計值,以及獲取所述第二區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)的第二統(tǒng)計值。
例如,假定預(yù)先確定了預(yù)定單位時間區(qū)間A內(nèi)業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值為10,預(yù)定單位時間區(qū)間B內(nèi)業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值為6,且第一區(qū)間正好為預(yù)定單位時間區(qū)間A,第二區(qū)間正好為預(yù)定單位時間區(qū)間B。則可以獲取到第一統(tǒng)計值,即為10,以及獲取到第二統(tǒng)計值,即為6。
在實際應(yīng)用中,第一區(qū)間、第二區(qū)間的長度(通常分別為1個預(yù)定單位時間區(qū)間的長度)一般小于或者遠(yuǎn)小于滑動窗口的長度(通常為5個甚至更多個預(yù)定單位時間區(qū)間的長度之和),在這種情況下,對于業(yè)務(wù)數(shù)據(jù)在任一個業(yè)務(wù)維度的統(tǒng)計值,在確定滑動窗口在第二時刻時所包含業(yè)務(wù)數(shù)據(jù)在該業(yè)務(wù)維度的統(tǒng)計值時,采用現(xiàn)有技術(shù)所需獲取的數(shù)據(jù)數(shù)目要大于甚至遠(yuǎn)大于采用本申請的 方案所需獲取的數(shù)據(jù)數(shù)目。
以第一區(qū)間、第二區(qū)間分別為1個預(yù)定單位時間區(qū)間的長度,滑動窗口的長度為5個預(yù)定單位時間區(qū)間的長度之和為例,采用現(xiàn)有技術(shù)所需獲取的數(shù)據(jù)數(shù)目為5個(即為滑動窗口對應(yīng)的5個預(yù)定單位時間區(qū)間分別對應(yīng)的統(tǒng)計值),則采用現(xiàn)有技術(shù)所需獲取的數(shù)據(jù)數(shù)目為3個(即為步驟S101中獲取的統(tǒng)計值、第一區(qū)間對應(yīng)的1個預(yù)定單位時間區(qū)間對應(yīng)的統(tǒng)計值、第二區(qū)間對應(yīng)的1個預(yù)定單位時間區(qū)間對應(yīng)的統(tǒng)計值)。一般地,在獲取這些數(shù)據(jù)時是通過查詢獲取的,則采用現(xiàn)有技術(shù)相應(yīng)地要發(fā)送5個查詢請求,而采用本申請的方案相應(yīng)地只要發(fā)送3個查詢請求,又由于這些查詢請求所請求的數(shù)據(jù)都是預(yù)先保存可以直接獲得,由此可見,相比于現(xiàn)有技術(shù),本申請的方案可以降低系統(tǒng)資源的消耗。
在本申請實施例中,滑動窗口可以基于以下兩種滑動方式中的任一中方式進(jìn)行滑動。
第一種滑動方式,滑動窗口可以實時持續(xù)進(jìn)行滑動,則滑動窗口可以保持終止于當(dāng)前時刻。在這種情況下,“滑動窗口在第一時刻時”表示的含義可以是:滑動窗口對應(yīng)的時間區(qū)間的終止時刻為第一時刻時。優(yōu)點是減少了對滑動窗口所處位置的限制。
第二種滑動方式,滑動窗口一般可以保持與多個連續(xù)的單位時間區(qū)間構(gòu)成的區(qū)間對齊。具體地,滑動窗口可以非實時持續(xù)進(jìn)行滑動,而是可以以預(yù)定單位時間區(qū)間作為周期,定時地進(jìn)行滑動,滑動窗口每當(dāng)當(dāng)前時刻進(jìn)入下一個預(yù)定單位時間區(qū)間時,即滑動一個預(yù)定單位時間區(qū)間,以使得在滑動后,滑動窗口終止于所述下一個預(yù)定單位時間區(qū)間的終止時刻。在這種情況下,“滑動窗口在第一時刻時”表示的含義可以是:滑動窗口對應(yīng)的時間區(qū)間的終止時刻為第一時刻所屬的預(yù)定單位時間區(qū)間的終止時刻時。優(yōu)點是可以根據(jù)各單位時間區(qū)間對應(yīng)的統(tǒng)計值直接獲取到第一統(tǒng)計值和第二統(tǒng)計值,無需進(jìn)行額外處理,或者需進(jìn)行的額外處理很少。
在本申請實施例中,為了便于計算,第一時刻可以為各預(yù)定單位時間區(qū)間中的一個預(yù)定單位時間區(qū)間的終止時刻,更具體的,第一時刻可以為第二時刻所屬的預(yù)定單位時間區(qū)間的前一個預(yù)定單位時間區(qū)間的終止時刻。
進(jìn)一步地,當(dāng)?shù)谝粎^(qū)間的長度為預(yù)定單位時間區(qū)間的長度的正整數(shù)倍時,第二區(qū)間的長度可以等于第一區(qū)間的長度;當(dāng)?shù)谝粎^(qū)間的長度不為預(yù)定單位時間區(qū)間的長度的正整數(shù)倍時,第二區(qū)間的長度可以等于第一區(qū)間補(bǔ)齊至預(yù)定單位時間區(qū)間的長度的最近正整數(shù)倍后的長度。對于后一種情況,第二時刻可以是上述的特定時刻,第二時刻具體可以為當(dāng)前時刻,在晚于當(dāng)前時刻的時間區(qū)間對應(yīng)的統(tǒng)計值為0,因為該時間區(qū)間尚未開始,則。
例如,當(dāng)?shù)谝粎^(qū)間的長度等于預(yù)定單位時間區(qū)間的長度時(也即,當(dāng)?shù)谝粎^(qū)間的長度等于預(yù)定單位時間區(qū)間的長度的1倍時),則第二區(qū)間的長度也等于預(yù)定單位時間區(qū)間的長度。如圖3所示,圖3為本申請實施例提供的滑動窗口數(shù)據(jù)確定方法的原理的一種詳細(xì)示意圖。
在圖3中,將時間軸劃分為預(yù)定單位時間區(qū)間,時間軸上的每一段分別表示一個預(yù)定單位時間區(qū)間??梢钥吹剑瑒哟翱趯?yīng)的時間區(qū)間的長度等于5個預(yù)定單位時間區(qū)間的長度,第一區(qū)間b的長度等于預(yù)定單位時間區(qū)間的長度,則第二區(qū)間c的長度也等于預(yù)定單位時間區(qū)間的長度。
又例如,當(dāng)?shù)谝粎^(qū)間的長度等于預(yù)定單位時間區(qū)間的長度的0.5倍時,第二區(qū)間的長度可以等于第一區(qū)間補(bǔ)齊(是增長而不是縮短)至預(yù)定單位時間區(qū)間的長度的最近正整數(shù)倍后的長度,由于所述最近正整數(shù)倍為1倍,因此第二區(qū)間的長度可以等于預(yù)定單位時間區(qū)間的長度,在這種情況下,第二時刻可以是上述的特定時刻,“滑動窗口在第二時刻時”表示的含義可以是:滑動窗口對應(yīng)的時間區(qū)間的終止時刻為第二時刻所屬的預(yù)定單位時間區(qū)間的終止時刻時。如圖4所示,圖4為本申請實施例提供的滑動窗口數(shù)據(jù)確定方法的原理的另一種詳細(xì)示意圖。
在圖4中,第一區(qū)間的長度等于預(yù)定單位時間區(qū)間的長度的0.5倍,則第 二區(qū)間的長度等于第一區(qū)間補(bǔ)齊至預(yù)定單位時間區(qū)間的長度的最近正整數(shù)倍(也即,1倍)后的長度,則第二區(qū)間的長度等于預(yù)定單位時間區(qū)間的長度。當(dāng)?shù)诙r刻為當(dāng)前時刻時,從第二時刻至第二時刻時的滑動窗口對應(yīng)的時間區(qū)間的終止時刻的區(qū)間對應(yīng)的統(tǒng)計值為0。
在本申請實施例中,第一時刻也可以不為各預(yù)定單位時間區(qū)間中的一個預(yù)定單位時間區(qū)間的終止時刻,而是為各預(yù)定單位時間區(qū)間中的一個預(yù)定單位時間區(qū)間除了起始時刻和終止時刻之外的一個時刻。在這種情況下,一般是采用第一種滑動方式,使滑動窗口滑動的,在這種情況下實施本申請的方案時,也可以不對第一區(qū)間的長度是否為預(yù)定單位時間區(qū)間的長度的正整數(shù)倍的情況進(jìn)行區(qū)別處理,直接使第二區(qū)間的長度等于第一區(qū)間的長度即可。
上面對本申請實施例提供的滑動窗口數(shù)據(jù)確定方法進(jìn)行了說明。為了幫助理解本申請的方案相比于現(xiàn)有技術(shù)的優(yōu)點,本申請實施例還提供了一個實例用于對本申請的方案以及優(yōu)點進(jìn)行詳細(xì)分析,下面進(jìn)行說明。
在該實例中,假定統(tǒng)計值對應(yīng)的業(yè)務(wù)維度為咨詢“轉(zhuǎn)出到賬”,統(tǒng)計值為咨詢“轉(zhuǎn)出到賬”的用戶數(shù)量,獲取數(shù)據(jù)所采用的方式為查詢方式。假定預(yù)定單位時間區(qū)間的長度為1分鐘,第一區(qū)間、第二區(qū)間的長度分別為1分鐘,滑動窗口對應(yīng)的時間區(qū)間的長度為5分鐘,則基于滑動窗口可以確定“咨詢“轉(zhuǎn)出到賬”的5分鐘內(nèi)用戶數(shù)量統(tǒng)計值”??梢灶A(yù)先確定每分鐘內(nèi)咨詢“轉(zhuǎn)出到賬”的用戶數(shù)量統(tǒng)計值(簡稱為:分鐘統(tǒng)計值)
假定第一時刻為10:19,第二時刻為同一天的10:20。則通過執(zhí)行圖1中的流程,可以查詢到10:19時確定的“咨詢“轉(zhuǎn)出到賬”的5分鐘內(nèi)用戶數(shù)量統(tǒng)計值”(也即,滑動窗口在第一時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值),假定為20個,以及可以查詢10:20對應(yīng)的分鐘統(tǒng)計值(也即,第一統(tǒng)計值),假定為10個,以及可以查詢到或確定出10:15對應(yīng)的分鐘統(tǒng)計值(也即,第二統(tǒng)計值),假定為6個,進(jìn)一步地,根據(jù)這幾個統(tǒng)計值,可以確定出10:20時確定的“咨詢“轉(zhuǎn)出到賬”的5分鐘內(nèi)用戶數(shù)量統(tǒng)計值”等于:20+10-6=24個。
圖5為本申請實施例提供的在一種實際應(yīng)用場景(上述實例對應(yīng)的應(yīng)用場景)下,滑動窗口數(shù)據(jù)確定流程示意圖。
在圖5的流程中,第二時刻為當(dāng)前時刻,用字段“LM_WCNT”表示滑動窗口在第一時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值,用字段“CM_CNT”表示第一統(tǒng)計值,用字段“LWM_CNT”表示第二統(tǒng)計值。窗口統(tǒng)計結(jié)果即為:滑動窗口在第二時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值。
為了便于比較,采用每秒查詢率(Queries Per Second,QPS)和每秒事務(wù)處理量(Transaction Per Second,TPS)來度量本申請的方案與現(xiàn)有技術(shù)對系統(tǒng)資源的消耗。QPS為每秒鐘系統(tǒng)能響應(yīng)的查詢數(shù)據(jù)量,比如,系統(tǒng)每秒能處理100個查詢請求,則當(dāng)前的QPS為100;TPS為每秒鐘系統(tǒng)能處理的交易或事務(wù)的數(shù)量,比如,系統(tǒng)每秒能處理1000個查詢請求,則當(dāng)前的TPS為1000。
當(dāng)采用現(xiàn)有技術(shù)(單位時間區(qū)間統(tǒng)計值相加的方式),確定第二時刻(假定為當(dāng)前時刻)滑動窗口在所述第二時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值時,其中,第一時刻為當(dāng)前時刻的前一分鐘的時刻。假定需要確定統(tǒng)計值的業(yè)務(wù)維度一共有10萬個,滑動窗口為30分鐘,預(yù)定單位時間區(qū)間為1分鐘,則每分鐘需要查詢30*10萬=300萬條數(shù)據(jù),也即,每分鐘需要系統(tǒng)處理300萬個查詢請求,每條數(shù)據(jù)分別為滑動窗口中的某一分鐘內(nèi)業(yè)務(wù)數(shù)據(jù)在某一個維度的統(tǒng)計值。
則QPS為300萬/60秒=5萬/秒。假定每條數(shù)據(jù)大小約為0.2KB,則網(wǎng)絡(luò)開銷大概需要0.5GB左右。TPS=10萬/60=1666。而且,若滑動窗口變大,則,QPS還會相應(yīng)地增大。
而當(dāng)采用諸如上述實例中的滑動窗口數(shù)據(jù)確定方法,確定第二時刻(假定為當(dāng)前時刻)滑動窗口在所述第二時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值時,其中,第一時刻為當(dāng)前時刻的前一分鐘的時刻。假定需要確定統(tǒng)計值的業(yè)務(wù)維度一共有10萬個,滑動窗口為30分鐘,預(yù)定單位時間區(qū)間為1分鐘,則每分鐘需要查詢10萬(每條數(shù)據(jù)分別為滑動窗口在第一時刻時所包含業(yè)務(wù)數(shù)據(jù)在某一個業(yè)務(wù)維度的統(tǒng)計值)+10萬(每條數(shù)據(jù)分別為某一個業(yè)務(wù)維度對應(yīng)的第一統(tǒng)計 值)+10萬(每條數(shù)據(jù)分別為某一個業(yè)務(wù)維度對應(yīng)的第二統(tǒng)計值)=30萬條數(shù)據(jù),也即,每分鐘需要系統(tǒng)處理30萬個查詢請求。
則QPS為30萬/60秒=5千/秒。TPS=10萬/60=1666。而且,若滑動窗口變大,QPS和TPS均不會增大。
由此可見,本申請的方案相比于現(xiàn)有技術(shù),可以減少需查詢的數(shù)據(jù)數(shù)目,進(jìn)而可以減少對系統(tǒng)資源的消耗。
進(jìn)一步地,目前,除了背景技術(shù)中提到的單位時間區(qū)間統(tǒng)計值相加的現(xiàn)有技術(shù)以外,還有第二種現(xiàn)有技術(shù),第二種現(xiàn)有技術(shù)采用累計值相相減得到差值的方式,確定滑動窗口在第二時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值。本申請的方案相比于第二種現(xiàn)有技術(shù),可以使TPS減半,CPU開銷也會減半,從而也實現(xiàn)了減少對系統(tǒng)資源的消耗。下面進(jìn)行說明。
當(dāng)采用第二種現(xiàn)有技術(shù)時,假定第二時刻為當(dāng)前時刻,滑動窗口為5分鐘,單位時間區(qū)間為1分鐘??梢灶A(yù)先確定各預(yù)定單位時間區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值;查詢上一分鐘時的業(yè)務(wù)數(shù)據(jù)的累計值以及當(dāng)前時刻的分鐘統(tǒng)計值至內(nèi)存中;將上一分鐘時的業(yè)務(wù)數(shù)據(jù)的累計值加上當(dāng)前時刻的分鐘統(tǒng)計值,得到當(dāng)前時刻的業(yè)務(wù)數(shù)據(jù)的累計值;查詢當(dāng)前時刻推需要窗口計算時間的累計值(也即,5分鐘前的業(yè)務(wù)數(shù)據(jù)的累計值)至內(nèi)存中;將當(dāng)前時刻的業(yè)務(wù)數(shù)據(jù)的累計值減去5分鐘前的業(yè)務(wù)數(shù)據(jù)的累計值,確定出滑動窗口在當(dāng)前時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值;保存確定出的累計值和統(tǒng)計值。
采用第二種現(xiàn)有技術(shù)時,假定需要確定統(tǒng)計值的業(yè)務(wù)維度一共有10萬個,則每分鐘需要查詢30*10萬=300萬條數(shù)據(jù),也即,每分鐘需要系統(tǒng)處理300萬個查詢請求,每條數(shù)據(jù)分別為滑動窗口中的某一分鐘內(nèi)業(yè)務(wù)數(shù)據(jù)在某一個維度的統(tǒng)計值。則每分鐘需要查詢10萬(每條數(shù)據(jù)分別為上一分鐘時的業(yè)務(wù)數(shù)據(jù)在某一個業(yè)務(wù)維度的累計值)+10萬(每條數(shù)據(jù)分別為某一個業(yè)務(wù)維度對應(yīng)的當(dāng)前時刻的分鐘統(tǒng)計值)+10萬(每條數(shù)據(jù)分別為5分鐘前的業(yè)務(wù)數(shù)據(jù)在某一個業(yè)務(wù)維度的累計值)=30萬條數(shù)據(jù),也即,每分鐘需要系統(tǒng)處理30萬個查 詢請求。
則QPS為30萬/60秒=5千/秒。TPS=10萬*2/60=3333。而且,若滑動窗口變大,QPS和TPS均不會增大。
由此可見,相比于第二種現(xiàn)有技術(shù),本申請的方案可以使TPS減半。具體的,本申請的方案要計算的指標(biāo)有滑動窗口在第一時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值這一種,至于第一統(tǒng)計值和第二統(tǒng)計值一般現(xiàn)成可用,可以不用計算;而第二種現(xiàn)有技術(shù)要計算的指標(biāo)至少有上一分鐘時的業(yè)務(wù)數(shù)據(jù)的累計值、5分鐘前的業(yè)務(wù)數(shù)據(jù)的累計值這兩種,至于分鐘統(tǒng)計值一般現(xiàn)成可用,可以不用計算。因此,本申請的方案在計算過程中減少了一個指標(biāo)計算(指標(biāo)減半),則TPS減半,CPU開銷也減半,從而也實現(xiàn)了減少對系統(tǒng)資源的消耗。
以上為本申請實施例提供的滑動窗口數(shù)據(jù)確定方法,基于同樣的思路,本申請實施例還提供相應(yīng)的滑動窗口數(shù)據(jù)確定裝置,如圖6所示。
圖6為本申請實施例提供的對應(yīng)于圖1的滑動窗口數(shù)據(jù)確定裝置結(jié)構(gòu)示意圖,包括:
獲取模塊601,獲取滑動窗口在第一時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值;以及
獲取第一區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)的第一統(tǒng)計值,所述第一區(qū)間為所述第一時刻至第二時刻的時間區(qū)間;以及
獲取第二區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)的第二統(tǒng)計值,所述第二區(qū)間的長度不小于所述第一區(qū)間的長度,所述第二區(qū)間起始于所述滑動窗口在第一時刻時的起始時刻;
確定模塊602,根據(jù)所述滑動窗口在第一時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值、所述第一統(tǒng)計值和所述第二統(tǒng)計值,確定所述滑動窗口在所述第二時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值。
可選地,所述第一區(qū)間、所述第二區(qū)間包含在由各預(yù)定單位時間區(qū)間構(gòu)成的區(qū)間內(nèi),獲取模塊601,根據(jù)預(yù)先確定的所述各預(yù)定單位時間區(qū)間內(nèi)業(yè)務(wù)數(shù) 據(jù)的統(tǒng)計值,獲取所述第一區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)的第一統(tǒng)計值,以及獲取所述第二區(qū)間內(nèi)業(yè)務(wù)數(shù)據(jù)的第二統(tǒng)計值。
可選地,所述第一時刻為所述各預(yù)定單位時間區(qū)間中的一個預(yù)定單位時間區(qū)間的終止時刻。
可選地,當(dāng)所述第一區(qū)間的長度為所述預(yù)定單位時間區(qū)間的長度的正整數(shù)倍時,所述第二區(qū)間的長度等于所述第一區(qū)間的長度;
當(dāng)所述第一區(qū)間的長度不為所述預(yù)定單位時間區(qū)間的長度的正整數(shù)倍時,所述第二區(qū)間的長度等于所述第一區(qū)間補(bǔ)齊至所述預(yù)定單位時間區(qū)間的長度的最近正整數(shù)倍后的長度。
可選地,所述第二區(qū)間的長度等于所述第一區(qū)間的長度。
可選地,確定模塊602,確定所述滑動窗口在第一時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值與所述第一統(tǒng)計值之和與所述第二統(tǒng)計值之差,作為所述滑動窗口在所述第二時刻時所包含業(yè)務(wù)數(shù)據(jù)的統(tǒng)計值。
圖6中的裝置具體可以位于所述業(yè)務(wù)相關(guān)的設(shè)備上。
本申請?zhí)峁┑难b置是與本申請?zhí)峁┑姆椒ㄒ灰粚?yīng)的,因此,裝置也具有與對應(yīng)的方法類似的有益技術(shù)效果,由于上面已經(jīng)對各方法的有益技術(shù)效果進(jìn)行了詳細(xì)說明,因此,這里不再贅述對應(yīng)的各裝置的有益技術(shù)效果。
本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實施例提供為方法、系統(tǒng)、或計算機(jī)程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實施例、完全軟件實施例、或結(jié)合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機(jī)可用程序代碼的計算機(jī)可用存儲介質(zhì)(包括但不限于磁盤存儲器、CD-ROM、光學(xué)存儲器等)上實施的計算機(jī)程序產(chǎn)品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、設(shè)備(系統(tǒng))、和計算機(jī)程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計算機(jī)程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合。提供這些計算機(jī)程序指令到通用計算機(jī)、專用計算機(jī)、嵌入式 處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個機(jī)器,使得通過計算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中預(yù)定的功能的裝置。
這些計算機(jī)程序指令也可存儲在能引導(dǎo)計算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計算機(jī)可讀存儲器中,使得存儲在該計算機(jī)可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中預(yù)定的功能。
這些計算機(jī)程序指令也可裝載到計算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計算機(jī)實現(xiàn)的處理,從而在計算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中預(yù)定的功能的步驟。
在一個典型的配置中,計算設(shè)備包括一個或多個處理器(CPU)、輸入/輸出接口、網(wǎng)絡(luò)接口和內(nèi)存。
內(nèi)存可能包括計算機(jī)可讀介質(zhì)中的非永久性存儲器,隨機(jī)存取存儲器(RAM)和/或非易失性內(nèi)存等形式,如只讀存儲器(ROM)或閃存(flash RAM)。內(nèi)存是計算機(jī)可讀介質(zhì)的示例。
計算機(jī)可讀介質(zhì)包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術(shù)來實現(xiàn)信息存儲。信息可以是計算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序的模塊或其他數(shù)據(jù)。計算機(jī)的存儲介質(zhì)的例子包括,但不限于相變內(nèi)存(PRAM)、靜態(tài)隨機(jī)存取存儲器(SRAM)、動態(tài)隨機(jī)存取存儲器(DRAM)、其他類型的隨機(jī)存取存儲器(RAM)、只讀存儲器(ROM)、電可擦除可編程只讀存儲器(EEPROM)、快閃記憶體或其他內(nèi)存技術(shù)、只讀光盤只讀存儲器(CD-ROM)、數(shù)字多功能光盤(DVD)或其他光學(xué)存儲、磁盒式磁帶,磁帶磁磁盤存儲或其他磁性存儲設(shè)備或任何其他非傳輸介質(zhì),可用于存儲可以被計算設(shè)備訪問的信息。按照本文中的界定,計算機(jī)可讀介質(zhì)不包括暫存電腦可讀媒體(transitory media),如調(diào)制的數(shù)據(jù)信號和載波。
還需要說明的是,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、商品或者設(shè)備中還存在另外的相同要素。
本領(lǐng)域技術(shù)人員應(yīng)明白,本申請的實施例提供為方法、系統(tǒng)或計算機(jī)程序產(chǎn)品。因此,本申請可采用完全硬件實施例、完全軟件實施例或結(jié)合軟件和硬件方面的實施例的形式。而且,本申請可采用在一個或多個其中包含有計算機(jī)可用程序代碼的計算機(jī)可用存儲介質(zhì)(包括但不限于磁盤存儲器、CD-ROM、光學(xué)存儲器等)上實施的計算機(jī)程序產(chǎn)品的形式。
以上所述僅為本申請的實施例而已,并不用于限制本申請。對于本領(lǐng)域技術(shù)人員來說,本申請可以有各種更改和變化。凡在本申請的精神和原理之內(nèi)所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本申請的權(quán)利要求范圍之內(nèi)。