oracle資料庫系統是oracle(甲骨文)公司于1979年釋出的世界上第一個關系資料庫管理系統。經過30多年的發展,oracle資料庫系統已經應用于各個領域,在資料庫市場占據主導地位。oracle公司也成為當今世界上最大的資料庫廠商和最大的商用軟體供應商,向遍及全球的145個國家和地區的使用者提供資料庫、工具和應用軟體,以及相關的咨詢、教育訓練和支援服務。
oracle資料庫産品是目前市場占有率最高的資料庫産品,約為49%。如圖2-1所示描述了2010年幾大資料庫産品的市場占有率情況。oracle資料庫客戶遍布工業、金融、商業、保險等各個領域,從大型企業(如at&t、雪鐵龍、通用電氣等)到純粹的電子商務公司(如亞馬遜、ebay等)。在當今世界500強企業中,70%企業使用的是oracle資料庫,世界十大b2c公司全部使用oracle資料庫,世界十大b2b公司中有9家使用的是oracle資料庫。
在所有的it認證中,oracle公司的oracle專業認證ocp(oracle certified professional)是資料庫領域最熱門的認證。如果取得了ocp認證,就會在激烈的市場競争中獲得顯著的優勢。對oracle資料庫有深入了解并具有大量實踐操作經驗的oracle資料庫管理者(dba)和開發人員,将很容易擷取一份環境優越、待遇豐厚的工作。
從1979年oracle資料庫産品oracle 2的釋出,到今天oracle 11g的推出,oracle功能不斷完善和發展,性能不斷提高,其安全性、穩定性也日趨完善。
下面簡單介紹oracle資料庫産品的版本變遷曆程。
1)1979年,oracle公司推出了世界上第一個基于sql标準的關系資料庫系統oracle 2。它是使用彙編語言在digital equipment計算機pdp-11上開發成功的。oracle 2的出現當時并沒有引起太多的關注。
2)1983年3月,oracle公司釋出了oracle 3。由于該版本采用c語言開發,是以oracle産品具有了可移植性,可以在大型機和小型機上運作。此外,oracle 3還推出了sql語句和事務處理的“原子性”,引入非阻塞查詢等方法。
3)1984年10月,oracle公司釋出了oracle 4。這一版增加了讀取一緻性(read consistency),確定使用者在查詢期間看到一緻的資料。也就是說,當一個會話正在修改資料時,其他的會話将看不到該會話未送出的修改。
4)1985年,oracle公司釋出了oracle 5。這是第一個可以在client/server(客戶機/伺服器)模式下運作的rdbms産品。這意味着運作在客戶機上的應用程式能夠通過網絡通路資料庫伺服器。1986年釋出的oracle 5.1版還支援分布式查詢,允許通過一次性查詢通路存儲在多個位置上的資料。
5)1988年,oracle公司釋出了oracle 6。該版本支援行鎖定模式、多處理器、pl/sql過程化語言、聯機事務處理(online transaction process,oltp)。
6)1992年,oracle公司釋出了基于unix版本的oracle 7,從此,oracle正式向unix進軍。oracle 7采用多線程伺服器體系結構mts(multi-threaded server),可以支援更多使用者的并發通路,資料庫性能顯著提高。同時,該産品增加了資料庫選件,包括過程化選件、分布式選件、并行伺服器選件等,具有分布式事務處理能力。
7)1997年6月,oracle公司釋出了基于java的oracle 8。oracle 8支援面向對象的開發及java工業标準,其支援的sql關系資料庫語言執行sql3标準。oracle 8的出現使得oracle資料庫構造大型應用系統成為可能,其對ofa(optimal flexible architecture)檔案目錄結構組織方式、資料分區技術和網絡連接配接的改進,使oracle更加适用于構造大型應用系統。
8)1998年9月,oracle公司正式釋出oracle 8i。oracle 8i是随internet技術的發展而産生的網絡資料庫産品,全面支援internet技術。oracle公司的産品發展戰略由面向應用轉向面向網絡計算。oracle 8i為資料庫使用者提供了全方位的java支援,完全整合了本地java運作時的環境,用java就可以編寫oracle的存儲過程。同時,oracle 8i中還添加了sqlj(一種開放式标準,用于将sql資料庫語句嵌入客戶機或伺服器的java代碼)、oracle intermedia(用于管理多媒體内容)和xml等特性。此外,oracle 8i極大提高了伸縮性、擴充性和可用性,以滿足網絡應用需要。
9)2001年6月,oracle公司釋出了oracle 9i。oracle 9i實際包含3個主要部分:oracle 9i資料庫、oracle 9i應用伺服器及內建開發工具。作為oracle資料庫的一個過渡性産品,oracle 9i資料庫在叢集技術、高可用性、商業智能、安全性、系統管理等方面都實作了突破,借助真正應用叢集技術實作無限的可伸縮性和總體可用性,全面支援java與xml,具有內建的先進資料分析與資料挖掘功能及更自動化的系統管理功能,是第一個能夠跨越多個計算機的叢集系統。使使用者能夠以前所未有的低成本,更容易地建構、部署和管理internet應用,同時有效降低了系統建構的複雜性。
10)2003年9月,oracle公司釋出了oracle 10g。oracle 10g由oracle 10g資料庫、oracle 10g應用伺服器和oracle 10g企業管理器組成。oracle 10g資料庫是全球第一個基于網格計算(grid computing)的關系資料庫。網格計算幫助客戶利用刀片伺服器叢集和機架安裝式儲存設備等廉價的标準化元件,迅速而廉價地建立大型計算能力。oracle 10g資料庫引入了新的資料庫自動管理、自動存儲管理、自動統計資訊收集、自動記憶體管理、精細審計、物化視圖和查詢重寫、可傳輸表空間等特性。此外,oracle 10g資料庫在可用性、可伸縮性、安全性、高可用性、資料庫倉庫、資料內建等方面得到了極大的提高。oracle 10g資料庫産品的高性能、可靠性得到市場的廣泛認可,已經成為大型企業、中小型企業和部門的最佳選擇。
11)2007年7月11日,oracle公司釋出了oracle 11g。oracle 11g是oracle公司30年來釋出的最重要的資料庫版本,根據使用者的需求實作了資訊生命周期管理(information lifecycle management)等多項創新,大幅提高了系統性能安全性,全新的data guard最大化了可用性。利用全新的進階資料壓縮技術降低了資料存儲的支出,明顯縮短了應用程式測試環境部署及分析測試結果所花費的時間,增加了對rfid tag、dicom醫學圖像、3d空間等重要資料類型的支援,加強了對binary xml的支援和性能優化。
oracle資料庫之是以能夠在資料庫市場上占主導地位,市場占有率遠遠高于其他資料庫産品,關鍵在于其技術不斷發展創新,創造了資料庫領域的多個“第一”。
1)1985年oracle釋出第一個支援client/server架構的資料庫産品oracle 5.0。
2)1987年oracle 推出第一套內建case 和4gl 的工具集。
3)1989年oracle成為第一個支援oltp 的關系資料庫。
4)1991年oracle成為第一個支援mpp 的關系資料庫。
5)1991年oracle成為第一個并行伺服器資料庫。
6)1993年oracle釋出第一套跨平台的gui 工具集。
7)1994年oracle成為第一個多媒體資料庫伺服器。
8)1994年oracle成為第一個全面并行資料庫。
9)1996提出以網絡為中心的nca體系結構。
10)1996年oracle成為第一個全能資料庫伺服器産品。
11)1997年oracle釋出第一個對象–關系型資料庫産品oracle 8。
12)1998年oracle釋出第一個internet資料庫oracle 8i。
13)2001年oracle釋出第一個真正意義上的rac(真正應用叢集)資料庫oracle 9i 。
14)2003 年oracle釋出第一個實作網格計算的資料庫oracle 10g。
oracle資料庫經過30多年的發展,由于其優越的安全性、完整性、穩定性,以及支援多種作業系統、多種硬體平台等特點,得到了廣泛的應用。從工業領域到商業領域,從大型機到微型機,從unix作業系統到windows作業系統,到處都可以發現成功的oracle應用案例。
oracle之是以得到廣大使用者的青睐,其主要原因如下:
支援多使用者、大事務量的事務處理。oracle資料庫是一個大容量、多使用者的資料庫系統,可以同時支援20000個使用者同時通路,支援資料量達百吉位元組的應用。
提供标準操作接口。oracle資料庫是一個開放的系統,它所提供的各種操作接口都遵守資料存取語言、作業系統、使用者接口和網絡通信協定的工業标準。
實施安全性控制和完整性控制。oracle通過權限設定限制使用者對資料庫的通路,通過使用者管理、權限管理限制使用者對資料的存取,通過資料庫審計、追蹤等方法監控資料庫的使用情況。
支援分布式資料處理。oracle支援分布式資料處理,允許利用計算機網絡系統,将不同區域的資料庫伺服器連接配接起來,實作軟體、硬體、資料等資源共享,實作資料的統一管理與控制。
oracle real application clusters(rac,真正應用叢集)實作可用性和可伸縮性。使單個資料庫能夠跨網格中的多個叢集化的節點運作,進而集中幾台标準計算機的處理資源。
具有可移植性、可相容性和可連接配接性。oracle産品可運作于很寬範圍的硬體與作業系統平台上,可以安裝在70種以上不同的大、中、小型機上,可在vms、dos、unix、windows等多種作業系統下工作。oracle應用軟體從一個平台移植到另一個平台時,不需要修改或隻需修改少量的代碼。oracle産品采用标準sql,并經過了美國國家标準技術所(nist)的測試,能與多種通信網絡相連,支援各種網絡協定(如tcp/ip、decnet、lu6.2等)。