[發(fā)明專利]時間窗聚合計算方法及裝置在審
| 申請?zhí)枺?/td> | 201911358936.0 | 申請日: | 2019-12-25 |
| 公開(公告)號: | CN111177196A | 公開(公告)日: | 2020-05-19 |
| 發(fā)明(設(shè)計)人: | 嚴(yán)峰 | 申請(專利權(quán))人: | 海爾優(yōu)家智能科技(北京)有限公司 |
| 主分類號: | G06F16/2455 | 分類號: | G06F16/2455;G06F16/22;G06F16/21 |
| 代理公司: | 北京康信知識產(chǎn)權(quán)代理有限責(zé)任公司 11240 | 代理人: | 張秀英 |
| 地址: | 100086 北京市海淀區(qū)知春*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 時間 聚合 計算方法 裝置 | ||
本發(fā)明提供了一種時間窗聚合計算方法及裝置,其中,該方法包括:當(dāng)接收到的傳感器的狀態(tài)數(shù)據(jù)滿足預(yù)定的時間窗開啟條件時,在預(yù)置的鍵值數(shù)據(jù)庫中設(shè)置所述狀態(tài)數(shù)據(jù)對應(yīng)的鍵,并將所述時間窗的時長設(shè)置為所述鍵的過期時長;在所述時間窗開啟后,將所述狀態(tài)數(shù)據(jù)存儲到所述鍵值數(shù)據(jù)庫中;在所述鍵的過期時長到達(dá)時,從所述鍵值數(shù)據(jù)庫中讀取所述狀態(tài)數(shù)據(jù)并進(jìn)行聚合計算,可以解決相關(guān)技術(shù)中當(dāng)有海量的傳感器都在向云服務(wù)器上報狀態(tài)數(shù)據(jù)時,應(yīng)用需要保存大量數(shù)據(jù)到應(yīng)用內(nèi)存中,而且還需要為每個傳感器啟動一個時間窗開啟的定時器,對內(nèi)存和CPU資源都要求較高的問題,大大減少了應(yīng)用本身對CPU和內(nèi)存的資源要求。
技術(shù)領(lǐng)域
本發(fā)明涉及通信領(lǐng)域,具體而言,涉及一種時間窗聚合計算方法及裝置。
背景技術(shù)
云服務(wù)器接收來自傳感器的狀態(tài)數(shù)據(jù)上報,當(dāng)時間窗開始條件滿足時,啟動一個定時器做計時,同時把狀態(tài)數(shù)據(jù)保存在應(yīng)用內(nèi)存中。當(dāng)收到后續(xù)的狀態(tài)數(shù)據(jù)上報時,檢查對應(yīng)的定時器是否運行中,如果是,則繼續(xù)保存到內(nèi)存中,否則說明時間窗口已經(jīng)結(jié)束了,不必保存該數(shù)據(jù)。當(dāng)定時器到點結(jié)束時,觸發(fā)應(yīng)用對內(nèi)存中的數(shù)據(jù)進(jìn)行聚合計算。
上述方案存在以下缺陷:
資源使用高:當(dāng)有海量的傳感器都在上報狀態(tài)數(shù)據(jù)時,應(yīng)用需要保存大量數(shù)據(jù)到應(yīng)用內(nèi)存中,而且還需要為每個傳感器啟動一個時間窗開啟的定時器,對內(nèi)存和CPU資源都要求較高。
健壯性差:如果應(yīng)用突然崩潰或者需要重啟,重啟后緩存的內(nèi)存數(shù)據(jù)也都丟失了,只能從啟動開始重新接收數(shù)據(jù)來做聚合計算。
針對相關(guān)技術(shù)中當(dāng)有海量的傳感器都在上報狀態(tài)數(shù)據(jù)時,應(yīng)用需要保存大量數(shù)據(jù)到應(yīng)用內(nèi)存中,而且還需要為每個傳感器啟動一個時間窗開啟的定時器,對內(nèi)存和CPU資源都要求較高的問題,尚未提出解決方案。
發(fā)明內(nèi)容
本發(fā)明實施例提供了一種時間窗聚合計算方法及裝置,以至少解決當(dāng)有海量的傳感器都在向云服務(wù)器上報狀態(tài)數(shù)據(jù)時,應(yīng)用需要保存大量數(shù)據(jù)到應(yīng)用內(nèi)存中,而且還需要為每個傳感器啟動一個時間窗開啟的定時器,對內(nèi)存和CPU資源都要求較高的問題。
根據(jù)本發(fā)明的一個實施例,提供了一種時間窗聚合計算方法,包括:
當(dāng)接收到的傳感器的狀態(tài)數(shù)據(jù)滿足預(yù)定的時間窗開啟條件時,在預(yù)置的鍵值數(shù)據(jù)庫中設(shè)置所述狀態(tài)數(shù)據(jù)對應(yīng)的鍵,并將所述時間窗的時長設(shè)置為所述鍵的過期時長;
在所述時間窗開啟后,將所述狀態(tài)數(shù)據(jù)存儲到所述鍵值數(shù)據(jù)庫中;
在所述鍵的過期時長到達(dá)時,從所述鍵值數(shù)據(jù)庫中讀取所述狀態(tài)數(shù)據(jù)并進(jìn)行聚合計算。
可選地,將所述狀態(tài)數(shù)據(jù)存儲到所述鍵值數(shù)據(jù)庫中包括:
將所述狀態(tài)數(shù)據(jù)以鍵值對的形式存儲到所述鍵值數(shù)據(jù)庫中。
可選地,在從所述鍵值數(shù)據(jù)庫中讀取所述狀態(tài)數(shù)據(jù)并進(jìn)行聚合計算之后,所述方法還包括:
清除所述鍵值數(shù)據(jù)庫中所述傳感器上報的所述狀態(tài)數(shù)據(jù)。
可選地,在在預(yù)置的鍵值數(shù)據(jù)庫中設(shè)置所述狀態(tài)數(shù)據(jù)對應(yīng)的鍵,并將所述時間窗的時長設(shè)置為所述鍵的過期時長之前,所述方法還包括:
當(dāng)接收到所述狀態(tài)數(shù)據(jù)時,啟動監(jiān)聽所述鍵值數(shù)據(jù)庫中鍵的過期時長是否達(dá)到的監(jiān)聽線程。
可選地,在從所述鍵值數(shù)據(jù)庫中讀取所述狀態(tài)數(shù)據(jù)并進(jìn)行聚合計算之后,所述方法還包括:
在通過所述監(jiān)聽線程監(jiān)聽到所述鍵的過期時長達(dá)到時,停止將所述傳感器上報的狀態(tài)數(shù)據(jù)存儲到所述鍵值數(shù)據(jù)庫中。
可選地,在當(dāng)所述鍵的過期時長到達(dá)時,從所述鍵值數(shù)據(jù)庫中讀取所述狀態(tài)數(shù)據(jù)并進(jìn)行聚合計算之前,所述方法還包括:
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于海爾優(yōu)家智能科技(北京)有限公司,未經(jīng)海爾優(yōu)家智能科技(北京)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201911358936.0/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





