亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        冷存儲在鐵路視頻監(jiān)控系統(tǒng)的文件接口研究

        2019-07-01 03:51:50石蕊崔圣青
        中國鐵路 2019年5期

        石蕊,崔圣青

        (1.北京浩瀚深度信息技術股份有限公司,北京 100142;2. 中國鐵路濟南局集團有限公司 濟南通信段,山東 濟南 250000)

        0 引言

        在鐵路大數(shù)據(jù)時代,隨著攝像機部署數(shù)量和視頻圖像質(zhì)量的不斷提高,以及反恐防控對鐵路視頻數(shù)據(jù)存儲時間延長到90 d的要求,使視頻存儲數(shù)據(jù)量激增。這些不斷增長的數(shù)據(jù)有90%以上都是不常訪問的數(shù)據(jù),稱之為冷數(shù)據(jù),如果采用磁帶庫或藍光光盤的離線方案進行存儲,數(shù)據(jù)回放的響應時間較長,不適用于鐵路視頻監(jiān)控的應用場景。如果采用傳統(tǒng)的在線存儲系統(tǒng),將在能源消耗、硬件購置成本及空間利用率等方面面臨很大挑戰(zhàn)。冷存儲同上述方案相比,具有顯著優(yōu)勢,其低功耗及近似在線存儲的性能,可同時解決上述2種方案面臨的難題,大幅度降低總體擁有成本(TCO)。在實際應用中,不論是既有存儲擴容還是新建存儲系統(tǒng),冷存儲均可以通過文件系統(tǒng)接口和監(jiān)控平臺進行無縫對接,以最優(yōu)的方式延長數(shù)據(jù)存儲時間。

        1 冷存儲技術與鐵路視頻監(jiān)控系統(tǒng)

        通常將數(shù)據(jù)按照訪問頻率分為“冷”“溫”“熱”三大類,在鐵路綜合視頻監(jiān)控系統(tǒng)(簡稱視頻監(jiān)控系統(tǒng))中,1周、1個月及1個季度以上的一些數(shù)據(jù)訪問次數(shù)較少,都屬于冷數(shù)據(jù),具體時間界限可根據(jù)實際使用情況和投資量來定。

        視頻監(jiān)控系統(tǒng)由視頻節(jié)點(包括視頻核心節(jié)點、視頻區(qū)域節(jié)點、Ⅰ類視頻接入節(jié)點、Ⅱ類視頻接入節(jié)點)、視頻匯集點、視頻采集點、承載網(wǎng)絡和視頻終端(包括視頻管理終端、監(jiān)視終端)組成(見圖1)。視頻監(jiān)控系統(tǒng)接口包括 A、B、C、D、E、F、H、Na接口,其中A、B、H是視頻監(jiān)控系統(tǒng)外部接口,C、D、E、F是視頻監(jiān)控系統(tǒng)內(nèi)部接口,Na是設備管理接口。冷儲存作為Ⅰ類視頻接入節(jié)點和Ⅱ類視頻接入節(jié)點存儲區(qū)的擴展,采用用戶空間文件系統(tǒng)(FUSE)/SMB接口接入到應用服務區(qū)中,與Q/CR 575—2017規(guī)范中接口要求相比,將原Ⅰ類視頻接入節(jié)點和Ⅱ類視頻接入節(jié)點E調(diào)整為E+FUSE/SMB[1-2]。

        對于冷存儲技術,采用何種接口方式最大程度地簡化用戶操作,是解決問題的關鍵。目前的冷存儲系統(tǒng),例如谷歌、微軟等云存儲采用對象存儲,這種存儲以數(shù)據(jù)對象為最小存儲單元,雖然其IO性能好,協(xié)議開銷小,但需要特定的應用程序編程接口(API)進行訪問,不便于用戶使用。而冷存儲采用的文件系統(tǒng)接口可使用戶方便地在該文件系統(tǒng)內(nèi)進行各種文件操作,不需要復雜的編程開發(fā)。

        2 關鍵技術

        冷存儲最顯著的特點就是存儲量大,可以支持水平擴展,因此必然是由多臺機器組成的分布式系統(tǒng),而不可能是1臺單獨的機器。當服務器端是多臺機器時,客戶端在連接服務器時就需要進行選擇,在此采用一致性哈希算法來解決。當客戶端成功連接服務器可以對上層提供存儲服務后,上層軟件如何方便地使用冷存儲提供的存儲空間,則需要采用FUSE文件系統(tǒng)接口方案。

        2.1 分布式存儲系統(tǒng)

        在傳統(tǒng)的存儲系統(tǒng)中,全部數(shù)據(jù)被集中存儲在單獨的存儲服務器,其最大的問題就是不容易擴展。當存儲空間需要增加時,需購買另外一臺更高容量的存儲設備替換之前的設備,造成很大的浪費和運維開銷。

        冷存儲的特點之一就是針對大容量存儲而設計,不依賴于單機設備容量,而是由多個獨立的設備組成一個存儲集群,形成分布式存儲系統(tǒng)。這樣的分布式系統(tǒng)可支持水平擴展,隨時添加新的節(jié)點就能增加系統(tǒng)容量。而且多個設備之間可以進行負載均衡,每臺設備可達到的性能固然是有上限的,但多臺設備通過負載均衡就可在整體上達到更高的性能。多個設備組成的系統(tǒng)能有效地防止單臺設備崩潰造成的損失,使系統(tǒng)可靠性更高[3-4]。

        圖1 視頻監(jiān)控系統(tǒng)組成及其邏輯接口

        圖2 冷存儲分布式系統(tǒng)結構

        冷存儲分布式系統(tǒng)結構見圖2,右側是前置節(jié)點組成的服務器集群,左側是存儲節(jié)點組成的存儲集群,用戶的請求首先到達前置節(jié)點,然后通過前置節(jié)點把用戶數(shù)據(jù)分片,發(fā)送到左側存儲集群中不同節(jié)點中的多個硬盤進行數(shù)據(jù)存儲。雙集群結構是為了在前置服務器集群中進行數(shù)據(jù)分片計算糾刪碼等對性能要求比較高的操作,而在后端存儲節(jié)點僅進行數(shù)據(jù)讀寫等基本操作,因此可以大規(guī)模擴展后端存儲集群,支持更大的容量,而無需配置很多計算資源,從而達到最佳的性價比。這是在分布式存儲系統(tǒng)中一種針對冷數(shù)據(jù)場景的獨特優(yōu)化方案,其他分布式存儲系統(tǒng)都是一個集群,每個獨立設備的性能要求都比較高,這樣雖然可以達到更高的性能,但成本也很高,并不適合大規(guī)模冷數(shù)據(jù)低成本存儲的要求。

        2.2 一致性哈希算法

        在此研究的分布式存儲系統(tǒng)具有多個前置節(jié)點(見圖2右框部分),每個節(jié)點均可處理用戶的操作,為了實現(xiàn)負載均衡和失效備援,需要有一種機制來選擇正常的節(jié)點進行操作,這種機制還能夠處理節(jié)點失效、節(jié)點添加等問題,以保證整體服務正常運行。

        通常方案采用集中式的信息共享方式,即采用單機服務器來保存集群中的節(jié)點狀態(tài),例如集群中有多少臺設備是正??捎玫?,每臺設備的負載情況如何等。客戶端首先向這臺狀態(tài)服務器發(fā)出申請,狀態(tài)服務器根據(jù)自己掌握的信息分配1臺具體的服務器給客戶端,客戶端再正式向這個分配的服務器發(fā)出業(yè)務請求。狀態(tài)服務器集中分配的方式存在2個主要問題:一是形成了單點故障,如果這臺狀態(tài)服務器崩潰,則整個系統(tǒng)不可用;二是影響性能,每次客戶端都需要建立一個連接申請分配服務器,這個過程增加了時間消耗、降低了性能。

        為解決集中式分配方案的問題,冷存儲系統(tǒng)采用一致性哈希算法進行節(jié)點選擇,同時解決節(jié)點增刪帶來的數(shù)據(jù)平衡問題,消除了單點故障,降低了客戶端申請分配服務器的時間消耗。

        2.2.1 哈希算法基本原理

        一致性哈希(Hash)用一個圓環(huán)來劃分整個哈希值空間。假設存在一個值域為0~232-1的哈希函數(shù)(見圖3)。哈希值空間按順時針排序,0和232-1在同一點重合。隨后對各個需要加入集群的服務器使用哈希函數(shù)進行映射,可以通過服務器之間不同的標識作為哈希函數(shù)的輸入(如IP或主機名),然后進行映射,每臺服務器都能確定自己的位置且互不重合,假設存在4臺服務器,進行映射后的位置關系見圖4。

        對數(shù)據(jù)和服務器進行算法設計,使兩者之間有良好的容錯性和可擴展性。對數(shù)據(jù)進行哈希函數(shù)的映射,計算出該數(shù)據(jù)對應哈希值在環(huán)上的位置,從該位置順時針遍歷,遇到的第1臺服務器就是該數(shù)據(jù)需要連接的服務器。

        圖3 哈希值空間示意圖

        圖4 服務器在哈希值空間上的映射位置

        例如,存在Object A、Object B、Object C、Object D 4個數(shù)據(jù)對象,經(jīng)過上述算法后,數(shù)據(jù)和服務器對應關系見圖5。由一致性哈希算法,數(shù)據(jù)A、B、C、D分別被對應到Node A、Node B、Node C、Node D上。

        2.2.2 哈希算法容錯性分析

        圖5 數(shù)據(jù)和服務器對應關系

        假設Node D由于某種原因離開了集群,按照一致性哈希算法,數(shù)據(jù)A、B、C依然會找到原來的服務器,而數(shù)據(jù)D會重新在哈希環(huán)上進行尋找,最終會找到Node A。因此,1臺服務器的崩潰僅對此服務器到其環(huán)空間中前1臺服務器的數(shù)據(jù)產(chǎn)生影響,不會對其他數(shù)據(jù)產(chǎn)生影響。如果在存儲時把Object A在Node D和A上都保存一份,則在Node D被從哈希環(huán)上移除時,會由Node A上找到Object A,因此數(shù)據(jù)的可靠性得以大大提高。

        如果在系統(tǒng)中增加1臺服務器Node X(見圖6),此時數(shù)據(jù)A、B、D對應的服務器不會變化,只有數(shù)據(jù)C會重新尋找,最終找到Node X。因此,1臺服務器的添加僅對此服務器到其環(huán)空間中前1臺服務器的數(shù)據(jù)產(chǎn)生影響,不會對其他數(shù)據(jù)產(chǎn)生影響。系統(tǒng)只需要把Object C拷貝一份放到Node X上,就完成了數(shù)據(jù)的重新分布。

        圖6 添加服務器映射關系

        在節(jié)點刪除和添加后,需要按照新的哈希環(huán)來對數(shù)據(jù)進行重新分布,稱為數(shù)據(jù)再平衡。從以上例子可知,使用一致性哈希算法,可以保證只有一小部分數(shù)據(jù)在節(jié)點的刪除或添加后受到影響,需要拷貝遷移的數(shù)據(jù)也會盡量少。因此采用一致性哈希算法,客戶端選擇節(jié)點更簡單,數(shù)據(jù)再平衡的速度也更快,系統(tǒng)的容錯性和可擴展性都能得到保證[5-7]。

        2.3 FUSE文件系統(tǒng)

        文件系統(tǒng)是用來存儲計算機文件、目錄及其包含數(shù)據(jù)的方法,它使文件目錄和數(shù)據(jù)的搜索和訪問得以簡化。通用操作系統(tǒng)的重要組成部分就是文件系統(tǒng)。傳統(tǒng)上,操作系統(tǒng)在內(nèi)核級別支持文件系統(tǒng),F(xiàn)USE則是實現(xiàn)在用戶態(tài)的文件系統(tǒng)框架。

        例如,F(xiàn)USE內(nèi)核模塊的位置和Linux自帶的其他文件系統(tǒng)xfs、ext4等是在一個層次,但后續(xù)操作發(fā)生不同,xfs等文件系統(tǒng)還會持續(xù)在內(nèi)核態(tài)進行操作直到硬盤,而FUSE則結束內(nèi)核態(tài),轉(zhuǎn)而進入用戶態(tài)(見圖7)。具體到冷存儲的客戶端開發(fā),則都是與服務器端的網(wǎng)絡操作。

        圖7 FUSE在Linux系統(tǒng)中的位置

        將連接分布式集群的客戶端代碼寫在內(nèi)核態(tài)還是用戶態(tài),會帶來一系列的區(qū)別。首先,內(nèi)核態(tài)的開發(fā)和調(diào)試都比較困難,在內(nèi)核態(tài)出現(xiàn)的問題造成的影響也較大,經(jīng)常造成死機等后果。其次,內(nèi)核的版本繁多,如果每個內(nèi)核版本都要編寫對應的存儲客戶端代碼也是一個繁復的任務,且容易出錯??紤]到冷存儲的應用場景,采用FUSE做用戶態(tài)的存儲客戶端開發(fā),避開了高風險的內(nèi)核開發(fā)和繁雜的版本支持,以簡單的方式快速實現(xiàn),并具有較高的通用性[8-11]。

        2.4 工作流程

        分布式集群、一致性哈希及FUSE文件系統(tǒng)必須協(xié)同工作,冷存儲系統(tǒng)接口工作流程見圖8。

        視頻監(jiān)控程序運行在一臺服務器上,該服務器相對于冷存儲集群來說就是存儲的客戶端,冷存儲集群是服務端,之間通過網(wǎng)絡連接。視頻監(jiān)控程序會對多個視頻文件進行讀寫,這些文件邏輯上是在視頻監(jiān)控的服務器上(通過FUSE接口提供的文件系統(tǒng)),但實際上是存儲在冷存儲集群上(通過一致性哈希選擇服務器,并傳輸給服務器端進行實際存儲),文件的寫入過程如下:

        (1)視頻監(jiān)控程序打開一個文件,寫入一些數(shù)據(jù),該請求被操作系統(tǒng)發(fā)送給FUSE內(nèi)核模塊。

        (2)FUSE內(nèi)核模塊將寫請求轉(zhuǎn)給FUSE用戶態(tài)程序,在此就是冷存儲集群的客戶端程序。

        (3)FUSE用戶態(tài)程序中采用一致性哈希算法,用文件的全路徑作為哈希的參數(shù),計算出1個哈希值,在哈希環(huán)上選擇1臺服務器進行連接。不同的文件會計算出不同的哈希值,也就會選擇不同的服務器去連接,即可實現(xiàn)負載均衡。

        圖8 冷存儲系統(tǒng)接口工作流程

        (4)數(shù)據(jù)通過網(wǎng)絡被發(fā)送到冷存儲集群的前置機上,開始在后端進行實際的存儲,然后返回結果給客戶端。

        (5)FUSE用戶態(tài)程序收到返回后,發(fā)給FUSE內(nèi)核模塊。

        (6)FUSE內(nèi)核模塊收到返回后,發(fā)給上層調(diào)用的視頻監(jiān)控程序。視頻監(jiān)控程序即可得知剛才的數(shù)據(jù)寫入是否成功,然后進行相應后續(xù)工作。

        3 系統(tǒng)接口測試

        首先需要對FUSE文件系統(tǒng)和一致性哈希的基本功能進行測試,然后測試某款視頻監(jiān)控軟件是否可以平滑遷移到該接口上,最后針對Windows客戶端進行測試。

        3.1 測試方案

        測試方案見圖9。

        3.2 基本功能測試

        (1)測試目標:冷存儲的文件系統(tǒng)與普通的文件系統(tǒng)是否相符,是否可通過一致性哈希達到失效備援。

        (2)測試流程:①下載配置文件。在裝好FUSE的Linux服務器上,下載存儲系統(tǒng)提供的FUSE配置文件;②掛載。運行掛載命令,掛載后可以看到系統(tǒng)分區(qū)多了1個FUSE分區(qū),該命令將存儲系統(tǒng)掛載到相應的目錄上,掛載后可以看到文件系統(tǒng)多了1個設定的分區(qū),接下來用戶即可在該目錄進行正常的文件操作;③執(zhí)行文件系統(tǒng)操作;④一致性哈希支持的失效備援。通過關閉其中1個計算節(jié)點,查看剛才的文件內(nèi)容,向文件追加新內(nèi)容,啟動此前被關閉的節(jié)點,再次查看文件內(nèi)容是否有更新。

        圖9 測試方案示意圖

        (3)測試結果:每個命令后經(jīng)過查看,文件內(nèi)容均為預期輸出。

        (4)測試結論:冷存儲的文件系統(tǒng)與普通的文件系統(tǒng)操作相符,可以通過一致性哈希達到失效備援。

        3.3 視頻監(jiān)控軟件對接測試

        (1)測試目標:冷存儲系統(tǒng)與鐵路局集團公司現(xiàn)有視頻監(jiān)控系統(tǒng)進行對接,視頻監(jiān)控軟件可以平滑切換到冷存儲系統(tǒng)上,視頻的錄制和回放正常。

        (2)測試流程:①修改視頻服務的配置文件, 更改存儲的路徑配置,使其指向冷存儲FUSE客戶端的掛載點;②啟動視頻監(jiān)控服務,視頻服務識別到FUSE文件系統(tǒng)后,從視頻服務的日志中可以看到,之后的分區(qū)即為掛載后產(chǎn)生的新分區(qū);③檢查視頻錄制,確認所有攝像頭均正常寫入;④檢查視頻回放,通過視頻軟件可以看到攝像頭的回放視頻(見圖10)。當視頻回放出現(xiàn)“加載中”的情況時,說明其讀取到已經(jīng)冷藏的數(shù)據(jù),此時后臺先點亮硬盤,然后從數(shù)據(jù)庫中讀取文件的信息并從硬盤中進行讀取,最后將讀取完成的文件返回給視頻回放程序(見圖11)。

        (3)測試結果:按照測試流程進行操作,可以看到正常的視頻錄制和回放。

        (4)測試結論:在此研究的存儲系統(tǒng)提供FUSE文件系統(tǒng)接口,為目前大部分第三方服務提供了極大方便,一般無需修改其程序,即可方便快速地與存儲系統(tǒng)完成對接。

        3.4 Windows用戶應用測試

        (1)測試目標:冷存儲系統(tǒng)的客戶端主要應用于Linux系統(tǒng)上,為了使Windows用戶也可使用存儲系統(tǒng),其FUSE文件系統(tǒng)還可通過Samba服務進行網(wǎng)絡共享,將Linux的FUSE文件系統(tǒng)共享到Windows系統(tǒng)上。

        圖10 視頻監(jiān)控平臺回放界面

        圖11 冷數(shù)據(jù)回放界面

        (2)測試流程:①在Linux服務器進行FUSE掛載;②在Linux服務器進行Samba服務配置;③在Windows服務器進行遠程登錄,即可訪問FUSE文件系統(tǒng)(見圖12);④在Linux服務器的掛載目錄可查看到相關信息。

        圖12 共享目錄查看

        (3)測試結果:冷存儲系統(tǒng)的FUSE文件系統(tǒng)可以通過Samba共享給Windows使用。

        (4)測試結論:冷存儲的文件系統(tǒng)可通過Samba共享給Windows使用,提高了冷存儲接口的適應性。

        4 結束語

        隨著鐵路大數(shù)據(jù)的高速發(fā)展,鐵路綜合視頻監(jiān)控系統(tǒng)數(shù)據(jù)存儲成為新的熱點,海量的視頻數(shù)據(jù)如何存儲才能降低存儲成本和能源消耗、提升空間利用率,同時又能給用戶帶來便捷的操作體驗是解決方案的關鍵。在此探討的冷存儲系統(tǒng)可滿足上述需要,系統(tǒng)采用簡單通用的FUSE文件系統(tǒng),通過一致性哈希實現(xiàn)負載均衡和失效備援,在應用中效果良好。

        亚洲欧美日韩国产综合一区二区 | 日本女同伦理片在线观看| 少妇被粗大的猛进69视频| 丰满少妇弄高潮了www| 风韵饥渴少妇在线观看| 亚洲大片免费| 亚洲少妇一区二区三区老| 久久亚洲av成人无码电影| 国产亚洲精品aaaa片小说| 无码午夜剧场| 亚洲精品中文字幕乱码三区99| 东北女人啪啪对白| 国内精品久久久久影院一蜜桃| 亚洲AV无码成人精品区网页| 国内国外日产一区二区| 男吃奶玩乳尖高潮视频| 麻豆一区二区99久久久久| 青青草综合在线观看视频| 亚洲性日韩一区二区三区| 全黄性性激高免费视频| 亚洲综合无码一区二区三区| 手机在线中文字幕国产| 天堂蜜桃视频在线观看 | 黑人巨大白妞出浆| 国产欧美激情一区二区三区| 日韩美腿丝袜三区四区| 亚洲精品一品区二品区三品区| 欧美自拍视频在线| 99精品又硬又爽又粗少妇毛片 | 日产精品一区二区三区免费| 亚洲熟女少妇精品综合| 漂亮人妻被中出中文字幕久久| 久久av无码精品人妻糸列| 国产三级视频在线观看国产 | 亚洲国产av自拍一区| 国产精品久久久久影院嫩草| 久久久久亚洲AV片无码乐播 | 水蜜桃精品视频在线观看| 水蜜桃精品一二三| 精品国产品欧美日产在线| 少妇人妻无一区二区三区|