• 沒有找到結果。

XML與關聯式資料庫之間資料模式和查詢語言的轉換互動與績效評估工作量模式設計之研究(1/2)

N/A
N/A
Protected

Academic year: 2021

Share "XML與關聯式資料庫之間資料模式和查詢語言的轉換互動與績效評估工作量模式設計之研究(1/2)"

Copied!
21
0
0

加載中.... (立即查看全文)

全文

(1)

行政院國家科學委員會專題研究計畫 期中進度報告

XML 與關聯式資料庫之間資料模式和查詢語言的轉換互動與

績效評估工作量模式設計之研究(1/2)

計畫類別: 個別型計畫 計畫編號: NSC92-2416-H-004-018- 執行期間: 92 年 08 月 01 日至 93 年 07 月 31 日 執行單位: 國立政治大學資訊管理學系 計畫主持人: 諶家蘭 報告類型: 精簡報告 處理方式: 本計畫可公開查詢

中 華 民 國 93 年 4 月 29 日

(2)

行政院國家科學委員會補助專題研究計畫

□ 成 果 報 告 V 期中進度報告

計畫名稱:XML 與關聯式資料庫之間資料模式和查詢語

言的轉換互動與績效評估工作量模式設計之研究(1/2)

計畫類別: V 個別型計畫 □ 整合型計畫

計畫編號:NSC 92-2416-H-004-018-

執行期間:92 年 8 月 1 日至 93 年 7 月 31 日

計畫主持人:諶家蘭

共同主持人:無

計畫參與人員:

成果報告類型(依經費核定清單規定繳交): V 精簡報告 □完整報告

本成果報告包括以下應繳交之附件:

□赴國外出差或研習心得報告一份

□赴大陸地區出差或研習心得報告一份

□出席國際學術會議心得報告及發表之論文各一份

□國際合作研究計畫國外研究報告書一份

處理方式:除產學合作研究計畫、提升產業技術及人才培育研究計畫、

列管計畫及下列情形者外,得立即公開查詢

□涉及專利或其他智慧財產權,□一年□二年後可公開查詢

執行單位:國立政治大學資訊管理學系

中 華 民 國 九 十 三 年 五 月 三十一 日

附件一

(3)

XML 與關聯式資料庫之間資料模式和查詢語言的轉換互動與

績效評估工作量模式設計之研究(1/2)

諶家蘭 博士 國立政治大學資訊管理學系教授 (02)2938-7692 jljan@nccu.edu.tw

摘要

隨著全球資訊網( World Wild Web,WWW,Web )的日趨普及,我們發現愈 來 愈 多 的 資 料 是 直 接 從 網 路 上 存 取 。 不 同 於 過 去 關 連 式 資 料 庫 (Relational Database Management Systems,RDBMS)的結構式資料(Structured Data),現今許 多資料是直接以 HTML( Hypertext Markup Language )格式存取。這些屬於半結構 (Semistructured )或非結構式(Unstructured)的資料,我們稱之為超文件超媒體資料 (Hypertext/Hypermedia)。不同來源的資料諸如關連式資料庫和超文件資料,儲存 於各自不同的資料庫,且有其各自的資料模式與查詢語言來管理與維護這些資 料。面對這些異質(Heterogeneous)的資料來源,我們面臨如何做資料整合( Data Integration ),亦即允許對多元資料來源資料的存取(Multi-Sources Data Access)、 資 料 交 換 ( Data Exchange ) , 以 使 不 同 來 源 的 資 料 能 夠 相 互 運 算 ( Interoperability ),達成異質性資料的同質化( Homogeneity )。更進一步達到多元 異質資料來源的可攜性( Portability )、延展性( Scalability )、相容性( Compatibility ) 與通透性(Transparency)。

關鍵字:延伸式標記語言 XML、半結構化資料模式、關聯資料模式、資料整合、 互動運算、異質資料資源、全球資訊網 WWW

(4)

Abstract

With the popularity of WWW (World Wide Web or Web), we have seen massive volume of data emerges on the Web. Unlike traditional data stored in RDBMS (Relational Database Managements Systems) that is structured, Web data has to be stored in the form of HTML (Hypertext Makeup Language) pages. In order to represent data and interchange data among Web sources, XML (Extensible Markup Language) has become the dominant information interchange standard. Like HTML, XML is a subset of SGML. Unlike HTML tags only serve the primary purpose of display, XML tags describe the data structure and meaning. The initial impetus for XML may have been primarily to enhance the ability of remote application and to interpret and operate on documents fetched over Internet. Now XML has become the best solution to resolve the heterogeneity in data exchange and transformation. However, XML raises a fundamental issue, that is, how to migrate and integrate XML documents into the traditional data management systems? How to support and preserve the original expressive power and efficiency of both technologies while achieving integration? The objective of this research is to develop a generic construct oriented and bi-directional research model to tackle the issue. The goal is to provide a Web-enabled data exchange and operation interoperability between RDBMS and XML. The resolution aims to be scalable and portable. Interchange and interoperability are facilitated. In specific, we develop a generic transformation model comprising with XML/RDBMS and XQuery/SQL interchange and interoperability. A four-component model is created to address the issue and accomplish the goal. They are (1) data definition transformation (2) data manipulation transformation (3) single document transformation (4) multiple document transformation. We have constructed a research prototype to implement the research model and to prove the feasibility and functionality.

