1 引言
進入到21世紀以來,我國的TDM(試驗數(shù)據(jù)管理)技術領域展現(xiàn)出蓬勃的生機,越來越多的行業(yè)和單位開始關注該技術和相關的解決方案,如航空、航天、兵器、船舶、汽車等行業(yè),尤其在航空領域的應用更為廣泛,長期的設計分析、工程試驗已產生并積累了大量工程試驗數(shù)據(jù)。以往這些試驗數(shù)據(jù)多以數(shù)據(jù)文件或印刷文檔方式保存和管理的,對于缺乏結構化的、格式不統(tǒng)一的文件資料,管理人員往往難以使用,更談不上對信息進行二次處理,同時隨著試驗工具的更新?lián)Q代和試驗手段的不斷改進,從試驗中獲取的數(shù)據(jù)模式也不斷發(fā)生變化,因而要求能夠統(tǒng)一管理這些模式相異、隨時間變化的數(shù)據(jù)。隨著工程試驗的不斷推進和研究的進一步深入,人們又提出了新的要求,要能夠從大量的歷史試驗數(shù)據(jù)中分析、挖掘出一些隱藏在數(shù)據(jù)中的規(guī)律,并利用這些信息和經(jīng)驗來指導進一步的工程設計和試驗。TDM系統(tǒng)正在成為企業(yè)提高試驗管理水平、縮短科研周期、降低科研經(jīng)費的一個重要手段。TDM的物理結構如圖1所示。
圖1 TDM系統(tǒng)物理結構圖
作為一個試驗數(shù)據(jù)綜合數(shù)字化管理平臺,TDM系統(tǒng)涉及很多復雜的功能和技術,而數(shù)據(jù)導入功能就是其中之一。試驗數(shù)據(jù)導入功能就是從各種格式的海量試驗數(shù)據(jù)文件中快速提取目標數(shù)據(jù)、再轉換清洗后裝載到數(shù)據(jù)庫中。TDM系統(tǒng)目前試驗數(shù)據(jù)管理的需求狀況決定了數(shù)據(jù)導入功能的重要性。
(1)試驗數(shù)據(jù)格式多樣
目前國際和國內的試驗數(shù)據(jù)采集設備多種多樣,并且還沒有形成統(tǒng)一的標準,而且許多客戶單位也大量采用非標設備,于是采集的試驗數(shù)據(jù)格式也就多種多樣。相對于商業(yè)或者其它領域的數(shù)據(jù),工程試驗數(shù)據(jù)有著其特別之處:
●數(shù)據(jù)信息組織分散,數(shù)據(jù)往往以數(shù)據(jù)文件、印刷文檔形式保存;
●數(shù)據(jù)類型復雜且模式變化;
●數(shù)據(jù)處理與管理緊密耦合;
●數(shù)據(jù)的專業(yè)性;
●數(shù)據(jù)的海量性:
這對TDM系統(tǒng)的導入功能帶來了很多的挑戰(zhàn)。
(2)試驗數(shù)據(jù)量很大
試驗作為產品研發(fā)生命周期的一項重要工作和內容,其地位日漸增強,試驗產生的數(shù)據(jù)量也呈幾何數(shù)量級增長。TDM系統(tǒng)的導入性能也就成為一個關鍵指標。
數(shù)據(jù)導入功能具有以下特點:
同許多ETL工具一樣,TDM系統(tǒng)的導入功能包括extract(抽取)、transfer(轉換)、clean(清洗)和load(裝載)等幾個步驟。但是,試驗數(shù)據(jù)管理的特殊需求決定了它又具有自身的特點。除了前面提到的數(shù)據(jù)格式多樣、數(shù)據(jù)量大之外,單位保密要求對于產品架構設計產生了很大的影響。許多單位,尤其是國防單位,都有嚴格的保密制度。在信息化系統(tǒng)的部署方面,普通用戶計算機一般是不允許直接訪問數(shù)據(jù)庫的,只有指定的服務器才有權限直接訪問數(shù)據(jù)庫。這就決定了傳統(tǒng)的C/S兩層結構不能適應客戶需求,B/S三層結構則成為必須的選擇。
2 基于三層架構的數(shù)據(jù)導入功能的設計與實現(xiàn)
系統(tǒng)分為三層結構:分別是用戶界面層(用戶層)、商業(yè)邏輯層(應用層)和數(shù)據(jù)服務層(數(shù)據(jù)層),其中用戶層為數(shù)據(jù)導入客戶端工具。應用層為基于J2EE平臺的應用服務器和FTP服務器,J2EE服務器提供Web Service,包括Web Service和Java Beans等J2EE組件;FTP服務器提供對上傳文件的管理功能,并提供多線程的文件上載到數(shù)據(jù)層的功能。數(shù)據(jù)層包括數(shù)據(jù)庫服務器,其中數(shù)據(jù)庫服務器中包含系統(tǒng)的元數(shù)據(jù)庫、業(yè)務數(shù)據(jù)庫和相關的后臺進程。
用戶層:數(shù)據(jù)導入工具通過Web Service接口與系統(tǒng)應用層提供的Web Service進行交互,建立相應的映射規(guī)則,同時數(shù)據(jù)導入工具對用戶導入的非結構化數(shù)據(jù)文件進行抽取和轉換,解析成格式化的文本文件,并把導入的數(shù)據(jù)規(guī)則及映射關系等信息保存下來,然后通過FTP把轉化后的文件上傳到應用層,同時通過Web Service接口把數(shù)據(jù)校驗及關聯(lián)映射信息傳到應用層。
應用層:Web Service根據(jù)用戶層的請求信息在內部調用相應的Java Bean組件,Java Bean組件通過訪問數(shù)據(jù)庫服務器,對數(shù)據(jù)庫服務器中的元數(shù)據(jù)庫、后臺進程和業(yè)務數(shù)據(jù)庫進行操作。在三層結構的數(shù)據(jù)導入工具中采用應用層主要是為了保證系統(tǒng)的靈活性和數(shù)據(jù)的安全性,用戶層不能直接訪問數(shù)據(jù)庫,用戶層對數(shù)據(jù)的操作都要通過應用層才能訪問到數(shù)據(jù)層。應用層提供FTP服務器的功能主要是為了提高數(shù)據(jù)文件上傳的速度,也可以采用Socket編程的方式實現(xiàn)文件的上傳,同時FTP服務器提供文件下載功能,當客戶端的數(shù)據(jù)文件上傳成后可以系統(tǒng)自動把相應的文件下載到數(shù)據(jù)層的數(shù)據(jù)庫服務器上。
數(shù)據(jù)層:元數(shù)據(jù)庫、業(yè)務數(shù)據(jù)庫和后臺進程通過應用層Java Bean組件被訪問,當應用層的數(shù)據(jù)文件接收成功后,通過Oracle數(shù)據(jù)庫的特性,采用建立外部表的方式對數(shù)據(jù)文件進行“導入”,然后對導入外部表的數(shù)據(jù)進行校驗和處理,并返回數(shù)據(jù)導入的提示信息通過應用層到數(shù)據(jù)導入工具,然后再把外部表中的數(shù)據(jù)導入到實際表中,如圖2所示。
圖2 TDM系統(tǒng)導入三層架構圖
3 通過數(shù)據(jù)庫外部表技術提升導入性能
為了提高數(shù)據(jù)導入的性能,數(shù)據(jù)導入方案采用先導入臨時表,然后進行校驗,最后再導入到真實表的方式。因為臨時表中無索引、數(shù)據(jù)量少,因此能顯著提高數(shù)據(jù)導入速度和性能。數(shù)據(jù)導入臨時表后,通過數(shù)據(jù)庫的功能實現(xiàn)對臨時表中的數(shù)據(jù)進行校驗和清除,同時產生數(shù)據(jù)導入日志信息,先導入后校驗的方式可以進一步提高數(shù)據(jù)導入的速度。數(shù)據(jù)導入的最后一步才是把臨時表中的數(shù)據(jù)導入到真實表中,為了提高性能,可以在晚間數(shù)據(jù)庫訪問量少的時候系統(tǒng)自動實現(xiàn)數(shù)據(jù)從臨時表導入到真實表,同時清空臨時表中數(shù)據(jù)。結合Oracle數(shù)據(jù)庫系統(tǒng)提供的特性,可以利用建立外部表的方法來實現(xiàn)臨時表的功能,Oracle數(shù)據(jù)庫可以把一個普通的文本格式文件看作是Oracle數(shù)據(jù)庫的外部表,外部表可以像普通表一樣進行select操作,可以建視圖,可以與其他進行連接等,但不能對其進行DML操作,即該表是只讀的。外部表為Oracle用戶提供了巨大的好處。通過使用外部表,Warehouse Builder開發(fā)人員不再需要創(chuàng)建平面文件臨時表。這樣,外部表就減少了加載平面文件數(shù)據(jù)的處理時間,而且需要的額外存儲空間也比平面文件臨時表少。外部表可以與關系表和其他外部表連接,從而在平面文件和關系表之間實現(xiàn)了異類連接。此外由于消除了額外的步驟,因此PL/SQL轉換與SQL加載程序轉換相比更加靈活,從而在大多數(shù)情況下將獲得巨大的性能提升。
圖3 外部表映射邏輯
4 結束語
TDM系統(tǒng)的導入功能是其核心功能之一,一些通用ETL技術都適用于該功能。本文僅從試驗數(shù)據(jù)管理需求的角度提出了數(shù)據(jù)導入技術的實現(xiàn)方法,并提升了數(shù)據(jù)導入性能。但TDM技術尚未成熟,其中的技術實現(xiàn)方式則有待于進一步探討。
TDM是PLM的重要環(huán)節(jié),是對PDM重要補充。通過對技術數(shù)據(jù)進行有效的管理和使用,企業(yè)可以更加完整準確地了解產品相關信息,為研發(fā)制造和相關業(yè)務決策提供可靠的數(shù)據(jù)支持。另一方面,由于技術數(shù)據(jù)的復雜特點,決定了TDM也是一項復雜的系統(tǒng)工程,需要解決諸多關鍵技術,是簡單的基于數(shù)據(jù)庫的應用系統(tǒng)所無法勝任的,必須基于成熟的TDM軟件來實現(xiàn)。
核心關注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務領域、行業(yè)應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業(yè)務領域的管理,全面涵蓋了企業(yè)關注ERP管理系統(tǒng)的核心領域,是眾多中小企業(yè)信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網(wǎng)http://m.nttd-wave.com.cn/
本文標題:產品技術數(shù)據(jù)管理TDM導入功能的設計與實現(xiàn)
本文網(wǎng)址:http://m.nttd-wave.com.cn/html/solutions/14019312250.html