[發(fā)明專利]海量數據存儲和檢索方法有效
| 申請?zhí)枺?/td> | 201210210314.5 | 申請日: | 2012-06-21 |
| 公開(公告)號: | CN102750377A | 公開(公告)日: | 2012-10-24 |
| 發(fā)明(設計)人: | 唐耀斌;朱文俊 | 申請(專利權)人: | 深圳市谷米科技有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 518000 廣東省深圳市南山區(qū)科*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 海量 數據 存儲 檢索 方法 | ||
技術領域
本發(fā)明涉及數據處理領域,具體地講是一種海量數據存儲和檢索方法。
背景技術
隨著互聯(lián)網的普及和智能終端設備的廣泛使用,越來越多的終端設備現(xiàn)在可以接入互聯(lián)網,并通過網絡進行遠程訪問、控制和監(jiān)控狀態(tài)。如何有效地存儲大量設備(千萬級別)連續(xù)不間斷上傳的狀態(tài)信息,對于實現(xiàn)對大量設備的在線監(jiān)控和歷史狀態(tài)查詢是一個關鍵的問題。例如,在物流行業(yè)中,車輛的位置信息流,需要連續(xù)不斷上傳到服務器上進行存儲,上傳的數據是24小時不間斷的,由于車輛數目眾多,由此會產生海量的數據需要被服務器存儲,對服務器存儲系統(tǒng)造成的IO負荷是巨大的。在這樣的場景下,能否實現(xiàn)海量信息存儲及快速檢索,對于收集和查詢大量設備的狀態(tài)信息起到舉足輕重的作用。解決這一個問題的關鍵就是如何有效減少在大量數據連續(xù)不間斷的寫入服務器存儲系統(tǒng)的時候給系統(tǒng)帶來的巨大寫入(存儲)壓力,并且在提供足夠寫入能力的前提下,維持好的讀(檢索)性能,在存儲和檢索之間獲得平衡。在這個場景中,目前存在的方案主要依靠關系數據庫作為檢索和存儲,而這類方案,往往無法支撐千萬級別的設備同時連續(xù)不間斷的上傳數據。緩存技術開始被應用于海量級數據的存儲和檢索,部分地解決和緩解了上述問題。如何將緩存技術應用于海量數據存儲和檢索是解決問題的關鍵,如國家知識產權局公開的專利申請?zhí)枮?01010142195.5的發(fā)明專利申請“一種海量數據信息檢索系統(tǒng)及其方法”,包括終端層、數據服務層、數據緩存服務層和數據存儲服務層,由于該專利所涉及的緩存技術是對檢索關鍵詞和檢索結果的緩存,而海量數據的存儲涉及不斷的讀寫,檢索只是讀的過程,因而無法完全解決上述技術問題。
發(fā)明內容
本發(fā)明要解決的技術問題,是提供一種采用緩存技術對大量設備周期上報數據進行存儲和檢索的海量數據存儲和檢索方法。
本發(fā)明的技術解決方案,是提供一種以下步驟的海量數據存儲和檢索方法,包括以下步驟:
(1)、在服務器的文件系統(tǒng)中,按時間段建立目錄,每個目錄下包含眾多<id>.data命令的設備數據文件,每個設備數據文件存放對應設備id在指定時間段的所有數據記錄;
(2)、服務器收到設備上傳數據后,根據數據上報時段將同一時間段上報的所有數據匯總到以該時間段命名的目錄下,然后根據設備標識(id)把某時段內一個或多個設備的上報數據匯總到以該時段命名的目錄下的與該設備標識關聯(lián)的文件內;
(3)、進行數據存儲時,先緩存一定規(guī)模的上報數據,并按步驟1和2對緩存數據進行規(guī)整,當緩存數據達到設定規(guī)模時,一次性集中刷新到服務器的文件系統(tǒng)中;
(4)、查詢數據時,根據所需查詢的設備標識(id)與時間段,讀取相應文件并篩選出查詢結果。
采用以上方法,與現(xiàn)有技術相比具有以下優(yōu)點:采用本發(fā)明,步驟3和4是并列步驟,實現(xiàn)了海量數據的存儲(寫)和檢索(讀)兩個功能,通過時間段與設備標識(id)相結合的方式來設置文件類型和存儲位置,并采用緩存技術對海量數據進行緩存和間歇更新;本發(fā)明降低了存儲大量設備連續(xù)不間斷上傳數據造成的服務器IO壓力,提高了能并發(fā)支持的上傳設備的數目,同時在讀/寫性能上取得了較好的平衡,在持續(xù)的大的存儲(寫)壓力下,仍能獲得較好的檢索(讀)性能。
作為改進,步驟1中,在指定時間段,設備數據文件與設備id一一對應,或一個設備數據文件存儲多個id設備的數據記錄;為減少指定時間段目錄下文件數目,可以將連續(xù)的設備id記錄存到一個文件,降低了數據的復雜程度,提高了整個數據庫的穩(wěn)定性,從而提高數據處理效率。
作為改進,步驟3中,數據存儲的步驟具體步驟如下:a、設備上傳的數據通過網關傳送到設備數據隊列;b、從設備數據隊列批量獲取設備數據,檢查記錄合法性,并將有效記錄放入內存I;c、定期檢查內存I的設備數據記錄數,內存I內的設備數據記錄數超過限額,則將這些記錄一次性追加到當前臨時文件中;并同時把內存I的所有記錄按時間段和id進行規(guī)整,規(guī)整后的數據移入內存II和內存III中;d、內存III中緩存記錄數超過設定限額(一次批量寫入磁盤的記錄數),將內存III中緩存記錄按步驟1和2中的規(guī)則寫入磁盤;e、將內存III中緩存記錄刷新到服務器的文件系統(tǒng),完成海量數據的存儲。
作為改進,內存II中緩存經過規(guī)整但尚未寫入文件系統(tǒng)的設備數據,供內存查詢,內存II和服務器文件系統(tǒng)構成了查詢數據庫,該設計將數據的查詢與寫入分開,減少了服務器的數據傳輸壓力。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳市谷米科技有限公司,未經深圳市谷米科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210210314.5/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:數字一體化電源系統(tǒng)
- 下一篇:一種介質基片零層對準標記結構
- 數據顯示系統(tǒng)、數據中繼設備、數據中繼方法、數據系統(tǒng)、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發(fā)送方法、數據發(fā)送系統(tǒng)、數據發(fā)送裝置以及數據結構
- 數據顯示系統(tǒng)、數據中繼設備、數據中繼方法及數據系統(tǒng)
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發(fā)送和數據接收設備、數據發(fā)送和數據接收方法
- 數據發(fā)送裝置、數據接收裝置、數據收發(fā)系統(tǒng)、數據發(fā)送方法、數據接收方法和數據收發(fā)方法
- 數據發(fā)送方法、數據再現(xiàn)方法、數據發(fā)送裝置及數據再現(xiàn)裝置
- 數據發(fā)送方法、數據再現(xiàn)方法、數據發(fā)送裝置及數據再現(xiàn)裝置