Keywords: Extensible Markup Language, Semi-structured Data Model, Relational Data Model, Data Integration and Exchange, Interoperability, Heterogeneous Information Integration, World Wide Web

(5)

壹、 緒論

一、 研究動機

1. 網際網路異質資料整合

隨著全球資訊網( World Wild Web,WWW,Web )的日趨普及,我們發現愈 來 愈 多 的 資 料 是 直 接 從 網 路 上 存 取 。 不 同 於 過 去 關 連 式 資 料 庫 (Relational Database Management Systems,RDBMS)的結構式資料(Structured Data),現今許 多資料是直接以 HTML( Hypertext Markup Language )格式存取。這些屬於半結構 (Semistructured )或非結構式(Unstructured)的資料,我們稱之為超文件超媒體資料 (Hypertext/Hypermedia)。不同來源的資料諸如關連式資料庫和超文件資料,儲存 於各自不同的資料庫,且有其各自的資料模式與查詢語言來管理與維護這些資 料。面對這些異質(Heterogeneous)的資料來源,我們面臨如何做資料整合( Data Integration ),亦即允許對多元資料來源資料的存取(Multi-Sources Data Access)、 資 料 交 換 ( Data Exchange ) , 以 使 不 同 來 源 的 資 料 能 夠 相 互 運 算 ( Interoperability ),達成異質性資料的同質化( Homogeneity )。更進一步達到多元 異質資料來源的可攜性( Portability )、延展性( Scalability )、相容性( Compatibility ) 與通透性(Transparency)。如何解決這些問題,讓不同來源的資料可雙向的互相溝 通,以達到異質資料整合、資料交換、和運算是本研究的課題和內容。

2. XML 興起

XML( Extensible Markup Language ),延伸式的標記語言,為 SGML( Standard Generalized Markup Language ) 的子集合。不同於 HTML 的標籤( Tag )資料的呈 現,XML 其標籤是資料的定義。定義好的資料直接透過網際網路傳達於組織間, 以及世界各地。資料以 XML 表達格式比以 HTML 格式表達更具意義,因為具 有擷取、分析及在組織間再使用的能力。根據 IDC 和 Gartner Group 預測,到 2004-2005 年,80%在網際網路上所傳送的訊息和文件都是 XML。XML 因此成 為資料整合與轉換的主要標準規範和解決方式。

二、 研究議題

然而面對現存的傳統和主流商業關連式資料庫資料來源,又該如何與新興的 XML 文件結合,以達到資料真正的整合和運算。不同的資料來源現都已有其各 自發展成形且運作不錯的資料模式與查詢語言,如何讓不同的資料模式做對應, 使得資料可由一種資料模式順利轉換成另外一種資料模式,並同步更新以達到真 正異質資料來源的交換與整合。關連式資料庫如 Oracle、DB2、Sybase,已提供

(6)

其儲存 XML 文件的方法,而原生性的 XML 資料庫如 Tamino 也逐漸受到重視。 但其在 XML 文件與關聯式資料溝通的部分,皆尚未達到即時和雙向轉換和更新 及查詢三項合一的功能和運作。因此本研究即針對傳統關連式資料庫與 XML 文 件在資料交換時,資料模式與查詢語言相互對應的溝通和運算,以期達到異質資 料相互交流並進一步相互運算和同步更新的效能。

三、 研究目的

目前研究文獻對上述的問題解決方案並不完整。在技術與理論上,其對單向 的資料模式轉換(XML 轉為關連資料模式)在綱要演進(Schema Evolution)及複雜 資料操縱上(Complex Query),常顯不足或是僅以特例和人工方式來解決轉換問 題,至於在雙向資料模式轉換上,加上綱要演進及資料操縱不易。關連模式轉為 XML 模式與 XML 模式轉為關連模式一系列完整的雙向模式轉換,及搭配其綱 要演進與查詢語言的轉換較少完整解決。實務上在 XML 與關連資料表轉換間 的解決方案,常常是透過物件定義和中介程式去執行單一方向的轉換,轉換後也 無法由對目的資料模式的演進修改,直接反應在來源資料模式上,且對於查詢語 言的同時轉換也無法達成。因此本研究研發關連式資料來源與 XML 文件的資料 來源,在資料模式與查詢語言間雙向的互相對應與轉換並同步進行相互運算和資 料更新,以達到異質資訊來源的資料交換與整合。

