劉佳俊,喻 鋼,胡 珉
(1.上海大學悉尼工商學院,上海 201800; 2.上海大學—上海城建建筑產業化研究中心,上海 200072) (*通信作者電子郵箱yugang509@163.com)
面向城市基礎設施智慧管養的大數據智能融合方法
劉佳俊1,2,喻 鋼1,2*,胡 珉1,2
(1.上海大學悉尼工商學院,上海 201800; 2.上海大學—上海城建建筑產業化研究中心,上海 200072) (*通信作者電子郵箱yugang509@163.com)
針對運維大數據維度高、形式多樣化和變化迅速等特性,為提高數據融合效率以及平臺的數據統計和決策分析性能,降低抽取-轉換-加載(ETL)執行時間開銷和數據中心負擔,面向智慧管養需求提出一種多層次任務調度(MTS)ETL框架(MTS-ETL)。首先,將數據倉庫分為數據臨時區、數據倉儲區、數據分類區和數據分析區,并根據所分區域將完整的ETL過程劃分為4個層次的ETL任務調度環節,同時設計了多頻率ETL運行調度以及順序和非順序兩種ETL工作模式;接著,基于MTS-ETL框架的非順序工作模式進行數據融合的概念建模、邏輯建模和物理建模;最后,利用Pentaho Data Integration設計ETL轉換模塊和工作模塊以實現數據融合方法。在交通流量數據融合實驗中,該方法融合136 754條數據的時間僅為28.4 s;在千量級的數據融合實驗中比傳統ETL方法的總平均執行時間降低了6.51%;報表分析結果表明其在融合400萬條數據時依然能保證ETL過程的可靠性。所提方法能夠有效融合運維大數據,提高平臺統計分析性能,并維持ETL執行時間開銷在較低水平。
大數據;抽取-轉換-加載;數據融合;數據倉庫;城市基礎設施管養
城市基礎設施管養是指充分利用信息化和大數據技術對城市道路、橋梁以及隧道等各類市政設施進行智慧化管理和養護,它涵蓋了交通建設運營、設施設備管理、項目資產巡檢以及養護合同收益等多項業務。隨著智慧城市建設的推進,城市基礎設施管養精細化的需求日漸突出,海量歷史和實時數據需要有效的大數據技術進行融合,才能為決策分析提供有力的支撐。運維大數據涵蓋了視頻、文本、流數據、建筑信息模型(Building Information Model, BIM)和地理信息系統(Geographic Information System, GIS)等多種數據組織形態,具有數據維度高、形式多樣化以及價值密度低的特征,數據變化迅速、時空性和沖突性都比較強。既有的平臺雖然在一定程度上實現了狀態監控和故障記錄等功能,但由于缺乏有效的大數據融合技術,數據融合效率低下,同時導致數據統計和決策分析性能較差[1]。如何通過大數據融合方法把數據轉換為信息和知識成為實現智慧管養的主要瓶頸。
國內外針對大數據融合方法的研究主要聚焦于抽取-轉換-加載(Extract-Transform-Load, ETL)建模與ETL架構設計。文獻[2]提出可編程和可擴展的ETL框架以支持ETL轉換重用,但在缺乏GUI的建模環境下以編程方式自定義ETL流程的開發過程效率較低。文獻[3]提出基于模板的ETL開發方法,它允許導入來自源或目的端存儲的元數據,添加映射或緩慢變更維度定義,并生成可執行的ETL包,有助于減少數據倉庫各階段的開發和維護工作。文獻[4]提出基于ETL元數據模型批量更新數據倉庫表的方法,通過避免數據源未發生改變時產生不必要的負載,減少數據倉庫系統資源的消耗,但其缺少對增量加載過程的考慮。文獻[5]提出基于腳本技術的自動化ETL流程以減少ETL手動運行任務。文獻[6]提出基于模型驅動架構的方法,開發了基于多代理模式的ETL過程以整合外部數據到數據倉庫,并且自動地產生代碼,它們的局限性在于靈活性和可重用性較低。文獻[7]以用戶需求為中心引入端到端的ETL過程設計方法,通過使用目標建模技術以提高ETL概念建模的抽象水平,能較好地解決概念模型質量問題。文獻[8]利用工具MaSSEETL設計了企業數據ETL和數據質量解決方案。文獻[9]則設計了基于Web的ETL原型工具為用戶提供完整的ETL流程指導,但它們在處理大規模數據時會產生性能瓶頸問題。文獻[10]通過使用Geokettle設計ETL情景并進行ETL建模,將數據源中的屬性與數據倉庫表的屬性進行映射,有助于自動執行數據預處理,并在插入和更新數據時不產生大量的查詢。
目前,大數據融合技術研究與應用領域主要為電信和郵政行業。文獻[11] 針對Teradata數據倉庫設計ETL模型,重點闡述了ETL實施流程中的ETL Automation無故障處理機制和異常處理機制,但缺少基于ETL模型的數據融合的具體實現方法。文獻[12]通過歸納自動化流程對ETL各類作業進行設計和命名規范,具體實現了ETL功能,但該方法無法適用于城市基礎設施管養領域中具有多源、異構、時變和高維特征的數據融合。而城市基礎設施管養領域內對于大數據融合技術的研究比較欠缺。許多既有的管養平臺沒有真正地將其各業務模塊與大數據融合技術進行整合,以實現管養智慧化。
因此,本文對面向城市基礎設施管養的大數據融合方法進行了探索,并針對性地設計了數據倉庫系統架構和數據融合ETL框架,提出一種基于多層次任務ETL(Multilevel Task Scheduling ETL, MTS-ETL)框架的大數據融合方法。該方法將完整的ETL過程劃分為ETLⅠ、ETLⅡ、ETLⅢ和ETLⅣ這四個層次,并根據數據源不同的標準化程度分別設計了順序工作模式和非順序工作模式兩種ETL工作模式。通過對ETL執行過程的概念建模、邏輯建模和物理建模,實現數據源屬性與數據倉庫表屬性之間的語義映射和ETL業務情景的定義;最后利用Pentaho Data Integration 實現了基于MTS-ETL框架的大數據融合方法。該方法的新穎之處在于,根據數據倉庫系統所劃分的4個存儲區劃分ETL過程拆為4個層次的任務調度,以提高ETL過程的容錯性;將異構數據首先放入數據臨時區中,再進行數據標準化操作,以提高ETL抽取階段的數據加載效率;設計基于不同頻率運行ETL任務,允許用戶根據業務訪問需求確定ETL運行頻率,以提高ETL調度的靈活性;將ETL面向的對象進行擴展,代替傳統的存儲過程開發,以提高ETL框架的適用性。
為實現諸如設備統計分析和設施管養輔助決策這類商業智能(Business Intelligence, BI)分析業務功能,必須通過數據倉庫構建管養大數據的統一視圖以支撐綜合性的數據融合技術。數據倉庫的特點在于高度集成與管理城市基礎設施管養過程中產生的多源結構化或非結構化的靜態數據、動態數據和實時數據。本文面向城市基礎設施智慧管養需求,設計了如圖1所示的由數據源、數據集成、數據倉庫存儲、元數據管控、用戶訪問框架、技術架構與環境以及基礎設施平臺所構成的數據倉庫系統。

