亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Kettle在高校數(shù)據(jù)中心對接集成中的應(yīng)用與研究

        2021-04-04 10:28:34薛鵬飛
        信息記錄材料 2021年8期
        關(guān)鍵詞:數(shù)據(jù)庫作業(yè)

        薛鵬飛

        (常州紡織服裝職業(yè)技術(shù)學(xué)院 江蘇 常州 213164)

        1 引言

        智慧校園建設(shè)是當下每所高校都在大力推進的信息化工程,隨著智慧校園由1.0向2.0的發(fā)展,逐漸從數(shù)字化時代演變到了智能化時代。在智慧校園1.0階段,高校建設(shè)了多個業(yè)務(wù)系統(tǒng),實現(xiàn)了多個業(yè)務(wù)系統(tǒng)之間的統(tǒng)一身份認證以及部分的數(shù)據(jù)集成,但是各業(yè)務(wù)系統(tǒng)之間真正的數(shù)據(jù)共享還沒完全做到,即信息孤島并沒有完全打通,而要實現(xiàn)各系統(tǒng)之間的數(shù)據(jù)共享交換離不開一項技術(shù),即ETL(Extract-Transform-Load)技術(shù),它是用來描述將數(shù)據(jù)從源端經(jīng)過抽取、轉(zhuǎn)換、裝入到目的端的過程。目前常用的ETL工具主要有Informatica PowerCenter、IBM Datastage、Oracle Warehouse Builder(OWB)、Oracle Data Integrator(ODI)、Microsoft SQL Server Integration Services及開源的Kettle等[1]。

        2 Kettle技術(shù)概述

        Kettle是由美國人馬特·卡斯特(Matt Casters)于2002—2003年研發(fā)的一款ETL工具,然后于2005年12月進行了開源,2006年初被一家開源BI公司Pentaho收購,隨后Kettle改名為Pentaho Data Integration,簡稱PDI。2017年9月20日起,Pentaho被日立集團新成立的全資子公司Hitachi Vantara合并。到目前為止,Kettle依然是個開源軟件,它的源代碼地址為https://github.com/pentaho/pentaho-kettle/,目前國內(nèi)具有ETL自主研發(fā)產(chǎn)品的公司多數(shù)在Kettle開源的基礎(chǔ)上進行二次開發(fā)而來。

        Kettle可管理來自多個不同數(shù)據(jù)庫的數(shù)據(jù),還可以管理來自NoSQL、文本文件、XML、JSON等數(shù)據(jù)[2],通過可視化圖形界面設(shè)計器,像畫流程圖那樣設(shè)計出數(shù)據(jù)流轉(zhuǎn)的流程,然后通過腳本的方式發(fā)布到服務(wù)器上定時執(zhí)行數(shù)據(jù)流轉(zhuǎn)任務(wù)。它是一款綠色軟件,解壓后即可運行,由Java編寫,可以運行在Windows、Linux、UNIX操作系統(tǒng)上,可以穩(wěn)定高效地進行海量數(shù)據(jù)集成。

        3 高校數(shù)據(jù)中心數(shù)據(jù)對接集成的現(xiàn)狀

        高校的信息化建設(shè)一直以來都缺乏頂層設(shè)計,重單一項目建設(shè),輕統(tǒng)一規(guī)劃,且應(yīng)用系統(tǒng)多數(shù)由各職能部門自建,沒有統(tǒng)一標準。近些年,隨著信息化環(huán)境的發(fā)展以及國家對教育信息化的高度重視,多數(shù)高校成立了信息化專門部門來統(tǒng)籌信息化建設(shè),并逐漸開始意識到數(shù)據(jù)治理在高校信息化建設(shè)中的重要意義,以及數(shù)據(jù)標準在數(shù)據(jù)治理中的重要性。

        但是,要集成原有應(yīng)用系統(tǒng)數(shù)據(jù)困難重重:(1)由于原有應(yīng)用系統(tǒng)建設(shè)久遠,聯(lián)系不上供應(yīng)商;(2)原有應(yīng)用系統(tǒng)數(shù)據(jù)庫不開放,或者要向供應(yīng)商支付高昂對接費用;(3)拿到了應(yīng)用系統(tǒng)數(shù)據(jù)庫,但由于缺乏數(shù)據(jù)字典和元數(shù)據(jù)信息,導(dǎo)致無從下手,比如要從教務(wù)管理系統(tǒng)中獲取課表信息,得先知道哪個表是課表,還得知道每個字段的含義,這些信息在職能部門當初建設(shè)應(yīng)用系統(tǒng)時都會被忽略,這為數(shù)據(jù)集成造成了非常大的困難;(4)采用數(shù)據(jù)庫定時任務(wù)集成,通常這類技術(shù)細節(jié)的文檔都不全,由于甲乙雙方當時初建人員崗位調(diào)整等歷史原因,導(dǎo)致數(shù)據(jù)的集成規(guī)則成了技術(shù)黑箱;(5)采用了ETL工具進行集成,比如ODI工具,由于操作復(fù)雜,學(xué)習(xí)成本較高,以及技術(shù)細節(jié)文檔不全跟上面第4點中一樣,后期高校要自主修改數(shù)據(jù)對接內(nèi)容非常困難。

        高校要進行數(shù)據(jù)治理,就必須自主掌握數(shù)據(jù)對接集成技術(shù),且要簡單易上手,可視化操作,這樣才能適應(yīng)高校專業(yè)技術(shù)人員人手不足以及需求多變的常態(tài)。傳統(tǒng)商業(yè)ETL工具雖然功能強大,但是一方面學(xué)習(xí)成本較高,另一方面費用也較高。開源的Kettle恰恰解決了這些問題,上手簡單,零成本就可以完全實現(xiàn)高校數(shù)據(jù)中心數(shù)據(jù)對接集成,即便后期采購基于Kettle二次開發(fā)的ETL工具,也很容易上手。

        4 利用Kettle技術(shù)對接集成高校數(shù)據(jù)中心

        4.1 高校數(shù)據(jù)中心對接集成前置條件

        高校數(shù)據(jù)中心在進行對接集成前必須明確對接需求,確定源端數(shù)據(jù)和目的端數(shù)據(jù),拿到源端和目的端數(shù)據(jù)庫連接信息,包括數(shù)據(jù)字典和元數(shù)據(jù)信息,如果源端和目的端應(yīng)用系統(tǒng)供應(yīng)商能積極配合將大大提高對接集成效率。這一步非常關(guān)鍵,這是將來智慧校園項目建設(shè)過程中,需要和職能部門、第三方供應(yīng)商必須約定遵守的原則,否則數(shù)據(jù)對接集成將非常困難。

        4.2 Kettle下載部署

        Kettle的官方下載網(wǎng)址為https://sourceforge.net/projects/pentaho/files/,Kettle由JAVA開發(fā),所以運行只需要JDK運行環(huán)境即可,建議安裝JDK1.8或以上版本,隨后配置好操作系統(tǒng)環(huán)境變量,最后將下載的Kettle壓縮包進行解壓即完成了部署。

        4.3 Kettle的核心組件介紹

        在Kettle的解壓目錄中有3個最重要的核心組件,它們以批處理文件形式運行,分別對應(yīng)Windows中的bat文件和Linux中的sh文件,在對接集成中會經(jīng)常使用到,它們分別為以下幾種。

        (1)Spoon.bat/spoon.sh。Spoon是一個用于設(shè)計ETL轉(zhuǎn)換過程、創(chuàng)建作業(yè)調(diào)度規(guī)則、對數(shù)據(jù)庫連接進行配置與資源庫管理等的圖形化用戶界面程序。

        (2)Pan.bat/pan.sh。Pan是一個獨立運行的命令行程序,沒有圖形化界面,用于執(zhí)行由Spoon設(shè)計的轉(zhuǎn)換和作業(yè),是一個后臺執(zhí)行程序。

        (3)Kitchen.bat/kitchen.sh。Kitchen是一個獨立運行的命令行程序,沒有圖形化界面,用于在后臺批量自動化執(zhí)行作業(yè),實現(xiàn)作業(yè)自動調(diào)試。

        4.4 用Kettle創(chuàng)建轉(zhuǎn)換和作業(yè)

        Kettle的核心概念是將復(fù)雜的ETL過程用工作流的形式進行構(gòu)建,而且整個過程都是圖形化方式,通過拖拽操作即可完成。在用Spoon進行圖形化方式設(shè)計工作流時,核心原理就是轉(zhuǎn)換(Transformation)和作業(yè)(Job),可以簡單理解為Kettle里的流程圖。

        轉(zhuǎn)換是定義數(shù)據(jù)操作的容器,主要是對數(shù)據(jù)的各種復(fù)雜處理。轉(zhuǎn)換可以包含一個或多個步驟(Step),步驟通過跳(Hop)來連接,即在流程圖中帶箭頭的連接線。它允許數(shù)據(jù)從一個步驟向另一個步驟流動,即為數(shù)據(jù)流。數(shù)據(jù)流的單位為行,數(shù)據(jù)以數(shù)據(jù)行的形式沿著步驟流動,步驟可以對數(shù)據(jù)進行輸入、處理和輸出。

        作業(yè)是對一個或多個轉(zhuǎn)換、一個或多個作業(yè)進行調(diào)度的流程[3]。作業(yè)流程與轉(zhuǎn)換流程相似,但是作業(yè)流程必須包含Start控件,除此之外作業(yè)還可以進行郵件收發(fā)、文件管理、條件判斷、腳本執(zhí)行等。

        下面以高校門禁車行數(shù)據(jù)通過ETL推送數(shù)據(jù)到數(shù)據(jù)中心為例,介紹用Kettle實現(xiàn)轉(zhuǎn)換和作業(yè)的過程。

        第1步在Spoon編輯器中先設(shè)置DB連接,配置好對應(yīng)數(shù)據(jù)庫版本的驅(qū)動程序,再將門禁車行數(shù)據(jù)庫和數(shù)據(jù)中心數(shù)據(jù)庫進行連接配置以便之后引用;第2步新建轉(zhuǎn)換,先配置門禁車行數(shù)據(jù)源,將核心對象中的輸入控件“表輸入”拖拽到工作臺,引用剛剛配置好的門禁車行數(shù)據(jù)庫信息,寫好門禁車行數(shù)據(jù)庫表的SQL查詢語句,將需要推送的數(shù)據(jù)先查詢出來作為數(shù)據(jù)源;第3步配置輸出,將輸出對象中的“插入/更新”控件拖拽到工作臺,引用數(shù)據(jù)中心數(shù)據(jù)庫信息,配置好目標表、查詢關(guān)鍵字和更新字段等信息,即輸出到數(shù)據(jù)中心數(shù)據(jù)庫中;第4步將工作臺中的門禁車行數(shù)據(jù)源和數(shù)據(jù)中心目的端用箭頭進行連接;第5步保存并運行這個轉(zhuǎn)換即完成了一次高校門禁車行數(shù)據(jù)通過ETL推送數(shù)據(jù)到數(shù)據(jù)中心的過程,此時數(shù)據(jù)中心已經(jīng)有了門禁車行數(shù)據(jù)了;第6步創(chuàng)建作業(yè),經(jīng)過以上5步操作只是進行了一次數(shù)據(jù)同步,如何讓同步按照我們設(shè)定的規(guī)則進行自動同步呢?作業(yè)就是解決這個問題的,分別將“Start”控件、剛剛創(chuàng)建的轉(zhuǎn)換和“成功”控件拖拽到工作臺,連接流程箭頭配置好作業(yè)定時調(diào)度規(guī)則,保存運行即可。

        在用ETL進行數(shù)據(jù)更新設(shè)計的時候,需要根據(jù)實際應(yīng)用場景靈活設(shè)計以提高轉(zhuǎn)換的效率,比如常用的數(shù)據(jù)更新應(yīng)用場景有全量數(shù)據(jù)更新、增量數(shù)據(jù)更新、修改和插入數(shù)據(jù)更新、增刪改數(shù)據(jù)更新等,這些數(shù)據(jù)更新的效率都各不相同,根據(jù)實際情況選擇最合適的數(shù)據(jù)更新方案。作業(yè)的調(diào)度規(guī)則也需要根據(jù)實際情況來進行合理設(shè)計,實時性不高的場景可以把調(diào)度規(guī)則設(shè)在用戶使用率不高的時間段,以免海量數(shù)據(jù)頻繁調(diào)度影響兩端數(shù)據(jù)庫的IO性能。

        4.5 部署Kettle作業(yè)實現(xiàn)自動調(diào)度

        Kettle作業(yè)實現(xiàn)自動調(diào)度有兩種方式:一是直接在Spoon編輯器中實現(xiàn),只要Spoon編輯器處于打開狀態(tài),運行中的作業(yè)就會持續(xù)自動調(diào)度,但是一旦關(guān)閉Spoon編輯器,作業(yè)就停止了,顯然這種方式只適合實驗環(huán)境;二是通過Kitchen來進行自動調(diào)度,通過批處理的方式來實現(xiàn),在Windows中可通過任務(wù)計劃程序或服務(wù)來實現(xiàn),在Linux中可通過定時任務(wù)來實現(xiàn),在生產(chǎn)環(huán)境中往往采用第2種方式來實現(xiàn)作業(yè)的自動調(diào)度。

        5 結(jié)語

        Kettle作為一款開源ETL工具,確實在技術(shù)層面能夠幫助高校進行最節(jié)約成本的數(shù)據(jù)對接集成工作,但是要解決智慧校園建設(shè)過程中各應(yīng)用系統(tǒng)之間的信息孤島問題,除了技術(shù)層面,還要有管理和規(guī)劃層面的支持。只有建立數(shù)據(jù)標準、數(shù)據(jù)共享規(guī)范和數(shù)據(jù)安全保障機制,才能真正消除信息孤島,充分發(fā)揮數(shù)據(jù)效能。

        猜你喜歡
        數(shù)據(jù)庫作業(yè)
        讓人羨慕嫉妒恨的“作業(yè)人”
        作業(yè)聯(lián)盟
        快來寫作業(yè)
        數(shù)據(jù)庫
        財經(jīng)(2017年15期)2017-07-03 22:40:49
        數(shù)據(jù)庫
        財經(jīng)(2017年2期)2017-03-10 14:35:35
        作業(yè)
        故事大王(2016年7期)2016-09-22 17:30:08
        數(shù)據(jù)庫
        財經(jīng)(2016年15期)2016-06-03 07:38:02
        數(shù)據(jù)庫
        財經(jīng)(2016年3期)2016-03-07 07:44:46
        數(shù)據(jù)庫
        財經(jīng)(2016年6期)2016-02-24 07:41:51
        我想要自由
        亚洲免费视频网站在线| 亚洲国产av玩弄放荡人妇系列 | 999zyz玖玖资源站永久| 国产绳艺sm调教室论坛| 国产香蕉尹人综合在线观| 日韩人妻有码中文字幕| 精品国产亚洲av高清大片| 亚洲中文字幕无码一久久区| 99国产精品99久久久久久| 亚洲精品中文字幕二区| 亚洲一区二区三区地址| 亚洲中字慕日产2020| 99精品国产在热久久国产乱| 精品人妻中文字幕一区二区三区| 91偷拍与自偷拍亚洲精品86| 欧美人妻少妇精品久久黑人| 欧美亚洲日韩国产区| 日韩一二三四区免费观看| 国产青青草在线观看视频| 国产成人无码a区在线观看视频| 在线观看网址你懂的| 亚洲综合有码中文字幕| 国产成人精品免费视频大全软件| 亚洲av综合色区无码一二三区| 免费国产一级片内射老| 在线观看一区二区蜜桃| 99久久精品国产一区二区| 欧美成人形色生活片| 婷婷开心五月综合基地| 久久精品一区午夜视频| 性一交一乱一伧国产女士spa| 日本女优中文字幕看片| 日本中文字幕有码在线播放| 蜜桃日本免费观看mv| 手机看片久久国产免费| 亚洲性码不卡视频在线| 日本三级香港三级人妇99| 99久久亚洲精品无码毛片| 国产精品香蕉网页在线播放| 国产亚洲av成人噜噜噜他| 国产无遮挡又黄又爽在线观看 |