貳、 文獻探討

隨著全球資訊網的日漸普及,已使得愈來愈多的資訊資源可直接於網路上取 得。不同於前述所提的關連式資料庫為結構化的資訊,這類的資料來源,為半結 構化資訊。研究結果 WebSQL, W3QS, WebLog, Lorel, WebOQL, UnQL, STRUDEL, ARANEUS, FLORID 等都發展部份資料模式與查詢語言來描述半結構化資訊資 料結構以作資料的儲存與處理,及達成對文件資料的查詢、運算與分析。本節回 顧半結構化和非結構化的資訊整合研究文獻,以作為本研究方法的基礎,並且作 為與本研究比較的基礎。

一、 WebSQL

WebSQL 為 1996 年由多倫多大學與以色列的 Tel Aviv 大學所合作開發完 成的雛型系統。此系統主要解決兩個問題,第一為搜尋引擎的問題,欲解決目前 使用者必須先瞭解各搜尋引擎的所在位置、優缺點、與查詢介面才能作查詢的窘 境;第二為解決目前的搜尋引擎無法對文件及超連結的結構做查詢的問題。

(7)

1. 資料模式

WebSQL 的特色是以虛擬圖形(Virtual Graph)的概念來表達其資料模式,將 WWW 看成一圖形的資料結構,並定義正規的語意(Formal Semantics)來查詢其 圖形結構。類似關連式資料庫,其假設無限集合 D 的資料值,與有限集合 T的 簡單資料型態,其中 T 的定義域為 D 的子集合。節點(Node)與連結(Link)兩種 值組型態定義的屬性名不同,第一種值組型態稱為節點物件(Node Object),第二 種稱為連結物件(Link Object )。在全球資訊網的模式中,文件(Documents)會對應 到節點物件,超文件間的連結則會對應到連結物件,而Oid 則是其單一資源位置 (Uniform Resource Locator, URL)。

2. 查詢語言

WebSQL 是一個類似 SQL 對 WWW 做查詢的語言。每個 Web 物件都是以其 URL 來辨別,並且只取其最基本的屬性如標題、本文、資料格式、長度以及最 後修改日期等,讓使用者利用這些資訊來查詢資料。為了查詢的目的,他們視一 個 Web 物件為一個虛擬關連(Virtual Relation)中的一個值組。

二、 Lorel

Lorel 語言是由史丹佛大學開發研究而成,其雛型 Lore 資料庫管理系統的查 詢語言,為一查詢半結構化資料的查詢語言。Lorel 語言是以 SQL/OQL 型式展 現的簡明易懂的查詢語言,它可說是 ODMG 的 OQL 的延伸。Lorel 語言主要兩 個創新的地方在於:(1) 強制型態的使用,延伸 OQL 對半結構化資料型態使用 的限制,此能力是讓不同的資料型態可做轉換以方便運算比較;(2) 強大的路徑 表達(Path Expression)能力,允許以彈性的型式來宣告導覽存取(Navigational Access),此能力特別適合當使用者不知資料的真實結構時。

1. 資料模式

Lorel 所 使 用 的 資 料 模 式 稱 為 物 件 交 換 模 式 (Object Exchange Model , OEM)。在 OEM 模式中,資料以圖形(Graph)方式呈現,頂點(Vertices)代表物件 (Objects),連接(Edges)代表資料本身(Labels)。所有實體(Entities)在 OEM 中皆 為物件,每個物件都有其唯一的識別碼(Oid)。

2. 查詢語言

(8)

為基礎的導覽( Navigation )查詢,可分為兩種查詢語法的表達方式:(1) 簡單路 徑表達(Simple Path Expressions);(2) 一般路徑表達(General Path Expressions)。

三、 WebOQL

WebOQL 是由多倫多大學所提出。WebOQL 對於三種資料來源,紀錄為主 的 資 料 (Record-Based Data) , 結 構 化 文 件 (Structured Documents) , 與 超 文 件 (Hypertexts),允許由三種中物件型態實例。

1. 資料模式

WebOQL 資料模式抽象化的程度不似 OEM 而是屬於輕量級的資料模 式,亦不似傳統的重量級的綱要式資料模式,而是類似編譯器的概念,為了最佳 化的中介語言。其基礎是有序樹(Ordered Trees),把每個 Web 都當成是一個樹狀 圖 , 而 主 要 的 資 料 結 構 稱 為 Hypertrees 。 Hypertrees 為 有 序 、 由 箭 頭 標 籤 (Arc-Label)組成的樹狀圖,其中,Arc 又可分為兩種型態,內部與外部。內部箭 頭(Internal Arcs)代表結構化的物件,外部箭頭(External Arcs)代表一些參考的超連 結物件。

2. 查詢語言

