唐曦文,崔希振
TANG Xi-wen1,2, CUI Xi-zhen1
(1.上海飛機(jī)設(shè)計(jì)研究院,上海 200436;2.同濟(jì)大學(xué) 電子與信息工程學(xué)院 上海 200092)
試驗(yàn)數(shù)據(jù)是分析飛機(jī)系統(tǒng)性能的重要依據(jù)之一。各種試驗(yàn)數(shù)據(jù)往往存在著種類繁多、容量較大等特點(diǎn),在對(duì)其進(jìn)行分類、管理和查詢時(shí)存在條件混亂、讀取速度緩慢和無(wú)法對(duì)數(shù)據(jù)進(jìn)一步分析等困難。因此,設(shè)計(jì)一套基于數(shù)據(jù)倉(cāng)庫(kù)技術(shù)的數(shù)據(jù)管理系統(tǒng)就顯得極為重要。系統(tǒng)通過(guò)友好的人機(jī)界面來(lái)管理試驗(yàn)數(shù)據(jù),同時(shí)還可更深層次地分析這些數(shù)據(jù),生成如報(bào)表、圖像等更加直觀的數(shù)據(jù)形式,方便設(shè)計(jì)人員分析飛機(jī)系統(tǒng)性能。
數(shù)據(jù)倉(cāng)庫(kù)綜合和合并多維空間的數(shù)據(jù)。它是語(yǔ)義上一致的數(shù)據(jù)存儲(chǔ),它充當(dāng)決策支持?jǐn)?shù)據(jù)模型的實(shí)現(xiàn),并提供使用者決策所需信息的手段。數(shù)據(jù)倉(cāng)庫(kù)也常??醋鍪且环N體系結(jié)構(gòu),通過(guò)將異構(gòu)數(shù)據(jù)源中的數(shù)據(jù)集成在一起構(gòu)造、支持結(jié)構(gòu)化或?qū)iT查詢、分析報(bào)告和決策制定[5]。
多維數(shù)據(jù)模型又稱之為數(shù)據(jù)立方體。該模型允許從多維對(duì)數(shù)據(jù)建模和觀察,一般由維和事實(shí)定義。維是保存記錄的透視圖或?qū)嶓w。每個(gè)維都有一個(gè)表與之關(guān)聯(lián),稱為維度表,用于進(jìn)一步描述維。通常,多維數(shù)據(jù)模型圍繞中心主體組織。主體用事實(shí)表表示,事實(shí)是數(shù)值度量的。把它們看作數(shù)量是因?yàn)橛脩粝敫鶕?jù)它們分析維之間的關(guān)系[5]。
由于數(shù)據(jù)倉(cāng)庫(kù)下存儲(chǔ)的數(shù)據(jù)為多維數(shù)據(jù)模型,所以實(shí)體-聯(lián)系數(shù)據(jù)模型廣泛應(yīng)用于關(guān)系數(shù)據(jù)庫(kù)設(shè)計(jì),其中數(shù)據(jù)庫(kù)模式由實(shí)體集和它們之間的聯(lián)系組成。這種數(shù)據(jù)模式適用于聯(lián)機(jī)事務(wù)處理。然而,數(shù)據(jù)倉(cāng)庫(kù)需要簡(jiǎn)明的、面向主題的模式便于聯(lián)機(jī)分析數(shù)據(jù)。目前流行的數(shù)據(jù)倉(cāng)庫(kù)的數(shù)據(jù)模型是多維模型,常常以星形、雪花形和事實(shí)星座形存在。
星形模式通常包含大批數(shù)據(jù)且不含冗余事實(shí)表,外加一組維度為一的附表。這種模式下的維表類似星光一樣圍繞在中心事實(shí)表周圍。雪花形模式是在星形模式下進(jìn)一步變化,區(qū)別是某些維表可能是規(guī)范化的,這樣可以把數(shù)據(jù)進(jìn)一步分解到附加表中,構(gòu)成類似雪花形的結(jié)構(gòu)。這種表相對(duì)容易維護(hù)且節(jié)省存儲(chǔ)空間。而本文所述系統(tǒng)屬于事實(shí)星座形的結(jié)構(gòu)。該結(jié)構(gòu)的特點(diǎn)是需要多個(gè)事實(shí)表共享維表。因此,這種構(gòu)成形式可以看作星形模式的匯集。它能對(duì)多個(gè)主題建模,使系統(tǒng)更加有效。系統(tǒng)維表的關(guān)系如圖1所示。
圖1 數(shù)據(jù)管理系統(tǒng)中的維度表
該系統(tǒng)是基于TCP/IP協(xié)議,并采用C/S模式組成整個(gè)系統(tǒng)。其中,系統(tǒng)的S端(指sever服務(wù)器端)將飛行數(shù)據(jù)清理、集成、變換后按一定的格式和關(guān)系維度表導(dǎo)入數(shù)據(jù)倉(cāng)庫(kù)。系統(tǒng)的C端(指clinet客戶端)可根據(jù)需求調(diào)用數(shù)據(jù)倉(cāng)庫(kù)中的數(shù)據(jù)。系統(tǒng)構(gòu)架如圖2所示。
系統(tǒng)采用LabWindows/CVI8.5+SQL Sever 2008為系統(tǒng)的開(kāi)發(fā)工具。
圖2 數(shù)據(jù)管理系統(tǒng)架構(gòu)圖
LabWindows/CVI8.5是一個(gè)完全的ANSI C的開(kāi)發(fā)環(huán)境,用于儀器控制、自動(dòng)檢測(cè)、數(shù)據(jù)處理等應(yīng)用軟件。軟件本身含有豐富的常用控件,利用交互式的開(kāi)發(fā)平臺(tái)、交互式的編程方法使功能強(qiáng)大、使用靈活的C語(yǔ)言與用于數(shù)據(jù)采集、分析和顯示的測(cè)控專業(yè)工具有機(jī)的結(jié)合起來(lái)[2]。
SQL Sever 2008是當(dāng)前最流行的數(shù)據(jù)庫(kù)操作軟件之一,基于標(biāo)準(zhǔn)化查詢語(yǔ)言(SQL)。當(dāng)前,數(shù)據(jù)信息存儲(chǔ)爆炸式增長(zhǎng)。在耗費(fèi)相同系統(tǒng)資源的情況下,用戶可存儲(chǔ)更多的數(shù)據(jù)供用戶使用。而且,用戶可在大量的數(shù)據(jù)中更加快速地尋找到所需要的信息。
當(dāng)用戶在安裝好LabWindows/CVI8.5和SQL Sever 2008后,再安裝SQL Toolkit數(shù)據(jù)庫(kù)系統(tǒng)應(yīng)用軟件工具包。該工具包會(huì)提供相應(yīng)的關(guān)于數(shù)據(jù)庫(kù)操作的面板庫(kù)函數(shù)。此時(shí),用戶再結(jié)合SQL語(yǔ)言,便可以實(shí)現(xiàn)系統(tǒng)對(duì)SQL Sever 2008中數(shù)據(jù)庫(kù)連接、添加、修改和刪除等一系列操作。
通常情況下試驗(yàn)數(shù)據(jù)容量都比較大,用傳統(tǒng)的文件指針?lè)绞綄?duì)其進(jìn)行讀寫,速度非常緩慢,甚至?xí)霈F(xiàn)死機(jī)或者內(nèi)存溢出等錯(cuò)誤。為解決這一難題,該數(shù)據(jù)管理系統(tǒng)利用批量導(dǎo)入數(shù)據(jù)的方法先將飛行數(shù)據(jù)導(dǎo)入數(shù)據(jù)倉(cāng)庫(kù)中,再利用SQL語(yǔ)句對(duì)數(shù)據(jù)倉(cāng)庫(kù)中的這些數(shù)據(jù)進(jìn)行查詢和讀取,不僅很好地解決了死機(jī)、內(nèi)存溢出等問(wèn)題,還大大提高了系統(tǒng)讀取數(shù)據(jù)的速度。
1)服務(wù)器端將試驗(yàn)數(shù)據(jù)清理、集成和變換后按照一定的關(guān)系和格式導(dǎo)入數(shù)據(jù)倉(cāng)庫(kù)中。
2)客戶端提供友好的人機(jī)界面,用戶可方便快速的查詢數(shù)據(jù)倉(cāng)庫(kù)中所需要的數(shù)據(jù)。
3)用戶可對(duì)查詢出的數(shù)據(jù)進(jìn)一步分析,包括生成函數(shù)圖像;動(dòng)態(tài)捕捉關(guān)鍵點(diǎn)數(shù)據(jù);局部圖像放大;數(shù)據(jù)圖像預(yù)覽、打印和保存等功能。
圖3 數(shù)據(jù)管理系統(tǒng)查詢界面
圖4 數(shù)據(jù)管理系統(tǒng)分析數(shù)據(jù)界面
本系統(tǒng)已在分析試驗(yàn)數(shù)據(jù)中得到了具體的應(yīng)用。事實(shí)證明該系統(tǒng)操作簡(jiǎn)單、實(shí)用,處理數(shù)據(jù)的速度快,進(jìn)一步分析數(shù)據(jù)的功能全,極大減輕了設(shè)計(jì)人員分析飛機(jī)系統(tǒng)性能時(shí)的工作負(fù)擔(dān),很好的提高了工作效率。
[1]史君成,張淑偉,律淑珍.LabWindows虛擬儀器設(shè)計(jì)[M].北京:國(guó)防工業(yè)出版社,2007.
[2]王建新,楊世風(fēng),等.LabWindows/CVI測(cè)控技術(shù)及工程應(yīng)用[M].北京:化學(xué)工業(yè)出版社,2006.
[3]譚浩強(qiáng).C程序設(shè)計(jì)(第二版)[M].北京:清華大學(xué)出版社,1999.
[4]孫曉云.LabWindows/CVI的虛擬儀器設(shè)計(jì)與應(yīng)用(第2版)[M].北京:電子工業(yè)出版社,2010.
[5]Jiawei Han,Micheline Kamber,范明,孟小峰,譯.數(shù)據(jù)挖掘概念與技術(shù)[M].北京:機(jī)械工業(yè)出版社,2008.
[6]Stephen Prata著,云巔工作室譯.C Primer Plus(第五版)中文版[M].北京:人民郵電出版社,2007.
[7]黃少華,陳翠娥.SQL語(yǔ)法范例大全(SQL Server、Oracle通解)[M].北京:電子工業(yè)出版社,2008.