圖1 數據倉庫系統架構
基于Hadoop分布式集群的數據倉庫作為整個系統的物理實現部分,分為數據臨時區、數據倉儲區、數據分類區以及數據分析區。其中:臨時區存放各業務系統的源數據;數據倉儲區則針對數據整合和數據歷史存儲需求組織集中化和一體化的數據存儲區域,并覆蓋多個數據主題域;粒度最細的實時數據及時性要求最高,因而數據分類區面向操作型分析,存儲粒度更為詳細的實時業務系統多變數據;而數據分析區則采取星型模型結構存儲匯總數據。Hadoop所提供的Hadoop分布式文件系統(Hadoop Distributed File System, HDFS)可以為ETL提供技術支持,而數據倉庫管理技術Hive則可以對HDFS上的文件進行轉換處理操作。由圖1可以看出,ETL作為數據源和數據倉庫之間的橋梁,確保數據能夠進入數據倉庫。
ETL將日常業務操作的數據轉化為數據倉庫存儲的決策支持型數據,在邏輯上分為數據的抽取、清洗、轉換以及加載四個過程,其框架設計的好壞最終決定了數據倉庫系統性能的高低。傳統的ETL架構存在以下局限性:1)將ETL包含在一個完整的過程中執行,沒有對ETL流程進行更加細粒度的劃分;2)缺少數據臨時存儲區域以存儲來自異構數據源的數據,當全量抽取或增量抽取的數據量很大時,容易造成多源并發抽取的性能瓶頸,加重數據倉庫存儲區的負擔;3) 沒有考慮數據源的數據頻度、量級以及對業務訪問的需求來確定數據抽取頻率。這種傳統的ETL架構不能很好地適應于基于管養業務需求所劃分出的數據倉庫四個數據存儲區域。所以,本文在對傳統ETL框架進行改進的基礎上,結合城市基礎設施智慧管養需求和數據倉庫系統架構,設計了如圖2所示的MTS-ETL框架,其中圓角矩形表示ETL各階段的執行任務,矩形表示各階段所存儲的數據。