WebOQL 為完全的函式語言,其語法除了類似 select-from-where 子句,另外 還包括一些運算子功能,像是 Prime、Peek、Hang、Concatenate、Head 與 Tail。

四、 ARANEUS

ARANEUS 由義大利 Universita di Roma Tre 的資料庫團隊所開發,為一套 語言的集合,對來自 WWW 的資料,做管理與再建構。主要解決 Web 兩個問題: (1) 超文件的結構鬆散且無法對 Web 資訊提供全面性的視野(Global View) ;(2) 對 Web 資料作運算需要花費額外的心力。利用傳統關連式資料庫的技術來對 Web 資料作重組與整合。其架構分成三個層面探討,(1) 擷取半結構化的 Web 資料並轉換為資料庫結構化的 View;(2) 以傳統資料庫技術來對此 View 做資料 重組與整合;(3) 資料整合後,重新推導出新的 Hypertext 文件。

1. 資料模式

ARANEUS 的資料模式簡稱 ADM,是物件資料模式的變形。每個 Web 網 頁可以視為一個物件,包括了辨識碼與一連串的屬性。網頁綱要(Page Scheme)

(9)

的概念類似關連式資料庫中的關連,塑模一連串的同質網頁。網頁的屬性可能為 簡單或複雜型態,簡單型態的屬性像是文字(Text),圖形(Images),二元資料(Binary Data)或連接到其他的網頁;複雜型態屬性則像是項目條列等。

2. 查詢語言

基於 ARANEUS 的三層架構,它發展了三種查詢語言來搭配其 View 的定 義處理:(1) EDITOR 看到網頁綱要的實例(Instances),以編輯網頁文字內容而設 計,功能是網頁 Wrappers;(2) ULIXES 對 Web 建立資料庫的 Views,以便用資 料庫做資料分析與整合;(3) PENELOPE 允許從關連的 Views 重新定義並推導出 新的 Hypertext 文件。

五、 超文件資料模式與查詢語言之比較

本節探討四種主要半結構化文件查詢語言,研究調查分為四個維度來探討半 結構化文件查詢語言的特色與異同,四個維度包括資料模式、語言格式、是否包 含路徑表達、是否有圖形產生等,下表中共集合九種半結構化文件查詢語言,做 一個比較分析。 查詢語言 資料模式 語言格式 是否包含路徑表達 是否有圖形產生 WebSQL Relational SQL 是 否 W3QS Labeled multigraphs SQL 是 否 WebLog Relational Datalog 否 否 Lorel Labeled graphs OQL 是 否 WebOQL Hypertrees OQL 是 是 UnQL Labeled graphs Structural

recursion

是 是

STRUDEL Labeled graphs Datalog 是 是 ARANEUS Page schemes SQL 是 是 FLORID F-logic Datalog 是 否

表一 半結構化和超文件查詢語言的比較 資料來源:本研究

六、 XML-QL

XML-QL 是由 AT&T Labs 與賓州大學合作開發為解決 XML 文件中遇到上 述問題的查詢語言。它是一項宣告性的、關連完整的查詢語言,可由現存的 XML 文件擷取資料並建構出另一份新的 XML 文件。

(10)

七、 XQL

繼 XML-QL 後 , W3C 於 1998 年 9 月 又 提 出 了 XQL , 全 名 XML Query Language,係為查詢 XML 文件、XML 文件集合與 XML 網站而設 計,能由 XML 文件中尋找與過濾出資料元素以及特定字元,藉由 XQL 搜尋 XML 檔 案 儲 存 庫 , 並 建 立 其 他 應 用 程 式 該 特 定 元 素 之 超 鏈 結 。 設 計 皆 來 自 於 XML-QL,在當時期望延續 SQL/OQL 成為資料庫的一項新標準。

八、 Quilt

繼 XQL 之後,W3C 2000 年又提出了 Quilt 查詢語言,其本身源自諸多的 XML-based 語言如 XQL, Xpath, XML-QL, YATL 以及 XSQL。這些查詢語言 本身皆有其應用的狀況。Quilt 擷取上述各項查詢語言獨到之處,擷取 XQL 與 Xpath 對階層文件的導覽語法,利用 XML-QL 連結變數的概念來產生新的結 構,結合 SQL 的 select-from-where 的基本查詢模式及引用 OQL 函式的概念,整 合而成新的查詢語言。其中,XQL 以及 XML-QL 是影響 Quilt 的最主要查詢語 言,因此 Quilt 的許多語法皆繼承自 XQL 以及 XML-QL。

九、 Xquery

2001 年 7 月,W3C 的 XML Query Working Group 又依據 Quilt,衍生出 Xquery,成為目前 W3C 2003 年主要使用的 XML 查詢語言標準。其繼承之前其 他查詢語言的許多特點。Xquery 基於 XML 綱要,擁有一型態系統,其所使用 的型態皆定義於 http:// www.w3.org/2001/XMLSchema 中的 namespace (稱為 xsd)。所有原始的或推導的資料型態皆可使用於查詢中。

