數(shù)據(jù)湖(Data Lake)是一種在系統(tǒng)或存儲庫中以自然格式存儲數(shù)據(jù)的方法,它有助于以各種模式和結(jié)構(gòu)形式配置數(shù)據(jù),通常是對象塊或文件。數(shù)據(jù)湖的主要思想是對企業(yè)中的所有數(shù)據(jù)進行統(tǒng)一存儲,從原始數(shù)據(jù)(這意味著源系統(tǒng)數(shù)據(jù)的精確副本)轉(zhuǎn)換為用于報告、可視化、分析、機器學習等各種任務的轉(zhuǎn)換數(shù)據(jù)。
湖中的數(shù)據(jù)包括:結(jié)構(gòu)化數(shù)據(jù)從關(guān)系數(shù)據(jù)庫(行和列),半結(jié)構(gòu)化數(shù)據(jù)(CSV、XML、JSON的日志),非結(jié)構(gòu)化數(shù)據(jù)(電子郵件,文檔,PDF),二進制數(shù)據(jù)(圖像、音頻、視頻),從而形成一個集中式數(shù)據(jù)存儲容納所有形式的數(shù)據(jù)。[1]
數(shù)據(jù)湖的概念,是相對于數(shù)據(jù)倉庫的預先數(shù)據(jù)高度結(jié)構(gòu)化寫入格式(scheme on write)而言的。由于大部分數(shù)據(jù)的價值還沒有完全明確,因此無法做到足夠的結(jié)構(gòu)化。此時,就盡可能接收原始數(shù)據(jù),等到需要讀取時再按照讀取模式(scheme on read)進行數(shù)據(jù)組織。
一、數(shù)據(jù)湖的特點及云端數(shù)據(jù)治理的必要性
數(shù)據(jù)湖是包含兩個特征的信息系統(tǒng):
1) 可以保存大數(shù)據(jù)的并行系統(tǒng);
2) 能夠在數(shù)據(jù)不移動的情況下進行計算的系統(tǒng)。
這意味著,數(shù)據(jù)本身的服務化、運營化被提上了日程。通過不同的轉(zhuǎn)換、清洗等數(shù)據(jù)治理體系,將原始數(shù)據(jù)最終以業(yè)務需要的模式有效輸出。
但從另一方面說,要充分利用數(shù)據(jù)湖的能力,就需要從整個IT及數(shù)據(jù)治理的角度來構(gòu)建有效的數(shù)據(jù)輸入輸出,否則極其容易出現(xiàn)“單向”數(shù)據(jù)湖,進而演變成數(shù)據(jù)的垃圾場。在數(shù)據(jù)倉庫之父Bill Inmon的專著《數(shù)據(jù)湖架構(gòu)》中,提出了通過分類數(shù)據(jù)池(pool)的模式,來構(gòu)建一個具備分析操作能力的數(shù)據(jù)湖的架構(gòu),從而達到數(shù)據(jù)的最大效用比。[2]Bill的思路沒有問題,但如何針對各種繁雜的業(yè)務流程進行不同分類數(shù)據(jù)池的構(gòu)建,則需要根據(jù)不同行業(yè)的特點來合理規(guī)劃不同數(shù)據(jù)池。也就是說,要構(gòu)建有效的數(shù)據(jù)湖架構(gòu),必須要有合理的數(shù)據(jù)治理體系。