圖2 MTS-ETL框架
MTS-ETL框架設計的核心思想在于把整個ETL過程分為不同層次ETL任務調度和不同頻率的ETL運行調度。如此改進后的MTS-ETL架構優點在于:1) 根據數據倉庫系統所劃分的數據臨時區、數據倉儲區、數據分類區以及數據分析區,將完整ETL過程拆分為4個層次的任務調度,每個存儲區域都能夠通過執行ETL任務對數據進行處理以組織所需的數據形態。而且由于數據源并不是一次性直接加載到數據倉庫,進行元數據管控、數據質量審計以及錯誤數據的定位與排查也相對容易。2) 將ETL的數據抽取、轉換和加載分割開來,將抽取到的大批量異構數據首先放入數據臨時區中, 再進行數據標準化操作,然后加載至數據倉儲區和數據分類區,提高了數據加載效率。3) 由于運維大數據的數據頻度和不同數據類型的量級差異性均較大,基于不同頻率運行ETL任務相對于傳統的ETL架構而言,更加適應基于不同頻率的數據分類和數據分析需求,MTS-ETL允許用戶根據業務訪問需求確定ETL運行頻率,因而MTS-ETL是面向用戶需求的,具有更大的靈活性。4) ETL對象并不限于數據倉庫,而是將ETL適用的范圍擴展為由數據源到數據倉庫目的端再到展示端數據庫的過程,具有更大的適用性。下面闡述MTS-ETL的四個任務調度環節:
①ETLⅠ負責異構數據源抽取并存放在數據臨時區。數據源獲取優先選擇數據庫直連方式,即通過開放數據庫互連(Open Database Connectivity, ODBC)或數據庫Native連接方式,直接連接到源數據庫;其次選擇文件傳輸方式,按約定的接口文件格式導出數據,以文件方式批量傳輸數據;對少量且實時性要求較高的數據采用企業應用集成(Enterprise Application Integration,EAI)方式,通過EAI平臺定義的接口服務進行傳輸;而對于無源系統支撐的數據源采取手工錄入方式。該階段臨時區數據與數據源基本保持一致,且臨時區存儲的數據被處理后不會被保留,其功能在于縮短多數據源融合時間,減輕數據源和數據存儲中心的負擔。
②ETLⅡ是MTS-ETL框架的關鍵環節,首先實現數據類型的標準化,即盡量在源系統側提升數據質量,再做清洗和轉換操作,以方便后續數據校驗。第二層次的核心工作在于對來自臨時區的數據執行過濾、解析、修正、去重、分類、聚合、排序以及匹配等清洗和轉換操作后裝載入數據倉儲區和數據分類區。其中,數據倉儲區采用3NF存儲結構形成統一的數據模型,而數據分類區則按不同粒度對數據倉儲區的數據進行分類存儲。
③ETLⅢ 負責將來自數據倉儲區和數據分類區的數據進行匯總,目的在于按照不同BI技術手段的功能定位進一步組織數據實體,比如利用關鍵績效指標(Key Performance Indicator, KPI)和固定報表滿足決策層和管理層需求;而實時查詢、動態報表、聯機分析處理(Online Analytical Processing, OLAP)分析用于實現數據的深層次多維分析。
④ETLⅣ 邏輯上不屬于基本的ETL過程,而是結合了管養平臺自身特點和現實需求,專門為各目標系統數據庫而增設的處理環節。基于不同的粒度,將數據倉庫累積的數據增量裝載至數據庫,以便于系統更加高效地調用融合后的數據,從而支持多種數據可視化方案以及系統分析結果的展示與呈現。
MTS-ETL框架中不僅包含四個層次的ETL任務調度,還包括多個頻率的運行調度。ETL定時任務作為多頻率運行調度中必不可少的環節,取決于抽取各業務系統數據的頻率程度(年、月、日、小時)。在默認情況下,MTS-ETL通過指定日期參數抽取數據源。
MTS-ETL框架采用如圖3所示的分級與依賴機制,分為以下三個步驟:
1)ETL參數初始化工作。主要配置資源庫和運行目錄等ETL參數文件,其中ETL控制表記錄了每個ETL工作流的運行狀態和運行批次日期。如果ETL控制表有未執行完的流程,則根據ETL控制表與配置參數生成運行所需的參數文件;否則還需要生成運行數據的批次日期。
2)ETL執行工作。從ETLⅠ到ETLⅣ依次執行各ETL目錄內的工作流。
3)ETL收尾工作。等待工作流成功結束后更新ETL控制表狀態,并獲取資源庫和生成運行日志。

