Oracle
i數據庫除了延續Oracle
i強大的功能之外
還加入許多革命性的數據處理技術
其目的在成為網際網絡應用以及電子商務的最佳數據庫平台
究竟我們應該如何來評估一個數據庫系統的優劣呢?一般來說
以下幾點是重要的參考依據
n 數據庫可用性(Availability)
n 數據庫延展性(Scalability)
n 效能表現(Performance)
n 程序開發環境
n 管理的難易度
而Oracle
i對於以上各項
均提供了絕佳的解決方案
Oracle
i數據庫之高可用性與穩定性
不管是在任何環境下
Oracle
i都可擔任執行關鍵性任務(mission
critical)之數據庫系統
在維持數據庫的高可用性與穩定性方面
Oracle
i期望達成三個目標
Ø 提供零資料遺失之環境
Ø 針對已毀損之數據庫
提供快速且精准之修復技術
Ø 盡量減少數據庫離線處理的需求
唯有完全符合以上三點之需求
才足以稱得上具備高度可運轉性與穩定性之數據庫系統!所以Oracle提出數項特殊技術
使得Oracle
i在可運轉性方面的表現傲視群雄
穩居電子商務應用數據庫之領導地位
利用強化後的備援數據庫(Standby database)與Flashback Query機制
提供零資料損失之環境
Oracle
i數據保護方面新增了多項功能
特別是備援數據庫的許多運作步驟都可以自動化
例如初始化備援數據庫
主從數據庫之間的切換
以及錯誤移轉…等
簡單的說
主數據庫內的所有資料將完整地保留在備援數據庫
一但主數據庫發生問題
系統將會立即切換至備援數據庫
所有資料交易不致停擺
資料的一致性與完整性也不會受到影響
不過有一點要注意的是
雖然主數據庫可搭配備援數據庫協同運作
將資料遺失或毀損的情況降到最低
但是身為一個數據庫管理者
您絕對無法預防與避免人為性錯誤!舉例來說
業務專員可能不小心刪除一筆重要的客戶資料
或是程序設計師誤刪了產品價格文件
諸如此類的人為性錯誤不勝枚舉!也許有些讀者心裡會想
數據庫不是都會做備份嗎?既然資料不小心被刪除了
再還原回來不就好了?
沒錯
這樣的想法完全正確!但是您可能不了解一般大型數據庫的備份與還原(Backup & Recovery)機制(有機會的話我也會為各位詳細介紹Oracle
i數據庫的備份機制)
事實上
在進行數據庫的修復或是復原動作時
或多或少都會影響到系統的正常運作
這需視您處理的資料量多寡以及采用的備份方式而定
換句話說
還原數據庫也需要耗費
時間
!我所指的時間不僅是DBA花在重建數據庫的時間
也包含
數據庫因為受影響而停擺的時間
!試想
如果貴公司的數據庫因為人為性錯誤頻率過高
導致系統的平均可運轉性偏低
這樣子的數據庫嚴格來說也不能稱為好數據庫
(哇!那要是以這個標准來看
豈不是沒有一家數據庫是可以用的!?請注意
我所探討的是因為人為因素所產生的問題
跟數據庫是哪個廠牌並沒有直接關系)
為了將上述問題發生的情況降到最低
Oracle
i新增了一項回溯查詢(Flashback query)的功能
經過適當組態之後
如果使用者不小心刪除了重要數據
即使刪除指令已經被commit
也可以藉由回溯查詢回存特定時間點的資料
強大的數據庫修復能力
以數據庫的修復功能而言
其實Oracle
i就已經做的相當不錯了
但是Oracle
i提供更精確的資料復原能力
舉例來說
如果某一個table所在的磁盤區塊發生毀損
Oracle
i全新的磁盤修復功能可以只針對毀損的區塊進行修復
同一個資料表的其它資料區塊則依舊處於online狀態
不會影響其它使用者的存取!
利用快速的資料回寫機制
縮短數據庫離線時間
萬一Oracle
i數據庫服務器不幸發生當機情況時
新的資料修復算法(two
pass recovery algorithm)可以尋找出資料文件內哪些區塊是需要進行讀寫修復的
有效地縮短數據庫重新上線的時間
此外
Oracle
i也提供一些特殊的參數
例如
FAST_START_MTTR_TARGET可用來限制數據庫平均恢復時間(即當機之後多少時間之內必須恢復上線狀態)
Oracle
i的高延展性
在數據庫系統的延展性方面
Oracle
i Real Application Clusters可搭配適當組態的叢集架構(Clusters)
提供企業應用程序高度的延展性與可用性
藉由簡單易用的單一系統管理方式
Oracle
i Real Application Clusters可讓叢集系統內的多個節點同時存取單一數據庫
並利用水平延展的方式有效提升整體數據庫系統之效能
此外
Oracle
i Real Application Server還具有自我調整的能力
可將數據庫的負載平均分配到叢集系統中的不同節點
Oracle
i Real Application Clusters 之快取融合(Cache Fusion)功能
Oracle
i之快取融合功能可集合叢集中各節點的高速緩存
以滿足數據庫之需求
換句話說
查詢指令可由本地端的高速緩存或是其它節點的高速緩存獲取所需的資料
降低磁盤讀取的機會
因為本地端節點可以由叢集數據庫中任何節點得到所需的資料
在進行更新資料時將不需要為了同步化資料而產生額外的磁盤讀寫動作
磁盤讀寫動作只會發生在高速緩存內找不到所需資料
或是資料交易需被確認(Commit)時
這種建置方式可以有效地擴大數據庫高速緩存的工作范圍
減少磁盤讀寫動作
且大幅提升數據庫之作業能力
可延展的連線作業狀態管理功能(Session State Management)
Oracle
i新的分享式內存配置功能
Java聯機支持能力的改進
以及多執行緒服務器之增強功能等特性
都可以大幅減少每一位Oracle
i數據庫使用者所需占用的內存空間
您可預期的是
Oracle
i將允許您在同樣的硬件環境上服務更多的數據庫使用者
並執行更多的應用程序!
Oracle
i數據庫之效能提升
Oracle數據庫的效能表現一直以來都是在水准之上
最適合擔任企業內部執行關鍵性任務之數據庫服務器
Oracle
i為了在現今網際網絡與電子商務環境中能夠完成更嚴苛的數據處理要求
數項特定的數據處理引擎也經過最佳化的調整
改良後的PL/SQL引擎可針對PL/SQL指令選擇最佳的執行計劃
之前版本的PL/SQL引擎利用Cost
Based Optimization的算法來決定執行計劃(execution plan)
主要是以系統I/O處理資源作為衡量的標准
而在Oracle
i中另加入了CPU
Cost與Memory
Cost的最佳化算法
使得PL/SQL引擎可利用最佳的執行計劃處理資料
不僅速度較快
系統資源的使用也更有效率!
先進的資料I/O動作
在I/O處理方面
Oracle
i使用自我微調式的直接讀寫方式存取資料(self tuning direct I/O)
在索引上則是利用預先抓取(prefetching)
以及忽略/掃描(skip/scan)的方式進行索引值之搜尋
無論是資料倉儲環境或是線上交易系統都可大幅提升資料讀寫之效能
特別是在超大型資料倉儲系統(
GB以上)的分析環境
Oracle
i 數據庫也擁有相當令人激賞的表現
圖
超大型資料倉儲環境下各數據庫系統之評比
資料來源
Transaction Processing Performance Council(
年
月)
更佳的Java虛擬機器
Oracle
i內建的Java虛擬機器擁有下列特點
Ø 改良後的垃圾回收機制(garbage collection)能夠更有效率地管理內存
Ø 更佳的Java語言原生編譯技術可以更快速地編譯Java程序
Ø 增強式對象分享功能可提升Java程序的執行效率
此外
JDBC與SQLJ的效能提升也同時改善了中介層以及客戶端的Java應用程序執行效率
新增的網絡通訊協議可提升聯機時之效能
Oracle
i的網絡服務新增了一項虛擬接口(Virtual Interface
VI)通訊協議
對於應用程序服務器與後端Oracle
i數據庫之間的聯機大約有
%之效能提升
VI與TCP/IP最大的不同點在於
VI是專為叢集運算環境特別設計的精簡型通訊協議
其運作原理是利用高速的網絡硬設備來分擔資料訊息傳遞之負荷
讓CPU可以專注於更重要的資料運算動作
Oracle
i數據庫之開發環境
為了無限提升程序設計師的研發能力
Oracle已將開發企業級應用程序所需具備的一切工具整合在新的開發工具套件(Oracle Internet Developer Suite
Oracle iDS)之內
Oracle iDS包含數種功能強大之開發工具
如Forms Developer
Designer
JDeveloper
Reports Developer
Discover以及Portal
Oracle iDS具備以下特點
n 建立在Java
XML以及CORBA等網際網絡標准之上
n 適合各種研發方式
例如商業邏輯組件開發
可視化模型建構
n 提供輕松建置企業入口網站之解決方案
例如Oracle Portal就可從企業應用軟件的層面整合各式信息
快速建置出具個人化功能的企業入口網站
而在快速開發應用程序方面
Oracle JDeveloper
i是一個整合式的可視化Java開發環境
且支持J
EE與XML
可提供Java程序設計師快速開發出Java Applets
JSPs
Servlets
EJB等 Java應用程序
除此之外
JDeveloper
i也可搭配BI Beans(Business Intelligence Beans)與Oracle
i OLAP Service
建構出高效能的資料倉儲分析系統
圖
Oracle
i JDeveloper
% Java開發工具
Oracle
i數據庫之管理工具
在Oracle
i內提供一套圖形接口的數據庫管理工具 — Oracle Enterprise Manager(OEM)
Oracle
i Enterprise Manager主要的核心應用程序如下
Oracle Enterprise Security Manager
Oracle
i Text
Oracle Real Clusters Management
Oracle Spatial Index Advisor
Oracle Directory Manager
Oracle
From:http://tw.wingwit.com/Article/program/Oracle/201311/17169.html