吳志遠 楊 眉 何明躍 施 爽
(中國地質(zhì)大學(xué)(北京),北京 100083)
ETL在科學(xué)標本數(shù)據(jù)規(guī)范化集成整編中的應(yīng)用
吳志遠 楊 眉 何明躍 施 爽
(中國地質(zhì)大學(xué)(北京),北京 100083)
在科學(xué)標本數(shù)據(jù)的規(guī)范化集成整編中,標準和規(guī)范是前提,資源數(shù)據(jù)的整合、集成是核心。ETL技術(shù)能夠?qū)崿F(xiàn)對數(shù)據(jù)的抽取、轉(zhuǎn)換和裝載。本文將其引入到科學(xué)標本數(shù)據(jù)規(guī)范化集成整編中,實現(xiàn)對多源的、異構(gòu)的標本數(shù)據(jù)的匯集和整合,并以巖礦化石標本數(shù)據(jù)集成整編為例進行應(yīng)用實踐,取得了較好的應(yīng)用效果,證明了應(yīng)用ETL技術(shù)實現(xiàn)標本數(shù)據(jù)規(guī)范化集成整編的有效性。該方法具有一定的實踐借鑒意義,可為其他資源數(shù)據(jù)的規(guī)范化集成整編提供一定的科學(xué)參考。
ETL;科學(xué)標本;數(shù)據(jù)集成整編;數(shù)據(jù)整合;Kettle
隨著“大數(shù)據(jù)”時代的來臨,資源單位對于館藏標本的數(shù)字化、信息化也在迅速推進,科學(xué)標本數(shù)據(jù)出現(xiàn)快速增長的趨勢。雖然我國已制定了八大領(lǐng)域標本數(shù)據(jù)規(guī)范,但如何通過技術(shù)手段實現(xiàn)科學(xué)標本數(shù)據(jù)的高效集成整編,形成規(guī)范化、系統(tǒng)化的數(shù)據(jù),并達到長期、持續(xù)的整合集成,是數(shù)據(jù)整編工作中的技術(shù)難點。ETL是解決構(gòu)建數(shù)據(jù)倉庫,實現(xiàn)數(shù)據(jù)整合集成的主要技術(shù)。ETL能解決科學(xué)標本數(shù)據(jù)整合面臨的諸多問題,實現(xiàn)海量、異構(gòu)標本數(shù)據(jù)的高效、持續(xù)整合,具有很好的適用性以及性能方面的優(yōu)勢。本文應(yīng)用ETL技術(shù)有效整合標本信息資源,實現(xiàn)科學(xué)標本數(shù)據(jù)的規(guī)范化集成整編,對于建立科學(xué)標本資源數(shù)據(jù)庫,實現(xiàn)標本資源的信息共享和有效利用具有重要意義。
ETL[1]即數(shù)據(jù)抽?。‥xtract)、轉(zhuǎn)換(Transform)、裝載(Load)的縮寫,代表從數(shù)據(jù)抽取到裝載的技術(shù)實現(xiàn)過程,是一個用來實現(xiàn)異構(gòu)多數(shù)據(jù)源的數(shù)據(jù)整合集成工具。ETL技術(shù)可以實現(xiàn)數(shù)據(jù)從數(shù)據(jù)源向目標數(shù)據(jù)倉庫的轉(zhuǎn)化,此轉(zhuǎn)化是實施資源整合的重要步驟[2]。ETL主要包括3個環(huán)節(jié):一是抽取,將數(shù)據(jù)從分散的異構(gòu)數(shù)據(jù)源中讀取出來,這是所有工作的前提;二是轉(zhuǎn)換,按照預(yù)先設(shè)計好的轉(zhuǎn)換規(guī)則對抽取的數(shù)據(jù)進行轉(zhuǎn)換,使本來異構(gòu)的數(shù)據(jù)轉(zhuǎn)換后能達到統(tǒng)一的標準;三是裝載,將轉(zhuǎn)換好的數(shù)據(jù)按照計劃增量或全量加載到數(shù)據(jù)倉庫中[3-4]。ETL處理流程是:首先用一個驗證步驟去確定到達的或被抽取的數(shù)據(jù)是哪種類型,然后數(shù)據(jù)被送到一個特定轉(zhuǎn)換進行處理。當轉(zhuǎn)換完成后,數(shù)據(jù)將被傳遞到下一個轉(zhuǎn)換或者一個目標表中,并在發(fā)生錯誤的情況下,被轉(zhuǎn)移到一個錯誤流程進行處理[5]?!癊TL”概念結(jié)構(gòu)如圖1所示。
圖1 “ETL”概念結(jié)構(gòu)圖
Kettle[6](Kettle E.T.T.L. Environment)是一款國外開源的ETL 工具,純Java編寫,可在Window、Linux、Unix 上運行,綠色版無需安裝,數(shù)據(jù)抽取高效穩(wěn)定[7],在國內(nèi)數(shù)據(jù)轉(zhuǎn)換、處理中應(yīng)用較多。它允許管理來自不同數(shù)據(jù)接口的數(shù)據(jù),通過提供一個圖形化的用戶環(huán)境來描述你想做什么,而不是你想怎么做。Kettle支持很多種輸入和輸出格式,包括文本文件、數(shù)據(jù)表以及商業(yè)和免費的數(shù)據(jù)庫引擎。
數(shù)據(jù)整編的關(guān)鍵是按照統(tǒng)一的技術(shù)標準,通過數(shù)據(jù)轉(zhuǎn)換處理,打破項目邊界,將多源(可能是不同的基準或數(shù)值單位)不同空間、時間,相同要素的數(shù)據(jù)集成在一起。首先需要重點確定標本數(shù)據(jù)要素對象、要素屬性全集,統(tǒng)一屬性項語義標準、值域范圍及數(shù)值單位。在此基礎(chǔ)上,制定標本數(shù)據(jù)資料整編方案,內(nèi)容包括:整編技術(shù)標準、數(shù)據(jù)庫表結(jié)構(gòu)、整編軟件工具、整編實施等。
要進行標本數(shù)據(jù)集成整編,標準和規(guī)范必須先行[8]。根據(jù)科技基礎(chǔ)性工作專項制定的相關(guān)數(shù)據(jù)標準與規(guī)范,標本數(shù)據(jù)整編參照的技術(shù)標準主要有:科技基礎(chǔ)性工作專項項目科學(xué)數(shù)據(jù)匯交標本資源描述規(guī)范、科技基礎(chǔ)性工作專項數(shù)據(jù)資料分類與編碼。
數(shù)據(jù)庫設(shè)計一般有需求分析、概念模型設(shè)計、邏輯模型設(shè)計、物理設(shè)計、測試修改和數(shù)據(jù)字典編寫6個階段。標本數(shù)據(jù)庫設(shè)計時,參考這6個階段,主要依據(jù)現(xiàn)有的整編技術(shù)標準,分析要素對象及屬性字段,設(shè)計標準化的要素數(shù)據(jù)表結(jié)構(gòu)。對于巖礦化石標本,根據(jù)自然科技資源共性描述規(guī)范,其要素數(shù)據(jù)表的主要屬性項包括:平臺資源號、資源編號、資源名稱、資源外文名、保存資源類型、保存資源數(shù)量、共享方式、獲取途徑、保存單位、資源歸類編碼、具體用途、簡要特征描述、資源提供者、資源提供時間、經(jīng)度、緯度、高程、產(chǎn)地、省、國家、地質(zhì)產(chǎn)狀或?qū)游弧①Y源形成時代、標本編號、采集號、庫存位置號、實物狀態(tài)、圖片名、主要用途。此外,增加“標本資源唯一編號”“對應(yīng)的元數(shù)據(jù)編號”“所屬項目編號”3個字段。其中,所屬項目編號、對應(yīng)的元數(shù)據(jù)編號與匯交的數(shù)據(jù)文件相同,標本資源唯一編號形式是:專項數(shù)據(jù)資料分類編碼+流水號。除要素數(shù)據(jù)表外,還需要設(shè)計相關(guān)的數(shù)據(jù)字典。
通常技術(shù)上進行數(shù)據(jù)整合、集成的方法有:手工編寫代碼和利用軟件工具。采用手工編寫代碼的方式,開發(fā)效率低、周期長、難度大,容易出錯,缺乏一致性的日志和錯誤處理,難以保證可維護性,進行大數(shù)據(jù)量的數(shù)據(jù)整合時可能會遇到性能問題。ETL技術(shù)在對數(shù)據(jù)源的支持、數(shù)據(jù)轉(zhuǎn)換、管理和調(diào)度、集成和開放性、對元數(shù)據(jù)管理方面都有很好的表現(xiàn),采用ETL工具作為整編軟件工具可以減少代碼工作量,能夠較好地滿足數(shù)據(jù)整編中數(shù)據(jù)多源、異構(gòu)及整合效率、性能的要求。
對原始標本資源數(shù)據(jù)的數(shù)據(jù)來源、要素及屬性、內(nèi)容格式等進行分析,并根據(jù)整編技術(shù)標準和數(shù)據(jù)庫設(shè)計,在ETL工具中為各種數(shù)據(jù)源設(shè)計數(shù)據(jù)轉(zhuǎn)換作業(yè)流程。通過調(diào)度運行ETL作業(yè),進行數(shù)據(jù)抽取、合并與集成等操作,將標本資源數(shù)據(jù)按照統(tǒng)一的標準整合到目標數(shù)據(jù)庫中,為后續(xù)標本資源的數(shù)據(jù)管理、共享、挖掘、分析等應(yīng)用提供基礎(chǔ)數(shù)據(jù)源。
巖礦化石標本資源是自然科技資源領(lǐng)域八大類[9]資源之一。目前,對于巖礦化石標本資源的數(shù)據(jù)整編,采用的是分布式加工方式,即各個資源單位向數(shù)據(jù)中心匯交標本數(shù)據(jù)或提供數(shù)據(jù)接口,然后由數(shù)據(jù)中心統(tǒng)一對各數(shù)據(jù)源進行規(guī)范化集成整編。
依照科學(xué)標本數(shù)據(jù)整編方案,整編的主要流程是:首先參照巖礦化石標本資源相關(guān)的標準規(guī)范設(shè)計數(shù)據(jù)庫,選用大型關(guān)系數(shù)據(jù)庫Oracle;然后采用ETL工具Kettle作為主要整編工具軟件,在Kettle中設(shè)計數(shù)據(jù)整合流程;最后調(diào)度執(zhí)行任務(wù),實施數(shù)據(jù)整編。其中的應(yīng)用ETL技術(shù)實施數(shù)據(jù)整編是整個過程的關(guān)鍵,也是本文分析研究的重點。使用kettle進行巖礦化石標本資源數(shù)據(jù)規(guī)范化集成整編過程如圖2所示。
參照“科技基礎(chǔ)性工作專項項目科學(xué)數(shù)據(jù)匯交標本資源描述規(guī)范”中的巖礦化石資源描述規(guī)范表設(shè)計巖礦化標本數(shù)據(jù)庫及核心數(shù)據(jù)表的數(shù)據(jù)字典。從邏輯結(jié)構(gòu)進行劃分,巖礦化石標本數(shù)據(jù)庫的主要構(gòu)成有表格數(shù)據(jù)和圖片數(shù)據(jù)。
表格數(shù)據(jù):用二維表格表示的數(shù)據(jù),包括巖礦化石標本數(shù)據(jù)表、巖礦化石分級歸類與編碼表和資源單位表。其中礦化石標本數(shù)據(jù)表是數(shù)據(jù)庫主表,根據(jù)數(shù)據(jù)字典設(shè)計,共29個字段;巖礦化石分級歸類與編碼表的設(shè)計參照“科技基礎(chǔ)性工作專項數(shù)據(jù)資料分類與編碼”中的巖礦化石編碼部分,表結(jié)構(gòu)采用目錄樹的形式。標本數(shù)據(jù)表中的資源歸類編碼字段外鍵關(guān)聯(lián)編碼表的主鍵。
圖片數(shù)據(jù):拍攝的巖礦化石標本圖片文件,文件名保存在標本數(shù)據(jù)表圖像字段中。
數(shù)據(jù)整合之前,首先要對巖礦化石標本數(shù)據(jù)源進行調(diào)研分析,了解各單位數(shù)據(jù)源的數(shù)據(jù)格式、內(nèi)容、采集手段、數(shù)據(jù)質(zhì)量等。由于標本資源來源于不同的單位,其數(shù)據(jù)是離散、異構(gòu)的,關(guān)聯(lián)程度較低,并且各資源單位匯交數(shù)據(jù)的方式也不盡相同,主要有以下幾種方式。
一是離線文件方式,通常是Excel、Access、Txt等數(shù)據(jù)文件。
二是數(shù)據(jù)庫連接方式。通過數(shù)據(jù)庫連接字符串連接Oracle、Mysql、Sqlserver等關(guān)系數(shù)據(jù)庫,這種方式由于對外暴露了數(shù)據(jù)庫連接參數(shù),存在安全隱患,只能是臨時或內(nèi)部使用。
三是在線接口方式。資源單位通過HTTP對外提供接口服務(wù),目前比較流行的有Rest、Soap接口,使用接口方式連接方便,但對于技術(shù)水平要求比較高,需要資源單位能開發(fā)出相關(guān)Webservice接口并對外提供服務(wù)。
Kettle對這幾種常用的數(shù)據(jù)源都有很好的支持作用,其內(nèi)置有多種輸入組件支持在不同類型數(shù)據(jù)源之間建立連接,屏蔽各種數(shù)據(jù)源之間的差異,為整合輸入提供統(tǒng)一的數(shù)據(jù)視圖。
圖2 巖礦化石標本Kettle數(shù)據(jù)整編過程
利用ETL工具Kettle設(shè)計整合流程。Kettle提供了一個圖形用戶界面Spoon。Spoon創(chuàng)建了轉(zhuǎn)換和作業(yè)的數(shù)據(jù)集成環(huán)境,可以通過Spoon快速地設(shè)計轉(zhuǎn)換和作業(yè)。轉(zhuǎn)換和作業(yè)可以保存在Kettle資源庫中,便于以后轉(zhuǎn)換和作業(yè)的復(fù)用。從資源庫中加載作業(yè)與轉(zhuǎn)換流程, 可以方便地實現(xiàn)對作業(yè)、轉(zhuǎn)換流程的優(yōu)化與重新定制, 提升ETL 處理效率, 改善數(shù)據(jù)質(zhì)量。根據(jù)Kettle的功能特點,設(shè)計如下整合流程。
數(shù)據(jù)抽取是從不同方式的數(shù)據(jù)源如文件、數(shù)據(jù)庫、接口中抽取數(shù)據(jù)。按照抽取方式的不同,需要在Kettle中為每一種數(shù)據(jù)源選取相應(yīng)的內(nèi)置輸入組件,設(shè)計單獨的整合流程。按照抽取時間的不同,對數(shù)據(jù)ETL 過程可以分為兩種類型:全量ETL 過程和增量ETL 過程。全量ETL 過程一般用于數(shù)據(jù)庫的初始化,而增量ETL 過程則用于數(shù)據(jù)庫的后期增量維護。設(shè)計Kettle流程時可根據(jù)需要選擇全量抽取或增量抽取,一般采取首次全量、以后增量的方式。由于整編標準規(guī)定了每條巖礦化石標本數(shù)據(jù)具有一個唯一的資源編號,因此在增量數(shù)據(jù)抽取時,可根據(jù)目標數(shù)據(jù)庫該資源編號存在與否由Kettle自動選擇進行數(shù)據(jù)覆蓋更新或增量添加。
數(shù)據(jù)轉(zhuǎn)換首先需建立數(shù)據(jù)映射。數(shù)據(jù)的映射指的是建立從源數(shù)據(jù)到目標數(shù)據(jù)的映射關(guān)系。實際整合中,部分單位的標本數(shù)據(jù)是嚴格按照整編標準錄入的,轉(zhuǎn)換過程建立映射關(guān)系即可,無需進行其他轉(zhuǎn)換;但還有許多單位的標本數(shù)據(jù),與整編標準存在一定的差別。一些來自于單位原有數(shù)據(jù)庫或數(shù)據(jù)文件,其數(shù)據(jù)字段、內(nèi)容、格式等不符合標準規(guī)范,甚至某些字段在數(shù)據(jù)標準中并不直接存在,而是需要根據(jù)某些算法公式或者某些計算公式對各部分數(shù)據(jù)進行運算才能得到。對于這些數(shù)據(jù)必須通過轉(zhuǎn)換來實現(xiàn)數(shù)據(jù)標準的統(tǒng)一。主要包括以下幾種數(shù)據(jù)轉(zhuǎn)換方式。
數(shù)據(jù)格式轉(zhuǎn)換:將來自不同數(shù)據(jù)源的同類數(shù)據(jù)轉(zhuǎn)換為相同格式。
數(shù)據(jù)類型轉(zhuǎn)換:將某種數(shù)據(jù)類型或格式轉(zhuǎn)換為另一種數(shù)據(jù)類型或格式的較低層次轉(zhuǎn)換[10]。
數(shù)據(jù)選擇操作:根據(jù)選擇條件對數(shù)據(jù)源中的數(shù)據(jù)進行選擇。
字段抽?。簭囊粋€或多個數(shù)據(jù)源中抽取有用的字段。
字段合并:通過計算、導(dǎo)出、分配,從多個數(shù)據(jù)源中將需要的字段整合在一起。運用在需求處理過程中確定的業(yè)務(wù)法則進行各種轉(zhuǎn)換,包括字符串操作、日期和時間算術(shù)運算、條件語句以及基本計算等功能。
聚集和概括:將某一實體的實例數(shù)目減少到易于進行直接利用的水平,也有助于預(yù)先計算出廣泛應(yīng)用的概括數(shù)字以使每個查詢不必重新計算。
例如,針對巖礦化石標本資源單位提供的Rest接口和數(shù)據(jù)庫連接方式的數(shù)據(jù)源,在Kettle中設(shè)計的數(shù)據(jù)轉(zhuǎn)換流程如圖3所示。
圖3 Kettle數(shù)據(jù)轉(zhuǎn)換流程
在圖3中,上面一行是Rest接口數(shù)據(jù)源的整合流程,通過Kettle Rest Client組件將Rest接口地址輸入轉(zhuǎn)換成Json數(shù)據(jù)輸入,經(jīng)過一系列字段選擇、字符串操作、字符串替換轉(zhuǎn)換操作,以插入更新的方式(資源編號不存在即插入,存在則更新)將標本數(shù)據(jù)整合到巖礦化石數(shù)據(jù)庫中。下面一行是數(shù)據(jù)庫連接方式的數(shù)據(jù)源,通過連接資源單位的巖礦化石數(shù)據(jù)庫表抽取數(shù)據(jù),再經(jīng)過中間相關(guān)的轉(zhuǎn)換操作,最后同樣以插入更新的方式整合數(shù)據(jù)到目標數(shù)據(jù)庫。將前面定義好的轉(zhuǎn)換流程整合成一個ETL過程作業(yè),如圖4所示。
圖4 Kettle作業(yè)過程
數(shù)據(jù)在完成數(shù)據(jù)抽取、轉(zhuǎn)換后,按照統(tǒng)一的數(shù)據(jù)格式進行存儲和加載。加載后的目標數(shù)據(jù)庫完全滿足整編技術(shù)標準,從而實現(xiàn)了從多源異構(gòu)數(shù)據(jù)到統(tǒng)一目標數(shù)據(jù)庫的整合集成。目標數(shù)據(jù)庫為巖礦化石標本資源管理系統(tǒng)提供標準的數(shù)據(jù)源,還可以作為Kettle轉(zhuǎn)換的數(shù)據(jù)源,導(dǎo)出生成其他數(shù)據(jù)格式如Excel文件。
在準備好數(shù)據(jù)源、目標數(shù)據(jù)庫,并設(shè)計完成Kettle轉(zhuǎn)換、作業(yè)流程后,進行最后一步的任務(wù)執(zhí)行。Kettle任務(wù)執(zhí)行也就是實現(xiàn)數(shù)據(jù)加載的過程,一般是通過作業(yè)調(diào)度來實現(xiàn)的。作業(yè)是對轉(zhuǎn)換過程的整合,Kettle任務(wù)執(zhí)行作業(yè)調(diào)度有以下幾種方式。
(1)圖形界面執(zhí)行作業(yè)。在Kettle Spoon集成環(huán)境點擊運行作業(yè),這種方式需要手工執(zhí)行,進行作業(yè)調(diào)試時使用較多。
(2)命令行執(zhí)行作業(yè)。通過編寫Shell腳本調(diào)用Kettle作業(yè)命令運行程序Kitchen。Shell腳本可手工執(zhí)行,也可以在Linux下添加Crontab任務(wù)來實現(xiàn)作業(yè)的定時調(diào)度。
(3)API調(diào)用執(zhí)行作業(yè)。通過Java程序調(diào)用Kettle提供的 JAVAAPI運行任務(wù)??梢造`活地通過程序自行定制、批量處理作業(yè),技術(shù)上要求較高,與Java開源組件Quartz配合可以實現(xiàn)程序中作業(yè)的定時調(diào)度。
標本數(shù)據(jù)整編實施中,應(yīng)根據(jù)數(shù)據(jù)源選擇Kettle作業(yè)調(diào)度方式。離線文件方式的數(shù)據(jù)源,一般不需要定時調(diào)度,可通過圖形界面執(zhí)行或Shell腳本手工執(zhí)行;數(shù)據(jù)庫連接和接口方式的數(shù)據(jù)源為在線方式,采用定時調(diào)度的方式,無需人工干預(yù),可根據(jù)情況使用Shell腳本或Java程序來定時執(zhí)行作業(yè)。整編后的目標數(shù)據(jù)庫由巖礦化石標本資源管理系統(tǒng)負責(zé)后臺數(shù)據(jù)管理,為了便于對多個整合流程的Kettle作業(yè)進行管理,通過系統(tǒng)后臺程序調(diào)用Kettle提供的JAVAAPI,將Kettle的作業(yè)調(diào)度集成到資源管理系統(tǒng)的功能中。在系統(tǒng)管理頁面中可以很方便地手工調(diào)度Kettle作業(yè),還可以結(jié)合Quartz設(shè)置定時任務(wù),由系統(tǒng)后臺定時執(zhí)行Kettle作業(yè)。
依照制定的整編方案,通過對巖礦化石標本各資源單位的數(shù)據(jù)源進行分析、利用Kettle設(shè)計數(shù)據(jù)整合流程并調(diào)度運行作業(yè),成功應(yīng)用ETL技術(shù)實現(xiàn)了標本資源的規(guī)范化集成整編。目前已成功整合的巖礦化石標本數(shù)據(jù)有10多萬條。對于異構(gòu)數(shù)據(jù)源,在設(shè)計好流程后,整編輸入數(shù)據(jù)量越大,整合效率越高。經(jīng)測試,對于1000條數(shù)據(jù)輸入,Kettle作業(yè)運行時間一般不超過10秒;對于1萬條左右的數(shù)據(jù),一般不超過30秒。與手工編程相比,極大地提高了整合速度。
采用保存Kettle整合流程在資源庫中的方式,在后續(xù)新增的數(shù)據(jù)源在數(shù)據(jù)格式?jīng)]有變化的情況下,可以直接復(fù)用流程;當發(fā)生變化時,可根據(jù)數(shù)據(jù)源變化對流程進行相應(yīng)的調(diào)整,無需重新設(shè)計流程,提高了整合效率。通過調(diào)用JAVAAPI將Kettle作業(yè)調(diào)度集成到標本資源管理系統(tǒng)中,實現(xiàn)了整合流程的作業(yè)調(diào)度系統(tǒng)化、自動化管理。
在整合過程中,一些因素會導(dǎo)致作業(yè)的調(diào)度運行出現(xiàn)異常。如數(shù)據(jù)源的質(zhì)量問題(數(shù)據(jù)格式、長度、一致性等),經(jīng)常會引起作業(yè)的異常終止。通過分析Kettle的運行日志中的錯誤信息,確定數(shù)據(jù)源中具體哪一部分的數(shù)據(jù)存在問題,然后將相關(guān)問題反饋給資源所在單位,由資源單位負責(zé)進行修改。因此,Kettle作業(yè)運行時可以校驗數(shù)據(jù)的完整性、一致性等要素,保證數(shù)據(jù)質(zhì)量。當數(shù)據(jù)源質(zhì)量較差時,會嚴重影響整合效率。
(1)在標本數(shù)據(jù)規(guī)范化集成整編中,由于標本數(shù)據(jù)的多源異構(gòu)性,導(dǎo)致了整編工作的復(fù)雜性。ETL技術(shù)能夠高效地將異構(gòu)數(shù)據(jù)源中的標本資源數(shù)據(jù)進行抽取、轉(zhuǎn)換和加載,很好地滿足了規(guī)范化集成整編中數(shù)據(jù)整合的需求。
(2)根據(jù)需求設(shè)計了標本資源數(shù)據(jù)整編方案,以巖礦化石標本資源數(shù)據(jù)為例,使用開源ETL工具Kettle設(shè)計實現(xiàn)了異構(gòu)標本數(shù)據(jù)源的規(guī)范化數(shù)據(jù)整合、集成過程,較好地解決了規(guī)范化集成整編中由于數(shù)據(jù)多源異構(gòu)性而造成的數(shù)據(jù)難以實現(xiàn)集成的問題。
(3)由于ETL是按照統(tǒng)一的標準和規(guī)范進行數(shù)據(jù)整合,對于源數(shù)據(jù)中不符合標準規(guī)范并且無法進行數(shù)據(jù)轉(zhuǎn)換的私有數(shù)據(jù)部分(資源單位自定義),ETL將按照規(guī)則進行過濾。與源數(shù)據(jù)相比,整合集成的巖礦化石標本目標數(shù)據(jù)會損失這部分私有數(shù)據(jù)內(nèi)容。
(4)由于ETL技術(shù)的復(fù)雜性和標本資源數(shù)據(jù)的多源異構(gòu)性,探索一套通用的ETL數(shù)據(jù)整合方法,使其更加自動、高效和智能,有待下一步研究。
[1]繆嘉嘉, 鄧蘇, 劉青寶.ETL綜述[J]. 計算機工程,2004, 30(3): 4-5.
[2]高立春, 徐葉強. ETL在公安部門數(shù)據(jù)共享與資源整合中的應(yīng)用[J].情報雜志, 2011, 29(B12): 190-192.
[3]尹曉楠, 鄒曉濤, 張冬. 基于Kettle 的北京市水務(wù)普查數(shù)據(jù)的提取與轉(zhuǎn)換[J].中國水, 2013, 21: 57–59, 42.
[4]崔有文, 周金海.基于Kettle的數(shù)據(jù)集成研究[J].計算機技術(shù)與發(fā)展, 2015(4): 153–157.
[5]CASTERS M, BOUMAN R, DONGEN J V. Pentaho Kettle解決方案: 使用PDI構(gòu)建開源ETL解決方案[M].北京: 電子工業(yè)出版社, 2014.
[6]郭丹, 樊紅.基于ETL-KETTLE 的貴州卷煙營銷大數(shù)據(jù)分析及可視化[J]. 計算機系統(tǒng)應(yīng)用, 2017, 26(1):74-80.
[7]曹一化, 劉旭.自然科技資源共性描述規(guī)范[M].北京:中國科學(xué)技術(shù)出版社, 2006.
[8]王運紅, 張莞, 沈欣媛, 等.國家自然科技資源e-平臺建設(shè)實踐[J]. 中國科技資源導(dǎo)刊, 2008(4): 16-19.DOI: 10.3772/j.issn.1674-1544.2008.04.004.
[9]劉龍庚, 楊東日, 李小平.信息產(chǎn)業(yè)資源共享與分析平臺中ETL技術(shù)研究[J].四川大學(xué)學(xué)報(自然科學(xué)版),2012, 49(1): 85-89.
Application of ETL in Standarded and Integrated Reorganizition of scientific Specimen Resource Data
WU Zhiyuan, YANG Mei, HE Mingyue, SHI Shuang
(China University of Geosciences, Beijing 100083)
In the standard and integrated reorganization of scientific specimen resource data, standards and norms are the prerequisite, and the collection and integration of resource data are the core. ETL technology has the ability to realize data extracting, transforming and loading. this paper introduces into the standard and integrated reorganization of scientific specimen resource data to collect and integrate multi-source and heterogeneous specimen resource data, and proves the effectiveness of ETL technology in the standard and integrated reorganization of specimen resource data. The method has a certain practical reference signi fi cance,providing some scientific reference for the standard and integrated reorganization of other resources data.
ETL, scientific specimen, integrated reorganization of data, data integration, Kettle
TP311.13
A
10.3772/j.issn.1674-1544.2017.05.009
吳志遠(1979—),男,中國地質(zhì)大學(xué)(北京)工程師,研究方向:數(shù)據(jù)庫技術(shù)(通訊作者);楊眉(1980—),女,中國地質(zhì)大學(xué)(北京)助理研究員,研究方向:標本資源數(shù)字化與共享;何明躍(1963—),男,中國地質(zhì)大學(xué)(北京)教授,研究方向:礦物學(xué)巖石學(xué)礦床學(xué);施爽(1992—),中國地質(zhì)大學(xué)(北京)碩士研究生,研究方向:礦物學(xué)。
科技基礎(chǔ)性工作專項重點項目“科技基礎(chǔ)性工作數(shù)據(jù)資料集成與規(guī)范化整編”(2013FY110900);國家科技基礎(chǔ)條件平臺項目“國家?guī)r礦化石標本資源共享平臺”。
2017年7月14日。