數據庫技術發展的歷程
許多年以來在數據庫技術領域很少有重大的技術創新能夠引起人們對整個數據庫發展歷程的回顧與反思。2006年DB2 9中推出的pureXML(標准化越來越近了)技術對過去數十年來關系型數據庫的最基本的數據組織方式進行了重大的創新,第一次讓我們對數據庫的歷史以及過去支撐其發展壯大的理論基礎和外部挑戰從新的角度進行審視。
今天我們很少去回顧數據庫的歷史,對於絕大多數IT技術人員,數據庫等同於關系型數據庫,數據則和表緊密聯系。E-R模型幾乎是我們描述世界的唯一方式,SQL語言是數據庫信息訪問處理的唯一手段。關系型數據庫已經成為了一種宗教式的信仰,數據相關的所有理論問題似乎都已經解決。
然而歷史的發展總是在我們不經意間產生轉折,所有重大技術的產生及發展都有其生存的土壤。40年前數據庫的誕生並不是關系型數據庫,第一代的數據庫第一次實現了數據管理與應用邏輯的分離,采用層次結構來描述數據,是層次型數據庫(IMS)。第二代數據庫奠基於上世紀70年代E.F Codd博士提出的關系型理論以及SQL語言的發明。實現了數據建模和數據操作處理的標准化,關系型數據庫在其後的20多年的時間取得了長足的發展,得到了廣泛的應用。技術的演進主要集中在性能、擴展性和安全性等方面的提升,其基本的理論框架和技術理念並沒有大的變化。
與之相反,在過去的20多年時間裡,IT產業發生了重大的變化和一系列技術及理念的創新。數據庫所生存的外部土壤隨著Internet以及在網絡環境下IT系統互連互通相互協作的趨勢,對信息管理技術提出了新的挑戰。概括而言,有以下難以回避的重要問題:
多樣化的世界-信息的復雜性
今天信息的復雜性與關系型數據庫理論產生的時代已不可同日而語,信息的結構日益復雜,隨著個性化服務等需求增長,信息的多樣性和差異性都大大增加了。而關系型理論在管理信息復雜性方面的不足日益明顯。E-R模型本質上是一個二維的模型,通過一系列的二維關系的組合來描述復雜實體對象,每個表所代表的所有實體在建模設計時沒有差異性,即使只有一個實體所擁有的屬性,也必須為其建立一個字段。因而在很多系統中,我們經常可以看到一張表有數百個字段,而對於每條記錄,大多數字段都是空的。如果這種個體間的差異性不是僅僅表現在屬性上,而且涉及到結構和關系,則需要為有差異的實體建立不同的表和對應關系。因而今天的許多業務系統往往需要幾千張表,甚至數萬張表。數據庫的結構變十分復雜,數據庫中的信息變得難以理解。
多種信息應用方式-信息的可理解性
從某種意義上而言,今天業務系統數據庫的信息是業務系統運行的副產物。數據庫為支撐特定業務應用的運行而設計,數據庫中的數據也只被單一系統使用,所以很少考慮這些信息是否易於理解。然而,今天越來越多的系統需要相互協作、共享信息。信息的可讀性,能否易於理解變得日益重要。關系型數據庫在此方面存在較大不足,表中的數據不能自我描述,表於表之間的關系在數據中不能直接清晰地體現。從而使得很多系統即使把表結構開放,其他應用依然難以理解數據的關系和含義.
需求及業務的變化-信息的靈活性
隨著IT系統進入社會生活的各個方面,信息不僅日益復雜,而且其需求內容和結構隨著時間的推移也不斷地產生變化.現實世界要求信息技術具有越來越高的靈活性和適應性.關系型數據理論所采用的是一種固定的建模方式,任何關系和屬性一旦定義,就是國定的,難以隨著需求的變化進行靈活的調整.
點擊查看大圖
訪問地址 http://www.cncms.com.cn/db2/q372732.Html
點擊查看大圖
- Visual Basic訪問SQL Server(Windows平台上強大的數據庫平台)數據庫技
- 數據庫技術趨勢發展三大特征:XML(標准化越來越近了)、BI
- Access數據庫技術(53)
- Access數據庫技術(48)
- Sybase數據庫技術(26)
- Access數據庫技術(43)
- SQL Server數據庫技術(21)
- MySQL(和PHP搭配之最佳組合)數據庫技術(30)
- SQL Server數據庫技術(16)
- SQL Server數據庫技術(09)
- Visual Basic訪問SQL Server(Windows平台上強大的數據庫平台)數據庫技
- 數據庫技術趨勢發展三大特征:XML(標准化越來越近了)、BI
- Access數據庫技術(53)
- Access數據庫技術(48)
- Sybase數據庫技術(26)
- Access數據庫技術(43)
- SQL Server數據庫技術(21)
- MySQL(和PHP搭配之最佳組合)數據庫技術(30)
- SQL Server數據庫技術(16)
- SQL Server數據庫技術(09)
今天在應用領域,軟件開發已經廣泛采用了面向對象的設計思想和技術。而面向對象的數據庫技術卻遲遲未被市場接受。對象數據庫出現時,關系型數據庫供應商已經積聚了巨大的動力,並占領了大量市場份額。在標准的SQL接口下,訪問關系型數據庫的面向對象程序很容易寫。相反,多數早期的對象數據完全不提供SQL接口,不適合任何查詢應用程序。
xml(標准化越來越近了)技術的出現,以及相關國際標准的制定(如Xquery, SQL/xml(標准化越來越近了))為數據庫引入面向對象的技術提供了新的動力。現實外部世界的技術挑戰,XML(標准化越來越近了)、面向對象技術與標准的成熟為新一代數據庫的創新提供了條件。那麼未來會是怎樣呢?迎接新的技術變革我們准備好了嗎?
今天,關系數據庫推動各種規模的公司發展業務。盡管這些數據庫是受歡迎而且重要的,但從長遠來看,它們根本無法與用 xml(標准化越來越近了) 表示的半結構化(和分層)內容相比。我們無法忽略過去20年來業界在關系型數據庫上的巨大投入,企業在關系數據和關系數據庫管理系統 (RDBMS) 方面的投資高達萬億美元,因此簡單地將 RDBMS 替換成純 XML(標准化越來越近了) 存儲的做法並不可取。我們更無法回避的新技術的潮流和巨大價值。世界即可以是關系的也可以是層次的,兩種技術各自有其優勢和局限性,因而容納關系型和層次型兩類模型的混合數據庫就成為數據庫發展的必然選擇。
點擊查看大圖
訪問地址 http://www.cncms.com.cn/db2/q372732.Html
DB2 pureXML(標准化越來越近了)技術創新
IBM 的新一代數據庫 DB2 9中第一次實現了關系型引擎與層次型引擎的結合,實現了混合數據庫。IBM將此技術稱為pureXML(標准化越來越近了)技術。
關系型數據庫很早就已經開始考慮對xml(標准化越來越近了)的支持,但傳統的技術一般還是基於關系型數據庫的基本框架,用表之間的關系去模擬xml(標准化越來越近了)的層次結構.僅僅是對關系型數據的一些功能性增強,而非真正去適應xml(標准化越來越近了)所代表的層次型結構和面向對象的數據處理方法,因而難以發揮xml(標准化越來越近了)的靈活性、擴展性等方面的優勢,大大限制了XML(標准化越來越近了)技術在數據庫的應用。
關系數據庫中的第一代 xml(標准化越來越近了) 支持是切分(或分解)文檔以適應關系表格或將文檔原封不動地存儲為字符或二進制大對象(CLOB 或 BLOB)。這兩個方法中的任一種都嘗試將 xml(標准化越來越近了) 模型強制轉換成關系模型。以大對象保存XML(標准化越來越近了)數據的方式使得數據庫無法理解xml(標准化越來越近了)中的信息內容,每次對XML(標准化越來越近了)中任何信息的訪問都必須將整個文檔取出,然後再分解獲得相應的信息內容,效率和靈活性都存在極大的限制。
如果采用將xml(標准化越來越近了)文檔中的數據項都拆分到很多個對應的關系型表中的方式,首先失去了xml(標准化越來越近了)靈活性的優勢.由於xml(標准化越來越近了)的數據項與關系型表中字段的對應是固定的,所以XML(標准化越來越近了)的擴展和變化必然要求數據庫中對應表的結構改變,另外數據對象拆分後,已經不再有物理上對象的概念,同樣在功能和性能上都有很大的局限性。
點擊查看大圖
與過去關系型數據庫的xml(標准化越來越近了)增強功能不同,DB2 9中的purexml(標准化越來越近了)技術第一次真正意義上提供了一種與XML(標准化越來越近了)層次型結構相匹配的層次型存儲方式和相對應的操作訪問方式.
在purexml(標准化越來越近了)中,xml(標准化越來越近了) 作為一種新的數據類型。幾乎每個 DB2 組件、工具和實用程序都已得到增強,以識別和處理這種新數據類型。新的存儲模式以解析後的注釋樹形式(類似於 xml(標准化越來越近了) 文檔對象模型 (DOM))保留 XML(標准化越來越近了),它與關系數據存儲分開。
圖 1. DB2 的新 XML(標准化越來越近了) 關系存儲模型
在兩種數據存儲(關系和 XML(標准化越來越近了))的頂部是一個混合型數據庫引擎。該引擎可以處理 XQuery、Xpath、SQL和 SQL/XML(標准化越來越近了)。該引擎采用帶有 SQL 和 XQuery 解析程序的雙語查詢編譯器。因此開發人員可以根據具體情況更適用的原則使用任何一種語言(或同時使用這兩種語言)。使用混合型 DB2 ,您可以根據信息管理的需要來靈活地選擇數據的存儲組織模式和訪問方法,實現二者之間靈活的轉換。
在數據庫管理系統中存儲關系和 xml(標准化越來越近了) 數據可提供靈活性和一貫快速的性能,因為數據庫管理系統在每一個級別(從客戶端到引擎,再到磁盤)都了解和支持這兩種模式。xml(標准化越來越近了) 數據繼承了 DB2 為關系數據提供的相同的備份與恢復、優化、可伸縮性和高可用性。最終,統一的 XML(標准化越來越近了)/關系數據庫通過避免對分開存儲的 XML(標准化越來越近了) 數據和關系數據進行集成,簡化了業務過程。
訪問地址 http://www.cncms.com.cn/db2/q372732.Html
pureXML(標准化越來越近了)的優點
關系數據庫中的第一代 xml(標准化越來越近了) 支持是切分(或分解)文檔以適應關系表格或將文檔原封不動地存儲為字符或二進制大對象(CLOB 或 BLOB)。這兩個方法中的任一種都嘗試將 xml(標准化越來越近了) 模型強制轉換成關系模型。然而,這兩種方法在功能和性能上都有很大的局限性。混合型模型將 xml(標准化越來越近了) 存儲在類似於 DOM 的模型中。XML(標准化越來越近了) 數據被格式化為緩沖數據頁,以便快速導航和執行查詢以及簡化索引編制。
DB2 pureXML(標准化越來越近了)在以下領域具有顯著優勢:
存儲:DB2 的purexml(標准化越來越近了) 技術將以節點級(而非文檔級)粒度存儲 XML(標准化越來越近了)。在數據庫中,物理存儲層的主要存儲單元是節點。每一頁中都存在一個節點,而其它的節點則來自相同或不同的文檔。每個節點不僅連結其父節點,還連結其子節點。因此,浏覽到某個節點的父項、同級項或子項的效率都非常高,只要下一個引用的節點在同一頁,其遍歷速度將比指針的遍歷速度還要快。 無需重寫整個文檔即可增加或減少節點,或者將節點重新部署到其它頁。
索引機制:管理著數百萬的 xml(標准化越來越近了) 文檔的 xml(標准化越來越近了) 應用程序並不罕見;因此要提供高查詢性能就要為大量的 xml(標准化越來越近了) 數據編制索引。DB2 支持在 XML(標准化越來越近了) 列上建立路徑特定的索引,因此元素和屬性常用作謂詞且可以編制跨文檔連接的索引。
新的 xml(標准化越來越近了) 值索引可有效評估xml(標准化越來越近了) 模式表達式,從而提高 xml(標准化越來越近了) 文檔的查詢性能。與傳統的關系索引相比較,在關系索引中,索引鍵由用戶指定一個或多個表格列組成,而 xml(標准化越來越近了) 值索引則使用特定的 xml(標准化越來越近了) 模式表達式(XPath 的子集,XPath 不包含謂詞等等)來編制路徑和 xml(標准化越來越近了) 文檔(存儲在一個 xml(標准化越來越近了) 列中)中的值的索引。如果值不是在文檔中指定的,則該索引還可以在插入的時通過模式來填充默認的屬性和元素值。創建索引時,您可以指定要編制索引的路徑和索引類型。可以編制與存儲在該列中的 XML(標准化越來越近了) 文檔中的路徑表達式以及路徑表達式集匹配的任何節點的索引,而且該索引可以直接指向存儲中的節點(它與其父節點和子節點連接以便於快速浏覽)。索引條目並不是提供訪問文檔開頭的索引,而是包含實際文檔節點的位置信息。因此,該索引可以快速直接訪問文檔中的節點,並避免文檔遍歷。
查詢:XQuery,即查詢 XML(標准化越來越近了) 數據的一種新語言,用於處理不同的模式,包含諸如序列(而非 SQL 中的集)、多嵌套序列和稀疏屬性。XQuery 還可以支持不同種類的模式以及動態的結構更改。
IBM 實施不包含獨立的 XQuery 或 XPath 處理程序。基本的 XQuery 和 XPath 直接嵌入到查詢引擎中。該查詢編譯器自身是雙語的,帶有兩個可互操作的查詢語言解析程序 — 一個用於 SQL,另一個用於 XQuery — 以產生查詢圖表模型(用於處理關系和 XML(標准化越來越近了) 數據)的新變量。因為中間的查詢表達法是中性語言,XQuery、SQL 以及 XQuery 與 SQL的組合將編譯成同樣的中間表達法,經過同樣的重寫和轉化,以類似的方式優化並產生類似的可執行代碼。無論使用什麼語言來指定查詢設計,此過程都將產生最優的互操作查詢設計。
因為這兩個解析程序可以相互操作,所以您可以在同一語句中混合使用 SQL 和 XQuery,從而使搜索功能更強大:在 XML(標准化越來越近了) 文檔中進行查詢並從 SQL 返回其片斷。
合適的模型,合適的任務
purexml(標准化越來越近了) 數據存儲不是僅僅將 xml(標准化越來越近了) 提供給其客戶端 — 它在 整個數據引擎堆棧中都使用 xml(標准化越來越近了) 格式表示 XML(標准化越來越近了)數據。
混合型系統並不要求所有的數據都表示成關系數據,也不要求所有數據都使用 XML(標准化越來越近了) 格式;相反,使用它您可以為適當的任務選擇適當的模型。
訪問地址 http://www.cncms.com.cn/db2/q372732.Html
點擊查看大圖
- Visual Basic訪問SQL Server(Windows平台上強大的數據庫平台)數據庫技
- 數據庫技術趨勢發展三大特征:XML(標准化越來越近了)、BI
- Access數據庫技術(53)
- Access數據庫技術(48)
- Sybase數據庫技術(26)
- Access數據庫技術(43)
- SQL Server數據庫技術(21)
- MySQL(和PHP搭配之最佳組合)數據庫技術(30)
- SQL Server數據庫技術(16)
- SQL Server數據庫技術(09)
如果采用層次型的數據存儲方式,則相對簡單、直接。
點擊查看大圖
- Visual Basic訪問SQL Server(Windows平台上強大的數據庫平台)數據庫技
- 數據庫技術趨勢發展三大特征:XML(標准化越來越近了)、BI
- Access數據庫技術(53)
- Access數據庫技術(48)
- Sybase數據庫技術(26)
- Access數據庫技術(43)
- SQL Server數據庫技術(21)
- MySQL(和PHP搭配之最佳組合)數據庫技術(30)
- SQL Server數據庫技術(16)
- SQL Server數據庫技術(09)
在關系型的模型中對象與對象之間的嵌套關系比較難於描述,不對數據內在的順序關系進行維護,只能通過增加附加的屬性通過數據值進行管理。實體之間的差異性需要通過不同的表,這樣對於同類信息,也可能要建立很多不同的表
點擊查看大圖 在同一個表中,如果每條記錄的屬性差異性很大,則需要通枚舉的方式將各種可能出現的屬性都建成表上的字段。如果采用pureXML(標准化越來越近了)技術則可大大方便對這類信息的管理。
點擊查看大圖
以上僅是purexml(標准化越來越近了)應用的簡單示例,隨著XML(標准化越來越近了)的標准在各個行業更為廣泛深入地應用,以及Web 2.0等新興技術領域的發展,我們相信這類技術將越來越多地應用到各類系統中。
數據庫的歷史經歷了40年的歷程,每一種技術都是隨挑戰應運而生。層次型數據庫和關系型數據庫在此過程中都曾為其發展起到重要的作用,而技術的發展在一次次潮流的循環往復中得到升華。為適應今天及未來的業務挑戰,由層次模型與傳統的關系型模型結合的混合數據庫技術為數據庫的發展開辟了新的方向.IBM所推出的DB2 purexml(標准化越來越近了)技術僅僅是新的變革的開始.正如關系型數據庫曾經為IT產業的發展做出了舉足輕重的貢獻,我們有理由對pureXML(標准化越來越近了)所代表的新一代混合數據庫技術充滿期待.