Lewis R Cunningham是一位有17年數(shù)據(jù)庫開發(fā)和管理經(jīng)驗的技術人員。他從以下幾個方面比較了上面三個數(shù)據(jù)庫產(chǎn)品的分數(shù):
1 文檔和學習支持
2 易于安裝性
3 易于檢驗成功安裝
4 創(chuàng)建非admin權(quán)限用戶
5 執(zhí)行第一次查詢的時間
6 資源占用
<點擊此處查看原文>
這是我在安裝和開始使用Oracle 10g, PostgreSQL 8 ,以及MySQL 5時做出的比較。我從以下三種藝術形態(tài)來比較一下三種類型的數(shù)據(jù)庫:商業(yè)vs.學術vs.因特網(wǎng)模型。這是從一個想要安裝數(shù)據(jù)庫并對其進行學習的初級使用者的角度做出的比較。我試圖以家庭或者小型商業(yè)用戶的視角來進行說明。
完全大揭密:我非常傾向于Oracle,并且真的希望沒有其他的任何產(chǎn)品能夠真正與之抗衡。
許可費用:我不想要卷入開源和資源保密的爭論中去。Oracle是一個商業(yè)的數(shù)據(jù)庫,要想使用就必須交納許可費用。MySQL 和 PostgreSQL則是開源項目。Oracle為你提供了免費的開發(fā)許可證,用來試驗并創(chuàng)建原型。
配置:我使用的是一臺較老的機器,內(nèi)存256兆,硬盤40G,CPU是633Mhz 的賽揚。操作系統(tǒng)是Windows 2000 專業(yè)版。我想要在低端配置上進行安裝,以便于衡量對于家庭用戶類型的安裝的性能。
操作系統(tǒng):我選擇在Windows下面進行比較,因為我相信這仍然是新近使用數(shù)據(jù)庫的人們的最常見的平臺。我的意思是人們在家里進行安裝。對于新的公司用戶來說,他們就無須對操作系統(tǒng)或者數(shù)據(jù)庫進行選擇,當然這個比較也就沒有意義了。
版本:
PostgreSQL 8.0——PostgreSQL 8.0是一款非常新的產(chǎn)品。我選擇8.0是因為它是最新的版本,并且它很本來就支持Windows。這是第一個不需要模擬器或者第三方重新編譯的真正支持Windows的版本。
MySQL ——MySQL 5.0也是一款非常新的產(chǎn)品。實際上,我使用的版本v5.0.4是一款beta版。我對于應該選擇穩(wěn)定的v4還是beta版的v5猶豫了一陣子。最后我選擇v5是因為v4無法與PostgreSQL 或者 Oracle 進行競爭。V4沒有存儲過程、觸發(fā)器、視圖等。沒有上述特性,我認為它不具有競爭者的資格,而v5則支持上述特性。
Oracle 10g——這是Oracle的最新版本,去年發(fā)布的。我認為,Oracle 10g是數(shù)據(jù)庫重的黃金標準。然而,我還是認為它太過昂貴,并且在產(chǎn)品環(huán)境需要相當?shù)闹R才能對其進行維護。
得分指標:
文檔和入門支持
易于安裝
易于檢驗安裝是否成功
非管理員用戶的創(chuàng)建
運行第一個查詢的時間
資源需求
得分:我給每一個指標打一個從1到10的分數(shù),10表示最好或者最高。
文檔和入門支持
PostgreSQL ——我找到了它對以前很多版本的支持(在Linux, Cygwin等環(huán)境下),但是對Windows的支持卻只有8.0。PostgreSQL 文件管理網(wǎng)站,http://www./docs/,提供了非常好非常完整的文檔。我認為,過去PostgreSQL的一個長處就是它的文檔。
這個網(wǎng)站包括了非常好的安裝文檔。然而,安裝后的文檔和入門文檔就非常有限。我希望他們能夠及時改變這種狀況。
我在google上查詢了“PostgreSQL入門”,獲得上千個點擊,但是幾乎都是版本7的。PostgreSQL 有一些Usenet新聞組支持,但是我發(fā)現(xiàn)他們不是很活躍。
PostgreSQL 文檔得分:5
MySQL ——因為v5是如此的新,以至于現(xiàn)在還沒有很多的文檔。滿世界都是MySQL v3和v4的文檔。查看Amazon 或者BN.com ,MySQL 似乎是相當多的較小的因特網(wǎng)和面向java的公司的選擇。
因為v5是beta版本,我不會給這個指標打分,因為文檔會在發(fā)布的時候給出。V4擁有令人驚訝的文檔,我也非常期望v5在發(fā)布產(chǎn)品的時候能夠擁有同樣多的文檔。我根據(jù)v4的文檔給出得分。
我在google上查詢“MySQL入門”,獲得了數(shù)百萬的點擊,幾乎都是v4的。我沒有找到針對MySQL 的Usenet 新聞組支持,但是我發(fā)現(xiàn)comp.databases 組中發(fā)表了一些對MySQL 的支持。
MySQL 文檔得分:8
Oracle ——Oracle ,作為一個商業(yè)產(chǎn)品,它擁有一大批全職的技術編輯。每個特性都有說明,并且許多特性都有自己的手冊。Oracle提供的安裝文檔非常不錯,但是缺點就是它是由Oracle專用的第三方網(wǎng)站組成的。文檔,和文檔入口一樣,都非常成熟。
除了針對每個操作系統(tǒng)的安裝文檔之外,Oracle還提供了一個《2天成為數(shù)據(jù)庫管理員》的指南。這個文檔對于新用戶來說是不可缺少的。
我在google上搜索“Oracle入門”,可以查到數(shù)百萬個點擊。Oracle還擁有魯棒的Usenet 新聞組支持。
Oracle文檔得分:10
易于安裝
PostgreSQL
我以前沒有在Cygwin(一種用于Windows的Unix環(huán)境)之上使用過PostgreSQL 。我對于安裝趕到非常驚訝。它運行起來非常自然,沒有絲毫紕漏。安裝過程也非???。
PostgreSQL 的安裝是最快的。根據(jù)文檔描述,你可以在沒有管理權(quán)限的情況下進行安裝。因為這是支持Windows(沒有Cygwin)的第一個PostgreSQL 版本,我想要測試一下服務支持。PostgreSQL 作為服務安裝,在機器重啟之后可以沒有問題的啟動。
PostgreSQL 安裝得分:10
MySQL
我過去構(gòu)建了一個網(wǎng)站,主要用于自己娛樂,使用了MySQL 作為數(shù)據(jù)庫。我使用的技術是Java/Apache/MySQL 。根據(jù)已往的經(jīng)驗,我十分期望MySQL 可以在安裝方面勝出。然而,MySQL 是惟一一個在安裝過程中失敗的。我執(zhí)行了清除,然后重新運行安裝程序。又失敗了。我再次清理,重新啟動電腦,然后重新運行安裝程序。這次成功安裝。我不確定是什么引起了錯誤。它隱藏得很深,但是它導致了數(shù)次的失敗。然而,我可以強制通過。記住,這只是一個beta版本。
MySQL 還可以作為服務進行安裝,在機器重啟之后沒有錯誤的啟動。當它運行正確的時候,安裝進行得也很快。
MySQL 安裝得分:5
Oracle
Oracle再一次證明了它是一個非常成熟的產(chǎn)品。在三者當中,Oracle是唯一一個不需要管理員權(quán)限就可以安裝的。這個選項非常好。
并且,它確實非常容易安裝。我沒有碰到錯誤。Oracle也是惟一一個在安裝的最后提示我按下一步按鈕的。這個方法對于新用戶來說非常有用,它幾乎不需要任何努力。所有的數(shù)據(jù)庫都應該提供這種支持。
實際上,Oracle有一個詬病就是它的安裝花費的時間。這對于家庭用戶來說確實是一個問題。有好幾次,我都懷疑我的機器掛掉了,因為我在很長一段時間內(nèi)沒有得到任何的反饋。
Oracle安裝得分:7
易于檢驗安裝是否成功
要驗證安裝是否成功有一點困難,但是上述三種數(shù)據(jù)庫都提供了數(shù)據(jù)訪問工具。我根據(jù)提供的文檔中的指示,在三種環(huán)境都中可以訪問到服務器。
以上三種數(shù)據(jù)庫的驗證得分:10
非管理員用戶的創(chuàng)建:
PostgreSQL :PostgreSQL 使用了標準的CREATE USER語法,我可以輕松地執(zhí)行這個任務。文檔可以指導用戶通過這個任務(出于安全的需要)。
PostgreSQL 創(chuàng)建用戶得分:10
MySQL :在v5版本中也可以使用CREATE USER語法。以前發(fā)布的版本則不可以。因此,文檔是不完整的;不能明顯地看出是否可以使用CREATE USER。對于新用戶,這有點令人困惑。
MySQL 創(chuàng)建用戶得分:7
Oracle:Oracle 使用標準CREATE USER語法,我能夠輕松地執(zhí)行這個任務。文檔可以指導用戶完成這個任務。
Oracle創(chuàng)建用戶得分:10
運行第一個查詢的時間
上述三種數(shù)據(jù)庫文檔集都提供了連接并運行第一個查詢的指南。
上述三種數(shù)據(jù)庫的第一個查詢得分:10
資源需求:
PostgreSQL ——我對于PostgreSQL 的最小資源需求感到十分吃驚。我進行了一些測試,例如在遠程連接的時候打開網(wǎng)絡瀏覽器和MS-Word ,可以看到我的測試機器上面沒有收到任何影響。
我沒有找到最小的硬件需求,但是舊機器上的256兆內(nèi)存看起來足夠了。
PostgreSQL 資源得分:10
MySQL ——MySQL 的資源需求非常小是眾所周知的。這就是它的一個最大的賣點,并且一直如此。我進行了與在PostgreSQL上面進行的同樣的測試,MySQL 執(zhí)行得與PostgreSQL 一樣好。
非常奇怪的是,我也沒有找到MySQL 的最小硬件需求,但是舊機器上面的256兆內(nèi)存看起來是足夠了。
MySQL 資源得分:10
Oracle——Oracle 使用了大多數(shù)的內(nèi)存,并且Oracle 10g使用得比以前的版本還多。實際上,它最好運行在512兆內(nèi)存的機器上,我推薦1G的內(nèi)存。
在測試機上,僅是Oracle的啟動就花了很長時間。當我打開Word,內(nèi)存開始不斷地交換和停滯。開啟了多個遠程連接之后,數(shù)據(jù)庫開始停頓。Oracle可以安裝并運行在256兆內(nèi)存的機器上,但是我不推薦。
Oracle資源得分:3
那么綜合評定如何呢?下面是最終得分:
PostgreSQL: 55
MySQL: 50
Oracle: 50
那么,這就是安裝和第一次使用的得分。這根本不是我期望的結(jié)果。我認為這三者得分如此的高是非常好的。我本沒有期望會得到這個結(jié)果,或者是Oracle和MySQL不分勝負。我也沒有預料到PostgreSQL 會成為第一名。
然而,安裝只是使用數(shù)據(jù)庫的一小部分。還有語言支持、管理、額外的可用特性、安全措施,以及第三方的支持。在不久的將來 ,我還會寫出這些部分的比較。
|
Oracle 10g |
MySQL 5.0 |
PostgreSQL 8.0 |
文檔和學習支持 |
10 |
8 |
5 |
易于安裝性 |
7 |
5 |
10 |
易于檢驗成功安裝 |
10 |
10 |
10 |
創(chuàng)建非admin權(quán)限用戶 |
10 |
7 |
10 |
執(zhí)行第一次查詢的時間 |
10 |
10 |
10 |
資源占用 |
3 |
10 |
10 |
雖然postgresql的文檔只得5分,不過我覺得postgreSQL官方文檔也很全,只是因為還不夠普及所以經(jīng)驗之談得資料很少,我相信以后會多.