十、 Lorel

鑒於 XML 逐漸成為 WWW 資料呈現與交換的標準,研究者發現 XML 與 半結構化資料有許多相似的地方和相異的地方。因此 Lorel 語言針對 XML 的 特性,將其現有的 Lorel 資料模式與查詢語言做修改,以因應處理 XML 資料。

十一、 XML 文件資料模式與查詢語言之比較

下表對本節所介紹的 XML 查詢作分析比較。

(11)

查詢語言 開發單位 時間 資料模式 特色 XML-QL W3C 1998 年 8 月 樹狀圖(分有序與無 序) 查詢利用元素模式 ( Element Patterns)來 對應資料 XQL W3C 1998 年 9 月 無特別說明,主要利 用 DTD 表達資料綱 要 延伸自 XML-QL,語 法類似 SQL、OQL, 以 select-form-where 為基本型態 Quilt W3C 2000 年 6 月 樹狀圖(節點可區分為 元素,屬性,文字等 三種) 主要繼承自 XML-QL 與 XQL, 查詢稱為 FLWR 表 達法,語法以精簡為 主 Xquery W3C 2001 年 7 月 2003 年 同 Quilt ,但節點為有 序排列 依據 Quilt 衍生而 成,特色為允許一些 使用者的自訂資料 型態 Lorel Stanford University 1999 年 6 月 改良的 OEM 圖形模 式 不只為查詢語言,也 為資料更新語言 SQL/XML NCITS H2 and SC32 2000 表二 XML 文件查詢語言的比較 資料來源:本研究

參、 研究方法

一、 XML 文件資料模式至關連資料模式轉換

研究模式為雙向自 XML 文件資料模式轉換和互動成為關連式資料表的資料 模式的研究架構示意圖,如圖一所示。

(12)

圖一 XML 文件轉換至關連資料表的轉換架構 資料來源:本研究 研究模式中我們分為資料定義與資料操作兩個方向研發,資料定義部分探討 當前端來源為 XML 文件時,後端關連資料表是如何的建立與修改是具複雜性和 專屬性。建立 XML 文件包括建立 XML 的元素、子元素、屬性與連結時轉換為 在關連資料表中是如何的建立。修改 XML 文件則說明當前端 XML 元素、子元 素、屬性、連結有修改異動時,在後端關連資料表中如何同步的修改。資料操作 部分探討查詢 XML 文件,及 XML 文件資料之新增、刪除、修改。查詢 XML 文件探討資料轉換為關連資料表後,如何將對前端 XML 文件的主要查詢類型, 轉換為對資料表作 SQL 查詢,且其語法的表達為何具複雜性和專屬性。最後 XML 文件資料之新增、刪除、修改則探討前端 XML 資料內容的修改,如何對應在關 連資料表的方法和程序。

1. 建立 XML 文件

本研究所引用的 XML 資料模式是依據 Florescu 和 W3C 所提出的標準的 OEM 和 Object Model 為簡單圖形,其中節點代表物件,有其 oid 連結代表屬性 名。每個內部物件可能有一連串的屬性,皆用連接表示,葉子則代表資料值。若 連結的目標物件為葉子,我們稱為資料屬性,若否,我們稱為參考屬性。 資料定義 Definition 資料操作 Manipulation 建立 XML 文件(Create) 修改 XML 文件(Evolution) 元素、屬性之更新與刪除 查詢 XML 文件 對 XML 文件再建構節點 選擇值與模式相稱的查詢 選擇性的條件子句 XML 文件資料之新增、刪除、修改 元素、子元素、屬性、連結的建立 屬性的條件子句 一般路徑表達法的查詢

(13)

2. 修改 XML 文件

修改 XML 文件包括對元素、屬性的更新與刪除。 (1) 元素的更新 當欲新增一元素時,只需對該元素的每個屬性,資料表中增加一筆記錄。 (2) 屬性的更新 當欲新增一屬性時,只需對該的於資料表中增加一筆記錄,但特別注意的 是,修改 Source 為同元素其 Order 欄位的值,若新增的屬性為新的屬性,我們 要新增此一屬性名的資料表。 (3) 元素的刪除 XML 的資料模式若欲刪除一元素時,對應至關連表格做法則是將其相關的 屬性記錄皆刪除。 (4) 屬性的刪除 若 XML 的資料模式若欲刪除一屬性連結時,至該屬性表格,直接找出欲刪 除的 Source 元素,並將該筆記錄刪除,唯一要注意的是,相同 Source 的屬性其 Order 的順序資料要順應作修改調整。

3. 查詢 XML 文件