圖 數(shù)據(jù)生命周期管理&數(shù)據(jù)安全管理
二、云端數(shù)據(jù)治理的定義
目前越來越多的企業(yè)將業(yè)務系統(tǒng)數(shù)據(jù)部署在云端,其在操作方面的新特點,如數(shù)據(jù)的遠程存儲和傳輸、數(shù)據(jù)安全性等,都超越了傳統(tǒng)的數(shù)據(jù)治理體系范疇,這就引出了云端數(shù)據(jù)治理的體系。
云端數(shù)據(jù)治理是以云端數(shù)據(jù)為主要治理對象,制定與云端數(shù)據(jù)戰(zhàn)略、數(shù)據(jù)管理、數(shù)據(jù)優(yōu)化、數(shù)據(jù)安全、隱私保護等相關(guān)策略,指導組織規(guī)劃、構(gòu)建、評估、優(yōu)化數(shù)據(jù)治理體系的活動集合。[3]
一個完整的云端數(shù)據(jù)治流程主要圍繞如下方面實施:管理元數(shù)據(jù)、管理主數(shù)據(jù)、提高數(shù)據(jù)質(zhì)量、數(shù)據(jù)生命周期管理、數(shù)據(jù)安全管理,然后通過在不同數(shù)據(jù)池中進行各個方面的過程實施,構(gòu)建一個有效數(shù)據(jù)湖。
“無治理不信息”,是指這里的數(shù)據(jù)要轉(zhuǎn)變?yōu)樾畔?,進而提煉成知識,必須通過數(shù)據(jù)治理,才能帶來更多的價值。

圖 數(shù)據(jù)生命周期管理中的成本考量
三、安防和AI的數(shù)據(jù)湖
3.1 安防視頻監(jiān)控系統(tǒng)的數(shù)據(jù)要求
對一套安防系統(tǒng)而言,數(shù)以萬計的相機接入,數(shù)據(jù)洪流源源不斷流入后端云存儲系統(tǒng)中,導致如下幾個數(shù)據(jù)訴求:
1、海量多媒體數(shù)據(jù)內(nèi)容組織、檢索;具體來講,對圖像的調(diào)度時間要求≤1秒;
編解碼及整網(wǎng)傳輸延時≤300毫秒;監(jiān)控系統(tǒng)規(guī)模再大也不能影響這個指標;
多維度的內(nèi)容組織及挖掘,前端及后端智能結(jié)合,內(nèi)容大數(shù)據(jù)索引化。

圖 宇視SMV安防機器視覺戰(zhàn)略框圖
2、數(shù)據(jù)保存的安全可靠性
圖像數(shù)據(jù)需要專業(yè)存儲設(shè)備存儲并用RAID,甚至多節(jié)點糾刪卷進行保護;讀寫分離體系,數(shù)據(jù)存儲永遠放在第一位保證,無論錄像還是圖片;
優(yōu)化的數(shù)據(jù)組織方式,更懂存儲特質(zhì)的數(shù)據(jù)業(yè)務設(shè)計,最大化挖掘不同存儲介質(zhì)性能;
端到端接入授權(quán)、全鏈路數(shù)據(jù)加密保障的安全保障,無論是中間網(wǎng)絡(luò)截獲還是存儲介質(zhì)暴露,均無法直接恢復出有效數(shù)據(jù)。
3.2 AI帶來的數(shù)據(jù)存儲挑戰(zhàn)
一方面,存儲對象由最早單純的原始視頻變到了視頻、圖片、AI分析后的結(jié)構(gòu)化半結(jié)構(gòu)化數(shù)據(jù)。對象的改變,使得存儲系統(tǒng)要更多的考慮,如何更好的去適配多樣化的存儲對象?如何最高效的去存儲各類數(shù)據(jù),并提供可靠的保護?海量小文件混合存儲的時候,如何避免傳統(tǒng)存儲中性能的大打折扣?
另一方面,存儲的寫讀模型也發(fā)生了大變化。原先的原始視頻存入存儲后基本不會被調(diào)閱,寫讀模型基本為10:1,但AI技術(shù)的出現(xiàn)徹底激活了這些數(shù)據(jù),存入的視頻可以被高性能分析服務器提取進行人物分析、車型分析、結(jié)構(gòu)化分析,寫讀模型也變成了1:1甚至是1:N。在這樣的寫讀模型下,對存儲設(shè)備也提出了更高要求,存儲不再是單單考慮如何存的更快存的更多,而是要考慮如何與AI業(yè)務融合,最優(yōu)結(jié)合。
而當AI技術(shù)對數(shù)據(jù)價值進行提煉后,提煉出來的數(shù)據(jù)價值就發(fā)生了變化。例如:可能原始視頻只需要保留30天,但是經(jīng)過結(jié)構(gòu)化分析后的涉案嫌疑人圖片的重要性就不言而喻了,需要永久保存。所以當一套存儲系統(tǒng)中存在這樣那樣不同重要程度的數(shù)據(jù)時,完善的生命周期管理體系、如何來區(qū)分數(shù)據(jù)的重要性,并提供有層次的保護技術(shù)就變得尤為重要。
當上面的種種挑戰(zhàn)出現(xiàn)后,我們還將直面一個現(xiàn)實問題:在爆炸量的數(shù)據(jù)、超高的性能要求和翻倍的成本面前,我們?nèi)绾稳プ非笮阅苋萘康淖顑?yōu)配比,找到最低TCO的方案,實現(xiàn)最優(yōu)解。
這一系列的變化,促使安防數(shù)據(jù)已經(jīng)演變成了一個新的數(shù)據(jù)湖,必須借助一系列的數(shù)據(jù)治理手段,才能推動數(shù)據(jù)的有效利用。

