?

基于客戶機-服務器架構的目標特性數據庫設計

2023-10-10 02:47冷春梅
制導與引信 2023年3期
關鍵詞:頂角客戶機服務器端

李 昊,冷春梅,廖 意,劉 健

(1.海軍裝備部裝備審價中心,北京 100071;2.航天東方紅衛星有限公司,北京 100080;3.散射輻射全國重點實驗室,上海 200438)

0 引言

目標特性是指目標及其相關環境可探測和可識別的固有屬性。隨著目標特性專業的不斷發展,通過仿真和測試獲取的目標特性數據的數量呈指數級增長,海量目標特性數據的存儲及管理越來越受重視。數據庫技術在目標特性數據存儲及管理方面發揮了不可替代的作用[1]。當前數據庫管理系統主要包括Access、SQL Server、MySQL、Oracle、HBase等。這些數據庫管理系統在數據存儲方面采用關系模型存儲矩陣式數據,在數據查詢方面使用結構化查詢語言管理和查詢數據,在數據庫設計方面利用實體-聯系(entity-relationship,E-R)圖反映數據庫中各表之間的關系與表中的元素[2-4]。

目標特性數據庫種類繁多,不同類型數據庫的結構及功能存在差異。目標特性數據庫大體可以分為三類:a)用于目標特性數據管理的數據庫;b)為模擬仿真系統提供數據支持的數據庫;c)為目標識別提供匹配數據的數據庫。在目標特性數據管理方面,王森等[5]基于Access數據庫管理軟件和VC++編程軟件構建了地面目標的雷達與紅外特性數據庫,實現了地面目標雷達和紅外特性測試數據的統一規范化管理;董航等[6]基于MySQL數據庫管理系統構建雷達目標信息數據表,建立雷達目標信息數據庫,并使用MySQL Workbench軟件實現了數據庫管理功能。在為模擬仿真系統提供數據支持方面,丁秀玲等[7]使用數據庫管理程序設計了運載火箭飛行仿真系統所需的專用數據庫,并從索引策略和結構化查詢語言(SQL)等方面對數據庫進行優化設計;徐濤等[8]從雷達地形數據庫在分布式飛行仿真系統中的組成形式和應用模式出發,分別從雷達地形建模技術分類、地形數據存儲與調度、地形多分辨率表示等方面對雷達地形數據庫構建中的關鍵技術進行分析;游學軍[9]通過創建艦船信息源數據庫表與待建實時內存數據庫表之間的格式映射模型,將源數據庫中的數據解析并轉換為XML(extensible markup language)文檔數據存入實時內存數據庫,為艦船信息實時顯示與處理提供保障。在為目標識別提供匹配數據方面,田西蘭、王曙光等[10-11]從雷達目標識別數據的特性出發,從數據來源、特征信號、目標特征、分類判決等方面進行逐級分析與設計,提出了一種雷達目標識別數據庫設計方法;劉飛等[12]基于SQL Server數據庫管理系統構建了雷達輻射源信息庫和特征庫,為雷達輻射源數據管理和識別提供了支撐;聶振鋼等[13]以中分辨率成像光譜儀的地表反射率影像和全球陸地覆蓋分類圖為數據源,采用反射率影像矢量化處理方法構建了地表反射率數據庫,為遙感衛星成像任務規劃提供支撐。分析上述文獻可以發現:目標特性數據庫專用性很強,現有研究大多針對特定的數據類型及專業用途進行定制化開發;現有研究大多集中在數據庫構建方法方面,不涉及數據庫分布式查詢和交互應用。

本文面向空中目標電磁散射特性數據和紅外輻射特性數據統一管理及分布式查詢需求,依次設計數據庫架構、數據庫部件單元、數據庫表及其E-R 圖,利用MySQL 數據庫管理系統構建后端目標特性數據庫,提供客戶機查詢接口實現數據前端查詢,并構建基于客戶機-服務器(clientserver,C-S)架構的分布式目標特性數據庫。

1 數據庫需求及功能分析

本文設計的目標特性數據庫主要用于空中目標電磁散射特性數據和紅外輻射特性數據的存儲、管理和分布式查詢。

該目標特性數據庫應具備在不同方位角、不同天頂角下,不同頻點、不同極化的目標雷達散射截面積(RCS)數據和中波、長波紅外輻射強度數據的增、刪、改、查服務功能,以及不同用戶的權限管理功能,同時應具備友好的人機操作用戶界面。此外,該目標特性數據庫還應以動態鏈接庫方式提供數據查詢調用接口,保證用戶可以通過調用客戶機函數查詢特定目標在特定視角下的目標特性數據。

2 基于C-S架構的數據庫設計

2.1 數據庫架構設計

