曝光臺 注意防騙
網曝天貓店富美金盛家居專營店坑蒙拐騙欺詐消費者
可能正好是這種情況,在你的項目中你可能將X M L作為一系列的文檔。也許你只是需要某
個比文本文件或文件系統稍好一些的系統,但是對獨立的節點加鎖和安全控制上更精細一些。
我們將很快地從整體上瀏覽一些處理X M L文檔的存儲和提取的產品。其中的某些產品可以滿足
我們關于團隊開發和版本管理的需求,然而,因為它們將文檔作為處理的基本單元,所以不可
能滿足我們的所有需要。通過看到這些局限,應該更清楚為什么我們需要某個更復雜的解決方
案。
1. DBMS解決方案
把X M L文檔作為關系型數據庫管理系統的一個文本字段進行存儲是很直接的,并且對于任
何數據庫產品都是可能的。然而,一旦存儲完成,文件就不再是一個文本字符串—X M L的存
儲與你在數據庫中保存圖像或文本文檔采用相同的方法。O r a c l e在它的8 i產品中增加了一個特性,
它允許X M L文檔被存在一個字段中,或按X M L進行查詢。這是通過擴展普通的S E L E C T語句來
完成的。這對于一個強大的文檔存儲技術有利;一個表中的一條記錄可以有一個字段來保存
X M L文檔,并且其他的字段可以用來保存文檔的信息,像是否被加鎖,誰最后修改過它,等等。
與一般的開發項目相比這些特性最可能被某人用于建立一個自己的全X M L服務器。雖然從
本質上說是兩種數據模型的混合體—關系型數據和層次型結構化數據—它將可能建立或者
是一個X M L文檔服務器或甚至X M L節點服務器。在像O r a c l e這樣的R D B M S的上面構造這樣的應
用明顯要比在一個不支持X M L的R D B M S上做這樣的事容易得多。
你可以通過訪問h t t p : / / t e c h n e t . o r a c l e . c o m / t e c h / x m l / x s q l _ s e r v l e t /獲得更進一步的信息。一個
s e r v l e t也可以將原來的S Q L查詢轉換為X M L。M i c r o s o f t也發布了一項技術,它能夠將數據
庫查詢自動地轉變為X M L 。更進一步的信息請看h t t p : / / m s d n . m i c r o s o f t . c o m /
workshop/xml/articles/xmlsql/default.asp。
2. OODBMS解決方案
面向對象的數據庫管理系統( O O D B M S)已經出臺很長時間了,并且在我們想看到的理想
的X M L服務器方面提供了許多的特色。然而,大部分商家中的一少部分已經開始把他們的數據
庫產品用于非常強大的X M L文檔倉庫。讓我們看一下其中一些產品:
(1) Inso Corporation DynaBase 3.1
D y n a B a s e基于ObjectStore 4.0,但是看上去在處理X M L文檔上并不聰明。它們按照一個圖
片或電子表格那樣存儲,盡管使用所有的面向對象的優點來管理它們。更多的細節可以在
h t t p : / / w w w. i n s o . c o m /和h t t p : / / w w w. e b t . c o m / d y n a b a s e /上找到。
(2) Chrystal Astoria 3.0
A s t o r i a允許組件的存儲,它可以是任何類型的文檔。基本上是一個使用X M L / S G M L的團隊
開發產品, A s t o r i a可以同其他的批準工具一起控制團隊處理組件。它支持搜索、授權、編輯、
回顧和修定、翻譯和多媒體發布。更多的信息,參見h t t p : / / w w w. c h r y s t a l . c o m /。
(3) DataChannel Rio 3.2
R i o在文件夾中存儲X M L文檔,這樣用戶可以有多種層次來處理。文檔可以是M i c r o s o f t的
O ff i c e文件,并且可以自動進行轉化。R i o產品主要是涉及到保證用戶在企業內部網上保證與最
新文件同步。然而,最新的發行版使用了X - M a c h i n e,來自于Software AG(參見后面的Ta m i n o。
第10章XML和數據庫使用361 下載
同樣,注意D a t a C h a n n e l站點稱它為X S t o r e,但是沒有在Software AG的站點上提到X S t o r e。然而,
X - M a c h i n e的描述填在了D a t a C h a n n e l叫做X S t o r e的海報上。) Data Channel 的站點是:
h t t p : / / d a t a c h a n n e l . c o m /。
(4) Vignette StoryServer
生成動態文檔內容,并且能夠發布文檔到其他的系統中,包括X M L 。他們最近宣布
S y n d i c a t i o n S e r v e r允許存儲在他們的系統中,可以按I C E(Information & Content Exchage—關
于I C E在第1 2章有更多的介紹)格式輸出,該格式遵守X M L的語法。另外一個考慮使用X M L作
為一種發布環境的是Vi g n e t t e同Q u a r k的合作,它是到處存在的Q u a r k X P r e s s產品的開發者。請看
h t t p : / / w w w. v i g n e t t e . c o m得到更多的細節。
3. 結論
文檔管理技術的出現是為了克服文件系統中存儲X M L的局限。R D B M S和O O D B M S產品將
允許體積巨大的信息被存儲、加鎖,等等。這些可能對某些項目來說是足夠了,但是這些產品
更可以被用來作為發現X M L節點服務器使用的基礎。
10.1.3 XML存儲和數據庫
讓我們回到用文件系統存儲X M L文檔的局限上來,看一下數據庫的一些特性,可能會幫助
我們找到解決辦法:
• 大小—數據庫通常可以處理海量的數據信息。因為這個信息可以以一種很小的單位來訪
問—我們可以指出一個作者或兩本書—那么就很容易導航。
• 并發性——數據庫被設計為允許多個用戶同時處理信息。例如,大部分的產品將允許一個
用戶處理作者,同時另一個處理書目。他們也允許一個用戶編輯一個作者,同時另一個用
戶編輯另一個作者。
• 完成這項工作的合適工具—數據庫通常是后端的產品,用于很多不同類型的應用。就如
同所有的應用可以從文件系統中讀和寫一樣,也可以處理數據庫。一個數據庫的界面包括
M i c r o s o f t的A c c e s s表格,一個We b表格,或者是另外的處理信息的數據庫。
• 版本—關系數據庫一般沒有對版本的本地支持,但是許多面向對象的數據庫則有。
• 安全—正如數據庫允許一個良好的控制,用于控制存在其中的數據的處理,那么,它們
通常也允許不同級別的處理。一個用戶可以看到作者,但是不能編輯它們,另一個可能增
中國航空網 www.k6050.com
航空翻譯 www.aviation.cn
本文鏈接地址:
XML高級編程上(119)