• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于《全國報刊索引》平臺的異構(gòu)數(shù)據(jù)庫數(shù)據(jù)轉(zhuǎn)換工具

      2018-07-24 10:44:36王靜
      科技資訊 2018年5期

      王靜

      摘 要:針對目前《全國報刊索引》底層異構(gòu)數(shù)據(jù)庫之間數(shù)據(jù)交換存在的問題,提出了異構(gòu)數(shù)據(jù)庫SQLServer到Oracle之間數(shù)據(jù)交換的設(shè)計模型,并基于設(shè)計模型開發(fā)實現(xiàn)了這兩個數(shù)據(jù)庫之間的數(shù)據(jù)轉(zhuǎn)換工具,設(shè)計了Groovy動態(tài)語言腳本引擎,支持?jǐn)?shù)據(jù)遷移轉(zhuǎn)換和數(shù)據(jù)合并轉(zhuǎn)換;建立了版本控制模式,便于描述數(shù)據(jù)交換的狀態(tài)和管理數(shù)據(jù)的安全。該工具滿足了《全國報刊索引》平臺數(shù)據(jù)的日益增長的數(shù)據(jù)交換需求。

      關(guān)鍵詞:異構(gòu)數(shù)據(jù)庫 數(shù)據(jù)轉(zhuǎn)換工具 動態(tài)語言腳本引擎

      中圖分類號:TP31 文獻標(biāo)識碼:A 文章編號:1672-3791(2018)02(b)-0014-03

      《全國報刊索引》數(shù)據(jù)庫始建于1993年,涵蓋了多種類型的報紙期刊數(shù)據(jù)庫產(chǎn)品。如晚清全文數(shù)據(jù)庫、民國時期期刊全文數(shù)據(jù)庫、各類報紙數(shù)據(jù)庫、現(xiàn)刊索引數(shù)據(jù)庫和專題數(shù)據(jù)庫等?!度珖鴪罂饕肥珍浀臄?shù)據(jù)最早可回溯至1833年,至今已累計收錄報刊20000余種、文獻3000多萬篇,年更新數(shù)據(jù)量超過350萬條。

      從最早的光盤版到現(xiàn)今的SQL Server、Access、Oracle等多種的數(shù)據(jù)庫管理系統(tǒng)被應(yīng)用。這些數(shù)據(jù)庫管理系統(tǒng)相互之間存在許多物理和邏輯上的差異,盡管其本身都具有數(shù)據(jù)導(dǎo)入和導(dǎo)出功能,但這些功能還不能夠滿足平臺日益增長的數(shù)據(jù)交換需求。為了滿足期刊全文檢索上線的需求,提升檢索速度和效率,數(shù)據(jù)庫管理系統(tǒng)從SQL Server升級到Oracle。SQL Server到Oracle數(shù)據(jù)轉(zhuǎn)換,不是簡單字段對應(yīng)的遷移轉(zhuǎn)換,需要進行字段計算、內(nèi)容合并、日期處理、簡繁轉(zhuǎn)換等多種轉(zhuǎn)換,這就需要設(shè)計專門的工具來進行復(fù)雜的數(shù)據(jù)轉(zhuǎn)換。

      1 數(shù)據(jù)轉(zhuǎn)換設(shè)計

      根據(jù)異構(gòu)數(shù)據(jù)庫數(shù)據(jù)轉(zhuǎn)換工具的設(shè)計總體目標(biāo),將該工具分為如下的幾個部分:數(shù)據(jù)讀取、轉(zhuǎn)換規(guī)則、數(shù)據(jù)寫入、操作界面、版本管理。

      數(shù)據(jù)讀取負(fù)責(zé)分析源數(shù)據(jù)庫中鏈接信息,源數(shù)據(jù)表Excel的數(shù)據(jù)框架結(jié)構(gòu)和數(shù)據(jù)的讀取。

      (1)轉(zhuǎn)換規(guī)則控制源數(shù)據(jù)和目的數(shù)據(jù)之間的轉(zhuǎn)換,根據(jù)制定的轉(zhuǎn)換規(guī)則得出需要某些源數(shù)據(jù)字段進行日期、簡繁或格式的轉(zhuǎn)換。

      (2)數(shù)據(jù)寫入負(fù)責(zé)將進行轉(zhuǎn)換后的源數(shù)據(jù)寫入目的數(shù)據(jù)庫。

      (3)操作界面為用戶提供一個可交互的界面進行操作。

      (4)版本管理負(fù)責(zé)對任務(wù)版本進行管理。

      工具的總體流程圖如圖1所示。

      1.1 數(shù)據(jù)讀取

      數(shù)據(jù)讀取,先讀取源數(shù)據(jù)庫的信息:源數(shù)據(jù)庫的類型、數(shù)據(jù)庫連接的方式、連接的配置、源數(shù)據(jù)庫地址、源數(shù)據(jù)庫用戶名及源數(shù)據(jù)庫密碼。

      通過數(shù)據(jù)庫驅(qū)動讀取數(shù)據(jù)到內(nèi)存中,與源數(shù)據(jù)庫取得連接。

      1.2 轉(zhuǎn)換規(guī)則

      轉(zhuǎn)換規(guī)則,轉(zhuǎn)換規(guī)則保存在Excel數(shù)據(jù)框架中。將源SQL SERVER數(shù)據(jù)庫中的數(shù)據(jù)轉(zhuǎn)換成符合要求及目的ORACLE數(shù)據(jù)庫要求的數(shù)據(jù)格式,有以下的幾種轉(zhuǎn)換。

      1.2.1 數(shù)據(jù)類型的轉(zhuǎn)換

      在不同的數(shù)據(jù)庫中由于數(shù)據(jù)類型的不一樣,需要進行轉(zhuǎn)換,如SQL SERVER數(shù)據(jù)庫中有布爾類型,而ORACLE數(shù)據(jù)庫中沒有布爾類型,這就需要在設(shè)置的時候進行定義,在轉(zhuǎn)換的時候按定義進行轉(zhuǎn)換。

      1.2.2 日期格式轉(zhuǎn)換

      由于兩個數(shù)據(jù)庫的日期定義格式不同,在一個數(shù)據(jù)庫中定義的日期數(shù)據(jù)格式在另一個數(shù)據(jù)庫中需要重新定義。所以,在轉(zhuǎn)換過程中對日期字段需要進行特殊轉(zhuǎn)換處理。

      1.2.3 簡繁轉(zhuǎn)換

      由于《全國報刊索引》平臺包含大量的民國期刊和報紙數(shù)據(jù),這些數(shù)據(jù)有一定的特殊性:題名、作者、出版地等字段檢索既需要提供簡體檢索又需要提供繁體檢索。需對字段進行簡繁轉(zhuǎn)換處理。

      1.3 數(shù)據(jù)寫入

      數(shù)據(jù)寫入是將轉(zhuǎn)換過的數(shù)據(jù)寫入目的數(shù)據(jù)庫,首先讀取目的數(shù)據(jù)庫的信息,如目的數(shù)據(jù)的類型、數(shù)據(jù)連接的方式、數(shù)據(jù)庫連接的配置、目的數(shù)據(jù)庫地址、目的數(shù)據(jù)庫用戶名及目的數(shù)據(jù)庫密碼、數(shù)據(jù)來源類型、數(shù)據(jù)字段信息。

      根據(jù)數(shù)據(jù)庫的連接信息連接目的數(shù)據(jù)庫,通過數(shù)據(jù)庫驅(qū)動寫入數(shù)據(jù)到目的數(shù)據(jù)庫中。寫入方式設(shè)計為兩種選擇:一種是只插入數(shù)據(jù);另一種是跳過錯誤,最終呈現(xiàn)錯誤清單。

      1.4 操作界面

      操作界面為用戶提供一個可交互的界面來進行數(shù)據(jù)轉(zhuǎn)換的操作。

      1.4.1 源數(shù)據(jù)庫信息主要是記錄源數(shù)據(jù)庫的一些配置參數(shù)及數(shù)據(jù)來源

      源數(shù)據(jù)的類型、數(shù)據(jù)連接的方式、數(shù)據(jù)庫連接的配置、源數(shù)據(jù)庫地址、源數(shù)據(jù)庫用戶名及密碼和源數(shù)據(jù)字段信息。

      1.4.2 目的數(shù)據(jù)庫信息主要是記錄目的數(shù)據(jù)庫的配置參數(shù)

      目的數(shù)據(jù)的類型、數(shù)據(jù)連接的方式、數(shù)據(jù)庫連接的配置、目的數(shù)據(jù)庫地址、目的數(shù)據(jù)庫用戶名及密碼、目的數(shù)據(jù)字段信息和寫入方式。

      1.4.3 數(shù)據(jù)規(guī)則

      數(shù)據(jù)規(guī)則是源數(shù)據(jù)和目的數(shù)據(jù)之間的對應(yīng)關(guān)系和轉(zhuǎn)換規(guī)則。轉(zhuǎn)換設(shè)計任務(wù)在提取的基礎(chǔ)上讀取Excel數(shù)據(jù)框架,即源數(shù)據(jù)庫和目的數(shù)據(jù)庫建立的映射表得到源數(shù)據(jù)字段和目的數(shù)據(jù)字段的轉(zhuǎn)換對應(yīng)類型。

      1.5 轉(zhuǎn)換任務(wù)管理

      版本管理負(fù)責(zé)轉(zhuǎn)換任務(wù)的管理和保存,轉(zhuǎn)換任務(wù)時,建立版本控制機制,版本控制機制包含版本類型、版本號、描述、啟用狀態(tài)、創(chuàng)建時間、創(chuàng)建人、修改時間和修改人。兩種版本類型,即新版本和修改版本。新版本建立時要新創(chuàng)建一個版本號,命名,描述數(shù)據(jù)處理的任務(wù)。修改版本建立時要選擇你要修改的版本號,在原有命名的基礎(chǔ)上,附加命名,描述數(shù)據(jù)修改的任務(wù)。

      2 轉(zhuǎn)換工具的實現(xiàn)

      2.1 數(shù)據(jù)讀取實現(xiàn)

      源數(shù)據(jù)庫的類型是SQL SERVER數(shù)據(jù)庫。通過JDBC鏈接SQL SERVER和ORACLE。JDBC數(shù)據(jù)庫連接參數(shù)使用字符串的形式,其中包含著數(shù)據(jù)庫地址、用戶名、密碼、源數(shù)據(jù)的表名等需要的信息,數(shù)據(jù)框架中的SQL查詢語句。

      2.2 轉(zhuǎn)換規(guī)則實現(xiàn)

      源數(shù)據(jù)和目的數(shù)據(jù)的轉(zhuǎn)換對應(yīng)關(guān)系保存在Excel數(shù)據(jù)框架中,分別是元數(shù)據(jù)表和規(guī)則表Rule。

      (1)元數(shù)據(jù)表中記錄源數(shù)據(jù)的字段信息主要有表名、字段名、簡繁中文名稱、字段分類、數(shù)據(jù)類型和數(shù)據(jù)長度。

      (2)規(guī)則表中記錄源數(shù)據(jù)和目的數(shù)據(jù)的字段對應(yīng)關(guān)系及表達式。

      2.3 數(shù)據(jù)寫入實現(xiàn)

      轉(zhuǎn)換任務(wù)中的源數(shù)據(jù)信息相關(guān)字段定義如下:數(shù)據(jù)庫的連接類型,JDBC連接支持SQL Server和Oracle數(shù)據(jù)庫之間的連接。目的數(shù)據(jù)庫的連接字符串,JDBC的數(shù)據(jù)庫連接參數(shù)使用字符串的形式,其中包含著數(shù)據(jù)庫地址、用戶名、密碼、目的數(shù)據(jù)庫表名等需要的信息。

      2.4 操作界面

      數(shù)據(jù)操作界面,提供一個可交互的界面方便用戶進行數(shù)據(jù)轉(zhuǎn)換處理。

      (1)填寫平臺URL路徑。

      (2)填寫用戶名和密碼。

      (3)填寫版本說明,新版本或者版本修訂。新導(dǎo)入數(shù)據(jù)選擇“新版本”,修改數(shù)據(jù)選擇“版本修訂”。

      (4)選取數(shù)據(jù)規(guī)則和建立數(shù)據(jù)任務(wù)。

      選擇數(shù)據(jù)源的JDBC鏈接,填寫用戶名和密碼,選擇“連通測試”。若JDBC鏈接測試通過,則選取數(shù)據(jù)規(guī)則和轉(zhuǎn)換任務(wù),進行數(shù)據(jù)轉(zhuǎn)換。

      3 結(jié)語

      本研究針對《全國報刊索引》平臺底層的SQL Server數(shù)據(jù)庫和Oracle數(shù)據(jù)庫之間的數(shù)據(jù)轉(zhuǎn)換進行探討,設(shè)計了數(shù)據(jù)轉(zhuǎn)換工具,按照數(shù)據(jù)轉(zhuǎn)換的需求制定了數(shù)據(jù)規(guī)則,數(shù)據(jù)處理人員只需根據(jù)每次要處理數(shù)據(jù)集不同來設(shè)計數(shù)據(jù)任務(wù),通過工具實現(xiàn)了數(shù)據(jù)導(dǎo)入和轉(zhuǎn)換功能,解決異構(gòu)數(shù)據(jù)庫間數(shù)據(jù)交換問題。

      該工具已投入《全國報刊索引》平臺的底層異構(gòu)數(shù)據(jù)庫數(shù)據(jù)處理中使用,運行情況良好,達到了預(yù)期的效果。運行結(jié)果表明,該工具能實現(xiàn)異構(gòu)數(shù)據(jù)庫的數(shù)據(jù)轉(zhuǎn)換功能,界面友好,數(shù)據(jù)轉(zhuǎn)換準(zhǔn)確高效。

      參考文獻

      [1] 王曉雯,孫承愛,周春露.基于元數(shù)據(jù)映射機制的異構(gòu)數(shù)據(jù)操作[J].軟件導(dǎo)刊,2015(1):146-148.

      [2] 余偉,李石君.Web大數(shù)據(jù)環(huán)境下的不一致跨源數(shù)據(jù)發(fā)現(xiàn)[J].計算機研究與發(fā)展,2015,52(2):295-308.

      [3] 王洪榮,吳寶國.異構(gòu)數(shù)據(jù)庫中數(shù)據(jù)交換工具的設(shè)計與實現(xiàn)[J].北京林業(yè)大學(xué)學(xué)報,2009(11):102-104.

      恭城| 乌兰浩特市| 昌图县| 肥东县| 宜丰县| 于都县| 泾阳县| 麻阳| 徐汇区| 武胜县| 红河县| 湘阴县| 皋兰县| 绥江县| 宁海县| 当阳市| 洪洞县| 盈江县| 保定市| 余庆县| 济南市| 彭泽县| 广西| 宁化县| 普定县| 长葛市| 富顺县| 宣武区| 安阳市| 桂林市| 全南县| 瑞金市| 旬邑县| 自治县| 常德市| 商丘市| 安陆市| 新野县| 丘北县| 江北区| 赤壁市|