圖3 MTS-ETL工作機制

圖4 順序工作模式

圖5 非順序工作模式
由于數據源的標準化程度不同,MTS-ETL框架設計了兩種工作模式:順序工作模式和非順序工作模式。順序模式如圖4所示。圖4中,Step 4的臨時區目標表保存了與源系統一致的業務數據,為數據加載進入數據倉儲區作為臨時存儲數據,臨時區數據存儲與源系統表名稱保持一致,增加源系統名稱作前綴形式命名,數據表采用增加LOAD_DATE標識方式區分不同時段的加載數據。
但是對于穩定的標準維度定義或者個別源表,包括主要用于實時查詢的字典表,都可以通過逗號分隔值(Comma-Separated Value, CSV)文件格式數據直接裝載入數據分類區,該過程為標準的增量裝載過程,這種非順序工作模式如圖5所示。圖5中,Step 3通過Mapping Group實現對于外鍵的代理鍵的匹配過程,Step 5根據數據源的字段比如XX_CODE等聯合主鍵查詢目標表,Step 6 至 Step 8描述了標準的增量裝載過程,對于變化的數據采取更新操作,未發生歷史變化的數據可以更新時間戳,而新數據則在生成序列后插入目標表。
本節以通行流量主題為例來闡述數據倉庫模型的設計。通過組建多維數據模型,從各個角度分析數據,得到通行流量的環比和同比、車型分類流量以及通行流量預測等信息。
數據屬性選擇包括:從項目基礎數據中選擇項目編號(PROJECTID)、公司編號(CORPORATIONID)和項目名稱(PROJECTNAME)3個屬性;從區段數據中選擇區段編號(SECTIONID)、區段名稱(SECTIONNAME)、行車方向編號(DIRECTIONPKID)3個屬性;從通行流量數據中選擇記錄編號(RECORDID)、流量編號(IDX)、日流量(FLOWOFDAY)、區段流量(SECTIONFLOWS)、總流量(TOTALFLOW)、發生日期(OCCURDATE)6個屬性。在此步驟,通過流量事實表(FACT_DAYFLOW)、項目維度表(TB_PROJECT)、區段維度表(TB_SECTION)和日期維度表(TB_DATE)組成的星型模型來構建數據倉庫多維方案,其星型模式結果如圖6所示。

圖6 星型模型
3.2.1 概念建模
ETL概念建模旨在為ETL過程創建一個概念模型,以描述數據源中的字段與數據倉庫表中的字段之間的映射關系。流量數據是存儲于數據庫的完全結構化數據,標準化程度和實時程度較高,它不需要在數據倉庫的數據臨時區進行緩存。基于這種高度標準化的數據特征,MTS-ETL框架允許采取非順序工作模式,選擇性地跳過ETLⅠ將異構數據源抽取并存放在數據臨時區的環節,而是從源數據庫抽取數據并增量裝載入數據倉庫的數據倉儲區和數據分類區。
非順序工作模式的優點不僅在于降低了ETL抽取工作的開發難度,同時提高了部分標準數據源的集成效率,特別是MTS-ETL展示層對實時數據訪問要求較高的情況下,ETL工作效率直接影響數據可視化和動態報表服務的性能。它與順序工作模式的主要差別在于,首先需要通過ETLⅠ將數據加載進入數據倉儲區作為臨時存儲數據,之后再從臨時區加載所需數據到數據倉庫表。