關連資料建立完成後,對 XML 的查詢,轉成 SQL 查詢,Xquery 的語法轉 換皆能對應至關聯資料庫 SQL 語法中的運算,我們舉出五種主要查詢 XML 文 件的查詢類型,當資料來源轉換為關連式表格時,其查詢語法的轉變。 (1) 對 XML 文件再建構節點 (Reconstructing Objects):此類查詢是指給定一物件 的 Oid,並傳回其所有的屬性值。

(2) 選擇值 (Selections Value) 的查詢:選擇值查詢是指傳回符合某項條件的 Oid。 (3) 選擇性的條件子句 (Optional Predicates):對於不規則的 XML 資料,Xquery

亦提供選擇性的條件子句的查詢。

(4) 屬性 (Predicates on Attributes) 的條件子句:Xquery 的另一項特色是支援對 屬性名的條件查詢。

(5) 一般路徑表達法 (Regular Path Expressions)的查詢:此類查詢是指找出參考到 一特殊 a1值所連接的所有物件。 (6) 當前端 XML 文件資料內容有做新增、刪除、修改時,在後端資料表的部分, 需要至更新的屬性表格將其修改的記錄值作同步修改。

二、 關連資料模式至 XML 文件轉換

研究模式為雙向自關連式資料表的資料模式轉換和互動成為 XML 文件資料 模式的研究架構示意圖,如圖二所示。

(14)

圖二 關連式的資料表轉成 XML 文件轉換架構說明 資料來源:本研究 研究模式亦分為資料定義與資料操作兩個方向研發,資料定義部分探討當前 端來源為關連資料表時,後端 XML 資料模式是如何的建立與修改,資料模式建 立包括資料表綱要的建立。資料模式修改則說明當前端關連資料表綱要有修改異 動時,後端 XML 資料模式如何同步的修改具複雜性和專屬性。資料操作探討資 料查詢與運算,及資料之新增、刪除、修改。資料查詢與運算探討資料轉換為 XML 資料模式後,如何將對前端關連資料表的查詢,轉換為對 XML 資料模式 查詢,且其語法的表達為何具複雜性和專屬性。資料運算探討在關連資料表中, 其查詢具備代數運算轉至 XML 文件為何。最後資料之新增、刪除、修改則探討 前端關連資料表的更新,在 XML 資料模式為何。 資料定義 Definition 資料操作 Manipulation 資料模式建立 資料模式修改 欄位之更新與刪除 資料查詢與運算 資料查詢 資料運算 代數運算 聚合運算與群組 資料之新增、刪除、修改 四則運算 布林運算 邏輯運算

(15)

1. 資料模式建立

(1) 單一表格轉換 單一表格其資料模式為資料表的綱要,若轉換為 XML 資料模式,資料表名 稱為根節點,以主鍵為識別碼,以子樹方式呈現,根節點連接素集合,包含資料 表中紀錄集合。 (2) 多重表格轉換 以兩個具參考關連的表格其在關連資料庫中的資料模式為實體關係圖與資 料表綱要,資料表間是透過主鍵和外鍵作連結。將之轉換為 XML 資料模式,根 節點為資料庫名稱,第一層的各連結為各資料表名稱,其後接各筆記錄當作各個 元素,為樹狀圖的第二層,每個元素後,連接表格中的各欄位當作其子元素,為 第三層。

2. 資料模式修改

區分為對欄位的更新、刪除及資料型態修改三部份來探討: (1) 新增欄位 針對關連式資料庫的資料表資料模式(綱要)若欲新增欄位時,對應至 XML 資料模式,由欲修改的資料表節點開始,對其下所連接的所有元素(記錄),皆增 加一欲新增的子元素連結,增加欄位的動作。 (2) 刪除欄位 關連式資料庫的資料表資料模式(綱要)若欲刪除某欄位時,對應至 XML 資 料模式,由欲修改的資料表節點開始,對其下所連接的所有元素(記錄),刪除該 項對應的子元素連結,刪除欄位的動作。 (3) 修改欄位名稱 關連式資料庫的資料表資料模式(綱要)若欲修改某欄位名稱時,對應至 XML 資料模式,對應的子元素名稱,皆更正為新的欄位名稱。

3. 資料查詢與運算

XML 資料模式建立完成後,對關連資料表的查詢,轉換和互動成 XML 文件 的查詢與運算: (1) 資料查詢 關連式資料表轉為 XML 資料模式後,欲對資料作查詢,透過 XML 查詢 語言常用的路徑表達法直接對 XML 模式作查詢。 (2) 資料運算 相對於關聯式資料庫,將資料由關連資料模式轉為 XML 資料模式後,其查 詢包含算數運算以對資料進行運算與分析,而轉換至 XML 文件後,仍然能夠適

(16)

用的運算語法。 A. 代數運算

