2013年1月30日 星期三

SQL Server 容錯叢集 vs Oracle RAC

        我想許多在評估SQL Server與Oracle的使用者,大多都會問為何SQL Server無法像Oracle一樣推出一個像RAC機制的Database Service,藉以達到Load Balance,其實這個在我之前的文章也有解釋過,但因為還是有許多的客戶與使用者有問到,所以我特別在這篇中再重新整理與說明,並希望給大家多一些參考。

PS:由於本人並未完全熟悉Oracle的部份,所以就技術底層的比較,本篇並不打算真正比較,以免成為眾所之的,也請大家如有認為有不妥的地方,再請提出討論,謝謝。


先前文章:
SQL Server 負載平衡架構介紹(Load Balancing)
http://caryhsu.blogspot.tw/2011/03/sql-server-load-balancing.html


1、成本比較:
其實在Oracle RAC的部份,由於我接觸的不多,所以不方便多進行著墨,但在Oracle官方宣稱RAC可以降低總成本,這點是我認為比較有值得探討的部份,因為光是初期的建置成本就已非常的高,這也是讓使用人望之退步的部份,想當初在前公司的時候,當時公司的資訊長找我與幾位Oracle的顧問進行開會討論,當實際討論到我方預算時(包含軟硬體),對方表情的變化真的是讓我印像深刻(京劇變臉),坦白說我們之前也有作功課,所以不可能亂開價格,但想不到我們的預算還是與Oracle RAC的費用有所差距,後來對方就直接建議我們建置單機的Oralce環境比較好,所以後來我們就多方考量後,選擇了SQL Server,但坦白說SQL Server也真的沒有讓我們失望。


1-1 維護合約費用:
Oracle的維護合約必須每年都要購買,如果有一年沒有買的話,就必須補齊之前未買的年份,假設你的主機在第三年的時候發生問題,需要請原廠協助時,你就必須也同時補買第一、二年的合約,此時才可以進行協助。

1-2 授權費用:
下列是分別兩家的售價表,可以看出兩者之間價格的差異。
Oracle的報價:


SQL Server報價:




總體簡易報價比較:
Component SQL Server Solution 2012 Oracle RAC Solution 11g
Core Database USD$115K USD$380K
HA option Included USD$184K
Total USD$115K USD$564K


Oracle Price List:http://www.oracle.com/us/corporate/pricing/technology-price-list-070617.pdf
Microsoft License Advisor:http://mla.microsoft.com/default.aspx


2、技術服務:
Oracle與SQL Server的技術服務在台灣都有當地的服務,但在遇到台灣無法解決的問題需開發部或其他進一步協助時,SQL Server還是有亞太中心的服務,在語系與時間上比較能配合,但如果是Oracle的話,你就只能配合國外的工程師,另外你也要有好的英文溝通能力才可以。


3、平台比較
Oracle可以配置在許多不同的作業系統上,如Linux、Windows與Unix上,但我認為這個部份取決你使用的平台,如果在Linux與Unix上,當然是Oracle最好了,但是如果是Windows上,雖然Oracle也可以支援,但我認為在Windows上,Oracle一定不會跑的比SQL Server好。


4、效能比較
Oracle RAC的效能主要是提升CPU與機器的使用率,藉以發揮機器效用的最大化,但坦白說大部份的資料庫效能皆在於Memory與Disk,CPU很少使用到滿載的情況,而在Oracle RAC中也是使用到同一個SAN Storage,這個也是與SQL Server的情況相同。

另外SQL Server最常被問題的就是在Cluster的架構下,只能是A/P Mode,也就是只有一台可以進行服務,而另一台則是在 Standby的狀況下,這樣對許多企業主來說,另外一台實在非常的可惜,其實這時候可以考慮透過 A/A Mode的架構,藉以讓兩台SQL Server都可以同時進行服務,詳細的部份,可以參考我先前的文章。

參考文章:
SQL Server - 雙主動模式叢集環境架設
http://caryhsu.blogspot.tw/2012/01/sql-server.html


5、高可用性復原模式比較

在SQL Server 2012上由於多加了AlwaysOn,所以可以只針對單一的資料庫進行HA,而且在硬體的選擇上也更多元化,建議有興趣的使用者可以參考我的AlwaysOn的相關文章。

High Availability Recovery Time:
Technology Recovery Time (approx.)
Oracle RAC 30 – 60 seconds*
SQL Server 2012 AlwaysOn Availability Groups <45 seconds
SQL Server 2012 Failover Cluster Seconds to minutes



參考文章:
隱藏在Oracle 真實應用集群 (RAC) 市場訊息背後的真實
http://www.microsoft.com/china/sql/prodinfo/compare/oracle/oracle-rac.mspx
Real World Oracle Real Application Cluster challenges
http://www.linxcel.co.uk/Whitepapers/Real-World%20Challenges%20for%20Oracle%20RAC%20Implementation-Issue%201.pdf
Why Oracle RAC Might Not Be Suitable For You A Competitive Review of Real Application Clusters (RAC)
http://download.microsoft.com/download/C/D/C/CDCA80B2-FD63-49C5-AC66-8E3A179E31F7/SQL_Server_2012_Why_Oracle_RAC_Might_Not_Be_Suitable_For_You_Apr2012.pdf


關鍵字:SQL ServerOracleRACOracle Real Application ClustersCost容錯叢集Cluster

沒有留言:

張貼留言