圖7 FACT_DAYFLOW的概念模型

圖8 FACT_DAYFLOW的邏輯模型
流量事實表(FACT_DAYFLOW)的概念模型如圖7所示。圖7展示了從數據庫映射數據源的屬性到數據倉庫表。其中,數據源為日流量表(T_DAYFLOW),數據倉庫表為流量事實表(FACT_DAYFLOW)。基于非順序模式,ETLⅡ直接對來自源數據庫的數據執行清洗和轉換操作,然后裝載入數據倉儲區和數據分類區。
日流量表和流量事實表之間的映射通過以下幾個轉換步驟實現,具體包括數據字段選擇、數據類型轉換、數據的屬性值映射與過濾、數據計算與排序、數據分組與聚合,根據數據源編號等字段查詢目標表以獲取維度表的外鍵、映射字段以匹配流量事實表與數據源的字段,以及將數據增量裝載入數據倉儲區的流量事實表中以形成統一的運營主題數據模型。數據分類區則會根據運營、管養、資產以及收益等分類將數據倉儲區的流量數據存儲到運營主題域中,并且數據分類區的流量數據將會基于不同頻率通過ETLⅢ進行匯總存儲,充分體現了MTS-ETL的多層次數據處理特點。概念建模是數據映射以及以后的ETL和前端的開發工作的基礎,下面將基于概念模型對ETL邏輯建模進行流程分解描述。
3.2.2 邏輯建模
邏輯建模關注的是從數據抽取開始直到數據存儲結束這一過程中從數據源到數據倉庫的數據流,它是概念建模的延伸。它將概念建模上的文字描述轉換為邏輯建模符號,并按照所抽取的數據和數據流邏輯組織轉換流程,以達到清洗數據的目的。流量事實表(FACT_DAYFLOW)的邏輯建模結果如圖8所示。
3.2.3 物理建模
物理建模是根據邏輯模型對應到具體數據模型的機器實現,以對真實的數據庫和數據倉庫進行描述,所以需要為數據倉庫表的每個屬性明確物理模型的數據類型,才能將轉換的結果映射到數據倉庫中的已存在的表中,流量事實表(FACT_DAYFLOW)的物理建模結果如圖9所示。
圖9顯示了流量事實表(FACT_DAYFLOW)的物理建模過程,該過程與概念和邏輯建模中的轉換過程一致。其中,流量事實表(FACT_DAYFLOW)包含PROJECTID,SECTIONID和DATEID屬性作為外鍵FK,這些屬性為字符串數據類型。其余的屬性還包含數值類型的總流量,以及字符串類型的流量信息編號、區段流量和流量發生日期。

圖9 FACT_DAYFLOW的物理模型
本文使用開源的ETL工具Pentaho Data Integration來實現基于MTS-ETL框架的數據融合方法,核心包括:轉換模塊(Transformation Module)和工作模塊(Job Module)。Transformation Module完成針對數據的基礎轉換,Job Module則完成整個工作流的控制。
Transformation Module是基于MTS-ETL框架的數據融合方法的基礎,具體包含:引入數據源、引入目的數據源、開發中間轉換以及引入增量全局參數等步驟。以第3章對流量事實表的ETL建模結果為例,Transformation Module實現過程如圖10所示。