選取( Restrict )、提取( Project )、相乘( Product )、相除( Divide ):由於 XML 資料模式為樹狀結構,不像關連資料模式為表格的二維關係,所以沒有提供選 擇、擷取、乘積、分割等代數運算。聯集( Union )、交集( Intersect )、差集 ( Difference ):然而 Xquery 中也提供這三種運算子,但不似關連模式以欄位當 運算元,其運算元是節點,作用是合併節點序列以形成新的節點序列。其中 Union ("│") 表傳回的運算元不是左邊的節點就是右邊的,Intersection 表傳回的運算 元包括左邊與右邊的所有運算元,Except 表傳回的運算元節點只包含左邊的運 算元,不包含右邊的。聯合( Join ):為查詢語言的重要運算,在 Xquery 中,其 代表的是對多份 XML 文件來源的聯合。 B. 四則運算 Xquery 單項算數運算子(+、-),及二項算數運算子(+、-、*、/ ),然而 其相對的運算元為節點,又由於 XML 文件的資料模式皆為字串型態,所以做四 則運算,先利用轉換函數將字串型態轉為數值或日期型態。 C. 布林運算

在 Xquery 中只包括 AND、OR 兩個布林運算子,不支援 NOT 運算子。 D. 邏輯運算 比較運算其中 = ,=!,<,<=,> 與 >=等運算子是用來作相同型態的值的 比較。而 = = 與!= = 則是用來對節點辨識碼作比較,比較兩個運算元是否為同 一節點,邏輯運算傳回的結果通常為 True 或 False 的布林值。 E. 聚合函數( Aggregation ) 與群組 在 XML 資料模式中的查詢,Xquery 包含聚合函數配合 GROUP BY 行群組 化查詢的功能。

4. 資料之新增、刪除、修改

(1) 資料更新 在關連資料表中,若欲新增一筆記錄時,對應至 XML 資料模式,作法為資 料表的根節點下,增加一元素的子樹,其中子樹的連接包含了各個欄位屬性,葉 子則為其屬性值。 (2) 資料刪除 相同於新增資料,欲刪除資料表中的一筆記錄,對應至 XML 資料模式, 將該筆記錄對應的元素於資料模式中刪除。 (3) 資料修改 在關連資料表中,若欲修改某項資料內容時,對應至 XML 資料模式,作法 為至 XML 資料模式中,欲修改元素的欄位屬性,將其葉子的值更改。

(17)

肆、研究雛型系統簡介

本研究方法以關聯式資料庫與原生性 XML 資料庫為基礎,進行實作關聯式 資料表與 XML 文件資料模式雙向和即時轉換和互動的雛形系統架構。由使用者 端的瀏覽器,透過 Internet 連接至架構在 Web Server,透過雛形系統接收異質資 訊來源進行處理儲存於目的資料庫中。雛形系統功能設計之架構圖和首頁入口, 如圖三和圖四所示。 雛 形 系 統 X M L 文 件 轉 至 關 聯 資 料 表 關 聯 資 料 表 轉 至 X M L 文 件 X M L 文 件 查 詢 X M L 文 件 更 新 X M L 文 件 建 立 原 始 X M L 文 件 轉 換 為 資 料 表 紀 錄 刪 除 屬 性 刪 除 元 素 新 增 屬 性 新 增 元 素 多 重 表 格 轉 換 單 一 表 格 轉 換 資 料 表 查 詢 資 料 表 綱 要 與 內 容 更 新 建 立 新 資 料 表 轉 換 為 X M L 文 件 原 始 資 料 表 資 料 新 增 原 始 表 格 轉 換 為 X M L 文 件 修 改 刪 除 欄 位 新 增 修 改 刪 除 圖三 雛形系統設計架構圖 資料來源:本研究

(18)

圖四 本系統的進入畫面 資料來源:本研究

一、XML 文件轉至關聯資料表

建立一份 XML 文件將其轉為關聯式資料表的方式存入關聯式資料庫。針 對建立之 XML 文件,欲進行元素、屬性之更新時,對應至資料表,也同時進 行資料之更新。針對簡單的 Xquery 查詢,對應轉換為 SQL 查詢並對資料表進 行查詢後,再將結果以 XML 文件的形式傳回。

二、關聯資料表轉至 XML 文件

針對單一表格轉換,建立或選擇一資料表並利用研究方法,將其轉為一份 XML 文件。 針對建立或選擇之資料表,欲進行資料與欄位之更新時,對應至 XML 文件,也同時進行資料與元素名稱之更新。將產生之 XML 文件存入 Tamino XML 資料庫,針對簡單 SQL 查詢,對應轉換為 Xquery 語法並對 XML 文件進行查詢 後,再將結果以表格的形式傳回。針對多重表格轉換,兩個具參考關連的表格其 在關連資料庫中的資料模式為實體關係圖與資料表綱要,資料表間是透過主鍵和 外鍵作連結。本研究將之轉換為 XML 資料模式,根節點為資料庫名稱,第一層 的各連結為各資料表名稱,其後接各筆記錄當作各個元素,為樹狀圖的第二層, 每個元素後,連接表格中的各欄位當作其子元素,為第三層。表格間有利用外鍵 引用到別的表格資料記錄的,再透過連結線作結合,以為其參考屬性。 圖四、圖五、圖六分別為 XML 文件轉至關聯資料表子系統的進入畫面、 XML 原始文件、和轉換結果,輸入欲建立 XML 文件的新增元素或是選擇各項 功能選項,簡易範例之原始文件和轉換互動後之資料表結果畫面。顯示關聯資料 表與 XML 文件互轉畫面、資料表原始資料相互轉換為 XML 文件結果。

