在網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)中,音視頻流的傳輸是基于IP 網(wǎng)絡(luò)的,在存在大量音視頻流傳輸?shù)那闆r下,如何有效地實現(xiàn)對音視頻數(shù)據(jù)的存儲,和對多個用戶檢索回放視頻文件的管理是一個重要的課題。
因此,本文就對網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)的存儲技術(shù)進行了探討,給出了一種音視頻存儲服務器軟件的設(shè)計方案和具體實現(xiàn)。支持圖像存儲、網(wǎng)絡(luò)回放的雙工模式,最大可以同時對多路視頻進行錄像,支持多個用戶同時在線檢索回放歷史數(shù)據(jù),可以根據(jù)圖像的、記錄時間、報警事件類別等多種方式對存儲的圖像數(shù)據(jù)進行檢索。
媒體流的文件存儲
業(yè)界較為典型的監(jiān)控存儲的數(shù)據(jù)管理方案是“DVS+媒體服務器+存儲系統(tǒng)”,其中媒體服務器是系統(tǒng)的核心,由其負責媒體數(shù)據(jù)流的分發(fā)、錄像、以及VOD點播。
在這種流媒體服務器的方案中,數(shù)據(jù)管理方式是基于文件系統(tǒng)進行的,所有的錄像數(shù)據(jù)在通過媒體服務器時,都被轉(zhuǎn)成了標準的流媒體文件(幾分鐘到幾十分鐘的錄像形成一個文件),然后再進行存儲。這種存儲方式利用了傳統(tǒng)文件系統(tǒng)自身的特性,系統(tǒng)開發(fā)比較簡單,但有可能降低監(jiān)控存儲的效率,主要體現(xiàn)在:
存在視頻數(shù)據(jù)丟失的風險。文件形成需要時間,在形成過程中若網(wǎng)絡(luò)有誤碼、前端DVR/DVS/IPCAM有故障/停電,服務器自身軟件缺陷等情況出現(xiàn),就會造成整段時間視頻文件的丟失。
受文件碎片的影響。文件系統(tǒng)使用過程中會形成大量的文件碎片,在使用過程中存儲空間會逐漸變小,性能也會隨之降低。
文件檢索效率低。歷史數(shù)據(jù)檢索的最小單位是文件,顆粒度太大,精確度低。
除了文件系統(tǒng)自身的不足之外,方案還會受到流媒體服務器集群能力的影響。一臺普通的PC Server大約能承載幾十路2Mbps媒體數(shù)據(jù)流的處理,在這種組網(wǎng)下,要支撐更多數(shù)量的媒體流處理,需要將多臺媒體服務器組成一個集群。但是,受限于媒體流服務器的集群能力,媒體服務器的數(shù)量不能太多,一般十幾臺媒體服務器就達到了一個集群的極限。因此,媒體服務器集群成為了整個監(jiān)控系統(tǒng)的瓶頸,這使得監(jiān)控系統(tǒng)無法大規(guī)模展開。在構(gòu)建平安工程這類大規(guī)模監(jiān)控系統(tǒng)時,這種方案就會遇到很大問題,大量的媒體服務器不僅增加成本,管理同時變得更復雜。
由此可見,傳統(tǒng)的監(jiān)控系統(tǒng)在數(shù)據(jù)管理方面面臨的兩個主要問題:普通文件系統(tǒng)不是專為監(jiān)控存儲設(shè)計,因此會影響到監(jiān)控數(shù)據(jù)存儲的效率;媒體服務器的集群能力有限,導致監(jiān)控系統(tǒng)大規(guī)模部署困難。那么,是否有針對監(jiān)控存儲的更好的數(shù)據(jù)管理方式?
針對監(jiān)控存儲的數(shù)據(jù)特點,業(yè)界早在幾年前就開始嘗試一些新的數(shù)據(jù)管理方式,希望能夠提高監(jiān)控存儲的數(shù)據(jù)管理效率,滿足監(jiān)控大規(guī)模應用的需求。在這些數(shù)據(jù)管理方式中,“塊直存”就是其中比較有特點的一種,已經(jīng)成為業(yè)界發(fā)展的方向。其創(chuàng)新性主要體現(xiàn)在:
創(chuàng)造性的采用了“時間索引+塊數(shù)據(jù)”的專用數(shù)據(jù)結(jié)構(gòu),拋棄了傳統(tǒng)的文件系統(tǒng),提高監(jiān)控數(shù)據(jù)的管理效率。
創(chuàng)造性的采用了基于iSCSI協(xié)議的IP SAN直存技術(shù),拋棄了傳統(tǒng)的流媒體服務器,簡化系統(tǒng)架構(gòu)。
通過集中式數(shù)據(jù)管理,實現(xiàn)了對資源的統(tǒng)一劃分和調(diào)度,實現(xiàn)數(shù)據(jù)的全局性管理。
媒體服務器文件存儲模式
實際上,在很多大規(guī)模監(jiān)控方案中,為了解決媒體服務器性能瓶頸的問題,一般會采用服務器群的方式完成。但又帶來新的問題,如多個服務器之間如何進行負載分擔?某個服務器故障之后,系統(tǒng)如何將數(shù)據(jù)流量切換至其他服務器?這些服務器如何管理?如何共享一個存儲空間?等等,解決這些問題需要一個非常優(yōu)秀的集群管理系統(tǒng),增加系統(tǒng)復雜性的同時,還需要一筆不菲的預算,更遺憾的是,目前業(yè)界還沒有一個集群管理系統(tǒng)可以很好的解決該問題。
因此,前端設(shè)備到IP SAN的端到端直存就是一種很好的解決辦法。在存儲方式上,“數(shù)據(jù)塊直存”的數(shù)據(jù)管理方式拋棄了媒體服務器,在IP網(wǎng)絡(luò)的基礎(chǔ)上,在編碼設(shè)備中集成了iSCSI模塊,使得編碼設(shè)備可以基于iSCSI的協(xié)議端到端的把錄像數(shù)據(jù)寫入IP SAN存儲設(shè)備中。
監(jiān)控錄像的檢索效率
傳統(tǒng)監(jiān)控中,對于媒體流的文件存儲模式,在錄像檢索時首先要根據(jù)攝像頭、檢索的時間查找到對應的文件,然后再進一步定位具體的時間點,從該時間點回放錄像。歷史數(shù)據(jù)檢索的最小單位是文件,顆粒度太大,精確度低。
文件系統(tǒng)本來是為隨機讀寫的數(shù)據(jù)管理應用設(shè)計的,檢索效率較低,一個含幾百萬個文件的系統(tǒng)的檢索效率很難想象。所以,當系統(tǒng)規(guī)模擴大后,傳統(tǒng)數(shù)字監(jiān)控方案的效率下降很快。
在“塊直存”的系統(tǒng)中,“塊”存儲可以理解成自定義的一種文件系統(tǒng),在裸盤上進行數(shù)據(jù)讀寫;時間作為每個數(shù)據(jù)單元的索引,并且把索引和數(shù)據(jù)單元保存在一個完全獨立的邏輯存儲空間上。錄像的索引和數(shù)據(jù)形成獨立的、完整的數(shù)據(jù)結(jié)構(gòu),這種數(shù)據(jù)結(jié)構(gòu)完全由自己管理,不再由操作系統(tǒng)和文件管理。通過時間索引+塊數(shù)據(jù)存儲這種組合,在錄像檢索上,可以基于時間進行檢索,可以快速定位到任意時間的錄像,檢索效率大幅度提高。在檢索的顆粒度上,也不再受文件大小的限制,可以實現(xiàn)秒級的連續(xù)檢索。
H3C創(chuàng)新存儲模式—“iSCSI塊直存”
作為IP領(lǐng)域的領(lǐng)導廠商之一,H3C同時在IP網(wǎng)絡(luò)、IP視頻、IP存儲等領(lǐng)域有著長期的技術(shù)和產(chǎn)品積累。進入IP監(jiān)控領(lǐng)域后,H3C將這些技術(shù)進行融合,首家將iSCSI塊存儲的存儲方式引入監(jiān)控中,從而有效的解決了媒體服務器引入的存儲的性能、可靠性以及檢索效率的問題。
在“塊數(shù)據(jù)”和“直存”兩者的技術(shù)基礎(chǔ)上,通過全局性的資源統(tǒng)一劃分和調(diào)度,實現(xiàn)數(shù)據(jù)的全局性管理。在大型監(jiān)控系統(tǒng)里面,可能有成千上萬個攝像機和海量的存儲空間。
如何管理這些攝像頭和存儲設(shè)備之間的對應關(guān)系是一個非常復雜的難題。在“塊直存”視頻監(jiān)控系統(tǒng)中,H3C引入了數(shù)據(jù)管理服務器單元(DM),以此來實現(xiàn)存儲資源的統(tǒng)一管理。
DM是一個專用的數(shù)據(jù)管理設(shè)備,所有的攝像頭和存儲資源都由其管理。攝像頭需要存儲資源時,會統(tǒng)一向DM申請,DM會從存儲空間中選擇合適的存儲資源分配給攝像頭,使攝像頭與這一塊的存儲資源建立讀寫關(guān)系。
IP SAN設(shè)備完成某個攝像頭媒體數(shù)據(jù)塊的存儲工作后,根據(jù)監(jiān)控點的IP地址、寫入媒體數(shù)據(jù)的起始和終止時間,自動生成一個塊索引值。DM和IP SAN之間進行通信,獲取最新的視頻存儲信息,對所有監(jiān)控圖像的檢索等通過DM完成。
當然,這種存儲方式必然對監(jiān)控廠商的技術(shù)積累和實力提出了更高的要求,如要求編碼器支持雙碼流,實時監(jiān)控視頻流和存儲視頻流可以獨立編碼,同時編碼器支持iSCSI協(xié)議。
雙碼流是現(xiàn)在所有高端編碼器的基本要求,實現(xiàn)的廠商較多,編碼器支持iSCSI則要求監(jiān)控廠商同時具備專業(yè)的存儲技術(shù)積累,對于目前的多數(shù)監(jiān)控廠商而言,存在一定的技術(shù)門檻??上驳氖?,我們看到,越來越多的監(jiān)控廠商認識到存儲對于一個監(jiān)控方案的重要性,開始進行這方面的技術(shù)積累。
評論