圖10 轉換模塊設計
從圖10來看,Step1是使用表輸入控件從數據庫源中抽取數據,數據源即日流量表(T_DAYFLOW),這里采用增量抽取的方式,參照系統時間(SYSDATE)抽取上月20號到本月19號的流量數據并進行了排序。Step 2是通過字段選擇控件對基于使用星型模式創建的數據屬性名稱進行選擇和調整,該步驟可以將DATE屬性的數據類型轉換為日期類型,而不需要的屬性則可以被篩選掉。Step 3通過過濾記錄控件過濾掉FLOWOFDAY為NULL的記錄。Step 4的值映射控件用來計算字段前面步驟傳遞來的屬性,并映射出新的屬性。Step 5通過JavaScript控件進行屬性拼接。Step 6選擇需要進行分組統計的屬性名稱,執行聚合操作的前提是必須對數據進行排序以生成有效的數據流。Step 7進行分組,同時將各區段方向的日流量值進行拼接。Step 8利用JavaScript控件首先將字符串類型的屬性轉換為整型,接著計算各區段方向的日流量總和,然后Step 9 再通過創建字典的方式將各區段方向屬性值和對應的日流量值進行匹配,空屬性賦值NULL并拼接上逗號分隔符后得到新的字符串。經過Step10的字段選擇控件基本上就得到了數據倉庫目標表所需的主要屬性,接著在Step11中基于不同分組從1開始生成編號。由于事實表需要每個維度的主鍵ID以及度量值,Step12至Step14使用數據庫查詢控件,以獲取每個維度表的主鍵ID,維度表由項目信息維度表(TB_PROJECT)、區段信息維度表(TB_DISTRICT)和日期時間維度表(TB_DATE)組成。在獲取每個維度的ID之后,將屬性從數據源映射到FACT_DAYFLOW的屬性表還需要使用Step15的字段選擇控件,最后一步是使用插入或更新控件增量加載轉換結果到數據倉庫目標表。
Job Module用于控制和調度各個轉換模塊之間的執行順序,它還可以通過電子郵件發送通知和寫日志等,如圖11所示。Job Module以START控件作為初始化來啟動作業,這里使用Pentaho Data Integration內置的時間調度方式設置Job Module執行定時任務,作業啟動后依次加載Transformation Module、LOAD_TIME、LOAD_PROJECT、LOAD_SECTION、FACT_DAYFLOW。若Transformation Module均成功執行,則成功控件將顯示執行成功;否則將通過發送郵件控件發送通知,接著通過設置變量和寫日志控件將ETL運行記錄寫入資源庫日志,以便迅速查找錯誤信息和判別執行效率較低的Transformation Module,從而進行定位優化。

圖11 工作模塊設計
本節的測試主要是驗證MTS-ETL設計方案的執行效率和處理性能。下面通過將源數據庫的2015年9月20號到10月19號的136 754條交通流量數據抽取、轉換并加載至數據倉庫目標表,以證明MTS-ETL的可行性。MTS-ETL測試結果可以在如圖12所示的執行結果面板的步驟度量標簽中看到,FACT_DAYFLOW表生成3 776行數據并且狀態已完成,這意味著整個轉換成功執行且無任何錯誤,且該方法融合136 754條數據的時間僅為28.4 s。
為了對比不同數量級下傳統ETL與MTS-ETL過程的執行效率,證明基于MTS-ETL框架的數據倉庫系統的高效性,本文對千量級小規模流量數據融合進行了測試,傳統ETL和MTS-ETL的任務執行時間與測試數據量的關系如圖13(a)所示。當數據量小于5 000條時,傳統ETL與MTS-ETL執行時間開銷差別極小;但隨著數據量繼續增加,傳統ETL執行時間隨著數據量的增加而明顯遞增,而MTS-ETL執行時間依舊維持在較低水平的增長率,且其總平均執行時間開銷比傳統ETL降低了6.51%。為進一步證明MTS-ETL對百萬量級的大規模數據依然具有穩定的融合性能,本文對大規模流量數據融合進行測試發現,400萬條交通流量數據融合僅需349.5 s,如圖13(b)所示的MTS-ETL任務執行時間與測試數據量的關系。

圖12 MTS-ETL測試結果