(19)

圖四 XML 文件轉至關聯資料表子系統的進入畫面 資料來源:本研究

圖五 原始 XML 文件 資料來源:本研究

(20)

伍、計畫成果自評

一、 研究內容與原計畫相符程度

研究內容與原計畫相符。

二、 達成預期目標情況

已達成計畫預期目標。本計劃已完成建立 XML 文件與傳統關聯式資料庫資 料交換與轉換和互動運算的研究模式,異質資料可雙向轉換並同步更新,研究模 式之雛形系統已建立並和驗證其可行性與功能性。

三、 研究成果之學術或應用價值

本研究對異質性 XML 文件與關聯式資料庫作雙向之轉換並達到同步更新與 異質查詢的能力,以增加交換和轉換資料以及互動運算的精確性和即時性。詳細 內容分點敘述如下。 1. XML 文件轉為關聯資料表部分 績效評估法則之 Attribute +Inlining 方法,最短時間與最節省資料庫空間, 將 XML 文件完整的以表格方式儲存於關聯式資料庫中,並經由關聯資料庫的 處理,對原始 XML 文件達到元素與屬性的更新動作,並將結果以 XML 文件 的形式傳回,達到資料的透通性的處理與轉換。 2. 關聯資料表轉為 XML 文件部分 以欄位為子元素名稱,各別資料錄為元素資料,將關聯式資料表以 XML 文 件的形式增加彈性,關聯式資料透過網路作資料交換與傳輸的動作,省去人工轉 換格式,對於資料表更新維護對應 XML 文件同時完成。 3. 查詢語言的轉換部分 對於關聯式資料庫與 XML 文件其在查詢語言上,皆有各自的查詢語言標 準,分別為 SQL 語言與 Xquery 語言。本研究之資料轉換模式,對於查詢語言 之轉換上,解析兩者之查詢語法,是同步且對應的資料的雙向轉換。 4. 讓關聯式資料庫與 XML 文件之整合應用 本研究雛形系統之關聯式資料庫表格與 XML 文件資料整合與轉換,關聯 式資料表可由 XML 文件之形式,直接在網路上傳輸,整合至不同企業之中,

(21)

無需任何加工的轉換處理。企業接收 XML 文件,透過本系統轉換儲存於關聯 資料表中,運用既有關聯資料庫之強大運算分析能力,對 XML 文件資料進行 分析處理。 5. 提供異質資料來源資料即時的同步更新與查詢 針對異質資料來源之資料綱要與資料有系統且雙向同步的維護與更新,並配 合查詢語言之轉換,是目前研究尚無一套如此完整之解決方案,本研究對其提出 改進。 6. 對異質資料來源轉換較低的建置與維護成本 XML 文件與關聯式資料表在異質資料的轉換上,減低人工方式處理資料轉 換的工作所耗費之時間與金錢,且在異質資料的更新維護上由雛形系統展式。

四、 是否適合在學術期刊發表或申請專利

本研究已投稿「資訊管理學報」(TSSCI),目前完成第一次修改正在審查中。

附註:參考文獻約 120 項,限於篇幅未列出,如有需要將立即提供。

參考文獻

相關文件

MOV reg,data reg ← data 轉移立即資料(data)到暫存器 reg 內 MOV dreg,sreg dreg ← sreg 轉移暫存器 sreg 的內容到暫存器 dreg MOV segreg,reg segreg ← reg

代碼 姓名 姓別 住址 電話 部門 部門 位置..

 想要設計一個具有兩個輸入G(gate閘控)和 D(data資料)以及一個輸出Q的閘控閂電 路。當G等於1時,在輸入D出現的二進位資料

RMI,及 DCOM 這些以專屬 binary 格式傳送資料所不及之處,那 就是對程式語言、作業平台的獨立性--由於是純文字 XML 格 式,

We showed that the BCDM is a unifying model in that conceptual instances could be mapped into instances of five existing bitemporal representational data models: a first normal

The Performance Evaluation for Horizontal, Vertical and Hybrid Schema in Database Systems.. -A Case Study of Wireless Broadband

資料探勘 ( Data Mining )

介面最佳化之資料探勘模組是利用 Apriori 演算法探勘出操作者操作介面之 關聯式法則,而後以法則的型態儲存於介面最佳化知識庫中。當有