周昌臣,吳 炎,張守楠
(溫州市甌飛經(jīng)濟開發(fā)投資有限公司,浙江 溫州 325000)
數(shù)據(jù)中心是甌飛海塘智慧的核心建設(shè)內(nèi)容,是各類應用場景匯聚的基礎(chǔ)和數(shù)據(jù)支撐的基石?;谑∈虚g數(shù)據(jù)共享交換服務,采用省級數(shù)據(jù)服務管理模塊,以此實現(xiàn)數(shù)據(jù)服務注冊、發(fā)布、調(diào)用、監(jiān)控的統(tǒng)一管理。數(shù)據(jù)服務建設(shè)基于甌飛海塘水利數(shù)據(jù)倉,建設(shè)基礎(chǔ)數(shù)據(jù)共享交換服務,實現(xiàn)與省、市兩級水利數(shù)據(jù)倉的基礎(chǔ)數(shù)據(jù)共享交換,以及與溫州市大數(shù)據(jù)局的數(shù)據(jù)共享交換。其中省級水利數(shù)據(jù)倉中的基礎(chǔ)數(shù)據(jù)共享交換服務,直接使用省級服務即可。業(yè)務應用的數(shù)據(jù)服務在業(yè)務應用建設(shè)過程中建設(shè)。
甌飛海塘智慧數(shù)據(jù)中心將與溫州市大數(shù)據(jù)局的共享交換。定義數(shù)據(jù)同步任務,定期將水利數(shù)據(jù)倉的數(shù)據(jù)推送至大數(shù)據(jù)局的數(shù)據(jù)平臺;結(jié)合浙水安瀾平臺業(yè)務需求,按照公共數(shù)據(jù)共享交換規(guī)定,向公共數(shù)據(jù)平臺提出數(shù)據(jù)共享需求,實現(xiàn)水利數(shù)據(jù)倉與公共數(shù)據(jù)平臺共享交換。
甌飛海塘智慧數(shù)據(jù)中心將與省、縣水利數(shù)據(jù)倉進行數(shù)據(jù)交換。甌飛海塘水利數(shù)據(jù)倉通過行業(yè)數(shù)據(jù)歸集模塊,按既定數(shù)據(jù)格式和共享需求,推送數(shù)據(jù)至省級、縣級數(shù)據(jù)倉,同時可向省級申請數(shù)據(jù)共享授權(quán),將省級、縣級數(shù)據(jù)共享至甌飛海塘水利數(shù)據(jù)倉,實現(xiàn)水利數(shù)據(jù)“一數(shù)一源、共享交換”[1]。
將多源數(shù)據(jù),通過數(shù)據(jù)流的方式打通匯集渠道,分別歸集至設(shè)計的基礎(chǔ)數(shù)據(jù)庫、物聯(lián)感知數(shù)據(jù)庫、GIS數(shù)據(jù)庫或業(yè)務數(shù)據(jù)庫,為數(shù)據(jù)中臺提供持續(xù)的數(shù)據(jù)來源[2]。
(1)實時數(shù)據(jù)歸集根據(jù)統(tǒng)一的數(shù)據(jù)接口標準,采用數(shù)據(jù)流的方式歸集實施數(shù)據(jù),對非標準的數(shù)據(jù)進行標準轉(zhuǎn)換。
(2)其他數(shù)據(jù)歸集
1)數(shù)據(jù)整編按照標準數(shù)據(jù)庫結(jié)構(gòu)編。
2)數(shù)據(jù)校核將整編數(shù)據(jù)與原始資料進行核對,確保數(shù)據(jù)準確,提高數(shù)據(jù)質(zhì)量。
3)數(shù)據(jù)入庫整編數(shù)據(jù)導入標準數(shù)據(jù)庫。
4)數(shù)據(jù)審核對入庫的資料數(shù)據(jù),通過數(shù)據(jù)比對分析功能,與原始資料進行校對,完成數(shù)據(jù)入庫。
5)數(shù)據(jù)更新數(shù)據(jù)更新采用實時更新和定期更新相結(jié)合的方式。
按照水利信息資源標準規(guī)范和統(tǒng)一數(shù)據(jù)要求,結(jié)合業(yè)務應用和數(shù)據(jù)資源成果,開展數(shù)據(jù)庫表結(jié)構(gòu)設(shè)計,編制水利數(shù)據(jù)字典,生成標準數(shù)據(jù)庫腳本。主要包括以下6類:
①基礎(chǔ)庫是用于存儲一些變動不太頻繁、使用面廣的水利工程對象的基本信息,如水利工程、監(jiān)測站點、功能區(qū)等對象的基礎(chǔ)屬性數(shù)據(jù),包括名錄、特征值、基本信息等。
②業(yè)務庫是用于存儲一些隨時間增長會逐步增加數(shù)據(jù)量的監(jiān)測數(shù)據(jù)和業(yè)務數(shù)據(jù)等,如水雨情、風速、海塘安全等實時監(jiān)測數(shù)據(jù),巡檢記錄、運行管理臺賬等管理數(shù)據(jù)。
③主題庫(物聯(lián)感知數(shù)據(jù)庫)是用于存儲通過確定某一個指定主題,獲取的跨領(lǐng)域定時作業(yè)計算的數(shù)據(jù)分析成果。
④空間庫(GIS數(shù)據(jù)庫)是用于存儲各類水利工程對象所處空間位置的數(shù)據(jù)。
⑤交換庫是用于存儲與本系統(tǒng)之外的數(shù)據(jù)源進行交換的數(shù)據(jù),如數(shù)據(jù)倉向外部系統(tǒng)共享的數(shù)據(jù)、從外部系統(tǒng)歸集篩分的數(shù)據(jù)等。
⑥元數(shù)據(jù)庫是用于存儲數(shù)據(jù)資源目錄,及其數(shù)據(jù)的變更記錄等。
對甌飛海塘已建應用系統(tǒng)的數(shù)據(jù)資源(包括實時數(shù)據(jù)、基礎(chǔ)數(shù)據(jù)和業(yè)務數(shù)據(jù))進行初始化和匯聚,包括數(shù)據(jù)抽取、數(shù)據(jù)匯聚、數(shù)據(jù)清洗、數(shù)據(jù)編碼入庫,并將已經(jīng)匯入省市級數(shù)據(jù)倉的數(shù)據(jù)資源同步至區(qū)級水利數(shù)據(jù)倉。
(1)數(shù)據(jù)抽取
現(xiàn)有自建業(yè)務系統(tǒng)數(shù)據(jù)抽取。從區(qū)水利工程標準化運行管理平臺等自建業(yè)務系統(tǒng)中抽取數(shù)據(jù)。
主要作用是從數(shù)據(jù)庫中獲取需求數(shù)據(jù),對不同形式的數(shù)據(jù)、不同量級的數(shù)據(jù)、不同效能要求和工作量的業(yè)務系統(tǒng),應采取不一樣的接口來抽取數(shù)據(jù)。抽取效率是抽取數(shù)據(jù)時需要考慮的重要關(guān)鍵點,但往往只關(guān)注效率會影響到系統(tǒng)的性能,故也需要保障抽取數(shù)據(jù)時不會對系統(tǒng)的性能有影響。兩者兼容的解決方式有很多,比如抽取方式、抽取時機、抽取周期等。
1)抽取方式
常用的方式包括:全量抽取、增量抽取。
①全量抽取
全量抽取就是將數(shù)據(jù)庫中的數(shù)據(jù)原原本本全部復制并轉(zhuǎn)化成可識別的數(shù)據(jù)。全量抽取相較簡單,進行全量抽取的地方一般集中在數(shù)據(jù)量小,而且數(shù)據(jù)基本不變的業(yè)務系統(tǒng)數(shù)據(jù)庫的抽取。
②增量抽取
增量抽取應用的范圍比全量抽取要廣。它主要原理是抽取數(shù)據(jù)庫中變化過的數(shù)據(jù),而不是全部數(shù)據(jù)。這樣的優(yōu)勢非常明顯,不僅減少了抽取數(shù)據(jù)的工作量,更是提高了業(yè)務效率,減輕了系統(tǒng)負擔。
在進行增量抽取的過程中,如何獲取變化的數(shù)據(jù)是重點,故需要對業(yè)務系統(tǒng)中的所有要抽取的數(shù)據(jù)特性進行分析和統(tǒng)計,同時獲取數(shù)據(jù)還要滿足準確和效率兩大要求,既滿足實時獲取變化數(shù)據(jù)的同時還需要保證不影響業(yè)務系統(tǒng)的正常運行。
比較常用的抽取捕獲變化數(shù)據(jù)的方法有以下4種:
①觸發(fā)器:在抽取對象的表上設(shè)置插入、修改和刪除3個種類的觸發(fā)器,實時獲取表的數(shù)據(jù)變化,并獲取變化數(shù)據(jù)。該方式的優(yōu)點是數(shù)據(jù)抽取便捷、性能較高,缺點是設(shè)置觸發(fā)器可能對業(yè)務系統(tǒng)的運行會產(chǎn)生部分的影響。
②時間戳:在表中增加時間字段,若有變化則變化該時間字段,通過比較系統(tǒng)時間和時間字段,確定數(shù)據(jù)是否有變化,從而判斷是否需要抽取數(shù)據(jù)。優(yōu)點是抽取數(shù)據(jù)的性能比較好、簡單 ,但是在業(yè)務系統(tǒng)中加入時間字段對業(yè)務系統(tǒng)存在一定的影響。
③全表比對:新建一個與數(shù)據(jù)庫源表相類似臨時表,表內(nèi)僅存儲主鍵和源表數(shù)據(jù)計算出來的校驗碼。當需要抽取數(shù)據(jù)時,比較現(xiàn)有表中數(shù)據(jù)計算獲得的校驗碼與臨時表中的校驗碼來比較,若有變動,則表示表中的數(shù)據(jù)有變化,抽取數(shù)據(jù)后,將新校驗碼覆蓋臨時表的校驗碼。
④日志對比:通過分析數(shù)據(jù)庫本身的記錄日志來判斷數(shù)據(jù)是否存在變化。存儲日志的文件有可能是txt格式、xml格式等,讀取日志文件需要全部獲取日志文件,通過日志文件對比,來了解變化的內(nèi)容,從而判斷抽取哪些數(shù)據(jù)[3]。
2)抽取時機與周期管理
對抽取時機和抽取周期進行管理,基于數(shù)據(jù)資源存儲與管理的現(xiàn)狀,按照數(shù)據(jù)來源與數(shù)據(jù)更新頻率、數(shù)據(jù)量大小等特點,可以將數(shù)據(jù)分中心數(shù)據(jù)類型分為兩大類,一類為實時或準實時匯集類數(shù)據(jù),具有更新頻率快、每次所需傳輸數(shù)據(jù)量不大的特點;另一類為基礎(chǔ)類數(shù)據(jù),具有更新頻率低的特點。對于以上不同類型的數(shù)據(jù),在抽取時機和抽取周期的選擇上要區(qū)別對待:
①實時或準實時匯集類信息
主要包括實時水雨情、風速、水質(zhì)、實時工情等專業(yè)數(shù)據(jù)組成的數(shù)據(jù)庫??刹捎迷隽砍槿》绞?,并將抽取周期設(shè)為1次/3~5 min。
②基礎(chǔ)類信息
水利工程數(shù)據(jù)庫、水利行政管理信息庫、水利行業(yè)法規(guī)政策數(shù)據(jù)庫等,數(shù)據(jù)抽取周期可設(shè)定為1次/天,抽取時間不應在業(yè)務系統(tǒng)高峰時間段,比如在夜間業(yè)務系統(tǒng)比較空閑的時候進行數(shù)據(jù)抽取。
(2)數(shù)據(jù)匯聚
完成各種途徑數(shù)據(jù)抽取并同步至匯聚庫,確保匯聚庫與各數(shù)據(jù)源數(shù)據(jù)一致性、及時性。其中匯聚庫是數(shù)據(jù)抽取匯聚過程中一個過渡庫,也稱暫存庫,不參與具體業(yè)務數(shù)據(jù)分析,主要為了輔助抽取和匯聚工作。
(3)數(shù)據(jù)清洗
按照數(shù)據(jù)清洗、抽取規(guī)則,通過數(shù)據(jù)清洗的工具,并輔以人工判斷,完成業(yè)務應用系統(tǒng)水利業(yè)務數(shù)據(jù)的清洗、整合。數(shù)據(jù)清洗是在數(shù)據(jù)抽取匯聚的基礎(chǔ)上,對采集的數(shù)據(jù)進行清洗、整理、篩選,數(shù)據(jù)的清洗包括系統(tǒng)自動審核和人工審核兩部分。
1)數(shù)據(jù)的清洗實現(xiàn)方法
自動清洗。從匯聚庫中定時或?qū)崟r提取,使用數(shù)據(jù)清洗工具,根據(jù)定義的數(shù)據(jù)清洗規(guī)則,實現(xiàn)自動數(shù)據(jù)清洗加載,避免人為操作及增加大數(shù)據(jù)采集的不準確性。
人工審核。從匯聚庫中提取但自動清洗系統(tǒng)無法確定其數(shù)據(jù)準確性,通過人工審核辨別,實現(xiàn)數(shù)據(jù)入庫。
匯聚數(shù)據(jù)最終進入主數(shù)據(jù)之前需要完成數(shù)據(jù)的清洗,其清洗流程如圖1所示。
圖1 數(shù)據(jù)清洗處理流程圖
2)數(shù)據(jù)準確性檢查
數(shù)據(jù)準確性的分析計算只針對發(fā)現(xiàn)錯誤后可以修改完善的數(shù)據(jù),主要為工程的基礎(chǔ)信息數(shù)據(jù)、管理單位信息、安全責任人信息及其他上報后允許修改的數(shù)據(jù);對于上報后無法修改的數(shù)據(jù),平臺會根據(jù)準確性判斷規(guī)則和控制閾值,通過上報接口進行限制,防止錯誤數(shù)據(jù)上報到平臺。
(4)數(shù)據(jù)加載入庫
將清洗后的數(shù)據(jù)根據(jù)預先設(shè)置好數(shù)據(jù)源和目標對應表,將數(shù)據(jù)寫入到數(shù)據(jù)倉指定表,為統(tǒng)計分析和決策分析統(tǒng)計打下數(shù)據(jù)基礎(chǔ)。
數(shù)據(jù)的加載策略一般有3種類型:直接加載、全部覆蓋、更新加載。
1)直接加載
指加載時將數(shù)據(jù)直接加載到目標的圖表中。該方法在清單類型的數(shù)據(jù)加載中比較常用。在數(shù)據(jù)分中心中將主要與增量抽取配合使用。
2)全部覆蓋
若被抽取數(shù)據(jù)本身已囊括了該數(shù)據(jù)的所有情況,則使用該種方式。
3)更新加載
更新加載一般使用在采用連續(xù)方式記錄對象業(yè)務狀態(tài)數(shù)據(jù)變化,且需要用新數(shù)據(jù)和老數(shù)據(jù)進行比較。
利用浙江省水利數(shù)據(jù)共享交換平臺,開展數(shù)據(jù)資源目錄整理及維護、基礎(chǔ)數(shù)據(jù)管理與維護、數(shù)據(jù)共享交換等工作。
(1)數(shù)據(jù)資源目錄整理及維護
為和省級數(shù)據(jù)資源目錄保持統(tǒng)一規(guī)范,滿足省市縣數(shù)據(jù)一致的要求,采用省級統(tǒng)建數(shù)據(jù)資源目錄管理模塊,在省級資源目錄的基礎(chǔ)上,根據(jù)本地的數(shù)據(jù)情況增加本地的數(shù)據(jù)資源,繼承省級數(shù)據(jù)資源目錄的數(shù)據(jù)資源信息,并和省級數(shù)據(jù)倉保持同步。
(2)基礎(chǔ)數(shù)據(jù)管理
建設(shè)水利數(shù)據(jù)倉庫完成之后,水利數(shù)據(jù)管理的重點就是基礎(chǔ)數(shù)據(jù)的維護和更新,需要規(guī)范更新數(shù)據(jù)流程,明確數(shù)據(jù)維護部門職責,做到每個數(shù)據(jù)都有源頭可尋。所有的數(shù)據(jù)維護更新都應遵循職務權(quán)限范圍,數(shù)據(jù)的維護更新由數(shù)據(jù)相對應的責任部門負責。通過將數(shù)據(jù)管理模塊進行統(tǒng)一,依據(jù)統(tǒng)一的數(shù)據(jù)標準和格式來進行數(shù)據(jù)的收集、維護和更新。數(shù)據(jù)的有效性和準確性則需要通過有效的數(shù)據(jù)審核機制來實現(xiàn)。
1)省級通用基礎(chǔ)數(shù)據(jù)管理模塊
依托于省級數(shù)據(jù)倉自帶的省級基礎(chǔ)數(shù)據(jù)管理模塊,以省級統(tǒng)一的要求對水利數(shù)據(jù)倉庫的基礎(chǔ)數(shù)據(jù)進行維護和管理,確保所有省級要求統(tǒng)一的基礎(chǔ)數(shù)據(jù)均是按照全省的統(tǒng)一要求管理,保障水利數(shù)據(jù)倉庫基礎(chǔ)數(shù)據(jù)的規(guī)范性有效。
2)區(qū)級自有基礎(chǔ)數(shù)據(jù)管理模塊
根據(jù)實際需要,建設(shè)區(qū)級自有基礎(chǔ)數(shù)據(jù)管理模塊,實現(xiàn)區(qū)級自有基礎(chǔ)數(shù)據(jù)管理,同時將區(qū)級自有基礎(chǔ)數(shù)據(jù)管理模塊需融入省級通用基礎(chǔ)數(shù)據(jù)管理模塊,實現(xiàn)省、市、區(qū)三級的數(shù)據(jù)同步共享。數(shù)據(jù)管理模塊具備數(shù)源劃分、數(shù)據(jù)更新維護、審核等功能,具備對區(qū)級基礎(chǔ)數(shù)據(jù)的統(tǒng)一規(guī)范管理能力。主要功能有:①數(shù)源劃分。對水利基礎(chǔ)數(shù)據(jù)的具體對象進行數(shù)源劃分,明確數(shù)源責任單位,實現(xiàn)數(shù)據(jù)的“一數(shù)一源”管理。數(shù)源劃分需具備單個對象劃分和批量劃分功能,方便管理人員的操作和使用。②數(shù)據(jù)維護。數(shù)據(jù)維護模塊提供對水利基礎(chǔ)數(shù)據(jù)的查詢、新增、編輯和刪除等功能。維護后的信息存儲在臨時庫中,經(jīng)審核人員審核通過后進入正式數(shù)據(jù)庫。數(shù)據(jù)維護模塊只能查看和維護當前數(shù)源責任相關(guān)的基礎(chǔ)數(shù)據(jù)。③數(shù)據(jù)查詢。數(shù)據(jù)查詢模塊提供用戶對權(quán)限范圍內(nèi)水利基礎(chǔ)數(shù)據(jù)的查詢功能。④數(shù)據(jù)審批。數(shù)據(jù)審批模塊提供對修改后的數(shù)據(jù)的審核功能,通過審核確保數(shù)據(jù)的合法性。
(3)數(shù)據(jù)共享交換服務
1)數(shù)據(jù)服務管理模塊
直接采用省級數(shù)據(jù)服務管理模塊,實現(xiàn)甌飛海塘數(shù)據(jù)服務注冊、發(fā)布、調(diào)用、監(jiān)控的統(tǒng)一管理[5]。
2)數(shù)據(jù)服務建設(shè)
基于甌飛海塘水利數(shù)據(jù)倉,建設(shè)基礎(chǔ)數(shù)據(jù)共享交換服務,實現(xiàn)與省、市兩級水利數(shù)據(jù)倉的基礎(chǔ)數(shù)據(jù)共享交換,以及與區(qū)大數(shù)據(jù)局的數(shù)據(jù)共享交換。其中省級水利數(shù)據(jù)倉中的基礎(chǔ)數(shù)據(jù)共享交換服務,直接使用省級服務即可。業(yè)務應用的數(shù)據(jù)服務在業(yè)務應用建設(shè)過程中建設(shè)。
與區(qū)大數(shù)據(jù)局的共享交換。定義數(shù)據(jù)同步任務,定期將水利數(shù)據(jù)倉的數(shù)據(jù)推送至大數(shù)據(jù)局的數(shù)據(jù)平臺中;結(jié)合水平臺業(yè)務需求,按照區(qū)公共數(shù)據(jù)共享交換規(guī)定,向公共數(shù)據(jù)平臺提出數(shù)據(jù)共享需求,實現(xiàn)水利數(shù)據(jù)倉與公共數(shù)據(jù)平臺共享交換[5]。
與省、縣(市、區(qū))水利數(shù)據(jù)倉數(shù)據(jù)交換。區(qū)水利數(shù)據(jù)倉通過行業(yè)數(shù)據(jù)歸集模塊,按既定數(shù)據(jù)格式和共享需求,推送數(shù)據(jù)至省級、縣級數(shù)據(jù)倉,同時可向省級申請數(shù)據(jù)共享授權(quán),將省級、縣級數(shù)據(jù)共享至區(qū)水利數(shù)據(jù)倉,實現(xiàn)水利數(shù)據(jù)“一數(shù)一源、共享交換”。
(1)數(shù)據(jù)庫異常應急
考慮到數(shù)據(jù)庫異常在系統(tǒng)運行過程中會有概率出現(xiàn),我們需要通過建立定時備份數(shù)據(jù)庫的指令,讓系統(tǒng)按時自動備份數(shù)據(jù)庫。在出現(xiàn)外在原因或人為原因?qū)е聰?shù)據(jù)庫損壞不能運行時,系統(tǒng)會自動檢索最新備份數(shù)據(jù)庫并恢復業(yè)務平臺數(shù)據(jù)庫,確保業(yè)務平臺運行正常。
(2)數(shù)據(jù)庫容災和恢復
發(fā)生數(shù)據(jù)丟失會直接影響業(yè)務平臺的運行和數(shù)據(jù)的實時性,甚至可能造成一定的社會影響。所以,在盡量短時間內(nèi)完成數(shù)據(jù)庫數(shù)據(jù)恢復和備份,保證平臺正常運行是非常必要的。所以對水利業(yè)務平臺數(shù)據(jù)庫的容災、備份和恢復是我們智慧化運行管理平臺系統(tǒng)的重要組成部分。
系統(tǒng)對于數(shù)據(jù)庫容災能力建設(shè)采用的是在根數(shù)據(jù)庫上配置兩個容災的備份數(shù)據(jù)庫和嚴密的RMAN多級備份策略,分別放在不同的互聯(lián)網(wǎng)數(shù)據(jù)中心,同步根數(shù)據(jù)庫的數(shù)據(jù),保障平臺數(shù)據(jù)安全,以防因意外導致平臺數(shù)據(jù)錯誤,同時可縮短恢復數(shù)據(jù)所需的暫停業(yè)務時間。
(3)備份方式
根數(shù)據(jù)庫備份使用歸檔方式,并且采用嚴密的RMAN多級備份策略。使用歸檔方式的作用是當根數(shù)據(jù)庫有意外錯誤時盡可能地復原根數(shù)據(jù)庫,且能讓已提交的所有數(shù)據(jù)得以保存。采用嚴密的RMAN多級備份是為了提高效率,減少備份需時,且保證系統(tǒng)的恢復性。所以在備份和恢復的時間上需要一個平衡點。
(4)備份策略
每月備份一次數(shù)據(jù)庫的所有數(shù)據(jù)和表空間。每周做一次數(shù)據(jù)庫的0級備份。所有數(shù)據(jù)庫的變化都需要同步到CATALOG目錄并重新備份。每次備份后均需備份歸檔日志。
本數(shù)據(jù)中心的研發(fā)基本滿足了硬件數(shù)據(jù)的集成和軟件數(shù)據(jù)的交互應用,達到了應用的效果,在實踐運行中,具有可拓性好,性能穩(wěn)定,起到支撐硬件實時數(shù)據(jù)的采集和匯聚,軟件系統(tǒng)的數(shù)據(jù)支撐和模型計算,達到科學決策智慧支撐的作用。