目標特性數據庫需要存儲海量目標光電散射輻射特性數據,同時要進行大量的信息交換并完成特性數據的快速查詢與處理分析。為了提高數據庫運行速度,同時實現分布式查詢功能,數據庫采用目前主流的C-S架構??蛻魴C(C)通過局域網與數據庫服務器(S)相連,接收用戶請求,并通過網絡向服務器提出請求,對數據庫進行操作;數據庫服務器接收客戶機請求,將數據傳輸給客戶機,客戶機對數據進行計算處理并將結果呈現給用戶。

從業務架構體系上劃分,目標特性數據庫分為展示層、業務層、服務層和基礎層,如圖1所示。

圖1 目標特性數據庫業務架構示意圖

展示層主要依賴數據庫服務器端的運行服務器,通過用戶操作界面提供用戶和數據庫的交互接口;業務層用于實現數據庫服務器端的用戶管理、目標特性數據管理兩大業務功能和客戶機端的目標特性數據查詢業務功能;服務層對應數據庫服務器端的底層數據庫支撐功能模塊、數據庫系統管理功能模塊、目標特性數據存儲功能模塊、目標特性數據業務操作功能模塊、目標特性數據服務功能模塊和客戶機端的目標特性數據遠程請求功能模塊、目標特性數據本地應用功能模塊;基礎層包括支持數據庫服務器端運行的MariaDB數據庫、Redis 緩存數據庫和MinIO 文件存儲系統。

在技術架構方面,目標特性數據庫的服務器端采用NGINX 作為web服務器,客戶機端基于HTTP(hypertext transfer protocol)訪問預先設定的IP(internet protocol)地址和端口,可以實現對數據庫服務器端的遠程訪問。數據庫服務器端和客戶機端之間的數據交換采用Active MQ 作為通信中間件。目標特性數據庫采用OAuth2授權標準和Spring Security安全管理框架實現訪問用戶的安全認證和權限控制;采用MinIO 作為目標特性文件的對象存儲服務器;采用輪詢策略實現NGINX 和MinIO 之間的鑒權和負載均衡;采用開源數據庫軟件MariaDB 作為底層管理系統;采用Redis數據庫作為目標特性數據上傳緩存,同時基于sharding-jdbc分表開發數據庫訪問接口。目標特性數據庫技術架構示意圖如圖2所示。

圖2 目標特性數據庫技術架構示意圖

2.2 數據庫部件單元設計

目標特性數據庫包括服務器端和客戶機端兩個部分。在服務器端,底層數據庫支撐功能模塊包含目標特性數據庫表和后臺管理數據庫表;數據庫系統管理功能模塊包含用戶、角色、安全、菜單、日志等管理相關部件單元;目標特性數據存儲功能模塊包含數據文件處理相關部件單元;目標特性業務操作功能模塊包含數據增、刪、改、查相關部件單元;目標特性數據服務功能模塊包含客戶機端請求處理相關部件單元。在客戶機端,目標特性數據遠程服務請求功能模塊包含遠程連接和加載、目標特性數據查詢等部件單元;目標特性數據本地應用功能模塊包含目標特性數據插值計算、數據顯示等部件單元。目標特性數據庫部件單元詳見表1。

表1 目標特性數據庫部件單元

2.3 數據庫表及其E-R圖設計

目標特性數據庫服務器端的底層數據庫支撐功能模塊作為數據庫的基礎支撐,包含數據庫運行中的各類數據庫表。在進行底層數據庫支撐功能模塊設計時,將所有與目標特性業務相關的數據都放在目標特性數據庫表中,而其他與用戶、角色、安全、菜單、日志等管理邏輯相關的數據都放在后臺管理數據庫表中。

目標特性數據庫表包括文件表、目標信息表、電磁散射特性數據表、紅外輻射特性數據表、數據附屬信息表、文件和附件對應表、導入日志表、數據庫備份表等。其中:文件表用于保存導入文件的詳細信息;目標信息表用于保存用戶創建的目標的詳細信息;電磁散射特性數據表和紅外輻射特性數據表用于保存解析導入文件得到的目標電磁和紅外特性數據;數據附屬信息表用于保存導入文件的附屬信息;文件和附件對應表用于保存導入文件的批次和附件ID(identity document)信息;導入日志表用于保存數據入庫過程中產生的日志信息;數據庫備份表用于保存源數據備份文件的相關信息。目標特性數據庫表的E-R 圖及其包含的各數據庫表內詳細信息如圖3所示。

圖3 目標特性數據庫表的E-R 圖