圖13 數據融合執行時間開銷測試結果
上海城市基礎設施管養平臺是集工程管理、資產管理、養護管理、收益管理和運營管理為一體,能夠為城市基礎設施運維提供綜合展示、管理分析、養護分析、運營分析以及報表分析等輔助決策信息的智慧管養平臺。以實現流量報表分析服務為例,通過基于MTS-ETL框架的大數據融合方法對上海嘉瀏高速公路2012年—2015年約400萬條的交通流量數據進行了融合與集成。
由于運維大數據的層次非常深且零碎,會給數據庫存儲過程和觸發器開發帶來相當大的編寫難度,導致開發效率不高。MTS-ETL框架相對于傳統ETL架構的優勢在于:首先MTS-ETL是同時面向數據倉庫和數據庫的,它將ETL架構從數據倉庫端延伸到了平臺展示層的數據庫端,通過ETL轉換和工作模塊取代大部分存儲過程開發,解決了存儲過程對深層次數據統計和轉換能力較弱的問題。其次,MTS-ETL是面向管養數據分析的,傳統ETL架構并沒有對數據倉庫系統目標區域作詳細劃分,導致系統內部數據存儲邏輯不夠清晰,而MTS-ETL根據數據倉庫系統不同存儲區域規劃了ETL調度任務,特別是針對不同主題域分類存儲數據,使系統具備更加快速響應的數據分析能力,改善了ETL架構數據處理的性能。最后,MTS-ETL是面向用戶需求的,針對運維大數據形式多樣化的特點開辟了數據臨時區和兩種工作模式;并且針對運維大數據多頻率的特點設計了四個頻度的ETL運行調度環節,增強了傳統ETL架構的實用性。
基于4.1和4.2節的Transformation Module和Job Module開發,通過Pentaho Data Integration從源數據庫抽取數據并增量裝載入數據倉庫的數據倉儲區和數據分類區之后,接著在ETLⅢ進行數據匯總,最后在ETLⅣ將數據分析區的數據抽取至報表數據庫,使得報表分析數據可以動態實時同步而不再需要二次處理過程,如圖14所示的數據融合過程。
為了對城市基礎設施智慧管養平臺構建開源的ETL方案,本文采用Pentaho Report Designer進行報表設計,原因不僅在于它具有易于訪問廣泛的數據源和易于發布報表到Web端,還在于它有易于導航的GUI和與插件,比如使用Ctools組件生成平臺報表所需要的圖形和儀表盤。通過對流量報表進行設計,再將報表部署到Pentaho BI Server上,最后集成到平臺報表分析模塊后,可以得到如圖15所示的上海嘉瀏高速公路2015年度車流量報表分析結果。

圖14 數據融合過程

