⑴ 該選擇哪個開源資料庫哪一個更好
1.MySQL 5
作為當今最流行的開放源碼資料庫之一,MySQL資料庫為用戶提供了一個相對簡單的 解決方案,適用於廣泛的應用程序部署,能夠降低用戶的TCO。MySQL是一個多線程、結構化查詢語言(SQL)資料庫伺服器。MySQL的執行性能高, 運行速度快,容易使用。
MySQL包括以下幾個關鍵優勢:
◆ 可靠的性能和服務MySQL向公眾提供所有資料庫伺服器軟體的早期版本,都是利用開放源碼進行為期幾個月的測試之後才發布作為生產之用。
◆ 易於使用和部署MySQL的結構體系易於定製,運行速度快,其獨特的多存儲引擎結構為企業客戶提供了靈活性, 為資料庫管理系統帶來緊致性和穩定性,易於部署。
◆ 自由獲得源碼可以隨時訪問MySQL源代碼,其策略確保了自由性,避免鎖定某家公司或平台。
◆ 跨平台支持MySQL可用於20多種不同平台,包括主要的linux系統、Mac OS X、Unix和Windows
◆ 可信賴的開發力量MySQL擁有大量的用戶基礎,也擁有高素質、有經驗的開發團隊。
◆ 滿足企業需求MySQL結構體系簡單易用,運行速度極快,能夠處理企業資料庫絕大多數的應用需求。
2008年12月8日,Sun Microsystems公司宣布,正式對外提供MySQL 5.1軟體 —— 這是全球最受歡迎的開源資料庫MySQL的一個極其重要的新版本。MySQL 5.1 GA版現通過以下三種模式提供,以滿足不同用戶的各種特殊需求:
◆MySQL Community Server —— Sun的MySQL 資料庫的免費開源版。這一GPL許可的全功能軟體的目標用戶是個人技術用戶,他不需要商業支持或是享有優惠的機上服務。
◆MySQL Enterprise Server —— 它作為MySQL Enterprise訂購的一部分來提供,它最可靠、最安全,提供的是MySQL資料庫的最新版本,其目標用戶是有法人的IT用戶。該模式的訂戶每月可收 到快速軟體升級服務,每個季度可收到帶有最新補丁程序的「服務包」 —— 還能訪問僅供預覽的監測工具,享受全天候7*24的生產技術支持。
◆MySQL Embedded Server —— 這是MySQL軟體的商業許可模式,讓ISV和OEM將一個高速的、佔用空間很小的資料庫嵌入或打包到他們自己的產品中,而不需要免費的GPL許可。
2. PostgreSQL
PostgreSQL是一個功能齊全、開放源碼的對象一關系性資料庫管理系統 (ORDBMS)。目前,PostgreSQL的穩定版本為8.4版,具有豐富的特性和商業級資料庫管理系統的特質。這是一次向高質量大型資料庫管理系統 方向的飛躍。PostgreSQL是很富特色的開源資料庫管理系統,其特性覆蓋SQL-2/SQL-92和SQL-3/SQL-99。
◆ 豐富的數據類型PostgreSQL包括了豐富的數據類型支持,其中有些數據類型連商業資料庫都不具備,比如IP類型和幾何類型等。
◆ 功能全面PostgreSQL是全功能的開源軟體資料庫,全面支持事務、子查詢、多版本並行控制系統和數據完整性檢查等特性。
◆ 活躍的開發隊伍PostgreSQL擁有一支活躍的開發隊伍,在他們的努力下,PostgreSQL的質量日益提高,增強了人們使用PostgreSQL 的信心。
◆ 豐富的介面PostgreSQL支持幾乎所有類型的資料庫客戶端介面。
◆ 支持多種平台PostgreSQL是目前支持平台最多的資料庫管理系統之一,所支持的平台多達十幾種,包括不同的系統和不同的硬體體系。
◆ 滿足商用需求PostgreSQL的特性已經完全可以滿足絕大部分用戶的需要,勝任任何中上規模的應用業務,甚至可以支持生產資料庫達TB級大小的數據 量,已經逼近32位計算的極限。
◆ 強大的擴展能力PostgreSQL擁有強大的擴展能力,可以容易地擴展數據類型、內部函數和操作符等。
從技術角度來說,POStgreSQL採用經典的C/S(Client /Server)結構,即一個客戶端對應一個伺服器端守護進程的模式。這個守護進程分析客戶端來的查詢請求,生成規劃樹,進行數據檢索,並最終把結果格式 化輸出後返回給客戶端。為了便於客戶端的程序編寫,由資料庫伺服器提供統一的客戶端C介面。不同的客戶端介面都源自這個C介面, 比如ODBC、JDBC、Python、Perl、Tcl、C/C++和ESQL等。
PostgreSQL還欠缺的是一些高端資料庫管理系統所需的特性,比如聯機熱備 份、資料庫集群、更優良的管理工具、更加自動化的系統優化功能和用以提高資料庫性能的機制等。這些也是PostgreSQL正在不斷努力的。
3.Ingres r3
CA 公司在2004年11月發布適用於linux的Ingres r3資料庫軟體。Ingres r3按照C A Trusted Open Source License(CATOSL,CA可信開放源代碼許可)授杖,取得此授權的人可以查看Ingres r3資料庫的源代碼,並免費下載該軟體。CATosL由通用公共許可衍生而來, 符合Open Source Iniliative (OSI) 的要求。
Ingres r3資料庫平台的新功能如下:
◆ 高可用性
Ingres r3包含集群軟體,當集群配置中的一個資料庫或伺服器節點出現故障時,仍能保證服務的不問斷性。在預防系統故障的同時,Ingres r3還提供「縮放自如」的功能,讓用戶把眾多低成本的伺服器連結起來. 以強化信息處理的性能。
◆ 可擴展性和可靠性
Ingres通過並行查詢處理將單個查詢細分為多個組件,利用所有現有資源並行處理 這些組件,從而提供可伸縮性能。同時,Ingres支持Oracle Cluster File System(OCFS)for Linux 和IBM Distributed Lock Manager(OpenDLM ),為用戶提供全新的群集功能,獲得所需的可擴展性和可靠性。
◆ 技術與性能
Ingres是第一個以Zope RDBMS Persistence引擎為基礎的初始資料庫(Initial Database),其表分區和索引功能滿足超大型資料庫部署的需求。
◆ 集成性
Ingres可以在異構環境中與其它應用程序和數據進行無縫集成。隨著Linux在 企業IT環境中的漸趨流行,這一集成功能尤為重要。其易於集成的特點使它能夠與多種應用開發工具一起使用。此外,Ingres使用行業標準的連接選件,支 持開發人員在J2EE框架、.NET環境,或者同時在兩個環境下工作,特別適用於嵌入式應用。
◆ 服務
CA 公司將為Ingres r3提供支持和保障服務, 同時CA技術服務中心還提供多種可定製的培訓課程和服務,包括現場培訓或遠程培訓,這些培訓和服務可以幫助客戶更加有效地利用Ingres r3的特性。
4.MaxDB
MaxDB 前身是企業級的開源資料庫SAP DB,現由MySQL繼續組織開發。MaxDB是一個適應繁重任務、經過SAP認證的開源OLTP資料庫,OLTP的使用為其提供了可靠性、可用性、擴展 性和高性能。MaxDB擁有大型資料庫的全面特點,與Oracle具有一定的兼容性,體積不大,可以在Linux上運行, 即將推出的MaxDB 7.6版本將支持64位計算技術,可以運行於64位的Linux平台和HP-UX。
MaxDB和MySQL這兩個產品的外型相似。MySQL的優勢主要集中於產品的運 行性能和穩定性,用戶通過一個簡單界面就可以容易地執行操作和管理。MaxDB提供的先進性能則主要體現在企業級資料庫的運用上。和MySQL相 比,MaxDB體型稍大,但與Oracle、DB2相比,幾十兆的體積就能實現相近的功能,是相當錯的。目前,MaxDB的各種管理器、查詢器和客戶端還 在不斷地完善中。
為吸引Java開發者,MaxDB 7.6將支持由IBM創建的、基於Java的Eclipse開發框架。它還支持MySQL代理程序,允許MaxDB和MySQL產品共享數據,並允許開發 者創建能透明使用這兩種資料庫的應用。MaxDB還具備有監視性能,和能夠自動提出保持平滑運行建議的工具。
MaxDB適用於大型mySAP Business Suite環境,其它需要大型企業級資料庫功能的場合, 以及用來補充MySQL資料庫伺服器的不足。高性能、可用性、運行的可靠性、可擴展性、易於使用,以及較低的總體成本正是企業部署DBMS環境所需要的若 干特性。MaxDB滿足了企業用戶的這些需求,其具體特性包括如下:
◆ 降低企業SAP運行的費用成本;
◆ 配置簡單,管理維護成本低廉;
◆ 完善的備份和恢復功能;
◆ 為大容量的用戶和工作量而設計;
◆ 資料庫容量可達TB級;
◆ 提供集群和熱備份支持,帶來高可用性;
◆ 同步管理器(Synchronization Manager)可以控制企業范圍內的數據復制;
◆ 輕松使用圖形化的資料庫工具;
◆ 可用於所有的企業硬體和操作系統平台;
目前,全世界大約有60000名用戶部署和應用MaxDB資料庫,其中包 NToyota、Intel、DaimlerChrysler、Braun-Gillette、Bayer、Colgate、Yamaha和 Deutsche Post (德國郵政局)等。作為一個目標指向企業級應用的開源資料庫,MaxDB正在不斷地發展和完善中。
◆ 支持所有主要的SAP解決方案。
你可以去范果網裡面看看,還有很多都是不錯的,選擇最適合的。
⑵ 四大開源資料庫是哪些
如果打算為項目選擇一款免費、開源的資料庫,那麼你可能會在MySQL與PostgreSQL之間猶豫不定。MySQL與PostgreSQL都是免
費、開源、強大、且功能豐富的資料庫。你主要的問題可能是:哪一個才是最好的開源資料庫,MySQL還是PostgreSQL呢?該選擇哪一個開源資料庫
呢?
在選擇資料庫時,你所做的是個長期的決策,因為後面如果再改變決定將是非常困難且代價高昂的。你希望一開始就選擇正確。兩個流行
的開源資料庫MySQL與PostgreSQL常常成為最後要選擇的產品。對這兩個開源資料庫的高層次概覽將會有助於你選擇最適合自己需要的。
MySQL
MySQL相對來說比較年輕,首度出現在1994年。它聲稱自己是最流行的開源資料庫。MySQL就是LAMP(用於Web開發的軟體包,包括
Linux、Apache及Perl/PHP/Python)中的M。構建在LAMP棧之上的大多數應用都會使用MySQL,包括那些知名的應用,如
WordPress、Drupal、Zend及phpBB等。
一開始,MySQL的設計目標是成為一個快速的Web伺服器後端,使用
快速的索引序列訪問方法(ISAM),不支持ACID。經過早期快速的發展之後,MySQL開始支持更多的存儲引擎,並通過InnoDB引擎實現了
ACID。MySQL還支持其他存儲引擎,提供了臨時表的功能(使用MEMORY存儲引擎),通過MyISAM引擎實現了高速讀的資料庫,此外還有其他的
核心存儲引擎與第三方引擎。
MySQL的文檔非常豐富,有很多質量不錯的免費參考手冊、圖書與在線文檔,還有來自於Oracle和第三方廠商的培訓與支持。
MySQL近幾年經歷了所有權的變更和一些頗具戲劇性的事件。它最初是由MySQL
AB開發的,然後在2008年以10億美金的價格賣給了Sun公司,Sun公司又在2010年被Oracle收購。Oracle支持MySQL的多個版
本:Standard、Enterprise、Classic、Cluster、Embedded與Community。其中有一些是免費下載的,另外一
些則是收費的。其核心代碼基於GPL許可,對於那些不想使用GPL許可的開發者與廠商來說還有商業許可可供使用。
現在,基於最初的
MySQL代碼還有更多的資料庫可供選擇,因為幾個核心的MySQL開發者已經發布了MySQL分支。最初的MySQL創建者之一Michael
"Monty"
Widenius貌似後悔將MySQL賣給了Sun公司,於是又開發了他自己的MySQL分支MariaDB,它是免費的,基於GPL許可。知名的
MySQL開發者Brian Aker所創建的分支Drizzle對其進行了大量的改寫,特別針對多CPU、雲、網路應用與高並發進行了優化。
PostgreSQL
PostgreSQL標榜自己是世界上最先進的開源資料庫。PostgreSQL的一些粉絲說它能與Oracle相媲美,而且沒有那麼昂貴的價格和傲慢的客服。它擁有很長的歷史,最初是1985年在加利福尼亞大學伯克利分校開發的,作為Ingres資料庫的後繼。
PostgreSQL是完全由社區驅動的開源項目,由全世界超過1000名貢獻者所維護。它提供了單個完整功能的版本,而不像MySQL那樣提供了多個
不同的社區版、商業版與企業版。PostgreSQL基於自由的BSD/MIT許可,組織可以使用、復制、修改和重新分發代碼,只需要提供一個版權聲明即
可。
可靠性是PostgreSQL的最高優先順序。它以堅如磐石的品質和良好的工程化而聞名,支持高事務、任務關鍵型應用。
PostgreSQL的文檔非常精良,提供了大量免費的在線手冊,還針對舊版本提供了歸檔的參考手冊。PostgreSQL的社區支持是非常棒的,還有來
自於獨立廠商的商業支持。
數據一致性與完整性也是PostgreSQL的高優先順序特性。PostgreSQL是完全支持ACID特性
的,它對於資料庫訪問提供了強大的安全性保證,充分利用了企業安全工具,如Kerberos與OpenSSL等。你可以定義自己的檢查,根據自己的業務規
則確保數據質量。在眾多的管理特性中,point-in-time
recovery(PITR)是非常棒的特性,這是個靈活的高可用特性,提供了諸如針對失敗恢復創建熱備份以及快照與恢復的能力。但這並不是
PostgreSQL的全部,項目還提供了幾個方法來管理PostgreSQL以實現高可用、負載均衡與復制等,這樣你就可以使用適合自己特定需求的功能
了。
⑶ MySQL和PostgreSQL比較,哪個資料庫更好
如果打算為項目選擇一款免費、開源的資料庫,那麼你可能會在MySQL與PostgreSQL之間猶豫不定。MySQL與PostgreSQL都是免費、開源、強大、且功能豐富的資料庫。你主要的問題可能是:哪一個才是最好的開源資料庫,MySQL還是PostgreSQL呢?該選擇哪一個開源資料庫呢? 在選擇資料庫時,你所做的是個長期的決策,因為後面如果再改變決定將是非常困難且代價高昂的。你希望一開始就選擇正確。兩個流行的開源資料庫MySQL與PostgreSQL常常成為最後要選擇的產品。對這兩個開源資料庫的高層次概覽將會有助於你選擇最適合自己需要的。 MySQL MySQL相對來說比較年輕,首度出現在1994年。它聲稱自己是最流行的開源資料庫。MySQL就是LAMP(用於Web開發的軟體包,包括Linux、Apache及Perl/PHP/Python)中的M。構建在LAMP棧之上的大多數應用都會使用MySQL,包括那些知名的應用,如WordPress、Drupal、Zend及phpBB等。
⑷ 各類資料庫的優點缺點
優點:資料庫系統是用來管理數據的,建立的數理邏輯和集合操作基礎上的。
具有高效、可靠、完整、自同步等特性,是業務系統進行數據控制的最佳選擇。
資料庫系統一般提供高效的數據控制和數據檢索功能,採用SQL語言來進行數據操作。
目前市面上流行的資料庫系統很多:較小型的資料庫系統有:mysql,MSSQL_SERVER等等,適用於企業級的大型資料庫有:ORACEL,DB2(IBM),INFORMIX(IBM)等等
缺點:安全性不夠,加了用戶級密碼容易破解
C/S
結構下對伺服器要求很高,否則容易造成
MDB
損壞並發數255。
但是對高強度操作適應性差,如果伺服器不夠好,網路不夠好,編程的方法不夠好,6-7個人同時訪問就能導致
MDB
損壞或者並死不能將
VBA
代碼開發的軟體系統直接編譯成
EXE
可執行文件。
不能脫離
ACCESS
或者
ACCESS
RUNTIME
環境,該環境相對其他軟體體積較大(50M左右)
⑸ 急求幾個社會科學(經濟學優先)的網上資料庫
推薦幾個吧。北京大學中國經濟研究中心資料庫www.ccerdata.com
中國經濟信息網資料庫http://202.116.93.189:81
中經網經濟統計資料庫http://202.116.93.189:82
萬德資料庫(wind)http://www.wind.com.cn/
⑹ MySQL與PostgreSQL比較 哪個資料庫更好
如果打算為項目選擇一款免費、開源的資料庫,那麼你可能會在MySQL與PostgreSQL之間猶豫不定。MySQL與PostgreSQL都是
免費、開源、強大、且功能豐富的資料庫。你主要的問題可能是:哪一個才是最好的開源資料庫,MySQL還是PostgreSQL呢?該選擇哪一個開源數據
庫呢?
在選擇資料庫時,你所做的是個長期的決策,因為後面如果再改變決定將是非常困難且代價高昂的。你希望一開始就選擇正確。兩個流行的開源資料庫MySQL與PostgreSQL常常成為最後要選擇的產品。對這兩個開源資料庫的高層次概覽將會有助於你選擇最適合自己需要的。
MySQL
MySQL
相對來說比較年輕,首度出現在1994年。它聲稱自己是最流行的開源資料庫。MySQL就是LAMP(用於Web開發的軟體包,包括
Linux、Apache及Perl/PHP/Python)中的M。構建在LAMP棧之上的大多數應用都會使用MySQL,包括那些知名的應用,如
WordPress、Drupal、Zend及phpBB等。
一開始,MySQL的設計目標是成為一個快速的Web伺服器後端,使用快速的
索引序列訪問方法(ISAM),不支持ACID。經過早期快速的發展之
後,MySQL開始支持更多的存儲引擎,並通過InnoDB引擎實現了ACID。MySQL還支持其他存儲引擎,提供了臨時表的功能(使用MEMORY存
儲引擎),通過MyISAM引擎實現了高速讀的資料庫,此外還有其他的核心存儲引擎與第三方引擎。
MySQL的文檔非常豐富,有很多質量不錯的免費參考手冊、圖書與在線文檔,還有來自於Oracle和第三方廠商的培訓與支持。
MySQL
近幾年經歷了所有權的變更和一些頗具戲劇性的事件。它最初是由MySQL
AB開發的,然後在2008年以10億美金的價格賣給了Sun公司,Sun公司又在2010年被Oracle收購。Oracle支持MySQL的多個版
本:Standard、Enterprise、Classic、Cluster、Embedded與Community。其中有一些是免費下載的,另外一
些則是收費的。其核心代碼基於GPL許可,對於那些不想使用GPL許可的開發者與廠商來說還有商業許可可供使用。
現在,基於最初的
MySQL代碼還有更多的資料庫可供選擇,因為幾個核心的MySQL開發者已經發布了MySQL分支。最初的MySQL創建者之一 Michael
"Monty"
Widenius貌似後悔將MySQL賣給了Sun公司,於是又開發了他自己的MySQL分支MariaDB,它是免費的,基於GPL許可。知名的
MySQL開發者Brian Aker所創建的分支Drizzle對其進行了大量的改寫,特別針對多CPU、雲、網路應用與高並發進行了優化。
PostgreSQL
PostgreSQL標榜自己是世界上最先進的開源資料庫。PostgreSQL的一些粉絲說它能與Oracle相媲美,而且沒有那麼昂貴的價格和傲慢的客服。它擁有很長的歷史,最初是1985年在加利福尼亞大學伯克利分校開發的,作為Ingres資料庫的後繼。
PostgreSQL
是完全由社區驅動的開源項目,由全世界超過1000名貢獻者所維護。它提供了單個完整功能的版本,而不像MySQL那樣提供了
多個不同的社區版、商業版與企業版。PostgreSQL基於自由的BSD/MIT許可,組織可以使用、復制、修改和重新分發代碼,只需要提供一個版權聲
明即可。
可靠性是PostgreSQL的最高優先順序。它以堅如磐石的品質和良好的工程化而聞名,支持高事務、任務關鍵型應用。
PostgreSQL的文檔非
常精良,提供了大量免費的在線手冊,還針對舊版本提供了歸檔的參考手冊。PostgreSQL的社區支持是非常棒的,還有來自於獨立廠商的商業支持。
數
據一致性與完整性也是PostgreSQL的高優先順序特性。PostgreSQL是完全支持ACID特性的,它對於資料庫訪問提供了強大的安全性
保證,充分利用了企業安全工具,如Kerberos與OpenSSL等。你可以定義自己的檢查,根據自己的業務規則確保數據質量。在眾多的管理特性
中,point-in-time
recovery(PITR)是非常棒的特性,這是個靈活的高可用特性,提供了諸如針對失敗恢復創建熱備份以及快照與恢復的能力。但這並不是
PostgreSQL的全部,項目還提供了幾個方法來管理PostgreSQL以實現高可用、負載均衡與復制等,這樣你就可以使用適合自己特定需求的功能
了。
平台
MySQL與PostgreSQL都出現在一些高流量的Web站點上:
MySQL:Slashdot、Twitter、Facebook與Wikipedia
PostgreSQL:Yahoo使用了一個修改的PostgreSQL資料庫來處理每天數以億計的事件,還有Reddit和Disqus
MySQL
與PostgreSQL都能運行在多個操作系統上,如Linux、Unix、Mac OS
X與Windows。他們都是開源、免費的,因此測試他們時的唯一代價就是你的時間與硬體。他們都很靈活且具有可伸縮性,可用在小型系統和大型分布式系統
上。MySQL在一個領域上要比PostgreSQL更進一步,那就是它的觸角延伸到了嵌入式領域,這是通過libmysqld實現的。
PostgreSQL不支持嵌入式應用,依然堅守在傳統的客戶端/伺服器架構上。
MySQL通常被認為是針對網站與應用的快速資料庫後端,
能夠進行快速的讀取和大量的查詢操作,不過在復雜特性與數據完整性檢查方面不太盡如人意。
PostgreSQL是針對事務型企業應用的嚴肅、功能完善的資料庫,支持強ACID特性和很多數據完整性檢查。他們二者都在某些任務上具有很快的速
度,MySQL不同存儲引擎的行為有較大差別。MyISAM引擎是最快的,因為它只執行很少的數據完整性檢查,適合於後端讀操作較多的站點,不過對於包含
敏感數據的讀/寫資料庫來說就是個災難了,因為MyISAM表最終可能會損壞。MySQL提供了修復MySQL表的工具,不過對於敏感數據來說,支持
ACID特性的InnoDB則是個更好的選擇。
與之相反,PostgreSQL則是個只有單一存儲引擎的完全集成的資料庫。你可以通過調整postgresql.conf文件的參數來改進性能,也可以調整查詢與事務。PostgreSQL文檔對於性能調優提供了非常詳盡的介紹。
MySQL與PostgreSQL都是高可配置的,並且可以針對不同的任務進行相應的優化。他們都支持通過擴展來添加額外的功能。
一個常見的誤解就是MySQL要比PostgreSQL更容易學習。關系資料庫系統都是非常復雜的,這兩個資料庫的學習曲線其實是差不多的。
標准兼容性
PostgreSQL
旨在實現SQL兼容性(當前標準是ANSI-SQL:2008)。MySQL則兼容大部分SQL,不過還有自己的擴展,可以支
持NoSQL特性,這在參考手冊中都有介紹。每種方式都有優缺點。兼容標准會讓資料庫管理員、資料庫開發者與應用開發者更舒服一些,因為這意味著他們只需
學習一套標准、一套特性和命令即可。這會節省時間,提升效率,也不會被鎖定在特定的廠商上。
支持使用非標準的自定義功能的人們認為這樣可
以快速採用新的特性,而不必等待標准進程完成。ANSI/ISO標准在不斷演化,因此標准兼容性也是個
變化的目標:知名的關系型資料庫Microsoft SQL Server、Oracle與IBM DB2也只是部分兼容於標准。
結論
雖
然有不同的歷史、引擎與工具,不過並沒有明確的參考能夠表明這兩個資料庫哪一個能夠適用於所有情況。很多組織喜歡使用PostgreSQL,因為
它的可靠性好,在保護數據方面很擅長,而且是個社區項目,不會陷入廠商的牢籠之中。MySQL更加靈活,提供了更多選項來針對不同的任務進行裁剪。很多時
候,對於一個組織來說,對某個軟體使用的熟練程度要比特性上的原因更重要。
⑺ MySQL與PostgreSQL比較 哪個資料庫更好
PostgreSQL被譽為市場上最先進的開源資料庫。數據一致性和完整性等性質都是PostgreSQL的高度優先事項。
MySQL被譽為是最流行的開源資料庫。最初MySQL就被設計為快速的Web伺服器後台,是Web系統的理想資料庫之選,且文檔資源豐富。
PostgreSQL許可是仿照BSD許可模式的,它允許修改代碼,並根據修改者自願是否以開源形式再發布,這種開放式許可對想使用PostgreSQL作為他們解決方案一部分的軟體廠商來說是最理想的,因為PostgreSQL許可不強制衍生解決方案也開源,軟體廠商可以選擇開放他們的源碼,也可以不開放。MySQL是通過GNU GPL共享,並由Oracle控制,GNU GPL更加開放,它鼓勵免費共享代碼,它防止了採用GNU GPL共享的代碼後,也被迫採用源作者GNU GPL許可共享的缺陷。
⑻ 該選擇哪個開源資料庫
21 個最好的免費開源資料庫:
1. MySQL
The most widely used open source database for Web apps (and many other things) remains MySQL. Support for multiple storage engines, clustering, full-text indexing, and plenty of other professional features have allowed numerous other apps profiled here, from WordPress to Movable Type, to rely on MySQL as their default database. Graphical front ends, such as phpMyAdmin and Adminer, make using the database far less of a chore. And for those seeking escape from the long shadow of Oracle, there's a community fork named MariaDB, maintained by MySQL's original lead developer, Monty Widenius.
2. PostgreSQL
When Oracle acquired MySQL, reced the development staff, and more or less killed the open source nature of the project, it reopened a market that MySQL had locked down. PostgreSQL has a much nicer set of drivers and supports both standard ANSI-SQL and extended features, in many cases better than MySQL. On the downside, its long legacy has left it multiprocess in the era of multithreaded. The high-availability/clustering features of PostgreSQL require a lot of elbow grease and leave much to be desired. Yet while organizations look for a community developed database, one of the eldest starts to look pretty good. Many cloud providers, such as Heroku, have chosen PostgreSQL as their RDBMS storage option as well.
3. MongoDB
NoSQL? Document database? The first name that comes to mind is MongoDB, e to a al-edged blade from developer 10gen. On one side, MongoDB has strong venture capital and consequently an extensive marketing strategy. On the other side, it is the only comparatively mature document database in the NoSQL world. Highly scalable horizontally with automated sharding and highly available e to autoreplication, MongoDB offers a very reliable and yet simple solution to modern document database problems. The downsides: Working with stored proceres can be difficult, and performing data manipulation can require writing complex JavaScript code.
4. Hadoop (HBase)
Hadoop is the name brand in big data. It is also the convergence of "clustered storage" systems like Gluster and Ceph with NoSQL. Hadoop is really a collection of projects to solve large and complex data problems. In fact, there are multiple types of databases and query languages built on the overall Hadoop framework. Hadoop's complexity is as legendary as its capability, and its lack of high-availability features has both held it back and created a commercial add-on ecosystem.
The project aims to host very large tables like "billions of rows, millions of columns". It has a REST-ful web service gateway that supports XML, Protobuf, and binary data encoding options.
5. Apache Cassandra
Written in Java, this BigTable-based key-value database is getting more popular by the day. Open source and built to integrate with Hadoop, Cassandra offers the column family solution to developers wanting to move away from the relational database model while working with Hadoop. Focusing mainly on getting in very fast writes and providing high availability, Cassandra has slower reads than some alternatives. It is mostly used for logging purposes and real-time analysis.
Cassandra is a highly scalable second-generation distributed database that is used by giants like Facebook, Digg, Twitter, Cisco & more. It aims to provide a consistent, fault-tolerant & highly available environment for storing data.
6. Couchbase
While Couchbase was a fork of CouchDB, it has become more of a full-fledged data proct and less of a ball of framework than CouchDB. Its transition to a document database will give MongoDB a run for its money. It is multithreaded per node, which can be a major scalability benefit -- especially when hosted on custom or bare-metal hardware. With some nice integration features, including with Hadoop, Couchbase is a great choice for an operational data store.
7. Neo4j
The database for interconnected data, Neo4j provides a reliable Java-based platform for conquering highly interconnected database problems. Available with full ACID transaction compatibility -- rare in a NoSQL database -- Neo4j has a SQL-like query language called Cypher and a scripting language called Gremlin for graph traversals. Best used to accurately and efficiently model highly complex, interconnected networks like network topologies, social networks, and conditional access control problems, it provides indexes on nodes and relationships. Direct path calculations take hundreds of lines of code for a RDBMS but two lines of code for Neo4j.
8. Riak
An open source distributed database written in Erlang and C, Riak treats all nodes equally. No one is a master or a slave. Thus, there is no fear a master will be a single point of failure. However, the masterless, fully distributed model with SNMP monitoring is not available in the open source version. Much simpler than its peers (such as Cassandra), Riak is optimal for places where even seconds of downtime would hurt.
9. Redis
There are many NoSQL databases, but Redis remains close to our heart because it has so many features that some call it a "data structure store." You don't just store numbers and strings -- you can mp in entire hashes, lists, sets, and other complicated structures. Then, to make the deal sweeter, Redis offers replication and persistence.
Redis is an advanced fast key-value database written in C which can be used like memcached, in front of a traditional database, or on its own. It has support for many programming languages & used by popular projects like GitHub or Engine Yard. There is also a PHP client named Rediska for managing Redis databases.
10. Firebird
Firebird is a relational database that can run on Linux, Windows & various UNIX platforms. It offers high performance and powerful language support for stored proceres and triggers.
11. Memcached
Memcached is an in-memory key-value store for small chunks of arbitrary data (strings, objects) from results of database calls, API calls, or page rendering. It is intended for use in speeding up dynamic web applications by alleviating database load.
12. Oracle Berkeley DB
It is an embeddable database engine that provides developers with fast, reliable, local persistence with zero administration. Oracle Berkeley DB is a library that links directly into your application & enables you to make simple function calls rather than sending messages to a remote server for a better performance.
13. Hypertable
Hypertable is a high performance distributed data storage system designed to support applications requiring maximum performance, scalability, and reliability. It is modeled after Google's BigTable and mostly focuses on large-scale datasets.
14. Keyspace
It is a consistently replicated, fault-tolerant key-value store that works in Windows OS. Keyspace offers high availability by masking server/network failures & appearing as a single, highly available service.
15. 4store
4store is a database storage and query engine that holds RDF data. It is written in ANSI C99, designed to run on UNIX-like systems & offers a high performance, scalable & stable platform.
16. MariaDB
MariaDB is a backward compatible, drop-in replacement branch of the MySQL® Database Server. It includes all major open source storage engines + the Maria storage engine.
17. Drizzle
It is a fork of MySQL that focuses on being a reliable database optimized for Cloud and Net applications.
18. HyperSQL
It is a SQL relational database engine written in Java. HyperSQL offers a small & fast database engine which has in-memory and disk-based tables, supports embedded/server modes. Also, it has tools such as a command line SQL tool & GUI query apps.
19. MonetDB
MonetDB is a database system for high-performance applications in data mining, OLAP, GIS, XML Query, text & multimedia retrieval.
20. Persevere
It is an object storage engine and application server (running on Java/Rhino) that provides storage of dynamic JSON data for rapidly develop data-driven JavaScript-based rich internet applications.
21. eXist-db
eXist-db is built using XML technology. It stores XML data according to the XML data model & features efficient, index-based XQuery processing.