城市的視頻監(jiān)控系統(tǒng)正從單個(gè)部門(mén)或領(lǐng)域安防業(yè)務(wù)的支撐系統(tǒng)轉(zhuǎn)變?yōu)檎麄(gè)城市信息化建設(shè)和管理應(yīng)用的支撐系統(tǒng),其前端錄像設(shè)備已達(dá)到數(shù)十萬(wàn)級(jí)的規(guī)模,定位于對(duì)整個(gè)城市范圍的視頻資源和相關(guān)信息進(jìn)行有效管理和應(yīng)用,以為各類(lèi)部門(mén)如公安、城管、交通、環(huán)保、能源、安監(jiān)等的業(yè)務(wù)領(lǐng)域提供服務(wù)支持。而現(xiàn)有的視頻監(jiān)控系統(tǒng)大多為部門(mén)自建或獨(dú)立項(xiàng)目建設(shè),存在著各個(gè)系統(tǒng)相互孤立、標(biāo)準(zhǔn)不一、系統(tǒng)可擴(kuò)展性不強(qiáng)、各部門(mén)之間難以協(xié)同工作等缺點(diǎn)。這就迫切需要把現(xiàn)有系統(tǒng)升級(jí)為可適應(yīng)大規(guī)模信息共享需求和多元化業(yè)務(wù)需求的廣域級(jí)視頻監(jiān)控綜合業(yè)務(wù)平臺(tái),實(shí)現(xiàn)各業(yè)務(wù)間的集成和整合,以消除信息孤島,提升系統(tǒng)整體運(yùn)行效率。目前視頻監(jiān)控技術(shù)已進(jìn)入網(wǎng)絡(luò)和全數(shù)字時(shí)代,網(wǎng)絡(luò)視頻監(jiān)控技術(shù)及其應(yīng)用不斷發(fā)展,但基本都采用基于局域網(wǎng)架構(gòu)下的集中式管理模式,不能解決廣域級(jí)系統(tǒng)中面臨的問(wèn)題。云計(jì)算可通過(guò)虛擬化、分布式存儲(chǔ)、并行數(shù)據(jù)處理等各種手段對(duì)各種計(jì)算和存儲(chǔ)資源進(jìn)行統(tǒng)一組織和管理,并以服務(wù)的形式按需提供給云端用戶。SOA是對(duì)云計(jì)算中資源服務(wù)化的理念上的承接,提供了把云計(jì)算服務(wù)集成為系統(tǒng)平臺(tái)的解決方案。這種集成正在走向現(xiàn)實(shí)應(yīng)用,文獻(xiàn)中提出了一種結(jié)合SOA與云計(jì)算系統(tǒng)構(gòu)建的云服務(wù)平臺(tái)模型Nebula,能將分布在互聯(lián)網(wǎng)中各個(gè)圖書(shū)館的資源和服務(wù)整合為一個(gè)整體,支持館際資源共享、服務(wù)共享和任務(wù)協(xié)同。但Nebula平臺(tái)不需管理廣域級(jí)中大量異構(gòu)硬件,也沒(méi)有提供對(duì)基于海量視頻數(shù)據(jù)的并行計(jì)算業(yè)務(wù)支持。本文設(shè)計(jì)了一個(gè)基于SOA和云計(jì)算系統(tǒng)構(gòu)建的廣域級(jí)視頻監(jiān)控綜合業(yè)務(wù)平臺(tái)(以下簡(jiǎn)稱(chēng)視監(jiān)平臺(tái)),可實(shí)現(xiàn)對(duì)廣域范圍內(nèi)的視頻監(jiān)控設(shè)備及有關(guān)計(jì)算資源和視頻監(jiān)控?cái)?shù)據(jù)的統(tǒng)一組織和管理,具有靈活的可擴(kuò)展性,彈性的業(yè)務(wù)能力,并以服務(wù)的形式向平臺(tái)用戶提供多元化業(yè)務(wù)服務(wù)。
1.關(guān)鍵技術(shù)概述
面對(duì)廣域范圍密集監(jiān)控下不斷增長(zhǎng)的海量視頻數(shù)據(jù)以及多個(gè)城市管理部門(mén)的多元業(yè)務(wù)需要,廣域級(jí)視監(jiān)平臺(tái)需要解決數(shù)據(jù)中心管理、底層資源虛擬化、海量數(shù)據(jù)存儲(chǔ)與分析、多元業(yè)務(wù)集成與融合等關(guān)鍵問(wèn)題。
1.1數(shù)據(jù)中心與虛擬化技術(shù)
數(shù)據(jù)中心與虛擬化技術(shù)為廣域級(jí)視監(jiān)平臺(tái)統(tǒng)一組織管理密集分布在城市范圍內(nèi)的大量異構(gòu)硬件資源提供了有效的手段。在1萬(wàn)路的視頻監(jiān)控項(xiàng)目中,若有10%的設(shè)備需要保留24小時(shí)連續(xù)的視頻編碼數(shù)據(jù),則每天產(chǎn)生的數(shù)據(jù)量約為10TB。因此,海量的存儲(chǔ)資源和數(shù)目巨大、品牌各異、分布范圍廣泛的攝像槍、監(jiān)控器等各種異構(gòu)視頻I/O設(shè)備是本視監(jiān)平臺(tái)的管理重點(diǎn)。云計(jì)算的數(shù)據(jù)中心技術(shù)為廣域范圍內(nèi)包括計(jì)算節(jié)點(diǎn)、存儲(chǔ)節(jié)點(diǎn)、視頻I/O節(jié)點(diǎn)在內(nèi)的各種底層異構(gòu)物理資源提供低成本、高帶寬、高可靠的網(wǎng)絡(luò)連接,并快速有效地存儲(chǔ)由監(jiān)控業(yè)務(wù)產(chǎn)生的海量視頻數(shù)據(jù)資源。在此基礎(chǔ)上,采用云計(jì)算虛擬化技術(shù)對(duì)其進(jìn)行統(tǒng)一的抽象管理。虛擬化技術(shù)可分為基礎(chǔ)設(shè)施虛擬化和系統(tǒng)虛擬化;A(chǔ)設(shè)施虛擬化技術(shù)包括CPU虛擬化、內(nèi)存虛擬化和I/O設(shè)備虛擬化,可用于對(duì)平臺(tái)底層各種異構(gòu)資源按大類(lèi)進(jìn)行整合,并通過(guò)構(gòu)建資源池實(shí)現(xiàn)標(biāo)準(zhǔn)化表示,向上層提供訪問(wèn)這些物理資源的統(tǒng)一接口。系統(tǒng)虛擬化技術(shù)是對(duì)基礎(chǔ)設(shè)施虛擬化技術(shù)的進(jìn)一步擴(kuò)展,應(yīng)用傳統(tǒng)虛擬化技術(shù)VMWare可實(shí)現(xiàn)資源定制,為視監(jiān)平臺(tái)上不同部門(mén)多元化的業(yè)務(wù)應(yīng)用需求提供相應(yīng)的虛擬機(jī)運(yùn)行環(huán)境。而新的系統(tǒng)虛擬化技術(shù),支持虛擬機(jī)快速部署和在線遷移,可進(jìn)一步提高虛擬機(jī)的可靠性。
1.2分布式文件系統(tǒng)和分布式編程框架
Hadoop是由Apache基金會(huì)管理的一個(gè)開(kāi)源項(xiàng)目,其組成部分HDFS、HBase和MapReduce分別是云計(jì)算技術(shù)下分布式文件系統(tǒng)和分布式編程框架的開(kāi)源實(shí)現(xiàn)。這三者互相配合,可以實(shí)現(xiàn)本視監(jiān)平臺(tái)中海量數(shù)據(jù)的分布式存儲(chǔ)管理及并行處理,并具有以下優(yōu)點(diǎn):①可擴(kuò)展性強(qiáng),在存儲(chǔ)和計(jì)算兩個(gè)層面上都可實(shí)現(xiàn)可擴(kuò)展的分布式處理;②經(jīng)濟(jì)性好,系統(tǒng)可以運(yùn)行在廉價(jià)的大規(guī)模服務(wù)器集群上;③可靠性高,HDFS的設(shè)備恢復(fù)機(jī)制以及MapReduce的任務(wù)監(jiān)控機(jī)制保證了分布式處理的可靠性。
1.2.1 HDFS分布式文件系統(tǒng)
HDFS主要用于對(duì)以視頻數(shù)據(jù)為主的海量數(shù)據(jù)提供分布式存儲(chǔ)和管理,以利于在數(shù)據(jù)規(guī)模日益龐大的情況下實(shí)現(xiàn)有效的分布式并行調(diào)度。本視監(jiān)平臺(tái)上視頻數(shù)據(jù)的存儲(chǔ)管理具有如下特點(diǎn):①需要存儲(chǔ)大量GB級(jí)甚至TB級(jí)的大文件;②文件具有一次寫(xiě)多次讀的特點(diǎn);③文件讀操作以大規(guī)模的流式讀和小規(guī)模的隨機(jī)讀構(gòu)成;④系統(tǒng)需要有效處理并發(fā)的追加寫(xiě)操作;;⑤權(quán)衡高持續(xù)I/O帶寬與低傳輸延遲時(shí)傾向于前者。
為了滿足系統(tǒng)的上述特點(diǎn),在HDFS分布式文件系統(tǒng)中,大文件被拆分為大小相等的若干固定塊分散存儲(chǔ)于計(jì)算節(jié)點(diǎn)的本地硬盤(pán)中,并通過(guò)較大的分塊粒度(如64MB)保證HDFS對(duì)PB級(jí)超大文件的存儲(chǔ)能力。此外,為保證數(shù)據(jù)和文件的可靠性,HDFS系統(tǒng)設(shè)置了元數(shù)據(jù)管理節(jié)點(diǎn)管理文件和數(shù)據(jù)塊副本的元數(shù)據(jù),為每一個(gè)數(shù)據(jù)塊維持多個(gè)副本。通過(guò)文件的分布式存儲(chǔ),HDFS可并行讀取文件,提供高I/O吞吐率,同時(shí)還簡(jiǎn)化了數(shù)據(jù)塊副本問(wèn)的數(shù)據(jù)同步問(wèn)題。
1.2.2 HBase分布式存儲(chǔ)系統(tǒng)
在HDFS文件系統(tǒng)基礎(chǔ)上,進(jìn)一步建設(shè)了HBase分布式存儲(chǔ)架構(gòu),適用于廣域級(jí)視監(jiān)平臺(tái)上的各種應(yīng)用,如視頻實(shí)時(shí)預(yù)覽、視頻錄像回放等數(shù)據(jù)存儲(chǔ)與查詢(xún)服務(wù)。HBase架構(gòu)的數(shù)據(jù)模型方面,數(shù)據(jù)表中的數(shù)據(jù)項(xiàng)可由無(wú)結(jié)構(gòu)的字節(jié)數(shù)組表示,可以以行名、列名、時(shí)間戳為數(shù)據(jù)表建立索引,以便于對(duì)視頻流數(shù)據(jù)為主的非結(jié)構(gòu)化數(shù)據(jù)的進(jìn)行存儲(chǔ)管理;在數(shù)據(jù)存儲(chǔ)上,HBase可將規(guī)模巨大的整張數(shù)據(jù)表拆分成多個(gè)HDFS文件子表,由HDFS系統(tǒng)保證其健壯性和擴(kuò)展性,同時(shí)采用分布式鎖機(jī)制Chubby負(fù)責(zé)多個(gè)子表間的數(shù)據(jù)同步,保證其可用性。
1.2.3 MapReduce分布式編程框架
MapReduce是由Google提出的一個(gè)軟件架構(gòu),是目前云計(jì)算平臺(tái)上實(shí)際公認(rèn)的并行編模型標(biāo)準(zhǔn),運(yùn)行于HDFS和HBase系統(tǒng)之上。HDFS和HBase實(shí)現(xiàn)了對(duì)海量視頻數(shù)據(jù)高效的分布式存儲(chǔ),MapReduce在此基礎(chǔ)上提供由編程框架自動(dòng)控制的、對(duì)用戶透明的計(jì)算資源和數(shù)據(jù)資源的并行調(diào)度和數(shù)據(jù)同步機(jī)制,可根據(jù)業(yè)務(wù)規(guī)模自動(dòng)伸縮、從而為程序開(kāi)發(fā)者屏了底層的復(fù)雜性,簡(jiǎn)化了分布式并行處理業(yè)務(wù)的編程開(kāi)發(fā)工作。一個(gè)典型的MapReduce計(jì)算處理通?梢苑植嫉缴锨(gè)計(jì)算節(jié)點(diǎn)中來(lái)處理上TB的數(shù)據(jù),這對(duì)海量視頻數(shù)據(jù)業(yè)務(wù)的并行處理尤為重要。
1.3 SOA架構(gòu)與云計(jì)算系統(tǒng)的整合
云計(jì)算系統(tǒng)和SOA架構(gòu)分別完成用戶功能實(shí)現(xiàn)和服務(wù)提供,形成完整的基于SOA的云計(jì)算框架模型。如圖1所示。
圖1 基于SOA的云計(jì)算框架模型
作為服務(wù)提供者,云計(jì)算系統(tǒng)涵蓋如前所述的數(shù)據(jù)中心、虛擬化、分布式文件系統(tǒng)和分布式編程框架等各項(xiàng)基本技術(shù),統(tǒng)一組織管理各種資源并把用戶所需功能實(shí)現(xiàn)為云服務(wù)。云計(jì)算系統(tǒng)由云服務(wù)接口層、云計(jì)算服務(wù)層、云計(jì)算資源層和云服務(wù)管理層組成。其中,云服務(wù)接El層通過(guò)對(duì)外提供統(tǒng)一的綁定接口而實(shí)現(xiàn)各種云服務(wù)的輸出;云計(jì)算服務(wù)層提供了云服務(wù)應(yīng)用程序的運(yùn)行環(huán)境,由開(kāi)發(fā)語(yǔ)言和相應(yīng)的軟件工具組成,可根據(jù)應(yīng)用程序開(kāi)發(fā)者上傳的程序代碼和數(shù)據(jù)提供相應(yīng)服務(wù),完成各種底層資源如網(wǎng)絡(luò)、存儲(chǔ)、計(jì)算等的調(diào)度工作及操作系統(tǒng)管理。云計(jì)算資源層為上層提供各項(xiàng)基礎(chǔ)設(shè)施。云服務(wù)管理層負(fù)責(zé)進(jìn)行服務(wù)資源調(diào)度和管理過(guò)程操作,并對(duì)云服務(wù)的可用性、可靠性和安全性提供保障。
SOA架構(gòu)是一種系統(tǒng)的建模思想和軟件構(gòu)建方法,側(cè)重于采用服務(wù)的形式進(jìn)行系統(tǒng)的構(gòu)建,其結(jié)構(gòu)包括服務(wù)提供者、服務(wù)消費(fèi)者和服務(wù)代理三部分。在云計(jì)算系統(tǒng)對(duì)外提供多種云服務(wù)的基礎(chǔ)上,SOA架構(gòu)下的云服務(wù)可部署在各種分布式平臺(tái)上,通過(guò)網(wǎng)絡(luò)以統(tǒng)一的Web接口形式對(duì)最終用戶提供各種服務(wù);赟OA架構(gòu),可以根據(jù)視監(jiān)平臺(tái)各使用部門(mén)的多元化業(yè)務(wù)用戶需要對(duì)任意內(nèi)部和外部的云服務(wù)進(jìn)行統(tǒng)一組織整合,快速地構(gòu)建和部署新的應(yīng)用程序和服務(wù),提供最終服務(wù)與任務(wù)協(xié)同,從而解決特定的業(yè)務(wù)需求。
2.綜合平臺(tái)的架構(gòu)與實(shí)現(xiàn)
2.1綜合平臺(tái)的架構(gòu)
本文提出的基于SOA與云計(jì)算技術(shù)的廣域級(jí)視頻綜合業(yè)務(wù)平臺(tái)由物理資源層、功能服務(wù)層、SOA構(gòu)建層、服務(wù)中心和服務(wù)管理層組成,其具體架構(gòu)如圖2所示。
圖2 廣域級(jí)視頻監(jiān)控綜合業(yè)務(wù)平臺(tái)的架構(gòu)
2.1.1 物理資源層
視監(jiān)平臺(tái)的物理資源層的主要任務(wù)是統(tǒng)一組織管理平臺(tái)涉及的各種物理資源,包括攝像槍?zhuān)W(wǎng)絡(luò)視頻服務(wù)器,數(shù)字硬盤(pán)錄像機(jī),各種服務(wù)器,集中式/分布式存儲(chǔ)設(shè)備,網(wǎng)絡(luò)傳輸設(shè)備,傳感設(shè)備,定位設(shè)備等,將硬件資源封裝成服務(wù),分別提供給中間服務(wù)層和用戶使用。本層依次解決以下兩個(gè)問(wèn)題。首先建立以廣域網(wǎng)絡(luò)技術(shù)為基礎(chǔ)的、低成本、高效能的數(shù)據(jù)中心,采用高帶寬、高可靠性、兼容大量異構(gòu)設(shè)備和計(jì)算節(jié)點(diǎn)的二層網(wǎng)絡(luò)結(jié)構(gòu),連接各種異構(gòu)硬件資源,存放海量數(shù)據(jù)。其次,應(yīng)用虛擬化技術(shù),為系統(tǒng)整體管理、配置、檢索所有的設(shè)備提供統(tǒng)一的標(biāo)準(zhǔn),保證品牌繁多、架構(gòu)各異、視頻碼流格式不同的眾多設(shè)備被抽象成相同的接口,使上層調(diào)用可忽略底層的復(fù)雜物理特性,透明地訪問(wèn)各種類(lèi)型的設(shè)備,從而為上層提供彈性、可靠的基礎(chǔ)設(shè)施服務(wù)。同時(shí),通過(guò)對(duì)系統(tǒng)中現(xiàn)有的集中式/分布式存儲(chǔ)設(shè)備的虛擬化,物理資源層建立界面統(tǒng)一的海量存儲(chǔ)硬件資源池,供上層云計(jì)算服務(wù)按需取用。
2.1.2 功能服務(wù)層
視監(jiān)平臺(tái)的功能服務(wù)層對(duì)資源進(jìn)行了更進(jìn)一步的抽象,提供用戶應(yīng)用程序的運(yùn)行環(huán)境,負(fù)責(zé)資源的動(dòng)態(tài)擴(kuò)展和容錯(cuò)管理;诘讓拥挠布Y源,本層向上屏蔽底層系統(tǒng)的復(fù)雜性,優(yōu)化存儲(chǔ)系統(tǒng)的I/O性能,提高文件系統(tǒng)的可靠性與可用性,完成存儲(chǔ)、管理與調(diào)度海量視頻數(shù)據(jù)的任務(wù),實(shí)現(xiàn)強(qiáng)大的計(jì)算能力。為此,本層采用HDFS技術(shù)和HBase技術(shù),實(shí)現(xiàn)對(duì)海量視頻數(shù)據(jù)高效的分布式存儲(chǔ);并在此基礎(chǔ)上基于MapReduce技術(shù)進(jìn)一步向上層提供面向服務(wù)架構(gòu)的并行編程框架。由于本平臺(tái)建立在大規(guī)模硬件資源上,所以該編程框架支持規(guī)模擴(kuò)展、屏蔽底層細(xì)節(jié)并且簡(jiǎn)單易用。同時(shí),該編程框架從兩方面提供對(duì)數(shù)據(jù)資源的高效的分布式并行處理。第一方面是根據(jù)業(yè)務(wù)規(guī)模并行地調(diào)度下層的數(shù)據(jù)和計(jì)算資源,通過(guò)統(tǒng)一的抽象接口訪問(wèn)各種資源,包括業(yè)務(wù)數(shù)據(jù),視頻數(shù)據(jù),設(shè)備信息等,實(shí)現(xiàn)視頻數(shù)據(jù)業(yè)務(wù)的并行處理。第二方面是向上層提供簡(jiǎn)單的、屏蔽下層復(fù)雜細(xì)節(jié)的、使并行調(diào)度對(duì)用戶透明的編程環(huán)境和編程模型SDK。用戶使用本層SDK開(kāi)發(fā)各種基本功能,如視頻實(shí)時(shí)預(yù)覽、視頻錄像回放、圖像相似度計(jì)算、平臺(tái)管理和設(shè)備的控制、配置和查詢(xún)、平臺(tái)管理等。通過(guò)在本層中統(tǒng)一實(shí)現(xiàn)各種基本功能,并供上層不同應(yīng)用程序調(diào)用,使上層盡量使用底層中統(tǒng)一的服務(wù)功能,可消除軟件上的重復(fù)建設(shè)、相互孤立和標(biāo)準(zhǔn)不一。
2.1.3 SOA構(gòu)建層與服務(wù)中心
視監(jiān)平臺(tái)的SOA構(gòu)建層將下層實(shí)現(xiàn)的功能封裝成標(biāo)準(zhǔn)的Web服務(wù),并通過(guò)SOA架構(gòu)進(jìn)行管理和使用。作為服務(wù)提供者,本層可提供諸如監(jiān)控、回放、搜索等業(yè)務(wù)的使用界面和應(yīng)用軟件,用戶只需要直接使用或通過(guò)配置進(jìn)行組合集成使用,而不需要編程。同時(shí),本層還提供更高層次的業(yè)務(wù)領(lǐng)域軟件,可供用戶根據(jù)特定的業(yè)務(wù)使用,例如:人臉識(shí)別,移動(dòng)目標(biāo)跟蹤,危險(xiǎn)行為分析,傳感器上傳的數(shù)據(jù)統(tǒng)計(jì)分析,人流車(chē)流物流統(tǒng)計(jì)分析等。
作為服務(wù)提供者和服務(wù)消費(fèi)者間的聯(lián)系紐帶,服務(wù)中心面向終端用戶,為SOA構(gòu)建層封裝的服務(wù)完成注冊(cè)、查找、訪問(wèn)、綁定和構(gòu)建服務(wù)工作流等工作,并通過(guò)既定的通信協(xié)議實(shí)現(xiàn)各服務(wù)間的互操作,最終提供基于網(wǎng)絡(luò)的軟件應(yīng)用。需要特別指出的是,基于業(yè)務(wù)領(lǐng)域的整合及服務(wù)提供商復(fù)雜多變等原因,服務(wù)中心可連接多個(gè)云計(jì)算系統(tǒng),即,各云計(jì)算系統(tǒng)為服務(wù)中心提供了多元的遠(yuǎn)端服務(wù),本平臺(tái)同時(shí)為每個(gè)服務(wù)提供了統(tǒng)一的接口,用戶通過(guò)SOA架構(gòu)能有效的進(jìn)行服務(wù)的組合以生成新的業(yè)務(wù)流程和應(yīng)用系統(tǒng),各種業(yè)務(wù)可以跨云計(jì)算系統(tǒng)實(shí)現(xiàn),而新生成的系統(tǒng)同樣可以被當(dāng)作新的服務(wù)進(jìn)行注冊(cè)、發(fā)布。對(duì)于視監(jiān)平臺(tái)的服務(wù)對(duì)象一工作地點(diǎn)在城域范圍內(nèi)隨時(shí)變換的城市管理部門(mén)來(lái)說(shuō),這種可通過(guò)網(wǎng)絡(luò)隨時(shí)發(fā)現(xiàn)和綁定服務(wù)的應(yīng)用管理機(jī)制有著重要的實(shí)際應(yīng)用意義。
2.1.4 服務(wù)管理層
服務(wù)管理層完成系統(tǒng)資源管理,任務(wù)調(diào)度,用戶管理和安全機(jī)制等工作。資源管理模塊負(fù)責(zé)均衡地調(diào)度各物理資源,實(shí)時(shí)更新可用資源庫(kù),并對(duì)使用情況進(jìn)行統(tǒng)計(jì)和監(jiān)測(cè)。任務(wù)管理模塊負(fù)責(zé)分析、執(zhí)行用戶提交的任務(wù),包括任務(wù)的分解和映射,任務(wù)調(diào)度,任務(wù)執(zhí)行、任務(wù)生命期管理等。用戶管理模塊包括用戶交互接口,用戶程序執(zhí)行環(huán)境創(chuàng)建及回收、計(jì)費(fèi)等。安全機(jī)制主要通過(guò)各種措施保障本系統(tǒng)的整體安全,包括防火墻,身份認(rèn)證,訪問(wèn)授權(quán)、安全審計(jì)等,是保證本系統(tǒng)可靠性、可用性、安全性的基礎(chǔ)。
2.2 綜合平臺(tái)上并行業(yè)務(wù)處理的實(shí)現(xiàn)
本視監(jiān)平臺(tái)的核心功能是基于大規(guī)模硬件資源實(shí)現(xiàn)并行處理海量視頻數(shù)據(jù)的各項(xiàng)基本功能,包括:本地/遠(yuǎn)程實(shí)時(shí)監(jiān)控,視頻數(shù)據(jù)存儲(chǔ)、轉(zhuǎn)發(fā)、檢索,設(shè)備管理和設(shè)置,數(shù)據(jù)分析、統(tǒng)計(jì),各種信息系統(tǒng)的整合等。用戶可通過(guò)本平臺(tái)提供的二次開(kāi)發(fā)接口,開(kāi)發(fā)自己所需要的業(yè)務(wù),也可以直接使用本平臺(tái)提供的應(yīng)用程序和業(yè)務(wù)流程,通過(guò)組合和集成,直接形成自己的業(yè)務(wù)。
以視頻檢索功能的實(shí)現(xiàn)為例,例如人臉識(shí)別,移動(dòng)目標(biāo)跟蹤,危險(xiǎn)行為分析等屬于數(shù)據(jù)分析功能的業(yè)務(wù)需求,無(wú)一例外都需要調(diào)用視頻檢索的基本功能圖像匹配,即計(jì)算圖片的相似度。
可利用視監(jiān)平臺(tái)的功能服務(wù)層提供的MapReduce編程環(huán)境編寫(xiě)算法,實(shí)現(xiàn)圖像匹配基本功能。如圖3所示,圖像匹配算法在MapReduce框架下的執(zhí)行可分為以下幾個(gè)階段:
圖3 MapReduce下圖像匹配并行計(jì)算流程
(1)初始化階段?蛻舳讼蛞暠O(jiān)平臺(tái)中的任務(wù)控制節(jié)點(diǎn)提交一個(gè)包含某視頻片段的圖像匹配MapReduce作業(yè),任務(wù)控制節(jié)點(diǎn)據(jù)此進(jìn)行檢索條件的初始化工作。包括:①對(duì)此視頻片段進(jìn)行內(nèi)容分析,抽取包含有效數(shù)據(jù)的幀作為示例圖像(例如人臉),求得此示例圖像特征數(shù)據(jù)的分片(圖像的特征包括形狀、紋理、顏色等,特征數(shù)據(jù)以文本形式表示),并作為檢索條件存入本地HDFS中。②MapRe—duee程序初始化。由檢索條件、檢索方式和相似度匹配算法決定圖像檢索的MapReduce程序,即相關(guān)Map()函數(shù)和Reduce()函數(shù),形成任務(wù)文件。③調(diào)度初始化。任務(wù)控制節(jié)點(diǎn)根據(jù)業(yè)務(wù)規(guī)模決定并行執(zhí)行MapReduce程序的計(jì)算節(jié)點(diǎn),即確定任務(wù)執(zhí)行節(jié)點(diǎn),并將每個(gè)特征數(shù)據(jù)分片和任務(wù)文件一起分發(fā)到各個(gè)任務(wù)執(zhí)行節(jié)點(diǎn)中去。
(2)Map階段。任務(wù)執(zhí)行節(jié)點(diǎn)將特征數(shù)據(jù)分片復(fù)制到本地的文件系統(tǒng)中,并把任務(wù)文件中的程序本地化,形成實(shí)例運(yùn)行任務(wù),由Map任務(wù)讀取數(shù)據(jù)分片,提取圖像特征數(shù)據(jù),以鍵/值對(duì)的形式傳遞給Map函數(shù)。Map函數(shù)從HDFS中讀取本地視頻圖像的相關(guān)特征數(shù)據(jù)并進(jìn)行判斷,如滿足檢索條件則進(jìn)行相似度計(jì)算,得到中間結(jié)果是以相似度和特征庫(kù)中的圖像名作為Key/Value對(duì),并輸出到本地文件系統(tǒng)中。由于Map函數(shù)的檢索內(nèi)容一般都是本地存儲(chǔ)的HDFS文件,從而降低了網(wǎng)絡(luò)傳輸所帶來(lái)的帶寬消耗,減小了系統(tǒng)的阻塞。
(3)Reduce階段。在各任務(wù)執(zhí)行節(jié)點(diǎn)上,對(duì)Map任務(wù)輸出的中間結(jié)果Key/Value對(duì)進(jìn)行分區(qū),將Key值相同的結(jié)果合并及排序,然后傳遞Reduce任務(wù)。Reduce任務(wù)接收Map輸出的鍵值對(duì)中間結(jié)果,對(duì)收集的中間結(jié)果進(jìn)行匯總、按相似度的大小進(jìn)行排序,最終得到圖像檢索的結(jié)果,并將結(jié)果寫(xiě)入HDFS中。在Map和Reduce階段中,任務(wù)控制節(jié)點(diǎn)要同時(shí)進(jìn)行相關(guān)的任務(wù)調(diào)度工作,包括協(xié)調(diào)各節(jié)點(diǎn)以及主節(jié)點(diǎn)之間的信息交互,及實(shí)現(xiàn)監(jiān)控和容錯(cuò)機(jī)制。
(4)結(jié)束階段。當(dāng)任務(wù)控制節(jié)點(diǎn)收到作業(yè)完成信息,則將任務(wù)標(biāo)識(shí)為成功,通知用戶。最后,清空作業(yè)的工作狀態(tài)和相關(guān)中間輸出,并把最終的檢索結(jié)果發(fā)送給用戶。由以上MapReduce作業(yè)的執(zhí)行過(guò)程可見(jiàn),通過(guò)任務(wù)控制節(jié)點(diǎn)的控制調(diào)度可支持業(yè)務(wù)的規(guī)模擴(kuò)展,簡(jiǎn)化了大規(guī)模數(shù)據(jù)處理的難度,實(shí)現(xiàn)業(yè)務(wù)并行計(jì)算的伸縮性。各個(gè)任務(wù)計(jì)算節(jié)點(diǎn)上的Map任務(wù)和Reduce任務(wù)都可以并發(fā)執(zhí)行,并可在計(jì)算節(jié)點(diǎn)規(guī)模擴(kuò)展時(shí)提高處理性能。因此,一些與數(shù)據(jù)的智能分析有關(guān)的業(yè)務(wù),如人臉識(shí)別、移動(dòng)目標(biāo)跟蹤和危險(xiǎn)行為分析等,都可以通過(guò)MapReduee編框架提供的并行計(jì)算獲得其所需要的計(jì)算能力,有利于任務(wù)的實(shí)時(shí)完成。任務(wù)控制節(jié)點(diǎn)在調(diào)度完成并行處理的同時(shí),還負(fù)責(zé)各任務(wù)執(zhí)行狀態(tài)的監(jiān)測(cè)工作,并根據(jù)監(jiān)測(cè)結(jié)果重新執(zhí)行異常狀態(tài)任務(wù)。任務(wù)控制節(jié)點(diǎn)實(shí)際上為程序開(kāi)發(fā)者屏蔽了并行和容錯(cuò)等繁瑣的細(xì)節(jié)問(wèn)題。
進(jìn)一步地,SOA構(gòu)建層提供獨(dú)立于硬件平臺(tái)、操作系統(tǒng)和編程語(yǔ)言的、采用中立方式定義的統(tǒng)一接1:3,與圖像匹配基本功能一起封裝為web服務(wù)。最后,服務(wù)中心對(duì)此web服務(wù)進(jìn)行注冊(cè)管理,供位于網(wǎng)絡(luò)上不同節(jié)點(diǎn)的服務(wù)消費(fèi)者視監(jiān)平臺(tái)上各部門(mén)各客戶端程序查找、綁定和組合,最終形成各種業(yè)務(wù)應(yīng)用系統(tǒng),如安防部門(mén)的人臉識(shí)別,交通部門(mén)的移動(dòng)目標(biāo)跟蹤,城管部門(mén)的危險(xiǎn)行為分析等。一個(gè)業(yè)務(wù)應(yīng)用系統(tǒng)可能是由位于不同網(wǎng)絡(luò)節(jié)點(diǎn)上的云服務(wù)動(dòng)態(tài)配置而成。
3.結(jié)束語(yǔ)
云計(jì)算技術(shù)在處理海量數(shù)據(jù)和分布式計(jì)算方面有著自己獨(dú)特的優(yōu)勢(shì),SOA是一種建模思想和軟件構(gòu)建方法,SOA與云計(jì)算技術(shù)的結(jié)合,為廣域級(jí)的此類(lèi)業(yè)務(wù)平臺(tái)提供了一個(gè)新的解決思路和實(shí)現(xiàn)方案。一方面,可以把服務(wù)的消費(fèi)者和服務(wù)的提供者分開(kāi),業(yè)務(wù)部門(mén)不需要去管理底層的視頻資源,可更加的專(zhuān)注于自身的特長(zhǎng),從而使得BT(建設(shè)轉(zhuǎn)讓)、BOT(建設(shè)一經(jīng)營(yíng)一轉(zhuǎn)讓)等商務(wù)模式得到逐步的推廣,實(shí)現(xiàn)信息化系統(tǒng)的運(yùn)維外包。另一方面,基于此種架構(gòu),多元化業(yè)務(wù)領(lǐng)域中的各種新需求、新技術(shù)可以得到快速的部署。同時(shí),隨著城市信息化水平的不斷提高,基于SOA和云計(jì)算技術(shù)的視頻綜合平臺(tái)可很容易的與物聯(lián)網(wǎng)結(jié)合在一起,向公眾開(kāi)放運(yùn)營(yíng)型業(yè)務(wù),推進(jìn)數(shù)字城市、智慧城市的建設(shè),從更高的層上提升城市的運(yùn)營(yíng)水平。
核心關(guān)注:拓步ERP系統(tǒng)平臺(tái)是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊(yùn)涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴(lài)品牌。
轉(zhuǎn)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:基于云計(jì)算的廣域級(jí)視頻監(jiān)控綜合業(yè)務(wù)平臺(tái)
本文網(wǎng)址:http://www.ezxoed.cn/html/support/11121511502.html