我們開始討論第一個方面的內容:
數據庫的發展及差異
數據庫的發展經歷了幾個階段,從最初的層次模型、網狀模型,發展到目前的關系模型、面向的關系模型。1950年,IBM公司的計算機科學家E.T.Codd首次提出了關系模型的概念來代替層次模型存儲數據。從20世紀80年代開始,幾乎所有的數據庫軟件產品都開始遵守關系模型這一概念。關系模型的成功在於,在數據庫中應用了關系數據庫管理系統(RDBMS)來對數據進行排序、檢索、*縱。在關系數據庫中,使用一種稱為結構化查詢語言(SQL)的功能性編程語言來實現對數據的處理。
當我們提交一條SQL語句後,根據不同的語句,RDBMS要進行一系列的*作,下面是一些常見的*作步驟:
①、隱式數據類型轉換。 ②、查找索引以加快響應時間。 ③、磁盤讀寫 ④、按照查詢條件過濾數據 ⑤、排序並格式化返回的數據。
Oracle 9i關系數據庫與平面文件系統雖然有一些相似的地方,但在許多方面都存在一些差異,如下表所示:
處理任務 平面文件系統(FlatFile System) 關系數據庫系統(RDBMS)
能否處理主/從數據關系能否處理其它數據關系 不好 能
能否容易進行數據*縱 不能 能
能否容易適應業務需求的變化 不能 能
能否容易進行數據檢索 有時 能
能否快速檢索數據 有時 有時
第二個方面:
Oracle數據庫的特點
1.無范式要求,可根據實際系統需求構造數據庫。
2.采用標准的SQL結構化查詢語言。
3.具有豐富的開發工具,覆蓋開發周期的各階段。
4.支持大型數據庫,數據類型支持數字、字符、大至4GB的二進制數據,為數據庫的面向存儲提供數據支持。
5.具有第四代語言的開發工具(SQL*formS、SQL*REPORTS、SQL*MENU等)。
6.具有字符界面和圖形界面,易於開發。
7.通過SQL*DBA控制用戶權限,提供數據保護功能,監控數據庫的 運行狀態,調整數據緩沖區的大小。
8.分布優化查詢功能。
9.具有數據透明、網絡透明,支持異種網絡、異構數據庫系統。並行 處理采用動態數據分片技術。
10.支持客戶機/服務器體系結構及混合的體系結構(集中式、分布式、 客戶機/服務器)。
11.實現了兩階段提交、多線索查詢手段。
12.支持多種系統平台(HPUX、SUNOS、OSF/1、VMS、 WINDOWS、WINDOWS/NT、OS/2)。
13.數據安全保護措施:沒有讀鎖,采取快照SNAP方式完全消除了分布讀寫沖突。自動檢測死鎖和沖突並解決。
14.數據安全級別為C2級(最高級)。
15.數據庫內模支持多字節碼制,支持多種語言文字編碼。
16.具有面向制造系統的管理信息系統和財務系統應用系統。
18. 在中國的銷售份額占50%以上。
第三個方面:
Oracle9i數據庫的新特點
Oracle9i 數據庫是目前業內伸縮性最好、功能最齊全的數據庫。無論是用於驅動網站、打包應用程序、數據倉庫或者是 OLTP 應用程序,Oracle9i 數據庫都是任何專業計算環境的技術基礎。它具有以下特點:
1.事務處理
行級鎖定
總的來說,多用戶數據庫需要鎖定數據來防止不同用戶的交互,或者程序同時訪問或更新同一數據。其他的數據庫在用戶訪問數據時鎖定整個表,從而使所有其他的事務處於等待狀態。對於 Oracle9i 數據庫,只有包括了所述數據的單個行被鎖定。因此,多個用戶可以從同一個表訪問數據,並且能確保得到快速、准確的結果。
實體化視圖
實體化視圖用於預計算和存儲集合數據,例如每月銷售數據總額。存儲預計算結果使得數據庫服務器可以顯著提高普通查詢的性能,因為它不需每次再重新計算這些結果。
數據分區
分區允許表和索引細分為更小的單位,從而能夠更細粒度地管理和訪問數據庫。分區能夠提高可管理性、性能和可用性,因此為應用程序帶來巨大的好處。分區可以將某些查詢和維護*作的性能提高好幾個數量級。
查詢優化
查詢優化對關系數據庫的性能,尤其對復雜 SQL 語句至關重要。查詢優化程序不是在實驗室中基於純粹的理論推測和假想而開發出來的,它是通過不斷適應實際客戶的需求而精心推出的。Oracle 的優化程序可能是業界經過多次證實的最佳優化程序。