圖15 上海嘉瀏高速公路2015年度車流量報表分析結果
本文面向城市基礎設施智慧管養需求,研究了大數據環境下的智能融合方法,提出多層次任務調度ETL框架;基于MTS-ETL框架下ETL工作模式,詳細闡述了數據融合方法的概念建模、邏輯建模和物理建模過程;利用Pentaho Data Integration實現了數據融合方法并將其應用于上海市城市基礎設施智慧管養平臺,為城市基礎設施養護輔助決策分析奠定了基礎,為適應快速發展的養護管理工作和促進養護信息共享作出了貢獻。未來工作重點在于,研究支持半自動化抽取建筑信息模型(BIM)數據的ETL過程:利用基于本體的語義網技術構建BIM本體庫,通過識別與數據倉庫模式相關的部分數據源模式,半自動化地定義屬性間的語義映射以支持抽取過程,從而可以快速插入和管理新數據源。
References)
[1] ZHAO J, DENG W. Fuzzy multiobjective decision support model for urban rail transit projects in China[J]. Transport, 2013, 28(3): 224-235.
[2] SILVA M S, TIMES V C, KWAKYE M. A framework for ETL systems development[J]. Journal of Information amp; Data Management, 2012, 3(3): 300-315.
[3] STUMPTNER R, FREUDENTHALER B, KRENN M. BIAccelerator — a template-based approach for rapid ETL development[C]// ISMIS 2012: Proceedings of the 20th International Symposium on Methodologies for Intelligent Systems. Berlin: Springer, 2012: 435-444.
[4] RAHMAN N, MARZ J, AKHTER S. An ETL metadata model for data warehousing[J]. Journal of Computing amp; Information Technology, 2012, 20(2).
[5] RADHAKRISHNA V, SRAVANKIRAN V, RAVIKIRAN K. Automating ETL process with scripting technology[C]// Proceedings of the 2012 Nirma University International Conference on Engineering. Piscataway, NJ: IEEE, 2013: 1-4.
[6] SADIQ A, FAZZIKI A E, SADGAL M. An Agent based ETL system: towards an automatic code generation[J]. World Applied Sciences Journal, 2014, 31(5): 979-987.
[7] THEODOROU V, ABELLA, THIELE M, et al. A framework for user-centered declarative ETL[C]// DOLAP 2014: Proceedings of the 17th International Workshop on Data Warehousing and OLAP. New York: ACM, 2014: 67-70.
[8] GILL R, SINGH J. An open source ETL tool — medium and small scale enterprise ETL (MaSSEETL) [J]. International Journal of Computer Applications, 2014, 108(4): 15-22.
[9] NOVAK M, RABUZIN K. Prototype of a Web ETL tool[J]. International Journal of Advanced Computer Science amp; Applications, 2014, 5(6): 97-103.
[10] ASTRIANI W, TRISMININGSIH R. Extraction, Transformation, and Loading (ETL) module for hotspot spatial data warehouse using Geokettle[J]. Procedia Environmental Sciences, 2016, 33: 626-634.
[11] 王可欣. ETL技術在電信數據運營中的應用[J]. 電腦知識與技術, 2016, 12(24): 256-257. (WANG K X. Application of ETL technology in telecommunication data operation [J]. Computer Knowledge and Technology, 2016, 12(24): 256-257.)
[12] 張建興. 中國郵政速遞數據倉庫系統ETL的設計與實現[D]. 北京: 北京交通大學, 2014. (ZHANG J X. Design and implementation of ETL for China post data warehouse system [D]. Beijing: Beijing Jiaotong University, 2014.)
Intelligentintegrationapproachofbigdataforurbaninfrastructuremanagementandmaintenance
LIU Jiajun1,2, YU Gang1,2*, HU Min1,2
(1.SHU-UTSSILCBusinessSchool,Shanghai201800,China;2.ShanghaiUniversity-ShanghaiUrbanConstructionGroupResearchCenterofBuildingIndustrialization,Shanghai200072,China)
In order to improve the efficiency of data integration, enhance both statistical and decisional analysis performance of the platform and reduce Extract-Transform-Load (ETL) execution time and the burden of data center, according to the operation and maintenance big data with characteristics of high dimension, diversity and variability, a Multilevel Task Scheduling (MTS) ETL framework (MTS-ETL) was proposed for intelligent maintenance requirements. Firstly, the data warehouse was divided into a series of parts, including data temporary area, data storage area, data classification area and data analysis area. In the light of the sub-region, the integral ETL process was divided into four levels of ETL task scheduling. Moreover, the multi-frequency ETL operation scheduling and sequential and non-sequential ETL working modes were designed at the same time. Secondly, the conceptual modelling, logical modelling and physical modelling of data integration were implemented based on the non-sequential mode of MTS-ETL framework. Finally, the ETL transformation module and job module were designed by using Pentaho Data Integration to realize this data integration method. In the traffic flow data integration experiment, the method integrated 136 754 data for only 28.4 seconds, and reduced the total average execution time by 6.51% compared to the traditional ETL method in a thousand-scale data integration experiment. The reliability of ETL process was proved by the report analysis results of integrating 4 million data. The proposed method can effectively integrate the operation and maintenance of big data, improve the statistical analysis performance of platform and maintain ETL execution time at a low level.
big data; Extract-Transform-Load (ETL); data integration; data warehouse; urban infrastructure management and maintenance
2017- 04- 11;
2017- 06- 24。
上海市城鄉建設和交通委員會建管項目(2014-009-002);上海市科委重點項目(13511504803);上海市國資委重大科研項目(2014008)。
劉佳俊(1994—),男,湖北荊州人,碩士研究生,主要研究方向:數據倉庫、ETL建模; 喻鋼(1977—),男,江西南昌人,博士,講師,主要研究方向:地下工程信息化施工管理; 胡珉(1970—),女,上海人,副教授,博士,主要研究方向:建筑信息化。
時間 2017- 09- 25 10:58:07。 網絡出版地址 http://kns.cnki.net/kcms/detail/51.1307.TP.20170925.1058.002.html。
1001- 9081(2017)10- 2983- 08
10.11772/j.issn.1001- 9081.2017.10.2983
TP311.13
A
This work is partially supported by the Construction Project of Shanghai Urban-Rural Construction and Transportation Committee (2014-009-002); the Key Project of Shanghai Committee of Science and Technology (13511504803); the Major Project of Shanghai SASAC (2014008).
LIUJiajun, born in 1994, M. S. candidate. His research interests include data warehouse, ETL modelling.
YUGang, born in 1977, Ph. D., lecturer. His research interests include informationized construction and management for underground engineering.
HUMin, born in 1970, Ph. D., associate professor. Her research interests include building informationization.