后臺管理數據庫表包括菜單表、系統用戶表、用戶對應的單位表、角色權限表、角色表、權限表、組織機構表、系統用戶角色表、角色菜單表、操作日志表、異常日志查詢表等。其中:菜單表用于保存數據庫菜單欄信息;系統用戶表用于保存數據庫系統中的所有用戶信息;用戶對應的單位表用于保存用戶對應的組織機構信息;角色權限表用于保存角色包含的權限信息;角色表、權限表、組織機構表分別用于保存數據庫中的所有角色信息、權限信息和組織機構信息;系統用戶角色表用于保存系統用戶的角色信息;角色菜單表用于保存角色創建的菜單信息;操作日志表用于保存用戶的關鍵操作日志信息;異常日志查詢表用于保存用戶操作不當引起的異常信息。后臺管理數據庫表的E-R 圖及其包含的各數據庫表內詳細信息如圖4所示。

圖4 后臺管理數據庫表的E-R 圖

2.4 客戶機端數據查詢算法設計

數據庫服務器端的目標特性數據是以頭文件和數據域的形式儲存在電磁散射特性數據表和紅外輻射特性數據表中的。電磁散射特性數據表的頭文件包含目標名稱、數據類型、頻率/極化方式等信息,紅外輻射特性數據表的頭文件包含目標名稱、數據類型、波段等信息。RCS 數據和紅外輻射強度數據是以二維矩陣的形式存儲在數據域中的,目標天頂角隨矩陣行數變化,目標方位角隨矩陣列數變化。

在進行目標特性數據查詢時,用戶通過客戶機端輸入目標名稱、數據類型、頻率/波段、方位角和天頂角共五個查詢參數。查詢算法會根據目標名稱、數據類型、頻率/波段三個查詢參數檢索到對應的目標特性數據域矩陣,再根據用戶輸入查詢的方位角和天頂角,采用雙線性插值算法計算出用戶所需的目標特性數據Vq。Vq的計算公式為

式中:Aq和Zq分別為用戶輸入查詢的方位角和天頂角;A1和A2為二維矩陣中與Aq最接近的兩個方位角;Z1和Z2為二維矩陣中與Zq最接近的兩個天頂角;V11為二維矩陣中天頂角Z1和方位角A1位置處的目標特性數據;V12為二維矩陣中天頂角Z1和方位角A2位置處的目標特性數據;V21為二維矩陣中天頂角Z2和方位角A1位置處的目標特性數據;V22為二維矩陣中天頂角Z2和方位角A2位置處的目標特性數據。

3 數據庫應用實例

將某空中目標在頻率為16 GHz、VV 極化下的RCS數據和中波波段的紅外輻射強度數據導入目標特性數據庫。導入的目標RCS和紅外輻射強度數據對應的方位角和天頂角均覆蓋0°~180°,且角度分辨率均為0.5°。圖5和圖6分別給出了客戶機端調用數據顯示功能生成的該空中目標的RCS數據空間分布和中波紅外輻射強度數據空間分布,圖中天頂角沿水平方向增大,方位角沿垂直方向增大。

圖5 目標RCS數據空間分布圖

圖6 目標中波紅外輻射強度數據空間分布圖

在進行目標特性數據查詢時,由于用戶輸入查詢的目標方位角和天頂角與存儲的數據可能不完全一致,需要采用式(1)的插值算法進行目標特性數據的插值計算,得到用戶查詢的目標特性數據。利用客戶機端目標特性數據查詢功能,查詢在方位角為1.8°、天頂角為92.2°的位置處,該空中目標在頻率為16 GHz、VV 極化下的RCS 為18.162 dBsm,中波紅外輻射強度為9.074 W/sr。

4 結論

本文面向目標電磁散射特性數據和紅外輻射特性數據的存儲、管理和分布式查詢需求,分別對數據庫業務架構和技術架構進行設計,根據數據庫服務器端和客戶機端功能需求,設計了數據庫部件單元、數據庫表及其E-R 圖,根據導入的目標特性數據格式設計了雙線性插值數據查詢算法,提出了一種基于C-S架構的數據庫設計方法。采用該方法設計的目標特性數據庫可以實現目標特性數據后端統一管理,具備分布式查詢功能。該方法為海量目標特性數據存儲、管理提供了解決方案。

猜你喜歡
頂角客戶機服務器端
一般三棱鏡最大頂角與折射率的關系
Linux環境下基于Socket的數據傳輸軟件設計
涼亭中的數學
淺析異步通信層的架構在ASP.NET 程序中的應用
頂角為100°的等腰三角形性質的應用
基于Qt的安全即時通訊軟件服務器端設計
網頁防篡改中分布式文件同步復制系統
雙元計算法求體積本征值
瘦客戶機:安全與便捷的選擇
升騰瘦客戶機借神碼翱翔“云端”
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合