圖 數(shù)據(jù)在不同存儲介質(zhì)之間的流轉(zhuǎn)模式
四、宇視云存儲的數(shù)據(jù)湖解決方案
2016年,宇視發(fā)布SMV安防機器視覺戰(zhàn)略,其中很重要的一點就是充分認識AI對于安防數(shù)據(jù)的變革訴求。以視圖服務化體系模式,在宇視云存儲中通過構(gòu)建“視頻原始數(shù)據(jù)池”、“圖片原始數(shù)據(jù)池”、“半結(jié)構(gòu)化數(shù)據(jù)池”、“結(jié)構(gòu)化數(shù)據(jù)池”、“歸檔數(shù)據(jù)池”等多個數(shù)據(jù)池的聯(lián)動,并根據(jù)數(shù)據(jù)特點引入SSD、硬盤、磁帶庫等不同存儲介質(zhì)來適配下圖中數(shù)據(jù)訪問模型,在統(tǒng)一的數(shù)據(jù)治理框架下,通過安防標準和TCO的統(tǒng)一考量體系,借助不同介質(zhì)特點,控制數(shù)據(jù)的流轉(zhuǎn),達到數(shù)據(jù)生命周期管理的最佳實踐,真正構(gòu)建出高效有用的安防數(shù)據(jù)湖。

圖 數(shù)據(jù)分割對安全的輔助作用

4.1 原始數(shù)據(jù)池的治理
主數(shù)據(jù):對于原始視頻或圖片來說,數(shù)據(jù)本身即是主數(shù)據(jù);
元數(shù)據(jù):對于視頻監(jiān)控系統(tǒng)來說,視頻或圖片對時間性有天生的訴求,以時間作為元數(shù)據(jù)進行主數(shù)據(jù)的管理,能達到便捷調(diào)取“一手數(shù)據(jù)”的目的,如視頻回放、圖片瀏覽;
數(shù)據(jù)生命周期管理:安防原始數(shù)據(jù),嚴格按照各個部門體系要求的留存期(如相關(guān)部門要求90天)進行生命周期管理,超過留存期則需要刪除老的視頻或圖片;
TCO考量:從數(shù)據(jù)使用頻率來看,依然有明顯冷熱區(qū)別,而且有非常明顯的時間相關(guān)性,這樣就可以靈活控制原始數(shù)據(jù)在帶電內(nèi)存緩存層、SSD加速層、硬盤主存儲空間層、磁帶庫歸檔存儲層之間流轉(zhuǎn),最大化TCO應用。
數(shù)據(jù)安全控制,重點包括:
自定義的從源頭對圖像進行保護,從非法途徑獲取原始視頻都是馬賽克效果,視頻只能在平臺內(nèi)正常查看;
離線下載圖像專人專用,專門密鑰保護;通過和身份水印結(jié)合,即便用手機等設(shè)備翻拍,也能夠追溯泄漏途徑;
不基于文件進行存儲組織,自定義數(shù)據(jù)節(jié)點內(nèi)及節(jié)點間離散策略、存儲空間多節(jié)點拉通池化、數(shù)據(jù)塊級格式保護,非平臺內(nèi)操作,數(shù)據(jù)無跡可尋。

圖 宇視云存儲架構(gòu)框圖
4.2 半結(jié)構(gòu)化數(shù)據(jù)池的建設(shè)
主數(shù)據(jù):對安防監(jiān)控系統(tǒng)來說,半結(jié)構(gòu)化數(shù)據(jù)主要是一種數(shù)據(jù)轉(zhuǎn)換的中間過程,比如對一段視頻識別出來的有相關(guān)物體存在的片段視頻文件,以及相關(guān)運動信息文本、車輛圖片中摳取的駕駛員信息或車牌信息及其相關(guān)區(qū)域小圖、識別算法輸出的特質(zhì)碼數(shù)據(jù)等等。
元數(shù)據(jù):根據(jù)時間,組織車牌、運動特征與相關(guān)文件、圖片的對應關(guān)系,但這個關(guān)系本身也包含很多無模式的數(shù)據(jù)列,最終形成時空數(shù)據(jù)庫進行元數(shù)據(jù)管理,元數(shù)據(jù)量級往往不是特別多,數(shù)據(jù)量一般在TB級以內(nèi),此外對于元數(shù)據(jù)本身還有一個數(shù)據(jù)清洗的過程,如基于識別算法的數(shù)據(jù)可以將識別率比較差的數(shù)據(jù)進行排除。
數(shù)據(jù)生命周期管理:這種業(yè)務中,元數(shù)據(jù)的生命周期與部分主數(shù)據(jù)不一定一致,因為這里的元數(shù)據(jù)還有進一步歷史深度分析的可能,而部分如短視頻、圖片一般超過1年就可做失效處理,當然也有部分需要長期保存的短視頻或圖片,但涉及面也不是很多,有的話直接歸檔到歸檔數(shù)據(jù)池即可,由于業(yè)務本身往往集中在1年內(nèi),超過1年的元數(shù)據(jù)可以統(tǒng)一歸檔到歸檔數(shù)據(jù)池中,用于后續(xù)可能的數(shù)據(jù)挖掘需求,如此達到更合理的成本控制目的。

