石 劉,楊鎮(zhèn)宇,趙澤學(xué),王佳奇
(中國(guó)艦船研究院,北京 100192)
海洋大數(shù)據(jù)的使用管理涉及國(guó)內(nèi)十多個(gè)國(guó)家部委、央企集團(tuán)和軍隊(duì)等,海洋大數(shù)據(jù)領(lǐng)域資源共享是個(gè)公認(rèn)的難題[1]。海洋大數(shù)據(jù)智能分析系統(tǒng)[2]由多源異構(gòu)引接匯聚子系統(tǒng)、異構(gòu)數(shù)據(jù)存儲(chǔ)子系統(tǒng)、海洋大數(shù)據(jù)治理子系統(tǒng)、海洋大數(shù)據(jù)分析子系統(tǒng)、可視化分析子系統(tǒng)、統(tǒng)一訪問(wèn)門戶子系統(tǒng)等[3]組成,整合多源異構(gòu)數(shù)據(jù)引接、超融合共享存儲(chǔ)[4-5]、高通量實(shí)時(shí)流數(shù)據(jù)處理[6]、海量動(dòng)態(tài)目標(biāo)高效渲染及實(shí)時(shí)展示等技術(shù),實(shí)現(xiàn)海洋大數(shù)據(jù)引接、存儲(chǔ)、分析、可視化等功能。
船舶與海洋大數(shù)據(jù)算法模型資源共享系統(tǒng)基于海洋大數(shù)據(jù)智能分析系統(tǒng)構(gòu)建。船舶與海洋大數(shù)據(jù)算法模型資源共享系統(tǒng)以通用大數(shù)據(jù)分析架構(gòu)[7]為基礎(chǔ),研制船舶與海洋大數(shù)據(jù)應(yīng)用相關(guān)的領(lǐng)域?qū)S盟惴P停苿?dòng)形成良好的船舶行業(yè)與海洋領(lǐng)域算法模型資源共享[8]生態(tài)環(huán)境,系統(tǒng)以對(duì)外提供Restful API 編程接口的方式,支撐基于云服務(wù)的船舶與海洋外部智慧應(yīng)用系統(tǒng)快速高效研制。
船舶與海洋大數(shù)據(jù)算法模型資源共享系統(tǒng)基于海洋大數(shù)據(jù)智能分析系統(tǒng)的“統(tǒng)一訪問(wèn)門戶子系統(tǒng)”和“行業(yè)分析子系統(tǒng)”進(jìn)行構(gòu)建,如圖1 所示。船舶與海洋大數(shù)據(jù)算法模型資源共享系統(tǒng)主要使用海洋大數(shù)據(jù)智能分析系統(tǒng)的接口21、接口22 進(jìn)行數(shù)據(jù)訪問(wèn)交互,2 個(gè)接口數(shù)據(jù)傳輸規(guī)則如表1 所示。
表1 接口數(shù)據(jù)傳輸規(guī)則Tab.1 Interface data transmission rules
圖1 船舶與海洋大數(shù)據(jù)算法模型資源共享系統(tǒng)結(jié)構(gòu)Fig.1 Structure of ship and ocean big data algorithm model resource sharing system
在海洋大數(shù)據(jù)智能分析系統(tǒng)的基礎(chǔ)上,設(shè)計(jì)了海洋環(huán)境綜合觀測(cè)[9]、海洋目標(biāo)識(shí)別跟蹤[10-16]、風(fēng)機(jī)故障診斷等3 類10 個(gè)示范性對(duì)外服務(wù)模型的Restful API 接口,為外部應(yīng)用系統(tǒng)提供智能分析計(jì)算及數(shù)據(jù)訪問(wèn)服務(wù),如表2 所示。服務(wù)模型接口的具體互聯(lián)網(wǎng)地址,可配置為互聯(lián)網(wǎng)公網(wǎng)IP 地址或內(nèi)部局域網(wǎng)IP 地址。外部船舶與海洋應(yīng)用系統(tǒng)可通過(guò)互聯(lián)網(wǎng)遠(yuǎn)程調(diào)用云端API 的方式訪問(wèn)船舶與海洋大數(shù)據(jù)算法模型資源共享系統(tǒng)的算法模型資源,實(shí)現(xiàn)船舶行業(yè)和海洋領(lǐng)域?qū)S盟惴P唾Y源高效共享。
表2 船舶與海洋算法模型資源共享系統(tǒng)服務(wù)列表Tab.2 List of services for ship and ocean algorithm model resource sharing system
共享的算法模型資源,可通過(guò)跨域資源集成方式,按需擴(kuò)展到整個(gè)船舶行業(yè)和海洋領(lǐng)域。對(duì)于已共享的算法模型資源,也可由不同的領(lǐng)域?qū)<姨峁┎煌膬?yōu)化版本,由船舶與海洋算法模型資源共享系統(tǒng)集成后供不同用戶選擇使用。
海洋大數(shù)據(jù)智能分析系統(tǒng)的硬件部署架構(gòu)如圖2所示,采用防火墻、VPN、訪問(wèn)程序權(quán)限控制等方式解決安全保密問(wèn)題。
圖2 海洋大數(shù)據(jù)智能分析系統(tǒng)部署架構(gòu)Fig.2 Deployment architecture of ocean big data intelligent analysis system
系統(tǒng)共部署了1 036 TB 的磁盤存儲(chǔ)空間,包括結(jié)構(gòu)化和非結(jié)構(gòu)化共享服務(wù)集群2 個(gè)部分,共有360 個(gè)CPU 物理計(jì)算核心、10 塊Tesla V100 顯卡,CPU 采用虛擬化技術(shù)管理,典型的CPU 型號(hào)包括Intel Xeon Gold 6248R 等。船舶與海洋大數(shù)據(jù)算法模型資源共享系統(tǒng)性能測(cè)試基于圖2 的部署架構(gòu)開展。
船舶與海洋大數(shù)據(jù)算法模型資源共享系統(tǒng)結(jié)構(gòu)化性能測(cè)試采用的軟件環(huán)境為Centos7.7、MySql5.7、Tomcat8,使用Java 自定義腳本作為測(cè)試工具進(jìn)行測(cè)試,測(cè)試硬件資源如表3 所示。
表3 系統(tǒng)結(jié)構(gòu)化性能測(cè)試硬件資源Tab.3 Hardware resources for structured performance test of system
測(cè)試方法為設(shè)計(jì)編寫一個(gè)獨(dú)立的Java 腳本,通過(guò)多線程實(shí)現(xiàn)隨機(jī)的API 調(diào)用,根據(jù)實(shí)際情況模擬多個(gè)用戶、多種語(yǔ)言案例和不同的時(shí)間間隔。測(cè)試調(diào)用案例為5 種語(yǔ)言集成案例:Java 語(yǔ)言海流預(yù)測(cè)、Python 語(yǔ)言航跡預(yù)測(cè)、R 語(yǔ)言測(cè)試案例、C 語(yǔ)言測(cè)試案例、Scala 語(yǔ)言風(fēng)速案例5 種。測(cè)試時(shí)記錄每次API 調(diào)用時(shí)返回的日志信息,包括用戶名、調(diào)用時(shí)間、調(diào)用案例、返回結(jié)果等。
多編程語(yǔ)言模型共享服務(wù)間隔60 s、90 s、120 s、150 s,分別進(jìn)行1 h 并發(fā)性能測(cè)試,每隔10 min 記錄一次CPU 使用率。多編程語(yǔ)言模型共享服務(wù)并發(fā)穩(wěn)定性測(cè)試,連續(xù)測(cè)試24 h,記錄CPU 平均使用率。
測(cè)試結(jié)果表明,船舶與海洋大數(shù)據(jù)算法模型資源共享系統(tǒng)在提供結(jié)構(gòu)化數(shù)據(jù)算法模型服務(wù)時(shí)CPU 運(yùn)行穩(wěn)定未過(guò)載,具備提供船舶行業(yè)和海洋領(lǐng)域?qū)S媒Y(jié)構(gòu)化數(shù)據(jù)算法模型的共享服務(wù)能力,且結(jié)構(gòu)化數(shù)據(jù)算法模型共享服務(wù)性能穩(wěn)定。
船舶與海洋大數(shù)據(jù)算法模型資源共享系統(tǒng)非結(jié)構(gòu)化性能測(cè)試采用的軟件環(huán)境為Centos7.7、Docker19.03、Kubernetes1.17 、Rancher2.2、Postgresql12.3,使用Jmeter5.4 測(cè)試工具進(jìn)行測(cè)試,測(cè)試硬件資源如表4 所示。
表4 系統(tǒng)非結(jié)構(gòu)化性能測(cè)試硬件資源Tab.4 Hardware resources for unstructured performance test of system
非結(jié)構(gòu)化性能測(cè)試案例為YOLOV5-GPU,在單個(gè)副本包含6 核CPU 和1 個(gè)GPU 的情況下,進(jìn)行10、20、30、40 個(gè)并發(fā)案例測(cè)試,記錄CPU、GPU 的使用率情況。
在并發(fā)數(shù)為10、間隔60 s 的典型負(fù)載情況下,非結(jié)構(gòu)化模型共享服務(wù)的吞吐量與GPU 數(shù)量的關(guān)系如圖3所示??梢钥闯?,系統(tǒng)非結(jié)構(gòu)化數(shù)據(jù)算法模型的共享服務(wù)能力具有可擴(kuò)展性。
圖3 非結(jié)構(gòu)化共享服務(wù)吞吐量與GPU 數(shù)量關(guān)系Fig.3 The relationship between the throughput of unstructured shared services and the number of GPUs
非結(jié)構(gòu)化共享服務(wù)穩(wěn)定性測(cè)試,使用1 個(gè)節(jié)點(diǎn)訓(xùn)練(K8s3)及5 個(gè)節(jié)點(diǎn)模型預(yù)測(cè)服務(wù)的混合模式,在所有節(jié)點(diǎn)均使用最大資源24 核CPU 和1 個(gè)GPU 的情況下,連續(xù)測(cè)試24 h,記錄CPU、GPU 平均使用率。
測(cè)試結(jié)果表明,船舶與海洋大數(shù)據(jù)算法模型資源共享系統(tǒng)在提供非結(jié)構(gòu)化數(shù)據(jù)算法模型服務(wù)時(shí),CPU和GPU 運(yùn)行穩(wěn)定、負(fù)載均衡未過(guò)載,具備提供船舶和海洋領(lǐng)域?qū)S梅墙Y(jié)構(gòu)化數(shù)據(jù)算法模型的共享服務(wù)能力,且非結(jié)構(gòu)化數(shù)據(jù)算法模型共享服務(wù)性能穩(wěn)定。
本文構(gòu)建了船舶與海洋大數(shù)據(jù)算法模型資源共享系統(tǒng),解決海洋領(lǐng)域跨域算法模型資源共享的問(wèn)題。該系統(tǒng)支持船舶和海洋領(lǐng)域?qū)S盟惴P唾Y源的跨域集成和共享,對(duì)外提供Restful API 接口供外部應(yīng)用系統(tǒng)遠(yuǎn)程高效編程調(diào)用,支持多用戶訪問(wèn),可同時(shí)為結(jié)構(gòu)化與非結(jié)構(gòu)化數(shù)據(jù)算法模型資源提供常態(tài)化服務(wù),極大提升了船舶行業(yè)和海洋領(lǐng)域應(yīng)用系統(tǒng)關(guān)鍵模塊的研制效率。該系統(tǒng)中的算法模型資源可擴(kuò)充,可以通過(guò)源代碼或二進(jìn)制庫(kù)等方式進(jìn)行持續(xù)集成,在達(dá)成算法模型資源共享服務(wù)目標(biāo)的前提下,較好地保護(hù)了模型算法原有的知識(shí)產(chǎn)權(quán)。測(cè)試結(jié)果表明,船舶與海洋大數(shù)據(jù)算法模型資源共享系統(tǒng)在并發(fā)性能測(cè)試、可擴(kuò)展性測(cè)試及穩(wěn)定性測(cè)試中都取得了很好的表現(xiàn),系統(tǒng)服務(wù)算法模型種類、數(shù)量可擴(kuò)充,并發(fā)服務(wù)用戶性能可擴(kuò)展,并可連續(xù)長(zhǎng)時(shí)間穩(wěn)定提供船舶行業(yè)與海洋領(lǐng)域?qū)S盟惴P唾Y源共享服務(wù)。