民機運行支持數(shù)據(jù)湖設計研究
時間:2022-04-23 10:30:12
導語:民機運行支持數(shù)據(jù)湖設計研究一文來源于網(wǎng)友上傳,不代表本站觀點,若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。
摘要:隨著大數(shù)據(jù)技術的發(fā)展,如何存儲和處理各類民機運行支持數(shù)據(jù),為企業(yè)用戶提供所需數(shù)據(jù),已成為主制造商企業(yè)進行數(shù)字化轉(zhuǎn)型、洞察企業(yè)盈利和增值的關鍵因素之一。當前,主制造商數(shù)據(jù)采用傳統(tǒng)數(shù)據(jù)庫或數(shù)據(jù)倉庫的模式無法滿足航空運行數(shù)據(jù)指數(shù)級增長的需求。同時,數(shù)據(jù)管理標準、格式差異較大,不同用戶無法快速獲取有用信息,造成“企業(yè)數(shù)據(jù)孤島”。鑒于此,本文提出了一種基于Lambda的運行支持數(shù)據(jù)湖系統(tǒng)設計方法。首先介紹了數(shù)據(jù)湖的概念和特點。然后,介紹了基于Lambda的運行支持數(shù)據(jù)湖系統(tǒng)的架構設計方案。結合運行支持數(shù)據(jù)湖的服務需求對系統(tǒng)功能進行設計。基于Angular、SpringBoot等開發(fā)了民機運行支持數(shù)據(jù)湖系統(tǒng),為主制造商開展集中式數(shù)據(jù)管理、挖掘數(shù)據(jù)應用價值,實現(xiàn)企業(yè)數(shù)字化轉(zhuǎn)型提供支撐。
關鍵詞:民機運行支持、數(shù)據(jù)湖、Lambda
隨著數(shù)字化、大數(shù)據(jù)技術的發(fā)展,數(shù)據(jù)已成為驅(qū)動航空企業(yè)特別是民機主制造商企業(yè)創(chuàng)新、盈利、增值的關鍵要素之一。民機主制造商數(shù)據(jù)量、數(shù)據(jù)來源和數(shù)據(jù)格式日益增多[1]。企業(yè)需要一個能夠存儲各類原始數(shù)據(jù)的大型倉庫,用于處理各類數(shù)據(jù),以滿足不同業(yè)務對數(shù)據(jù)的存儲、處理、分析及傳輸需求,為挖掘數(shù)據(jù)價值提供高性能的服務支撐[2]。國外航空主制造商GE構建以Postgre+mongoDB+Redis+Blob(S3)的數(shù)據(jù)湖存儲組合技術的大規(guī)模存儲技術的民航數(shù)據(jù)湖生態(tài)系統(tǒng),以滿足不同數(shù)據(jù)集探索發(fā)現(xiàn)、分析、數(shù)據(jù)服務和報告及可視化服務的需求[3]。目前,國內(nèi)民機主制造上大多采用傳統(tǒng)數(shù)倉模式進行數(shù)據(jù)管理,數(shù)據(jù)標準格式差異較大、應用端數(shù)據(jù)獲取不規(guī)范,導致數(shù)據(jù)質(zhì)量不足,數(shù)據(jù)分析應用困難,造成數(shù)據(jù)孤島和冗余現(xiàn)象[4,5]。本文提出基于Lambda模型的民機運行數(shù)據(jù)湖系統(tǒng)設計方法。數(shù)據(jù)收集、管理、業(yè)務分析用戶可在系統(tǒng)中完成數(shù)據(jù)獲取、清洗、標準化轉(zhuǎn)換以及定制、自助的數(shù)據(jù)服務等功能,形成數(shù)據(jù)資產(chǎn)目錄,挖掘數(shù)據(jù)應用價值,助力民機主制造商企業(yè)和數(shù)據(jù)應用決策,實現(xiàn)以客戶/服務為中心的數(shù)字化轉(zhuǎn)型。
1數(shù)據(jù)湖的概念及特點
1.1數(shù)據(jù)湖概念
數(shù)據(jù)湖是一個可以存儲任何形式(包括結構化數(shù)據(jù)、半結構化數(shù)據(jù)和非結構化數(shù)據(jù))、任意規(guī)模的原始數(shù)據(jù)倉庫[6]。結合用戶使用需求決定對哪些數(shù)據(jù)湖原始數(shù)據(jù)進行結構化處理。通過對數(shù)據(jù)的查詢、處理、分析消費,幫助企業(yè)用戶快速挖掘數(shù)據(jù)有用信息。對于民機主制造商而言,數(shù)據(jù)包括生產(chǎn)類數(shù)據(jù)、運行類數(shù)據(jù)、經(jīng)營類數(shù)據(jù)、管理類數(shù)據(jù)、外部綜合類數(shù)據(jù)五類。生產(chǎn)類數(shù)據(jù)如PLM數(shù)據(jù)、EBOM/MBOM等,需同飛機構型管理數(shù)據(jù)保持一致,此類數(shù)據(jù)變更頻率不高,屬于相對靜態(tài)數(shù)據(jù)運行類數(shù)據(jù)主要以時間線進行分類、分層管理,分為飛行類數(shù)據(jù)、維修類數(shù)據(jù)、燃油效率類數(shù)據(jù),如機上FDR/DAR/QAR數(shù)據(jù)、ACARS、EFB數(shù)據(jù)以及地面例行工卡/非例行工卡等。此類數(shù)據(jù)需要實時或近實時更新,數(shù)據(jù)變更頻率較高,屬于相對動態(tài)數(shù)據(jù);經(jīng)營類數(shù)據(jù),如ERP數(shù)據(jù)、SCM數(shù)據(jù)、CRM數(shù)據(jù),此類數(shù)據(jù)支撐運行經(jīng)濟性分析和企業(yè)經(jīng)營,是經(jīng)營決策的重要依據(jù);管理類數(shù)據(jù)包括各類運行支持計劃、進度、問題改進措施、解決方案等轉(zhuǎn)化形成的數(shù)據(jù)以及組織、人員等管理要素數(shù)據(jù);外部綜合類數(shù)據(jù),如氣象數(shù)據(jù)、地理數(shù)據(jù)、油價數(shù)據(jù)、空管航線數(shù)據(jù)、航旅流量數(shù)據(jù)等,主要來源于第三方數(shù)據(jù)源。本文研究內(nèi)容主要針對民機主制造商運行類數(shù)據(jù)。民機運行支持數(shù)據(jù)湖旨在收集、存儲飛機自交付、運營過程產(chǎn)生的氣象、地理、機場、航班運行、維修等原始數(shù)據(jù)。數(shù)據(jù)形式包括數(shù)據(jù)庫存儲的結構化數(shù)據(jù)、EXCEL、XML等半結構化數(shù)據(jù)以及PDF、WORD、音視頻等非結構化數(shù)據(jù)。民機主制造商用戶可對數(shù)據(jù)進行結構化處理,便于數(shù)據(jù)分析人員進行數(shù)據(jù)分析。同時,為了增強用戶使用分析體驗,民機運行支持數(shù)據(jù)湖還為用戶提供可定制、自助式服務、數(shù)據(jù)中臺和標準化、簡單易用的數(shù)據(jù)服務,使得數(shù)據(jù)分析人員更專注于數(shù)據(jù)、算法和業(yè)務,加快民機主制造商產(chǎn)品迭代,增強用戶的購機體驗,形成民機主制造商數(shù)據(jù)生態(tài)。
1.2數(shù)據(jù)湖的特點
依據(jù)數(shù)據(jù)湖的普遍定義,數(shù)據(jù)湖具有以下幾個特點:1)類型多樣。數(shù)據(jù)湖可存放各種類型的數(shù)據(jù),包括結構化數(shù)據(jù)、PDF、WORD等非結構化數(shù)據(jù)、EXCEL、XML等半結構化數(shù)據(jù)。數(shù)據(jù)湖可處理所有類型的數(shù)據(jù)。數(shù)據(jù)類型依賴于數(shù)據(jù)源系統(tǒng)的原始數(shù)格式。對于民機運行支持數(shù)據(jù)湖而言,包括運控系統(tǒng)數(shù)據(jù)、維修類工卡數(shù)據(jù)、飛行記錄本、駕駛艙音視頻數(shù)據(jù)等;2)原始記錄。數(shù)據(jù)湖收集各類原始數(shù)據(jù),并保留數(shù)據(jù)最原始的特征,為數(shù)據(jù)的加工和消費提供豐富的可能。對于民機運行支持數(shù)湖而言,是否有數(shù)據(jù)轉(zhuǎn)換、清洗、加工等處理需求,所有數(shù)據(jù)入湖必須存儲原始數(shù)據(jù);3)海量存儲和計算能力。數(shù)據(jù)湖擁有強大的計算能力,用來處理和分析所有類型的數(shù)據(jù)。用戶也可根據(jù)需求將處理后的數(shù)據(jù)存儲成各種類型數(shù)據(jù)文件格式。所有分析后產(chǎn)生的數(shù)據(jù)均會被存儲起來供用戶使用。除了具備上述特征外,民機運行支持數(shù)據(jù)湖還具備可定制、自助式的數(shù)據(jù)服務、數(shù)據(jù)中臺服務的特點。1)可定制、自助式的數(shù)據(jù)服務。對于民機運行支持數(shù)據(jù)湖而言,可靠性工程師需要航司日報數(shù)據(jù)、基礎數(shù)據(jù)、發(fā)動機運行數(shù)據(jù)等進行可靠性分析;維修工程師需要利用QAR數(shù)據(jù)、ACARS數(shù)據(jù)、CMS數(shù)據(jù)、維修工卡、EO、AMM手冊等進行維修狀態(tài)監(jiān)控和維修預測;飛行運行支持工程師則需要QAR數(shù)據(jù)、ACARS數(shù)據(jù)、飛行履歷本、氣象地理數(shù)據(jù)等開展飛行品質(zhì)分析服務。不同類型用戶,數(shù)據(jù)分析需求也不同。因此,數(shù)據(jù)湖需要為用戶提供可定制和自助式等多種服務模式,增強數(shù)據(jù)服務的彈性。各類工程師可根據(jù)自身需求,采取數(shù)據(jù)訂閱或自制視圖的方式形成服務于自己日常工作的數(shù)據(jù)集,進而開展建模、監(jiān)控、分析工作;為避免數(shù)據(jù)集的冗余、更高效地實現(xiàn)數(shù)據(jù)的高效消費,系統(tǒng)需支持數(shù)據(jù)和分享,幫助其他業(yè)務相關用戶快速獲取數(shù)據(jù)集。系統(tǒng)也為數(shù)據(jù)工程師提供在后臺不同數(shù)據(jù)視圖應用情況分析功能,幫助用戶發(fā)現(xiàn)更深層次、更多維度的數(shù)據(jù)關系,組合或構建更高效的服務新視圖,或?qū)?shù)據(jù)湖集成、存儲、消費環(huán)節(jié)進行優(yōu)化,以提高整體運行效率。2)數(shù)據(jù)中臺服務。隨著視圖數(shù)據(jù)的增多,必定會產(chǎn)生一些重復度高、使用頻率高的數(shù)據(jù)服務需求,數(shù)據(jù)工程師可整合相關需求,開發(fā)標準化的數(shù)據(jù)服務(DataService),形成輕量級服務對外公開數(shù)據(jù),例如QAR譯碼服務等。由于數(shù)據(jù)湖中大量業(yè)務數(shù)據(jù)以原始形態(tài)被提供給消費者,存在數(shù)據(jù)形態(tài)斑駁,質(zhì)量參差不齊,數(shù)據(jù)延遲等問題,導致分析人員需要花費大量時間進行數(shù)據(jù)整備工作,數(shù)據(jù)中臺可將同質(zhì)化服務需求整合后,提供標準化服務接口,迅速拉近數(shù)據(jù)與分析業(yè)務應用之間的距離,使數(shù)據(jù)分析人員可以更加專注在分析建模和應用開發(fā)本身,從而縮短項目周期,加快產(chǎn)品迭代速度。
2運行支持數(shù)據(jù)湖設計方案
由于航空主制造商有大量的存量系統(tǒng)和不斷新建的新系統(tǒng),因此很難從零開始構建一個全新的數(shù)據(jù)湖以承擔企業(yè)數(shù)據(jù)中心的職責,傳統(tǒng)企業(yè)構建數(shù)據(jù)湖首先應該對數(shù)據(jù)及數(shù)據(jù)關系進行分類,定義統(tǒng)一的企業(yè)模型,調(diào)整現(xiàn)有數(shù)據(jù)流程,并以增量的方式逐步構建數(shù)據(jù)湖。數(shù)據(jù)湖的多種數(shù)據(jù)處理方式,大致可以分為批處理和(近)實時數(shù)據(jù)處理,這兩種場景在航空企業(yè)普遍存在。為同時發(fā)揮流處理和批處理的優(yōu)勢,保證大型數(shù)據(jù)集執(zhí)行跨度的可伸縮性、數(shù)據(jù)負載等,本文提出了基于Lambda架構的主制造商運行支持數(shù)據(jù)湖的構建方法。民機運行支持數(shù)據(jù)湖工作流程如下圖所示。數(shù)據(jù)流入是構建數(shù)據(jù)湖的起始。主制造商運行支持數(shù)據(jù)湖數(shù)據(jù)源包括飛行類數(shù)據(jù)、維修類數(shù)據(jù)、燃油效率類數(shù)據(jù),如機上FDR/DAR/QAR數(shù)據(jù)、ACARS、EFB數(shù)據(jù)以及地面例行工卡/非例行工卡等。通過自動/半自動方式,從數(shù)據(jù)源獲取批量/流式數(shù)據(jù)。由于數(shù)據(jù)來源不同,在使用數(shù)據(jù)之前,需要對數(shù)據(jù)進行清洗、熔接、縫合,完成數(shù)據(jù)的集成。數(shù)據(jù)清洗是對重復數(shù)據(jù)、錯誤數(shù)據(jù)和缺失數(shù)據(jù)的剔除和修正過程,以滿足后續(xù)對數(shù)據(jù)的操作和數(shù)據(jù)可用性。數(shù)據(jù)的集成過程需要借助于ETL等工具。集成后的數(shù)據(jù)進行標準化規(guī)范,存儲至數(shù)據(jù)庫中,形成數(shù)據(jù)資產(chǎn)目錄和數(shù)據(jù)圖譜。用戶可按需直接提供流式數(shù)據(jù)服務。當數(shù)據(jù)更新后,更新數(shù)據(jù)資產(chǎn)目錄和數(shù)據(jù)圖譜。在此基礎上,數(shù)據(jù)工程師和業(yè)務工程師開展數(shù)據(jù)應用消費包括數(shù)據(jù)分析、大數(shù)據(jù)處理、自助工具與服務等,便于應用端用戶更專注于數(shù)據(jù)應用,深入挖掘數(shù)據(jù)價值。
2.1基于Lambda模型的民機運行支持數(shù)據(jù)湖架構設計
Lambda架構是一種整合離線計算和實時計算的大數(shù)據(jù)處理框架。通過批處理和實時處理功能來平衡數(shù)據(jù)延遲,實現(xiàn)數(shù)據(jù)容錯,具備高容錯、低延時和擴展性好等特點。盡管Lambda架構將多種大數(shù)據(jù)組件串聯(lián)在一起實行一體化管理,但仍會在后續(xù)數(shù)據(jù)治理和開放能力上存在問題和痛點。因此,本文在搭建基于Lambda架構的民機運行支持數(shù)據(jù)湖架構的過程中,提供了多種平臺及工具來助力民機運行支持數(shù)據(jù)湖的構建?;贚ambda架構的民機運行支持數(shù)據(jù)湖架構分為數(shù)據(jù)獲取層、消息層、批處理層、快速處理層、服務層和數(shù)據(jù)存儲層,如下圖所示。1.數(shù)據(jù)獲取層:從多個數(shù)據(jù)源獲取數(shù)據(jù),并轉(zhuǎn)換為消息層可處理的消息或事件,轉(zhuǎn)換的目的是最小化傳輸延遲,且消息層如無法到達,數(shù)據(jù)獲取層需緩存數(shù)據(jù)以備故障恢復。民機運行支持數(shù)據(jù)包括外部源系統(tǒng)實時數(shù)據(jù)以及人工獲取的大量歷史數(shù)據(jù)。使用SQOOP、Flume工具完成數(shù)據(jù)的收集。使用SQOOP工具可將源系統(tǒng)關系型數(shù)據(jù)庫數(shù)據(jù)收集存儲至目標位置。使用Flume工具可確保數(shù)據(jù)聚合存儲在目標位置。當系統(tǒng)組件、硬件發(fā)生故障或網(wǎng)絡帶寬性能不佳時,F(xiàn)lume仍能保證系統(tǒng)主要功能運轉(zhuǎn),而非完全關閉。為了避免大量數(shù)據(jù)無組織入湖導致出現(xiàn)“數(shù)據(jù)沼澤”的現(xiàn)象,系統(tǒng)設置多個Flume,確保數(shù)據(jù)湖中的數(shù)據(jù)可以按照不同的維度組織起來,例如,不同航司獲取的數(shù)據(jù)存儲在各自單獨的目錄中。2.消息層:主要為數(shù)據(jù)湖架構里的消息中間件,主要作用是讓數(shù)據(jù)湖各層組裝件之間解耦,同時保證消息傳遞安全性。消息層支持隊列通信與/訂閱兩種模式,即一對一和一對多消息消費模式。民機運行支持數(shù)據(jù)湖采用Kafka組件作為中間層實現(xiàn)數(shù)據(jù)源和數(shù)據(jù)消費者的解耦。源數(shù)據(jù)匯聚至Flume,經(jīng)由kafka消息中間層一方面將原始數(shù)據(jù)寫入Hadoop文件系統(tǒng)存儲起來,另一方面,基于kafka的、訂閱功能以及高可靠性、低延遲的特性將數(shù)據(jù)流入數(shù)據(jù)攝取層。3.數(shù)據(jù)攝取層:主要作用是攝取數(shù)據(jù)用于處理和存儲,即將數(shù)據(jù)快速傳遞到Lambda架構的工作模型中,該層關鍵功能包括:a)可按需擴展的負載能力;b)容錯和故障轉(zhuǎn)移能力;c)多線程多事物并行處理能力;d)快速將所獲取數(shù)據(jù)結構轉(zhuǎn)換為目標數(shù)據(jù)格式的能力,包括非結構化、半結構化數(shù)據(jù)轉(zhuǎn)結構化數(shù)據(jù)。例如飛行數(shù)據(jù)譯碼、圖像數(shù)據(jù)轉(zhuǎn)換都在這一層完成。基于民機運行支持數(shù)據(jù)的批量性和實時性的特點,攝取層采取Flink技術,提供數(shù)據(jù)并發(fā)以及并行化計算的流數(shù)據(jù)處理引擎,保證數(shù)據(jù)在大規(guī)模運行過程中,出現(xiàn)無序或者延遲加載的情況下可以提供準確的數(shù)據(jù)處理結果。4.批處理層:批量處理已提取數(shù)據(jù),并轉(zhuǎn)換輸出為數(shù)據(jù)模型,為服務層提供輸入。該層主要任務包括:在已攝取的原始數(shù)據(jù)基礎上執(zhí)行數(shù)據(jù)清洗、數(shù)據(jù)處理、數(shù)據(jù)建模算法;進行機器學習算法或數(shù)據(jù)科學處理,以產(chǎn)生高質(zhì)量的數(shù)據(jù)模型;通過、檢錯等任務提高模型數(shù)據(jù)質(zhì)量;具備故障恢復能力。采用HDFS將不同源系統(tǒng)不同類型的原始數(shù)據(jù)進行持久化存儲。采用Pig技術用于數(shù)據(jù)訪問和處理。Pig提供數(shù)據(jù)流功能,可將ETL功能抽象出來,允許用戶查檢索大型數(shù)據(jù)集,并進行必要操作。最后根據(jù)需求將計算結果存儲起來。使用Hive技術,基于民機運行過程將數(shù)據(jù)劃分多個主題域構建民機運行支持數(shù)據(jù)倉庫,并提供數(shù)據(jù)匯總和即席查詢。5.快速處理層:將從數(shù)據(jù)攝取層獲取的數(shù)據(jù)進行近實時處理,以滿足對數(shù)據(jù)快速、高效、并發(fā)場景的需求,該層需確保數(shù)據(jù)處理、存儲、讀取能力達到近實時的預期,一般都建立在內(nèi)存消息傳輸功能之上。采用Flink實現(xiàn)基于內(nèi)存計算的近實時數(shù)據(jù)處理和開箱即用的windowing功能,不僅基于事件時間,還可基于計數(shù)和會話。當出現(xiàn)數(shù)據(jù)故障,進行數(shù)據(jù)恢復過程中,不會造成數(shù)據(jù)損失。6.服務層:服務層在Lambda架構中負責數(shù)據(jù)的對外提供,支持各種數(shù)據(jù)傳輸協(xié)議,是數(shù)據(jù)消費的接口層,對內(nèi)從數(shù)據(jù)存儲層消費數(shù)據(jù),對外向數(shù)據(jù)消費者按約定接口提供數(shù)據(jù)傳輸,一般包括數(shù)據(jù)推送(數(shù)據(jù)導出、數(shù)據(jù))和數(shù)據(jù)拉取(數(shù)據(jù)服務、數(shù)據(jù)視圖)兩種方式。如向維修工程師推送關注架機的最新維修工卡記錄就是典型的數(shù)據(jù)推送,而為某個飛行品質(zhì)APP以數(shù)據(jù)服務接口的方式提供數(shù)據(jù)更新則是拉取動作。采用SpringBoot快速搭建服務層,并與Swagger等服務定義工具,為構建和通用REST服務。使用Hive技術實現(xiàn)數(shù)據(jù)視圖、報表處理和即席數(shù)據(jù)分析。使用pig或Sqoop技術組件,通過預先設置的cron任務將數(shù)據(jù)從數(shù)倉中導出。7.數(shù)據(jù)存儲層:存儲數(shù)據(jù)湖所有數(shù)據(jù),由于攝取數(shù)據(jù)操作包括批處理和近實時處理兩種,因此存儲層要至少支持兩種類型的存儲模式,一般用Hadoop處理串行讀寫的批量數(shù)據(jù),而用Flume處理需要隨機訪問和快速檢索的流式數(shù)據(jù)。數(shù)據(jù)存儲層應同時支持關系數(shù)據(jù)存儲和分布式存儲,如數(shù)據(jù)分析所需的關鍵參數(shù),應存儲在關系型數(shù)據(jù)庫中提高檢索效率,而原始數(shù)據(jù)的存儲可采用Hadoop分布式解決方案。采用HDFS存儲所有不同類型的原始數(shù)據(jù)?;贓lasticsearch建立索引數(shù)據(jù)服務,幫助用戶進行快速檢索。綜上所述,Lambda模型中新增數(shù)據(jù)將同時分配到批處理層和快速處理層,分別形成批處理視圖和快速處理視圖,查詢命令會合并兩個視圖來生成適當?shù)牟樵兘Y果。
2.2運行支持數(shù)據(jù)湖功能
運行支持數(shù)據(jù)湖包括數(shù)據(jù)收集、數(shù)據(jù)管理、數(shù)據(jù)中臺、系統(tǒng)監(jiān)控和系統(tǒng)維護以及個人中心組成,如下圖所示。數(shù)據(jù)收集模塊完成不同類型數(shù)據(jù)的導入,數(shù)據(jù)的流轉(zhuǎn)配置、數(shù)據(jù)清洗、標準化轉(zhuǎn)換以及數(shù)據(jù)模板和數(shù)據(jù)字典的維護功能。根據(jù)數(shù)據(jù)的類型,系統(tǒng)為用戶提供了作業(yè)管理、半結構化數(shù)據(jù)導入、非結構化數(shù)據(jù)導入功能。作業(yè)管理實現(xiàn)系統(tǒng)到系統(tǒng)的數(shù)據(jù)抽取功能。此外,作業(yè)管理也提供數(shù)據(jù)轉(zhuǎn)換標準化作業(yè)的新建、監(jiān)控、管理功能。半結構化數(shù)據(jù)導入提供EXCEL等數(shù)據(jù)的導入、解析以及數(shù)據(jù)映射。非結構化數(shù)提供視頻、圖片、文檔等數(shù)據(jù)的導入、數(shù)據(jù)映射和表單錄入功能。數(shù)據(jù)清洗提供清洗規(guī)則庫的配置維護功能和重復數(shù)據(jù)、錯誤數(shù)據(jù)和缺失數(shù)據(jù)的修正以及修正數(shù)據(jù)重新映射功能。數(shù)據(jù)轉(zhuǎn)換提供數(shù)據(jù)轉(zhuǎn)換規(guī)則的配置維護功能和轉(zhuǎn)換問題數(shù)據(jù)的修正和修正數(shù)據(jù)的重新入庫功能。數(shù)據(jù)管理模塊完成元數(shù)據(jù)的管理功能、主題標準化數(shù)據(jù)管理和原始數(shù)據(jù)管理功能。元數(shù)據(jù)提供系統(tǒng)元數(shù)據(jù)的查看和數(shù)據(jù)依賴關系的查看功能。主題數(shù)據(jù)管理提供轉(zhuǎn)換作業(yè)標準化后數(shù)據(jù)的管理功能。標準化數(shù)據(jù)按照飛機運行過程業(yè)務分為基礎數(shù)據(jù)、試驗與驗證數(shù)據(jù)、飛行與運行數(shù)據(jù)和維修與工程數(shù)據(jù)。原始數(shù)據(jù)提供不同數(shù)據(jù)源接入原始數(shù)據(jù)的管理功能。數(shù)據(jù)管理功能針對數(shù)據(jù)管理類用戶。數(shù)據(jù)中臺模塊提供數(shù)據(jù)資產(chǎn)、統(tǒng)計分析、數(shù)據(jù)自助服務、原始文件借閱、數(shù)據(jù)發(fā)放功能,主要面向數(shù)據(jù)分析和業(yè)務分析人員。用戶在數(shù)據(jù)中臺可查看形成的數(shù)據(jù)資產(chǎn)目錄信息,支持對數(shù)據(jù)打標簽。對于沒有數(shù)據(jù)權限的用戶,用戶可以申請數(shù)據(jù)發(fā)放權限。同時,用戶可借閱原始數(shù)據(jù)文件。針對一些重復度高、使用頻率高的數(shù)據(jù)應用需求,系統(tǒng)提供數(shù)據(jù)應用支持和統(tǒng)計分析功能。由于不同類型用戶的數(shù)據(jù)分析需求也不同,系統(tǒng)還提供了數(shù)據(jù)自助服務功能,支持數(shù)據(jù)分析用戶自定義數(shù)據(jù)報表、自定義視圖、數(shù)據(jù)訂閱和自定義數(shù)據(jù)API,便于業(yè)務分析人員快速進行數(shù)據(jù)消費,了解數(shù)據(jù)價值。系統(tǒng)資源的使用情況關乎整個數(shù)據(jù)湖系統(tǒng)的穩(wěn)定性、可靠性。系統(tǒng)監(jiān)控主要監(jiān)控CPU利用率和I/O內(nèi)存利用率等。當數(shù)據(jù)湖中CPU利用率和和I/O內(nèi)存利用率超限時,管理員可第一時間發(fā)現(xiàn)問題進行排查,增強系統(tǒng)用戶的使用體驗。系統(tǒng)維護提供系統(tǒng)用戶信息管理、組織機構信息維護、系統(tǒng)功能和數(shù)據(jù)權限管理以及系統(tǒng)使用幫助信息的維護管理功能。
3軟件實現(xiàn)
系統(tǒng)基于Lambda架構,采用前后端分離和微服務的原則,采用Angular,SpringBoot、Echars、Redis等設計開發(fā),數(shù)據(jù)庫用PostgreSQL和HDFS,借助于kettle開源的ETL工具完成系統(tǒng)對系統(tǒng)結構化數(shù)據(jù)的抽取,如下圖所示。民機運行支持數(shù)據(jù)湖實現(xiàn)流程如下圖所示。用戶需梳理原始數(shù)據(jù),結合數(shù)據(jù)入湖后的數(shù)據(jù)流向配置數(shù)據(jù)字典、數(shù)據(jù)模板、清洗規(guī)則、映射關系、轉(zhuǎn)換規(guī)則。結合源數(shù)據(jù)的獲取方式(包括文件上傳、接口獲取、人工錄入等)以及數(shù)據(jù)格式(包括結構化、半結構化、非結構化)從不同的功能入口完成不同類型數(shù)據(jù)的收集、處理,經(jīng)過數(shù)據(jù)標準化轉(zhuǎn)換作業(yè)形成標準統(tǒng)一的數(shù)據(jù),建立數(shù)據(jù)資產(chǎn)。通過對數(shù)據(jù)的聚合、導出、實現(xiàn)數(shù)據(jù)的統(tǒng)計分析、自助服務和數(shù)據(jù)應用。
4數(shù)據(jù)湖應用結果與分析
以某型號某航數(shù)據(jù)為例,在民機制造商數(shù)據(jù)收集過程中,需要收集PDF、EXCEL、WORD的文件類型數(shù)據(jù),將其作為民機運行支持數(shù)湖的輸入。通過對不同類型數(shù)據(jù)的收集、存儲、處理、標準化、整合,大大提高數(shù)據(jù)管理人員的工作效率。業(yè)務分析人員通過對數(shù)據(jù)中臺的數(shù)據(jù)應用、數(shù)據(jù)自助服務等功能可快速完成數(shù)據(jù)的聚合、分析,快速響應用戶數(shù)據(jù)分析的需求,降低了企業(yè)成本。數(shù)據(jù)管理人員通過監(jiān)控數(shù)據(jù)的使用情況可快速了解數(shù)據(jù)價值,清理無價值的數(shù)據(jù),避免出現(xiàn)“數(shù)據(jù)沼澤”。
5結束語
本文設計實現(xiàn)了一種基于Lambda的運行支持數(shù)據(jù)湖系統(tǒng),解決了傳統(tǒng)數(shù)據(jù)庫、數(shù)據(jù)倉庫無法滿足航空數(shù)據(jù)指數(shù)級增長、毫秒級攝取、多維度應用的問題,為主制造商開展集中式數(shù)據(jù)管理,實現(xiàn)數(shù)字化轉(zhuǎn)型提供支撐。同時,基于Lambda的運行支持數(shù)據(jù)湖系統(tǒng)有利于形成以單一架機視圖(SingleAircraftView,SAV)為核心的數(shù)據(jù)服務,通過將數(shù)據(jù)科學和機器學習技術,幫助業(yè)務部門高效利用數(shù)據(jù),挖掘潛在價值,幫助主制造商優(yōu)化設計制造,制定更靈活、更有針對性的經(jīng)營策略,為航空公司運行運營工作提供支持。然而,存在不同航空公司對于同一數(shù)據(jù)定義不同以及各航空公司數(shù)據(jù)質(zhì)量參差不齊的情況。隨著接入數(shù)據(jù)來源種類的增多,如何優(yōu)化運行支持數(shù)湖系統(tǒng)[7],建立更為完善的數(shù)據(jù)湖安全及將是未來研究需要重點解決的問題。
參考文獻:
[1]Walker,Coral,PersonalDataLakewithDataGravityPull[C].5thIEEEInternationalConferenceonBigDataandCloudComputing,BDCloud2015:160-173.
[2]HalevyAY,KornF,NoyNF,OlstonC,etal.,WhangSE(2016)ManagingGoogle'sdatalake:anoverviewofthegoodssystem[J].IEEEDataEngBull39(3):5-14.
[3]王一揚.GE的工業(yè)數(shù)據(jù)湖平臺[J].新理財,2015:45-46.
[4]Sun,Dapeng(1).Bigdatalearningresourcesintegrationandprocessingincloudenvironments[J].JournalofChemicalandPharmaceuticalResearch,2014,6(5):936-943.
[5]郭文惠.數(shù)據(jù)湖技術——一種更好的大數(shù)據(jù)存儲架構[J].電腦知識與技術,2016(30):4-6.
[6]NataliaM,AlexanderT.BigData,FastDataandDataLakeConcepts[J].ProcediaComputerScience,2016,1(88):300-305.
[7]邱燕娜.數(shù)據(jù)湖不能成為數(shù)據(jù)沼澤[N].中國計算機報,20159(28):011.
作者:馬馳 單位:上海飛機客戶服務有限公司