圖 TCO考量速率表
TCO考量:根據(jù)訪問速率要求,一般如上表設(shè)計
數(shù)據(jù)安全控制:通過元數(shù)據(jù)與主數(shù)據(jù)的分離存儲,主數(shù)據(jù)存儲統(tǒng)一到原始數(shù)據(jù)池的存儲模式,利用數(shù)據(jù)打散及自定義塊分布,極大增加了數(shù)據(jù)的獨立恢復難度;
對于元數(shù)據(jù)來說,數(shù)據(jù)訪問會進行嚴格的平臺用戶認證,此外特征碼本身就是一種數(shù)學運算的中間過程記錄,必須輔以獨立的算法過程才有解析的可能,而算法本身并不會記錄,結(jié)合宇視特有的多算法聯(lián)動框架,不同特征碼的生成并不會歸一到同一種算法。
4.3 結(jié)構(gòu)化數(shù)據(jù)池
結(jié)構(gòu)化的數(shù)據(jù)是指可以使用關(guān)系型數(shù)據(jù)庫表示和存儲,表現(xiàn)為二維形式的數(shù)據(jù)。一般特點是:數(shù)據(jù)以行為單位,一行數(shù)據(jù)表示一個實體的信息,每一行數(shù)據(jù)的屬性是相同的。這個在安防視頻監(jiān)控業(yè)務中,基本都是對設(shè)備、業(yè)務、流程等的過程建模,形成的設(shè)備配置、業(yè)務關(guān)系等數(shù)據(jù),一般量級都比較小,這部分基本使用服務器或計算板的集群支持即可。
結(jié)構(gòu)化數(shù)據(jù)池會定期進行數(shù)據(jù)備份,類似IT企業(yè)中增量、全量策略相結(jié)合的模式,可以將數(shù)據(jù)歸檔到“歸檔數(shù)據(jù)池”。
4.4 歸檔數(shù)據(jù)池
歸檔數(shù)據(jù)池構(gòu)建在磁帶庫的存儲介質(zhì)之上,借助結(jié)構(gòu)化數(shù)據(jù)池來保存流入歸檔數(shù)據(jù)池中不同種類數(shù)據(jù)的索引信息。歸檔數(shù)據(jù)池為歸檔業(yè)務服務,當前主要包括視頻圖片池冷數(shù)據(jù)的歸檔、非結(jié)構(gòu)化數(shù)據(jù)池中元數(shù)據(jù)歸檔、結(jié)構(gòu)化數(shù)據(jù)池的定期備份歸檔。
歸檔數(shù)據(jù)池本身也有生命周期,不同的數(shù)據(jù)種類留存期也不同。對于原始視頻池的冷數(shù)據(jù),其依然有固定的最長留存期,超過即進行最老刪除;而對于非結(jié)構(gòu)化池元數(shù)據(jù)和結(jié)構(gòu)化數(shù)據(jù)池的備份,則視配置空間而定,當歸檔數(shù)據(jù)池依然有可用空間,則均不會進行老數(shù)據(jù)的退化,直到無可用空間時才進行最老數(shù)據(jù)的刪除。
4.5 數(shù)據(jù)池間數(shù)據(jù)的流轉(zhuǎn)
至此,我們設(shè)計了原始數(shù)據(jù)池、半結(jié)構(gòu)化數(shù)據(jù)池、結(jié)構(gòu)化數(shù)據(jù)池、歸檔數(shù)據(jù)池。通過對原始數(shù)據(jù)池的智能分析識別,構(gòu)建了多媒體的半結(jié)構(gòu)化數(shù)據(jù)池;為支持更有效的業(yè)務應用,半結(jié)構(gòu)化數(shù)據(jù)池自身會進一步進行分析和清洗,進而提升業(yè)務的靶向性,從而滿足業(yè)務數(shù)據(jù)建模的需要,構(gòu)建業(yè)務結(jié)構(gòu)化數(shù)據(jù)。此外需要強調(diào)的是,這幾個數(shù)據(jù)池都是邏輯上的業(yè)務區(qū)分,并不要求嚴格意義上的介質(zhì)分離建設(shè),如半結(jié)構(gòu)化形成的短視頻/圖片依然可以使用原始數(shù)據(jù)池的內(nèi)容,僅僅形成無模式數(shù)據(jù)存儲的元數(shù)據(jù)即可,這樣能達到整個云存儲系統(tǒng)中數(shù)據(jù)流轉(zhuǎn)的高效性。
歸檔數(shù)據(jù)池為整個數(shù)據(jù)湖提供了數(shù)據(jù)歸檔等長期保存服務,在數(shù)據(jù)生命周期管理以及TCO管理方面提供了一種權(quán)衡實現(xiàn),兼顧了業(yè)務的實時性和投入成本的最優(yōu)化。

圖 數(shù)據(jù)湖中不同數(shù)據(jù)池間的數(shù)據(jù)轉(zhuǎn)換
五、總結(jié)
宇視云存儲通過服務化的體系建設(shè),支撐了安防業(yè)務中多種多樣的數(shù)據(jù)承載,正是基于云端數(shù)據(jù)治理的框架,最終達到了數(shù)據(jù)湖的高效流轉(zhuǎn)。
參考文獻
[1]https://en.wikipedia.org/wiki/Data_lake
[2][美]Bill Inmon,吳文磊 譯,數(shù)據(jù)湖架構(gòu),人民郵電出版社,2017-04-01
[3]程廣明,李堯,劉小茵,云端數(shù)據(jù)治理定義解析,科技創(chuàng)新導報,2017年16期