TWI677210B - 一種企業物件的資訊加載方法和裝置 - Google Patents

一種企業物件的資訊加載方法和裝置 Download PDF

Info

Publication number
TWI677210B
TWI677210B TW104142101A TW104142101A TWI677210B TW I677210 B TWI677210 B TW I677210B TW 104142101 A TW104142101 A TW 104142101A TW 104142101 A TW104142101 A TW 104142101A TW I677210 B TWI677210 B TW I677210B
Authority
TW
Taiwan
Prior art keywords
sub
time period
data
statistical
enterprise
Prior art date
Application number
TW104142101A
Other languages
English (en)
Other versions
TW201703459A (zh
Inventor
宋卓
李�雨
Original Assignee
香港商阿里巴巴集團服務有限公司
Alibaba Group Services Limited
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 香港商阿里巴巴集團服務有限公司, Alibaba Group Services Limited filed Critical 香港商阿里巴巴集團服務有限公司
Publication of TW201703459A publication Critical patent/TW201703459A/zh
Application granted granted Critical
Publication of TWI677210B publication Critical patent/TWI677210B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/142Network analysis or design using statistical or mathematical methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • H04L43/067Generation of reports using time frame reporting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Environmental & Geological Engineering (AREA)
  • Debugging And Monitoring (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)

Abstract

本申請實施例提供了一種企業物件的資訊加載方法和裝置,該方法包括:獲取一個或多個企業物件對應的一個或多個資源占用資料;針對每個資源占用資料,在所述企業物件對應的統計時間段內,將所述資源占用資料累積至預設的儲存物件中;在所述企業物件對應的更新時間段內,對在所述儲存物件中已累積的資源占用資料進行排序;加載排序後的一個或多個資源占用資料。本申請實施例在大量資料、高並行、高壓力的情況下,適用與時間相關的統計。

Description

一種企業物件的資訊加載方法和裝置
本申請涉及計算機處理技術領域,特別是涉及一種企業物件的資訊加載方法和一種企業物件的資訊加載裝置。
隨著網路科技的快速發展,各種應用服務、網路企業,如即時通訊、搜索等,得到了快速的發展。
為了對各種應用服務、網路企業進行監控,往往需要按照時間在操作系統內核中按照資源占用情況等對所有進程進行排序(top),如統計系統的連接情況(netstat),以及內存記憶體占用情況(slabtop)等等。
在高性能的計算機中,百萬級別甚至更多的統計物件越來越普遍。
例如,在諸如即時通訊、搜索等大流量的企業以及雲計算基礎服務(IaaS)中,常常出現單計算機達到百萬級別甚至更多的連接數的情形。
這種百萬級別的統計物件的情形下,通常需要對百萬級別的統計物件進行實時的統計,比如,從百萬級別的連接中,統計流量最高的一百個連接。
目前統計的方式有很多,和單位時間相關的統計常常基於定時器。
以流量統計為例,為了追踪每個連接在一秒鐘內的流量情況,可能需要在每個連接建立的時候啟動定時器,並設置逾時時間為1秒鐘,這樣,每過1秒定時器逾時的時候,就計算上一秒的流量,再進行排序。
這種基於定時器進行統計的方式,在統計物件較少的情況下尚可接受,但是,由於基於定時器的方式需要中斷上下文進行遍歷,在百萬級別甚至更多的統計物件時執行如此多的定時器逾時操作,而且定時時間一般很短,這種定時操作會非常頻繁,很可能同時多個連接的定時器發生逾時,此時計算機的性能消耗十分巨大,甚至無法承受導致當機。
並且,目前的統計方式分散在內核各個角落的統計,當系統負載加大,統計模組自身的損耗也會更多,非自律搶占過多的資源,減少正常的企業模組的資源消耗,導致正常的企業模組的性能低下。
此外,目前的統計方式一般都是根據特定的場景(如流量、儲存、內存記憶體等)單獨進行統計,無法適用與其他的企業場景。
還有,目前的統計方式在企業模組熱升級時,之前的統計資訊可能會丟失,重新初始化統計邏輯本身,也是非常耗時的。
鑒於上述問題,提出了本申請實施例以便提供一種克服上述問題或者至少部分地解決上述問題的一種企業物件的資訊加載方法和相應的一種企業物件的資訊加載裝置。
本申請實施例公開了一種企業物件的資訊加載方法,包括:獲取一個或多個企業物件對應的一個或多個資源占用資料;針對每個資源占用資料,在所述企業物件對應的統計時間段內,將所述資源占用資料累積至預設的儲存物件中;在所述企業物件對應的更新時間段內,對在所述儲存物件中已累積的資源占用資料進行排序;加載排序後的一個或多個資源占用資料。
優選地,在一個時間軸上包括一個或多個連續的統計時間段,每個統計時間段包括連續的N個子統計時間段,所述儲存物件具有N個子儲存物件,一個子儲存物件儲存一個子統計時間段內的資源占用資料,N為正整數。
優選地,所述在所述企業物件對應的統計時間段內,將所述資源占用資料累積至預設的儲存物件中的步驟包括:判斷所述資源占用資料所屬的子統計時間段;當所述資源占用資料屬於當前子統計時間段時,將所述資源占用資料累加至所述子統計時間段對應的子儲存物 件中。
優選地,所述在所述企業物件對應的統計時間段內,將所述資源占用資料累積至預設的儲存物件中還包括:當所述資源占用資料屬於下一子統計時間段時,為所述子統計時間段分配子儲存物件;將所述資源占用資料更新至所述子儲存物件中。
優選地,所述資源占用資料具有關聯的推送時間戳,所述子儲存物件中具有關聯的統計時間戳;所述判斷所述資源占用資料所屬的子統計時間段的步驟包括:計算所述推送時間戳與最新的統計時間戳之間的第一時間差;判斷所述第一時間是否大於與所述子統計時間段值相等的統計時間閾值;若是,則確認所述資源占用資料屬於下一子統計時間段;若否,則確認所述資源占用資料屬於當前子統計時間段。
優選地,所述在所述企業物件對應的統計時間段內,將所述資源占用資料累積至預設的儲存物件中的步驟還包括:將所述資源占用資料關聯的推送時間戳設置為統計時間戳。
優選地,所述在所述企業物件對應的更新時間段內, 對在所述儲存物件中已累積的資源占用資料進行排序的步驟包括:判斷所述資源占用資料所屬的更新時間段;當所述資源占用資料屬於下一更新時間段時,將在所述企業物件對應的更新時間段內,所述儲存物件中已累積的資源占用資料寫入所述資源占用資料對應的企業統計表中;在所述企業統計表中獲得排序在前的一個或多個資源占用資料。
優選地,所述資源占用資料具有關聯的推送時間戳,所述儲存物件具有關聯的更新時間戳;所述判斷所述資源占用資料所屬的更新時間段的步驟包括:計算所述推送時間戳與最新的更新時間戳之間的第二時間差;判斷所述第二時間差是否大於與所述更新時間段值相等的更新時間閾值;若是,則確認所述資源占用資料屬於下一更新時間段;若否,則確認所述資源占用資料屬於當前更新時間段。
優選地,所述將在所述企業物件對應的更新時間段內,所述儲存物件中已累積的資源占用資料寫入所述資源占用資料對應的企業統計表中的步驟包括: 計算屬於所述企業物件對應的更新時間段的子統計時間段,所對應的子儲存物件中已累積的資源占用資料之和;將所述已累積的資源占用資料之和寫入所述資源占用資料對應的企業統計表中。
優選地,所述在所述企業物件對應的更新時間段內,對在所述儲存物件中已累積的資源占用資料進行排序的步驟還包括:將所述資源占用資料關聯的推送時間設置為更新時間戳。
優選地,在內核層中儲存有樣品物件,所述樣品物件包括一個或多個企業統計表,所述企業統計表記載有排序的結果;所述加載排序後的一個或多個資源占用資料的步驟包括:在應用層中透過預設的介面,讀取位於內核層中的樣品物件,以獲得一個或多個企業統計表;顯示在所述一個或多個企業統計表中,排序在前的一個或多個資源占用資料。
優選地,該方法還包括:在熱升級時,將所述儲存物件駐留在內存記憶體中;註銷所述企業物件對應的樣品物件和所述樣品物件包括的一個或多個企業統計表,其中,所述企業統計表記載有排序的結果。
本申請實施例還公開了一種企業物件的資訊加載裝置,包括:資料獲取模組,用於獲取一個或多個企業物件對應的一個或多個資源占用資料;資料累積模組,用於針對每個資源占用資料,在所述企業物件對應的統計時間段內,將所述資源占用資料累積至預設的儲存物件中;資料排序模組,用於在所述企業物件對應的更新時間段內,對在所述儲存物件中已累積的資源占用資料進行排序;資料加載模組,用於加載排序後的一個或多個資源占用資料。
優選地,在一個時間軸上包括一個或多個連續的統計時間段,每個統計時間段包括連續的N個子統計時間段,所述儲存物件具有N個子儲存物件,一個子儲存物件儲存一個子統計時間段內的資源占用資料,N為正整數。
優選地,所述資料累積模組包括:子統計時間段判斷子模組,用於判斷所述資源占用資料所屬的子統計時間段;資料累加子模組,用於在所述資源占用資料屬於當前子統計時間段時,將所述資源占用資料累加至所述子統計時間段對應的子儲存物件中。
優選地,所述資料累積模組還包括:子儲存物件分配子模組,用於在所述資源占用資料屬 於下一子統計時間段時,為所述子統計時間段分配子儲存物件;資料更新子模組,用於將所述資源占用資料更新至所述子儲存物件中。
優選地,所述資源占用資料具有關聯的推送時間戳,所述子儲存物件中具有關聯的統計時間戳;所述子統計時間段判斷子模組包括:第一時間差計算子模組,用於計算所述推送時間戳與最新的統計時間戳之間的第一時間差;統計時間閾值判斷子模組,用於判斷所述第一時間是否大於與所述子統計時間段值相等的統計時間閾值;若是,則調用第一確認子模組,若否,則調用第二確認子模組;第一確認子模組,用於確認所述資源占用資料屬於下一子統計時間段;第二確認子模組,用於確認所述資源占用資料屬於當前子統計時間段。
優選地,所述資料累積模組還包括:統計時間戳設置子模組,用於將所述資源占用資料關聯的推送時間戳設置為統計時間戳。
優選地,所述資料排序模組包括:更新時間段判斷子模組,用於判斷所述資源占用資料所屬的更新時間段;企業統計表寫入子模組,用於在所述資源占用資料屬 於下一更新時間段時,將在所述企業物件對應的更新時間段內,所述儲存物件中已累積的資源占用資料寫入所述資源占用資料對應的企業統計表中;排序獲得子模組,用於在所述企業統計表中獲得排序在前的一個或多個資源占用資料。
優選地,所述資源占用資料具有關聯的推送時間戳,所述儲存物件具有關聯的更新時間戳;所述更新時間段判斷子模組包括:第二時間差計算子模組,用於計算所述推送時間戳與最新的更新時間戳之間的第二時間差;更新時間閾值判斷子模組,用於判斷所述第二時間差是否大於與所述更新時間段值相等的更新時間閾值;若是,則調用第三確認子模組,若否,則調用第四確認子模組;第三確認子模組,用於確認所述資源占用資料屬於下一更新時間段;第四確認子模組,用於確認所述資源占用資料屬於當前更新時間段。
優選地,所述企業統計表寫入子模組包括:和計算子模組,用於計算屬於所述企業物件對應的更新時間段的子統計時間段,所對應的子儲存物件中已累積的資源占用資料之和;和寫入子模組,用於將所述已累積的資源占用資料之和寫入所述資源占用資料對應的企業統計表中。
優選地,所述資料排序模組還包括:更新時間戳設置子模組,用於將所述資源占用資料關聯的推送時間設置為更新時間戳。
優選地,在內核層中儲存有樣品物件,所述樣品物件包括一個或多個企業統計表,所述企業統計表記載有排序的結果;所述資料加載模組包括:樣品物件讀取子模組,用於在應用層中透過預設的介面,讀取位於內核層中的樣品物件,以獲得一個或多個企業統計表;排序結果顯示子模組,用於顯示在所述一個或多個企業統計表中,排序在前的一個或多個資源占用資料。
優選地,該裝置還包括:駐留模組,用於在熱升級時,將所述儲存物件駐留在內存記憶體中;註銷模組,用於註銷所述企業物件對應的樣品物件和所述樣品物件包括的一個或多個企業統計表,其中,所述企業統計表記載有排序的結果。
本申請實施例包括以下優點:本申請實施例對企業物件的資源占用資料,在相應的統計時間段內累積,在相應的更新時間段,對已累積的資源占用資料進行排序。
其一、不存在定時器,不需要中斷上下文進行遍歷,大大降低了性能消耗; 其二、企業物件上下文基於無鎖的方式推送資源占用資料,資源占用資料的排序也是針對單個處理器的,也是無鎖的結構,而鎖是影響性能的關鍵因素,無所的統計也大大降低了性能消耗;其三、可以按照企業需求調節儲存時間段和更新時間段等值,即統計效率可調節,統計的彈性高,可以適配多種企業類型,同時使得整體性能損耗高度可控,避免非自律搶占過多的資源,保證正常的企業模組的資源消耗,保證正常的企業模組的性能;其四、支持並行對企業物件的資源占用資料進行統計;基於上述四點,本申請實施例在大量資料、高並行、高壓力的情況下,適用與時間相關的統計。
本申請實施例在熱升級時,駐留儲存物件、註銷樣品物件和企業統計表,避免了統計資訊的丟失、避免初始化統計邏輯本身,减少了熱升級耗時。
401‧‧‧資料獲取模組
402‧‧‧資料累積模組
403‧‧‧資料排序模組
404‧‧‧資料加載模組
圖1是本申請的一種企業物件的資訊加載方法實施例的步驟流程圖;圖2是本申請的一種系統的層次架構示意圖;圖3A和圖3B是本申請的一種時間軸的示例圖;圖4是本申請的一種企業物件的資訊加載裝置實施例的結構方塊圖。
為使本申請的上述目的、特徵和優點能够更加明顯易懂,下面結合附圖和具體實施方式對本申請作進一步詳細的說明。
參照圖1,示出了本申請的一種企業物件的資訊加載方法實施例的步驟流程圖,具體可以包括如下步驟:步驟101,獲取一個或多個企業物件對應的一個或多個資源占用資料;如圖2所示,本申請實施例可以應用分層架構,即內核層(Kernel)和應用層(User)。
其中,內核層(Kernel)可以為不同操作系統的內核,例如,*nux(如linux)、*bsd等等,本申請實施例對此不加以限制。
在內核層(Kernel)中,統計模組(Topstat)可以用於對企業物件(如連接、進程等)按照企業需求(如內存記憶體、流量、CPU資源等)進行統計,並支持並行操作(即並行執行步驟101、步驟102、步驟103)。
在統計模組(Topstat)中,動態統計模組(Dynamic)是DR算法的載體,可以用於進行與時間相關的統計,即在本申請實施例中,可以在內核層(Kernel)中基於DR(Dynamic Recall,動態回溯)算法進行實時統計。
靜態統計模組(Static)可以用於進行與時間無關的 統計,例如,接收到的總的包數。
在本申請實施例中,可以透過企業物件在應用時所涉及的觀察組件(Observer)獲取資源占用資料,該資源占用資料,可以為企業物件在應用時、與其占用的設備資源(如流量、CPU、內存記憶體等)相關的資料。
觀察組件(Observer),如Observer1、Observer2,是攜帶被統計的企業物件的子系統(子模組),可以是內核子系統,也可以是內核層(Kernel)中的其他使用統計模組(Topstat)的企業模組。
例如,在統計連接的流量時,觀察組件(Observer)相當於內核層(Kernel)中一個網路子模組,如TCP(Transmission Control Protocol,傳輸控制協定)協定堆疊,裡面包含連接相關的管理和資訊,所推送(push)的資源占用資料可以為接收到的資料包的數量(delta),也可以為包的體積大小,還可以為延時的大小等等。
又例如,對於CPU資源,該資源占用資料可以為磁碟I/O,對於內存記憶體,該資源占用資料可以為讀/寫速度,等等。
觀察組件(Observer)在安裝時透過註冊(Register)接入統計模組(Topstat),並向統計模組(Topstat)推送(push)資源占用資料,在卸載時透過註銷(Unregister)撤出統計模組(Topstat)。
需要說明的是,本領域技術人員可以根據實際需求設定資源占用資料的推送頻率,透過資源占用資料的推送頻 率對統計速度進行調節,即可以透過加大資源占用資料的推送頻率提高統計的速度,也可以透過减小資源占用資料的推送頻率降低統計的速度。
例如,當一個連接收到資料包的時候,觀察組件(Observer)就可以推送(push)數量為1的資源占用資料,也可以累加收到一個閥值才推送(push),如推送(push)數量為100的資源占用資料。
一般情況下,企業物件一直在應用,其對應的資源占用資料是持續的,則在本申請實施例中,可以並行多個獲取企業物件的資源占用資料,持續獲取一個企業物件的多個資源占用資料。
步驟102,針對每個資源占用資料,在所述企業物件對應的統計時間段內,將所述資源占用資料累積至預設的儲存物件中; 如圖2所示,本申請實施例可以在觀察組件(Observer)加載時,在內核層(Kernel)中為該觀察組件(Observer)註冊儲存物件(Object)。
在儲存物件(Object)中可以保存每個企業物件的歷史資訊、統計時間戳、累加值等上下文。
在本申請實施例中,為了適應不同的企業需求,可以為每種企業的統計設定統計時間段(Period),在該統計時間段(Period)內累積資源占用資料至儲存物件(Object)中。
統計時間段(Period)是邏輯意義上的計量單位,其 可以為任意的時間點之間的時間範圍,在一個時間軸(TimeLine)上,可以包括一個或多個連續的統計時間段(Period)。
如圖3A所示,在時間軸300上,包括連續的統計時間段(Period)301、統計時間段(Period)302。
在實際應用中,每個統計時間段(Period)可以包括連續的N個子統計時間段(Sub),所述儲存物件(Object)可以具有N個子儲存物件,一個子儲存物件可以儲存一個子統計時間段(Sub)內的資源占用資料,N為正整數。
需要說明的是,儲存物件(Object)可以採用bitmap等數組實現類似環形佇列,循環儲存子統計時間段(Sub)所儲存的資源占用資料。即儲存物件(Object)中的子統計時間段(Sub)所儲存的資源占用資料可以屬於同一個統計時間段(Period),也可以屬於不同的統計時間段(Period),本申請實施例對此不加以限制。
例如,如圖3B所示,統計時間段(Period)301包括連續的子統計時間段(Sub)3011和子統計時間段(Sub)3012,統計時間段(Period)302包括連續的子統計時間段(Sub)3021和子統計時間段(Sub)3022。
儲存物件(Object)305包括子儲存物件3051和子儲存物件3052,子儲存物件3051可以儲存子統計時間段(Sub)3011、子統計時間段(Sub)3012、子統計時間段(Sub)3021和子統計時間段(Sub)3022中任一時間段 的資源占用資料,子儲存物件3052也可以儲存子統計時間段(Sub)3011、子統計時間段(Sub)3012、子統計時間段(Sub)3021和子統計時間段(Sub)3022中任一時間段的資源占用資料。
此外,本領域技術人員可以根據實際需要,對儲存物件(Object)中的子儲存物件數量進行調整,以適應不同企業的統計精度的需要。
在本申請的一種優選實施例中,步驟102可以包括如下子步驟:子步驟S11,判斷所述資源占用資料所屬的子統計時間段;在本申請實施例中,以更細尺度的子統計時間段(Sub)累積資源占用資料,可以平滑累積的資源占用資料,提高統計的準確率,避免隨著統計的窗口滑動會出現資料突然升高或者降低的情況。
在本申請實施例的一種優選示例中,所述資源占用資料可以具有關聯的推送時間戳,所述子儲存物件中可以具有關聯的統計時間戳;其中,該推送時間戳可以在推送該資源占用資料時打上,即推送該資源占用資料的時間,也可以在接收該資源占用資料時打上,即接收該資源占用資料的時間;該統計時間戳可以在首次將資源占用資料寫入該子儲存物件時打上,即表徵上一子統計時間段(Sub)的結束時間、當前子統計時間段(Sub)的初始時間。
則在本示例中,子步驟S11可以包括如下子步驟:子步驟S111,計算所述推送時間戳與最新的統計時間戳之間的第一時間差;子步驟S112,判斷所述第一時間是否大於與所述子統計時間段值相等的統計時間閾值;若是,則執行子步驟S113,若否,則執行子步驟S114;子步驟S113,確認所述資源占用資料屬於下一子統計時間段;子步驟S114,確認所述資源占用資料屬於當前子統計時間段。
以Linux系統為例,可以以jiffies(全局變量)計算時間戳,時鐘中斷處理會更新jiffies(全局變量)。
假設,對於1ms,jiffies(全局變量)可以增加1,統計時間戳可以轉換成jiffies,子統計時間段(Sub)的jiffies相當於10,即統計時間閾值為10ms,那麼判斷的時候,可以比較最新的統計時間戳和當前推送時間戳的差值是不是小於或等於10,小於或等於10就表示還在最新統計時間戳所對應的子統計時間段(Sub),即當前子統計時間段(Sub)內,否則,可以認為在當前子統計時間段(Sub)相鄰的子統計時間段(Sub),即下一子統計時間段(Sub)內。
例如,如圖3B所示,若子統計時間段(Sub)3011關聯最新統計時間戳,該最新統計時間戳與當前資源占用資料的推送時間戳之差大於統計時間閾值,則當前資源占 用資料屬於子統計時間段(Sub)3012,否則,當前資源占用資料屬於子統計時間段(Sub)3011。
子步驟S12,當所述資源占用資料屬於當前子統計時間段時,將所述資源占用資料累加至所述子統計時間段對應的子儲存物件中。
若資源占用資料屬於當前子統計時間段,則可以直接將其繼續在該子統計時間段對應的子儲存物件中累加。
本申請實施例所指“累加”,是累積的方式之一,可以為該子儲存物件在先已經儲存資源占用資料,當前資源占用資料可以在在先儲存的資源占用資料的基礎上累加。
例如,如圖3B所示,子儲存物件3051已經儲存有子統計時間段(Sub)3011內的資源占用資料,若當前資源占用資料屬於子統計時間段(Sub)3011,則可以在子儲存物件3051儲存的資源占用資料的基礎上進行累加。
在本申請的一種優選實施例中,步驟102還可以包括如下子步驟:子步驟S13,當所述資源占用資料屬於下一子統計時間段時,為所述子統計時間段分配子儲存物件;子步驟S14,將所述資源占用資料更新至所述子儲存物件中。
若資源占用資料屬於下一子統計時間段,則可以為下一子統計時間段分配子儲存物件。
在本申請實施例中,分配的情形主要有兩種:其中一種情形,分配新的子儲存物件,即該子儲存物 件中在先沒有儲存資源占用資料;在這種情形中,“更新”是累積的方式之一,可以指當前資源占用資料可以直接寫入分配的子儲存物件中。
例如,如圖3B所示,子儲存物件3051已經儲存有子統計時間段(Sub)3011內的資源占用資料,子儲存物件3052沒有儲存資源占用資料,若當前資源占用資料屬於子統計時間段(Sub)3012,則可以為子統計時間段(Sub)3012分配子儲存物件3052,作為初始的資源占用資料直接寫入子儲存物件3052中。
另外一種情形,分配舊的子儲存物件,即該子儲存物件中在先儲存有資源占用資料;其中,該舊的子儲存物件可以為(統計時間戳)最舊的子儲存物件,即在上一統計時間段(Period)中,排序小於等於下一子統計時間段(Sub)的子統計時間段(Sub)。
在這種情形中,“更新”是累積的方式之一,可以指删除子儲存物件在先累積的資源占用資料並寫入當前資源占用資料,或者,當前資源占用資料可以寫入子儲存物件中替換在先累積的資源占用資料。
例如,如圖3B所示,子儲存物件3051已經儲存有子統計時間段(Sub)3011內的資源占用資料,子儲存物件3052已經儲存有子統計時間段(Sub)3012內的資源占用資料;若當前資源占用資料屬於子統計時間段(Sub)3021,則可以為子統計時間段(Sub)3021分配子儲存物件3051,將當前資源占用資料更新至儲存物件3051中, 替換子統計時間段(Sub)3011內的資源占用資料;再者,若當前資源占用資料屬於子統計時間段(Sub)3022,則可以為子統計時間段(Sub)3022分配子儲存物件3052,將當前資源占用資料更新至儲存物件3052中,替換子統計時間段(Sub)3012內的資源占用資料。
在本申請的一種優選實施例中,步驟102還可以包括如下子步驟:子步驟S15,將所述資源占用資料關聯的推送時間戳設置為統計時間戳。
在本申請實施例中,若為子統計時間段(Sub)分配子儲存物件,則當前資源占用資料的推送時間戳可以設置為統計時間戳,用於後續的資源占用資料所屬的子統計時間段的判斷。
當然,上述儲存物件(Object)的類似環形佇列只是作為示例,在實施本申請實施例時,可以根據實際情況設置其他儲存方式,以保存子統計時間段(Sub)中的資源占用資料,本申請實施例對此不加以限制。另外,除了上述儲存方式外,本領域技術人員還可以根據實際需要採用其它其他儲存方式,以保存子統計時間段(Sub)中的資源占用資料,本申請實施例對此也不加以限制。
步驟103,在所述企業物件對應的更新時間段內,對在所述儲存物件中已累積的資源占用資料進行排序;在本申請實施例中,為了適應不同的企業需求,可以為每種企業的統計設定更新時間段(Delay)。
更新時間段(Delay)是邏輯意義上的更新單位,其可以為任意的時間點之間的時間範圍,在一個時間軸(TimeLine)上,可以包括一個或多個連續的更新時間段(Delay)。
需要說明的是,統計時間段(Period)一般大於或等於更新時間段(Delay),兩者可以是相交的關係。
如圖3A所示,在時間軸300上,包括連續的統計時間段(Period)301、統計時間段(Period)302,也包括連續的更新時間段(Delay)303、更新時間段(Delay)304。
將資源占用資料累積至儲存物件(Object)的上下文一般是覆蓋幾個字段即可,操作量少,占用資源也少;而對已累積的資源占用資料進行排序需要排序、遍歷、插入、删除等操作,比資源占用資料的累積複雜的多,占用資源也較多。因此,設置了更新時間段(Delay)之後,透過調節(如加大)更新時間段(Delay)可以大大减少操作量,大大降低資源消耗。
例如,有時候連接的流量大,透過加大更新時間段(Delay),基本上也不會影響統計的精確度。
當然,有些企業物件,可能沒有這麼大的流量,那甚至設置更新時間段(Delay)為0,即每次都不僅僅更新儲存物件(Object),也可以進行排序,本申請實施例對此不加以限制。
在本申請的一種優選實施例中,步驟103可以包括如 下子步驟:子步驟S21,判斷所述資源占用資料所屬的更新時間段;每一個更新時間段(Delay)表徵一個更新周期,在當前更新周期內,則繼續累積,不進行排序,若當前更新周期已結束,則進行排序。
在本申請實施例的一種優選示例中,所述資源占用資料可以具有關聯的推送時間戳,所述儲存物件(Object)中可以具有關聯的更新時間戳;其中,該更新時間戳可以在對儲存物件(Object)中的資源占用資料進行排序時打上,即表徵上一更新時間段(Delay)的結束時間、當前更新時間段(Delay)的初始時間。
則在本示例中,子步驟S21可以包括如下子步驟:子步驟S211,計算所述推送時間戳與最新的更新時間戳之間的第二時間差;子步驟S212,判斷所述第二時間差是否大於與所述更新時間段值相等的更新時間閾值;若是,則執行子步驟S213,若否,則執行子步驟S214;子步驟S213,確認所述資源占用資料屬於下一更新時間段;子步驟S214,確認所述資源占用資料屬於當前更新時間段。
以Linux系統為例,可以以jiffies(全局變量)計算 時間戳,時鐘中斷處理會更新jiffies(全局變量)。
假設,對於1ms,jiffies(全局變量)可以增加1,更新時間戳可以轉換成jiffies,更新時間段(Delay)的jiffies相當於100,即更新時間閾值為100ms,那麼在判斷的時候,可以比較最新的統計時間戳和當前推送時間戳的差值是不是小於或等於100,小於或等於100就表示還在最新的更新時間戳所對應的更新時間段(Delay),否則,可以認為在當前更新時間段(Delay)相鄰的更新時間段(Delay),即下一更新時間段(Delay)內。
若當前資源占用資料在當前更新時間段(Delay)中,則可以表示在當前更新周期內,若當前資源占用資料在下一更新時間段(Delay)中,即當前更新周期已結束。
子步驟S22,當所述資源占用資料屬於下一更新時間段時,將在所述企業物件對應的更新時間段內,所述儲存物件中已累積的資源占用資料寫入所述資源占用資料對應的企業統計表中;子步驟S23,在所述企業統計表中獲得排序在前的一個或多個資源占用資料。
如圖2所示,在內核層中,樣品物件(Sample)對應統計的一整套的企業物件,例如,某個虛擬機到另外一個虛擬機的流量排序。
企業統計表(Table),在概念上從屬於Sample(樣品物件),即,一個樣品物件(Sample)可以包括一個或 多個企業統計表(Table),例如,某個企業統計表(Table)是基於每秒的包數的排序,某個企業統計表(Table)是基於每秒的字節數的排序等等。
每個企業統計表(Table)都可以按照其統計的企業需求,設置更新時間段(Delay)。
在實際應用中,企業統計表(Table)可以是一個紅黑樹,或者,其他的統計友好的資料結構,本申請實施例對此不加以限制。
在本申請實施例中,Observer在調用推送(push)介面推送資源占用資料時,該推送(push)介面中包括了該Observer在創建的時候的企業統計表(Table)的ID(如指針),具體更新到對應的企業統計表(Table)中進行排序。
一般情況下,企業統計表(Table)的數量是有限的,如對百萬級別的連接進行流量統計,可以將其中一百個連接的流量統計寫入企業統計表(Table)中。
將儲存物件(Object)中已累積的資源占用資料寫入資源占用資料對應的企業統計表(Table)中,可以指將儲存物件(Object)裡儲存的一些字段更新到企業統計表(Table),若此次更新的已累積的資源占用資料的值比企業統計表(Table)表裡面的最小值大,則在合適的位置,把新的值更新到企業統計表(Table)表裡,同時把儲存物件(Object)其他的字段資訊也更新到表裡,比如,描述、儲存物件(Object)、更新時間戳等等。
需要說明的是,本申請實施例所指“排序”,可以為順序排序,也可以為倒序排序,例如,統計百萬級別的連接中流量最高的前100個連接,或者,統計百萬級別的連接中流量最低的前100個連接,本申請實施例對此不加以限制。
在本申請的一種優選實施例中,子步驟S22可以包括如下子步驟:子步驟S221,計算屬於所述企業物件對應的更新時間段的子統計時間段,所對應的子儲存物件中已累積的資源占用資料之和;子步驟S222,將所述已累積的資源占用資料之和寫入所述資源占用資料對應的企業統計表中。
在本申請實施例中,若應用統計時間段(Period)細分子統計時間段(Sub)的方式,則可以將屬於更新時間段(Delay)內的子統計時間段(Sub)所累積的資源占用資料,對企業統計表(Table)進行更新。
例如,如圖3A和圖3B所示,若更新時間段(Delay)303包括子統計時間段(Sub)3012和子統計時間段(Sub)3021,則在更新時間段(Delay)303內進行更新時,可以將子統計時間段(Sub)3012和子統計時間段(Sub)3021內已累積的資源占用資料之和(sum),將該資源占用資料之和(sum)寫入企業統計表中。
在本申請的一種優選實施例中,步驟203還可以包括如下子步驟: 子步驟S24,將所述資源占用資料關聯的推送時間設置為更新時間戳。
在本申請實施例中,若對企業統計表(Table)進行了更新,則可以將當前資源占用資料的推送時間戳設置為更新時間戳,用於後續的資源占用資料判斷是否更新企業統計表(Table)。
步驟104,加載排序後的一個或多個資源占用資料。
在具體實現中,可以加載排序後的資源占用資料,以用於監控、檢測等各種用途。
在本申請的一種優選實施例中,在內核層中儲存有樣品物件,所述樣品物件包括一個或多個企業統計表,所述企業統計表記載有排序的結果;則在本申請實施例中,步驟104可以包括如下子步驟:子步驟S31,在應用層中透過預設的介面,讀取位於內核層中的樣品物件,以獲得一個或多個企業統計表;子步驟S32,顯示在所述一個或多個企業統計表中,排序在前的一個或多個資源占用資料。
如圖2所示,在應用層(User)可以配置監控子系統(Monitor)、採集器(Collector)等各種應用模組。
導出文件系統(Export file system,Export f-s)是統計資料導出的統一介面,內核一般可以透過,在本申請實施例中,sysfs介面或者proc介面統一暴露給上層監控子系統(Monitor)。
進一步而言,企業統計表(Table)裡面包含proc介面紅黑樹,具體的儲存物件(Object)的資訊、其他參數(更新時間段(Delay)等)資訊。
proc介面是企業統計表(Table)對外導出統計資料的介面,監控子系統可以實時讀取這個文件來呈現當前table的統計資訊。
在應用層(User)中,應用模組可以透過直接讀取Topstat的導出文件系統(Export f-s),如sysfs/proc等,中相應的文件來獲得統計資料,這個過程被稱為快照(Snapshot),讀取文件會觸發內核線程來掃描每個CPU上的統計結果並合併最終的統計資料(即排序後的結果)。
樣品物件(Sample)和企業統計表(Table)都會在導出文件系統(Export f-s)中有對應的目錄或者文件,即,Topstat針對Observer註冊的樣品物件(Sample)中包含的每個企業統計表(Table),都可以有一個文件系統(Export f-s)下的文件,讀取這個文件即刻獲取了統計資料。
例如,每條連接的資訊(如源IP埠口,目的IP埠口),以及該連接的pps值(packets per second,每秒資料包)。
通常,企業統計表(Table)是樣品物件(Sample)的子目錄。
而且,樣品物件(Sample)可以透過快照 (Snapshot)暴露給上層的監控子系統(Monitor)最終的需要讀取的最終的統計資料(即排序後的結果)的文件。
需要說明的是,本申請實施例可以基於內核層(Kernel)進行統計,即在內核層中執行步驟101、步驟102和步驟103,也可以基於應用層(User)進行統計,即在內核層中執行步驟101、步驟102和步驟103,本申請實施例對此不加以限制。
在本申請的一種優選實施例中,該方法還可以包括如下步驟:步驟205,在熱升級時,將所述儲存物件駐留在內存記憶體中;步驟206,註銷所述企業物件對應的樣品物件和所述樣品物件包括的一個或多個企業統計表,其中,所述企業統計表記載有排序的結果。
由於產品的功能一般是在不斷的豐富,為了不中斷服務,一般會對企業模組進行熱升級,即不停機升級。
在熱升級中,儲存物件(Object)中包含統計需要的上下文資訊將跟隨企業物件的生命周期。
由於本申請實施例將統計與企業邏輯主體分離開來,主企業邏輯也可以將被統計物件隔離開來,這樣在升級的時候,儲存物件(Object)可以駐留在內存記憶體空間。
具體而言,每個Observer加載的時候會註冊相應的樣品物件(Sample)、企業統計表(Table)、儲存物件(Object)等。
在熱升級中,儲存物件(Object)可以從Topstat的主體移出(unplug),並註銷相應的樣品物件(Sample)和企業統計表(Table),此時儲存物件(Object)的上下文仍然是存在的,內存記憶體也不會被釋放。
其中,註銷可以指調用介面,通知Topstat删除相應的樣品物件(Sample)和企業統計表(Table)的資料結構,並清理掉內存記憶體。
升級後的企業模組可以透過類似塞(plug)的方式拿到儲存物件(Object)的資訊,並獲取統計需要的上下文資訊,如統計時間段(Period)、子統計時間段(Sub)、sum(Sub的和)、統計時間戳、更新時間段(Delay)、count(資源占用資料的推送次數)、描述資訊(描述這個Object的字符串)等等,推送資源占用資料。
需要說明的是,對於方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本申請實施例並不受所描述的動作順序的限制,因為依據本申請實施例,某些步驟可以採用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬於優選實施例,所涉及的動作並不一定是本申請實施例所必須的。
參照圖4,示出了本申請的一種企業物件的資訊加載裝置實施例的結構方塊圖,具體可以包括如下模組:資料獲取模組401,用於獲取一個或多個企業物件對 應的一個或多個資源占用資料;資料累積模組402,用於針對每個資源占用資料,在所述企業物件對應的統計時間段內,將所述資源占用資料累積至預設的儲存物件中;資料排序模組403,用於在所述企業物件對應的更新時間段內,對在所述儲存物件中已累積的資源占用資料進行排序;資料加載模組404,用於加載排序後的一個或多個資源占用資料。
在具體實現中,在一個時間軸上可以包括一個或多個連續的統計時間段,每個統計時間段可以包括連續的N個子統計時間段,所述儲存物件可以具有N個子儲存物件,一個子儲存物件可以儲存一個子統計時間段內的資源占用資料,N為正整數。
在本申請的一種優選實施例中,所述資料累積模組402可以包括如下子模組:子統計時間段判斷子模組,用於判斷所述資源占用資料所屬的子統計時間段;資料累加子模組,用於在所述資源占用資料屬於當前子統計時間段時,將所述資源占用資料累加至所述子統計時間段對應的子儲存物件中。
在本申請的一種優選實施例中,所述資料累積模組402還可以包括如下子模組:子儲存物件分配子模組,用於在所述資源占用資料屬 於下一子統計時間段時,為所述子統計時間段分配子儲存物件;資料更新子模組,用於將所述資源占用資料更新至所述子儲存物件中。
在本申請實施例的一種優選示例中,所述資源占用資料可以具有關聯的推送時間戳,所述子儲存物件中可以具有關聯的統計時間戳;所述子統計時間段判斷子模組可以包括如下子模組:第一時間差計算子模組,用於計算所述推送時間戳與最新的統計時間戳之間的第一時間差;統計時間閾值判斷子模組,用於判斷所述第一時間是否大於與所述子統計時間段值相等的統計時間閾值;若是,則調用第一確認子模組,若否,則調用第二確認子模組;第一確認子模組,用於確認所述資源占用資料屬於下一子統計時間段;第二確認子模組,用於確認所述資源占用資料屬於當前子統計時間段。
在本申請的一種優選實施例中,所述資料累積模組402還可以包括如下子模組:統計時間戳設置子模組,用於將所述資源占用資料關聯的推送時間戳設置為統計時間戳。
在本申請的一種優選實施例中,所述資料排序模組403可以包括如下子模組: 更新時間段判斷子模組,用於判斷所述資源占用資料所屬的更新時間段;企業統計表寫入子模組,用於在所述資源占用資料屬於下一更新時間段時,將在所述企業物件對應的更新時間段內,所述儲存物件中已累積的資源占用資料寫入所述資源占用資料對應的企業統計表中;排序獲得子模組,用於在所述企業統計表中獲得排序在前的一個或多個資源占用資料。
在本申請實施例的一種優選示例中,所述資源占用資料可以具有關聯的推送時間戳,所述儲存物件可以具有關聯的更新時間戳;所述更新時間段判斷子模組可以包括如下子模組:第二時間差計算子模組,用於計算所述推送時間戳與最新的更新時間戳之間的第二時間差;更新時間閾值判斷子模組,用於判斷所述第二時間差是否大於與所述更新時間段值相等的更新時間閾值;若是,則調用第三確認子模組,若否,則調用第四確認子模組;第三確認子模組,用於確認所述資源占用資料屬於下一更新時間段;第四確認子模組,用於確認所述資源占用資料屬於當前更新時間段。
在本申請的一種優選實施例中,所述企業統計表寫入子模組可以包括如下子模組: 和計算子模組,用於計算屬於所述企業物件對應的更新時間段的子統計時間段,所對應的子儲存物件中已累積的資源占用資料之和;和寫入子模組,用於將所述已累積的資源占用資料之和寫入所述資源占用資料對應的企業統計表中。
在本申請的一種優選實施例中,所述資料排序模組403還可以包括如下模組:更新時間戳設置子模組,用於將所述資源占用資料關聯的推送時間設置為更新時間戳。
在本申請的一種優選實施例中,在內核層中可以儲存有樣品物件,所述樣品物件可以包括一個或多個企業統計表,所述企業統計表可以記載有排序的結果;所述資料加載模組404可以包括如下子模組:樣品物件讀取子模組,用於在應用層中透過預設的介面,讀取位於內核層中的樣品物件,以獲得一個或多個企業統計表;排序結果顯示子模組,用於顯示在所述一個或多個企業統計表中,排序在前的一個或多個資源占用資料。
在本申請的一種優選實施例中,該裝置還可以包括如下模組:駐留模組,用於在熱升級時,將所述儲存物件駐留在內存記憶體中;註銷模組,用於註銷所述企業物件對應的樣品物件和所述樣品物件包括的一個或多個企業統計表,其中,所述 企業統計表記載有排序的結果。
對於裝置實施例而言,由於其與方法實施例基本相似,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。
本說明書中的各個實施例均採用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。
本領域內的技術人員應明白,本申請實施例的實施例可提供為方法、裝置、或計算機程式產品。因此,本申請實施例可採用完全硬體實施例、完全軟體實施例、或結合軟體和硬體方面的實施例的形式。而且,本申請實施例可採用在一個或多個其中包含有計算機可用程式代碼的計算機可用儲存媒體(包括但不限於磁碟儲存器、CD-ROM、光學儲存器等)上實施的計算機程式產品的形式。
在一個典型的配置中,所述計算機設備包括一個或多個處理器(CPU)、輸入/輸出介面、網路介面和內存記憶體。內存記憶體可能包括計算機可讀媒體中的非永久性儲存器,隨機存取記憶體(RAM)和/或非易失性記憶體等形式,如唯讀記憶體(ROM)或快閃隨機存取記憶體(flash RAM)。內存記憶體是計算機可讀媒體的示例。計算機可讀媒體包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術來實現資訊儲存。資訊可以是計算機可讀指令、資料結構、程式的模組或其他資料。計算機的儲存媒體的例子包括,但不限於相變隨機存取記憶體 (PRAM)、靜態隨機存取記憶體(SRAM)、動態隨機存取記憶體(DRAM)、其他類型的隨機存取記憶體(RAM)、唯讀記憶體(ROM)、電可抹除可編程唯讀記憶體(EEPROM)、快閃記憶體或其他內存記憶體技術、唯讀光碟唯讀記憶體(CD-ROM)、數位多功能光碟(DVD)或其他光學儲存、磁盒式磁帶,磁帶磁磁碟儲存或其他磁性儲存設備或任何其他非傳輸媒體,可用於儲存可以被計算設備訪問的資訊。按照本文中的界定,計算機可讀媒體不包括非持續性的電腦可讀媒體(transitory media),如調變的資料信號和載波。
本申請實施例是參照根據本申請實施例的方法、終端設備(系統)、和計算機程式產品的流程圖和/或方塊圖來描述的。應理解可由計算機程式指令實現流程圖和/或方塊圖中的每一流程和/或方塊、以及流程圖和/或方塊圖中的流程和/或方塊的結合。可提供這些計算機程式指令到通用計算機、專用計算機、嵌入式處理機或其他可編程資料處理終端設備的處理器以產生一個機器,使得透過計算機或其他可編程資料處理終端設備的處理器執行的指令產生用於實現在流程圖一個流程或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能的裝置。
這些計算機程式指令也可儲存在能引導計算機或其他可編程資料處理終端設備以特定方式工作的計算機可讀儲存器中,使得儲存在該計算機可讀儲存器中的指令產生包括指令裝置的製造品,該指令裝置實現在流程圖一個流程 或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能。
這些計算機程式指令也可裝載到計算機或其他可編程資料處理終端設備上,使得在計算機或其他可編程終端設備上執行一系列操作步驟以產生計算機實現的處理,從而在計算機或其他可編程終端設備上執行的指令提供用於實現在流程圖一個流程或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能的步驟。
儘管已描述了本申請實施例的優選實施例,但本領域內的技術人員一旦得知了基本創造性概念,則可對這些實施例做出另外的變更和修改。所以,所附權利要求意欲解釋為包括優選實施例以及落入本申請實施例範圍的所有變更和修改。
最後,還需要說明的是,在本文中,諸如第一和第二等之類的關係術語僅僅用來將一個實體或者操作與另一個實體或操作區分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關係或者順序。而且,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者終端設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者終端設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個......”限定的要素,並不排除在包括所述要素的過程、方法、物品或者終端設備中還存在另外的相同要 素。
以上對本申請所提供的一種企業物件的資訊加載方法和一種企業物件的資訊加載裝置,進行了詳細介紹,本文中應用了具體個例對本申請的原理及實施方式進行了闡述,以上實施例的說明只是用於幫助理解本申請的方法及其核心思想;同時,對於本領域的一般技術人員,依據本申請的思想,在具體實施方式及應用範圍上均會有改變之處,綜上所述,本說明書內容不應理解為對本申請的限制。

Claims (15)

  1. 一種企業物件的資訊加載方法,其特徵在於,包括:獲取一個或多個企業物件對應的一個或多個資源占用資料;針對每個資源占用資料,在該企業物件對應的統計時間段內,將該資源占用資料累積至預設的儲存物件中;在該企業物件對應的更新時間段內,對在該儲存物件中已累積的資源占用資料進行排序;當推送時間戳與最新的更新時間戳之間的時間差大於與該更新時間段的值相等的更新時間閾值時,則將在該企業物件對應的更新時間段內,該儲存物件中已累積的資源占用資料寫入該資源占用資料對應的企業統計表中,其中該資源占用資料具有關聯的該推送時間戳,且其中該儲存物件具有關聯的該更新時間戳;在該企業統計表中獲得排序在前的一個或多個資源占用資料;以及加載排序後的一個或多個資源占用資料。
  2. 根據申請專利範圍第1項所述的方法,其中,在一個時間軸上包括一個或多個連續的統計時間段,每個統計時間段包括連續的N個子統計時間段,該儲存物件具有N個子儲存物件,一個子儲存物件儲存一個子統計時間段內的資源占用資料,N為正整數。
  3. 根據申請專利範圍第2項所述的方法,其中,所述在該企業物件對應的統計時間段內,將該資源占用資料累積至預設的儲存物件中的步驟包括:判斷該資源占用資料所屬的子統計時間段;當該資源占用資料屬於當前子統計時間段時,將該資源占用資料累加至該子統計時間段對應的子儲存物件中。
  4. 根據申請專利範圍第3項所述的方法,其中,所述在該企業物件對應的統計時間段內,將該資源占用資料累積至預設的儲存物件中還包括:當該資源占用資料屬於下一子統計時間段時,為該子統計時間段分配子儲存物件;將該資源占用資料更新至該子儲存物件中。
  5. 根據申請專利範圍第3或4項所述的方法,其中所述判斷該資源占用資料所屬的子統計時間段的步驟包括:計算該推送時間戳與最新的統計時間戳之間的第一時間差;判斷該第一時間是否大於與該子統計時間段值相等的統計時間閾值;若是,則確認該資源占用資料屬於下一子統計時間段;若否,則確認該資源占用資料屬於當前子統計時間段。
  6. 根據申請專利範圍第1至4項任一項所述的方法,進一步包括:判斷該資源占用資料所屬的更新時間段。
  7. 根據申請專利範圍第6項所述的方法,其中所述判斷該資源占用資料所屬的更新時間段的步驟包括:計算該推送時間戳與最新的更新時間戳之間的第二時間差;判斷該第二時間差是否大於與該更新時間段值相等的更新時間閾值;若是,則確認該資源占用資料屬於下一更新時間段;若否,則確認該資源占用資料屬於當前更新時間段。
  8. 根據申請專利範圍第6項所述的方法,其中,所述將在該企業物件對應的更新時間段內,該儲存物件中已累積的資源占用資料寫入該資源占用資料對應的企業統計表中的步驟包括:計算屬於該企業物件對應的更新時間段的子統計時間段,所對應的子儲存物件中已累積的資源占用資料之和;將該已累積的資源占用資料之和寫入該資源占用資料對應的企業統計表中。
  9. 一種企業物件的資訊加載裝置,其特徵在於,包括:資料獲取模組,用於獲取一個或多個企業物件對應的一個或多個資源占用資料;資料累積模組,用於針對每個資源占用資料,在該企業物件對應的統計時間段內,將該資源占用資料累積至預設的儲存物件中;資料排序模組,用於在該企業物件對應的更新時間段內,對在該儲存物件中已累積的資源占用資料進行排序;企業統計表寫入子模組,用於當推送時間戳與最新的更新時間戳之間的時間差大於與該更新時間段的值相等的更新時間閾值時,則將在該企業物件對應的更新時間段內,該儲存物件中已累積的資源占用資料寫入該資源占用資料對應的企業統計表中,其中該資源占用資料具有關聯的該推送時間戳,且其中該儲存物件具有關聯的該更新時間戳;排序獲得子模組,用於在該企業統計表中獲得排序在前的一個或多個資源占用資料;以及資料加載模組,用於加載排序後的一個或多個資源占用資料。
  10. 根據申請專利範圍第9項所述的裝置,其中,在一個時間軸上包括一個或多個連續的統計時間段,每個統計時間段包括連續的N個子統計時間段,該儲存物件具有N個子儲存物件,一個子儲存物件儲存一個子統計時間段內的資源占用資料,N為正整數。
  11. 根據申請專利範圍第10項所述的裝置,其中,該資料累積模組包括:子統計時間段判斷子模組,用於判斷該資源占用資料所屬的子統計時間段;資料累加子模組,用於在該資源占用資料屬於當前子統計時間段時,將該資源占用資料累加至該子統計時間段對應的子儲存物件中。
  12. 根據申請專利範圍第11項所述的裝置,其中,該資料累積模組還包括:子儲存物件分配子模組,用於在該資源占用資料屬於下一子統計時間段時,為該子統計時間段分配子儲存物件;資料更新子模組,用於將該資源占用資料更新至該子儲存物件中。
  13. 根據申請專利範圍第11或12項所述的裝置,其中該子統計時間段判斷子模組包括:第一時間差計算子模組,用於計算該推送時間戳與最新的統計時間戳之間的第一時間差;統計時間閾值判斷子模組,用於判斷該第一時間是否大於與該子統計時間段值相等的統計時間閾值;若是,則調用第一確認子模組,若否,則調用第二確認子模組;第一確認子模組,用於確認該資源占用資料屬於下一子統計時間段;第二確認子模組,用於確認該資源占用資料屬於當前子統計時間段。
  14. 根據申請專利範圍第9至12項任一項所述的裝置,其中,該資料排序模組包括:更新時間段判斷子模組,用於判斷該資源占用資料所屬的更新時間段。
  15. 根據申請專利範圍第14項所述的裝置,其中該更新時間段判斷子模組包括:第二時間差計算子模組,用於計算該推送時間戳與最新的更新時間戳之間的第二時間差;更新時間閾值判斷子模組,用於判斷該第二時間差是否大於與該更新時間段值相等的更新時間閾值;若是,則調用第三確認子模組,若否,則調用第四確認子模組;第三確認子模組,用於確認該資源占用資料屬於下一更新時間段;第四確認子模組,用於確認該資源占用資料屬於當前更新時間段。
TW104142101A 2015-04-30 2015-12-15 一種企業物件的資訊加載方法和裝置 TWI677210B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
??201510219201.5 2015-04-30
CN201510219201.5A CN106201839B (zh) 2015-04-30 2015-04-30 一种业务对象的信息加载方法和装置

Publications (2)

Publication Number Publication Date
TW201703459A TW201703459A (zh) 2017-01-16
TWI677210B true TWI677210B (zh) 2019-11-11

Family

ID=57205879

Family Applications (1)

Application Number Title Priority Date Filing Date
TW104142101A TWI677210B (zh) 2015-04-30 2015-12-15 一種企業物件的資訊加載方法和裝置

Country Status (3)

Country Link
US (2) US10187281B2 (zh)
CN (1) CN106201839B (zh)
TW (1) TWI677210B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10439908B2 (en) * 2014-12-23 2019-10-08 Talari Networks Incorporated Methods and apparatus for providing adaptive private network centralized management system time correlated playback of network traffic
CN109240899A (zh) * 2017-07-10 2019-01-18 北京京东尚科信息技术有限公司 信息获取方法和装置
CN109299931A (zh) * 2018-09-13 2019-02-01 百富计算机技术(深圳)有限公司 一种数据统计方法、系统及终端设备
CN109857344B (zh) * 2019-01-30 2022-05-20 平安科技(深圳)有限公司 基于共享内存的心跳状态判断方法、装置和计算机设备
CN111291061B (zh) * 2020-01-16 2023-06-13 北京旷视科技有限公司 数据统计方法、装置和电子系统
US12099426B2 (en) * 2021-10-27 2024-09-24 Oracle International Corporation Telemetry data filter for allocating storage resources
US11502971B1 (en) 2021-11-15 2022-11-15 Oracle International Corporation Using multi-phase constraint programming to assign resource guarantees of consumers to hosts

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030135612A1 (en) * 2001-07-17 2003-07-17 Huntington Stephen Glen Full time network traffic recording systems and methods
US20040236866A1 (en) * 2003-05-21 2004-11-25 Diego Dugatkin Automated characterization of network traffic
US7457870B1 (en) * 2004-02-27 2008-11-25 Packeteer, Inc. Methods, apparatuses and systems facilitating classification of web services network traffic
CN102387172A (zh) * 2010-08-30 2012-03-21 国际商业机器公司 用于为移动设备提供或获取网络资源的内容的方法和装置
CN102577500A (zh) * 2009-09-24 2012-07-11 阿尔卡特朗讯公司 用于管理对网络中资源的分配的方法和设备

Family Cites Families (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0816877B2 (ja) * 1991-06-10 1996-02-21 インターナショナル・ビジネス・マシーンズ・コーポレイション データ処理システム用資源データの実時間捕獲及び減縮方法及びシステム
US6044439A (en) 1997-10-27 2000-03-28 Acceleration Software International Corporation Heuristic method for preloading cache to enhance hit rate
US6976258B1 (en) 1999-11-30 2005-12-13 Ensim Corporation Providing quality of service guarantees to virtual hosts
US6633954B1 (en) 2000-03-31 2003-10-14 Emc Corporation Method for enhancing host application performance with a DASD using task priorities
US7062642B1 (en) * 2000-05-20 2006-06-13 Ciena Corporation Policy based provisioning of network device resources
US6829704B2 (en) 2001-04-13 2004-12-07 General Electric Company Method and system to automatically activate software options upon initialization of a device
US6968398B2 (en) 2001-08-15 2005-11-22 International Business Machines Corporation Method of virtualizing I/O resources in a computer system
US20050052992A1 (en) 2003-08-01 2005-03-10 Cloonan Thomas J. Method and system for dynamically managing cable data bandwidth based on channel congestion state and subscriber usage profile
WO2005093576A1 (en) * 2004-03-28 2005-10-06 Robert Iakobashvili Visualization of packet network performance, analysis and optimization for design
US7590830B2 (en) 2004-05-28 2009-09-15 Sun Microsystems, Inc. Method and structure for concurrent branch prediction in a processor
US20060143617A1 (en) 2004-12-29 2006-06-29 Knauerhase Robert C Method, apparatus and system for dynamic allocation of virtual platform resources
US8195443B2 (en) 2005-02-18 2012-06-05 Opnet Technologies, Inc. Application level interface to network analysis tools
US7617314B1 (en) * 2005-05-20 2009-11-10 Network General Technology HyperLock technique for high-speed network data monitoring
US20060288015A1 (en) 2005-06-15 2006-12-21 Schirripa Steven R Electronic content classification
US7639613B1 (en) * 2005-06-24 2009-12-29 Packeteer, Inc. Adaptive, flow-based network traffic measurement and monitoring system
US8121043B2 (en) * 2005-08-19 2012-02-21 Cisco Technology, Inc. Approach for managing the consumption of resources using adaptive random sampling
US7653722B1 (en) * 2005-12-05 2010-01-26 Netapp, Inc. Server monitoring framework
US8087026B2 (en) * 2006-04-27 2011-12-27 International Business Machines Corporation Fair share scheduling based on an individual user's resource usage and the tracking of that usage
US8051249B2 (en) 2006-05-29 2011-11-01 Sandisk Il Ltd. Method for preloading data to improve data-retrieval times
JP4240062B2 (ja) 2006-05-31 2009-03-18 日本電気株式会社 計算機システムおよび性能計測方法ならびに管理サーバ装置
US8782047B2 (en) 2009-10-30 2014-07-15 Hitachi Data Systems Corporation Fixed content storage within a partitioned content platform using namespaces
JP2008217216A (ja) 2007-03-01 2008-09-18 Hitachi Ltd 負荷分散方法及び計算機システム
CN101272530A (zh) 2007-03-19 2008-09-24 华为技术有限公司 业务触发方法及系统
US7752360B2 (en) 2007-05-16 2010-07-06 Nuova Systems, Inc. Method and system to map virtual PCIe I/O devices and resources to a standard I/O bus
US8141094B2 (en) 2007-12-03 2012-03-20 International Business Machines Corporation Distribution of resources for I/O virtualized (IOV) adapters and management of the adapters through an IOV management partition via user selection of compatible virtual functions
US8849971B2 (en) 2008-05-28 2014-09-30 Red Hat, Inc. Load balancing in cloud-based networks
US9208003B2 (en) 2008-06-09 2015-12-08 International Business Machines Corporation Hypervisor to I/O stack conduit in virtual real memory
US9055080B2 (en) 2009-12-14 2015-06-09 Citrix Systems, Inc. Systems and methods for service isolation
JP5427011B2 (ja) 2009-12-17 2014-02-26 株式会社日立製作所 仮想ハードディスクの管理サーバおよび管理方法、管理プログラム
US8452835B2 (en) 2009-12-23 2013-05-28 Citrix Systems, Inc. Systems and methods for object rate limiting in multi-core system
US8874744B2 (en) 2010-02-03 2014-10-28 Vmware, Inc. System and method for automatically optimizing capacity between server clusters
US8627426B2 (en) 2010-04-26 2014-01-07 Vmware, Inc. Cloud platform architecture
US8719804B2 (en) * 2010-05-05 2014-05-06 Microsoft Corporation Managing runtime execution of applications on cloud computing systems
US8938774B2 (en) 2010-05-28 2015-01-20 Dell Products, Lp System and method for I/O port assignment and security policy application in a client hosted virtualization system
US8391886B1 (en) 2010-07-14 2013-03-05 Cellco Partnership Systems and methods for providing mobile handset position to software applications
US9936333B2 (en) 2010-08-10 2018-04-03 Microsoft Technology Licensing, Llc Location and contextual-based mobile application promotion and delivery
WO2012045021A2 (en) 2010-09-30 2012-04-05 Commvault Systems, Inc. Efficient data management improvements, such as docking limited-feature data management modules to a full-featured data management system
GB2504634B (en) 2010-11-22 2014-04-09 Seven Networks Inc Aligning data transfer to optimize connections established for transmission over a wireless network
JP5476485B2 (ja) 2011-01-05 2014-04-23 株式会社日立製作所 サービスの予約管理方法、仮想計算機システム及び記憶媒体
US9003006B2 (en) 2011-03-14 2015-04-07 Mash5 Technologies, Inc. Intercloud application virtualization
US8904136B2 (en) 2011-03-15 2014-12-02 Symantec Corporation Optimized shrinking of virtual disks
CN102314391B (zh) * 2011-05-27 2013-11-20 运软网络科技(上海)有限公司 一种基于硬件基础工具监视虚拟化系统性能的架构及方法
US20120324572A1 (en) 2011-06-16 2012-12-20 Telefonaktiebolaget L M Ericsson (Publ) Systems and methods that perform application request throttling in a distributed computing environment
US8997171B2 (en) 2011-08-19 2015-03-31 Microsoft Technology Licensing, Llc Policy based application suspension and termination
US9152405B2 (en) 2011-08-22 2015-10-06 International Business Machines Corporation Rapid provisioning of virtual machines based on multi-dimensional user request patterns in a cloud
CN103036930B (zh) 2011-09-30 2015-06-03 国际商业机器公司 用于管理存储设备的方法和设备
WO2013079113A1 (en) 2011-12-01 2013-06-06 Fundacio Privada Barcelona Digital Centre Tecnologic Secure cloud browsing client-server system and method of secure remote browsing using the same
CN103186337A (zh) 2011-12-31 2013-07-03 三星电子(中国)研发中心 一种对智能终端进行控制的方法及系统
WO2013186870A1 (ja) * 2012-06-13 2013-12-19 株式会社日立製作所 サービス監視システム、及び、サービス監視方法
US9092341B2 (en) 2012-07-10 2015-07-28 International Business Machines Corporation Methods of cache preloading on a partition or a context switch
CN111614980B (zh) 2012-08-14 2022-04-12 俄亥俄州立创新基金会 用于通过移动设备来优化网络带宽的使用的系统和方法
US9451403B2 (en) 2012-08-30 2016-09-20 Ebay Inc. Systems and method for configuring mobile device applications based on location
US20140177497A1 (en) 2012-12-20 2014-06-26 Seven Networks, Inc. Management of mobile device radio state promotion and demotion
CN103118327A (zh) 2013-01-25 2013-05-22 无锡万事通科技有限公司 基于WiFi的信息传递系统及方法
US20140223427A1 (en) 2013-02-04 2014-08-07 Thomas C. Bootland System, Method and Apparatus for Determining Virtual Machine Performance
CN104111800B (zh) 2013-04-18 2018-02-23 阿里巴巴集团控股有限公司 一种虚拟磁盘的io口调度方法及其调度装置
US10614132B2 (en) * 2013-04-30 2020-04-07 Splunk Inc. GUI-triggered processing of performance data and log data from an information technology environment
CN103369508B (zh) 2013-06-25 2016-12-28 华为技术有限公司 数据加载方法和终端设备
CN103440113B (zh) 2013-09-16 2016-09-14 北京搜狐新媒体信息技术有限公司 一种磁盘io资源分配方法和装置
US10193963B2 (en) 2013-10-24 2019-01-29 Vmware, Inc. Container virtual machines for hadoop
EA201301283A1 (ru) 2013-11-26 2015-05-29 Общество С Ограниченной Ответственностью "Параллелз" Способ целевой виртуализации ресурсов в контейнере
US9262192B2 (en) 2013-12-16 2016-02-16 Vmware, Inc. Virtual machine data store queue allocation
US9400643B2 (en) 2014-03-03 2016-07-26 Google Inc. Methods and systems for updating components on a computing device
WO2015136624A1 (ja) * 2014-03-11 2015-09-17 株式会社日立製作所 アプリケーション性能監視方法および装置
CN103870341A (zh) 2014-03-12 2014-06-18 汉柏科技有限公司 一种调整虚拟机资源的方法和系统
US9432796B2 (en) 2014-05-30 2016-08-30 Apple Inc. Dynamic adjustment of mobile device based on peer event data
US9690685B2 (en) * 2014-05-30 2017-06-27 Apple Inc. Performance management based on resource consumption
KR102260177B1 (ko) 2014-07-16 2021-06-04 텐세라 네트워크스 리미티드 선택된 시각에서 개런티 프리페칭을 사용하는 무선 네트워크를 통한 효과적인 콘텐트 전달
US9336040B2 (en) 2014-09-15 2016-05-10 Intel Corporation Techniques for remapping sessions for a multi-threaded application
US9256467B1 (en) 2014-11-11 2016-02-09 Amazon Technologies, Inc. System for managing and scheduling containers
US10063653B2 (en) 2014-12-29 2018-08-28 Akamai Technologies, Inc. Distributed server architecture for supporting a predictive content pre-fetching service for mobile device users
US9612758B1 (en) 2015-03-10 2017-04-04 EMC IP Holding Company LLC Performing a pre-warm-up procedure via intelligently forecasting as to when a host computer will access certain host data

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030135612A1 (en) * 2001-07-17 2003-07-17 Huntington Stephen Glen Full time network traffic recording systems and methods
US20040236866A1 (en) * 2003-05-21 2004-11-25 Diego Dugatkin Automated characterization of network traffic
US7457870B1 (en) * 2004-02-27 2008-11-25 Packeteer, Inc. Methods, apparatuses and systems facilitating classification of web services network traffic
CN102577500A (zh) * 2009-09-24 2012-07-11 阿尔卡特朗讯公司 用于管理对网络中资源的分配的方法和设备
CN102387172A (zh) * 2010-08-30 2012-03-21 国际商业机器公司 用于为移动设备提供或获取网络资源的内容的方法和装置

Also Published As

Publication number Publication date
US20160323169A1 (en) 2016-11-03
US20190109775A1 (en) 2019-04-11
CN106201839B (zh) 2020-02-14
CN106201839A (zh) 2016-12-07
TW201703459A (zh) 2017-01-16
US10838842B2 (en) 2020-11-17
US10187281B2 (en) 2019-01-22

Similar Documents

Publication Publication Date Title
TWI677210B (zh) 一種企業物件的資訊加載方法和裝置
CN107807796B (zh) 一种基于超融合存储系统的数据分层方法、终端及系统
US11593365B2 (en) Splitting a time-range query into multiple sub-queries for serial execution
US9002805B1 (en) Conditional storage object deletion
US9052942B1 (en) Storage object deletion job management
US9063946B1 (en) Backoff-based scheduling of storage object deletions
US20180365085A1 (en) Method and apparatus for monitoring client applications
US10338958B1 (en) Stream adapter for batch-oriented processing frameworks
CN112346829B (zh) 一种用于任务调度的方法及设备
WO2017016423A1 (zh) 一种实时新增数据更新方法和装置
TWI738721B (zh) 任務調度方法和裝置
JP2019523952A (ja) ストリーミングデータ分散処理方法及び装置
US20190236183A1 (en) Splitting a time-range query into multiple sub-queries for parallel execution
US11573981B1 (en) Auto-scaling using temporal splits in a time-series database
US20180004797A1 (en) Application resiliency management using a database driver
Petrov et al. Adaptive performance model for dynamic scaling Apache Spark Streaming
US11816511B1 (en) Virtual partitioning of a shared message bus
WO2015168988A1 (zh) 一种数据索引创建方法、装置及计算机存储介质
US20240129251A1 (en) Data processing method and apparatus, computer device, and readable storage medium
CN115587118A (zh) 任务数据的维表关联处理方法及装置、电子设备
CN110569112B (zh) 日志数据写入方法及对象存储守护装置
TWI748989B (zh) 資料聚合方法及裝置
US8285752B1 (en) System and method for maintaining a plurality of summary levels in a single table
WO2016176055A1 (en) Method and system of monitoring a service object
CN107493205B (zh) 一种设备集群扩容性能预测方法及装置

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees