• 沒有找到結果。

XML 原生資料庫 原生資料庫 原生資料庫 原生資料庫

2.4.1 Native XML Database 簡介 簡介 簡介 簡介

“Native XML Databases”顧名思義,是用來存放 XML 檔案文件的資料庫。功 能與一般所見的資料庫一樣,支援管理、儲存與查詢語言等。而它與一般資料庫 的區別就在於內部儲存的格式是以 XML 文件的樣式為基本的單位,而不是其他 的模型—如網狀式或關聯式資料模型【1】。

“Native XML Databases”,這個名字在許多方面是被大家所誤用了。事實上,

有許多所謂的 Native XML Databases 並不是真正獨立的資料庫,並非真正儲存 XML 的原始文件。為了要避免這些的困擾,因此訂出了 XML:DB 的定義:

 為 XML 文件,定義了一組的邏輯(logical)模型,而根據此模型,我們 可以儲存與檢索文件。而一份所謂 XML 文件,最少必須要具備以下的 元件:元素(element)、屬性(attribute)、文字內容(PCDATA)與文件的次序 關係。

 以一個 XML 文件為其基本的邏輯儲存單元,就如關聯式資料庫是以一 個表格為其儲存的單元一樣。

 不需要特殊的實體儲存模型。例如,它可以建立在一個關聯式,階層式,

或物件導向資料庫,或使用一個專屬的存儲格式,如索引值、壓縮檔。

2.4.2 Native XML Databases 的功能 的功能 的功能 的功能

因為目前有的 Native XML 資料庫的功能並不完全一樣,之間會有一些差異;

14

但是,基於它們都是 XML 的資料庫,因此有些基本功能是會一樣的。

 XML 文件的儲存(XML Storage): Native XML Databases 會以一個 XML 文件為其儲存的基本單元,並且建立出一套 XML 規則的模型,可以任 意的配合混合式及半結構化的 XML 文件。

 收藏(Collections):此資料庫管理所儲存的 XML 文件,可以讓使用者容 易地查詢及運用這些文件。

 查詢(Queries):目前的原生 XML 資料庫至少都支援一種查詢語言,那就 是 XPath,來達到文件的查詢功能。XPath 提供了一個簡單的 pathing 系統,讓使用者可以容易地在 XML 文件中找到自己所要的資訊內容,

省去了要去閱讀整份 XML 文件的時間。

 更新(Updates):就目前現有的資料庫系統來看,”更新”這個方面,是此 資料庫最為薄弱的一環。大多數的 Native XML Databases 都需要用戶自 己去擷取一份文件,然後利用 XML 的 API 去產生一份 XML 文件之後,

再將此份文件匯入到 XML 的資料庫中, 而這個問題直到 XQuery 增添 了一個更新的語言之後,就獲得了改善,而 DOM 在更新方面,是最常 被拿來採用的。

一般說來,Native XML Databases 善於用來儲存文件導向(Document-

oriented)的資料。基本上,如果文件規格是 XML,那就非常地適合利用此類的資 料庫來做儲存的工具。

eXist 是由 Wolfgang Meier 在 2000 年所建立出來的一套 XML 資料庫系統,

從 2006 年的 Version 1.0 和 1.1 版本,現在已經到了 Version 1.1.*的版本了,在 2006 年被認為是最佳的 XML 資料庫【1】。

eXist 為一個公開原始碼的 XML 原生資料庫,其內容包含 XPath 搜尋過程、

關鍵字搜尋、支援 XUpdate,且與其他 XML 開發工具緊密整合。該資料庫軟體 十分輕便,且由 Java 所寫成,可以單獨執行,也可整合至其他應用中。在資料 庫引擎的設計方面,eXist 提供了 HTTP、XML-RPC、SOAP、和 WebDAV 等多

15

XML Database License Support Notes

Apache Xindice Open source ,Free

Yes XIndice Version 1.1 released 9th May 2007

Gemfire Enterprise Commercial Yes DOMSafeXML Commercial Yes eXist Open source

,Free

Yes TransactionService (ACID Transactions) not supported MonetDB/XQuery Open source

,Free

Yes

myXMLDB Open source ,Free

Yes Works on top of MySQL;seems to have discontinued long age.

OZONE Open source ,Free

Yes 100% support including TransactionService (ACID).

Sedna Open source ,Free

Yes 100% support including TransactionService (ACID).

Software AG’s Tamino

Commercial Partial Lacks update support.

XpdateQueryService, or any other

16

Update language not implemented.

由上述表中,我們可以得知因為 eXist 有許多的優點,例如: Open source , Free…等的優點,因此本研究是利用 eXist 來作為 XML 的資料庫【1】。

2.5 同步多媒體 同步多媒體 同步多媒體 同步多媒體整合 整合 整合語言 整合 語言 語言 語言(Synchronized Multimedia