很多只有十幾到幾十個員工的企業(yè)老板詢問,如果他們不想花費(fèi)上千甚至萬元買一款數(shù)據(jù)庫軟件,詢問有沒有一些免費(fèi)的數(shù)據(jù)庫軟件可以使用。事實(shí)上,現(xiàn)在國內(nèi)這種類型的企業(yè)小老板很多,他們的公司需要一個小型的數(shù)據(jù)庫軟件來統(tǒng)計(jì)公司的一些產(chǎn)品資料以及出入庫的信息,數(shù)據(jù)量確實(shí)不大。以前也曾見過,一些小企業(yè)用Office自帶的Access小型數(shù)據(jù)庫,但是仍然覺得不夠便捷。這里,編者推薦幾款適合小企業(yè)使用的開源數(shù)據(jù)庫軟件。
開源數(shù)據(jù)庫MySQL
MySQL是一個開放源碼的小型關(guān)聯(lián)式數(shù)據(jù)庫管理系統(tǒng),開發(fā)者為瑞典MySQL AB公司。目前MySQL被廣泛地應(yīng)用在Internet上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點(diǎn),許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫。
MySQL為多種編程語言提供了API,包括C、C++、C#、Delphi、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等。而其自身是采用C和C++編寫的,使用了多種編譯器進(jìn)行測試,所以,MySQL能夠保證源代碼具有很強(qiáng)的可移植性。這樣的一款數(shù)據(jù)庫,自然能夠支持幾乎所有的操作系統(tǒng),從Unix、Linux到Windows,具體包括AIX、BSDi、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware、NetBSD、OpenBSD、OS/2 Wrap、Solaris、SunOS、Windows等多種操作系統(tǒng)。最重要的是,它是一個可以處理擁有上千萬條記錄的大型數(shù)據(jù)庫。
與此同時,MySQL也產(chǎn)生了很多分支版本的數(shù)據(jù)庫也非常值得推薦。
首先是MariaDB,它是一個采用Maria存儲引擎的MySQL分支版本,是由原來MySQL的作者 Michael Widenius創(chuàng)辦的公司所開發(fā)的免費(fèi)開源的數(shù)據(jù)庫服務(wù)器。與MySQL相比較,MariaDB更強(qiáng)的地方在于它擁有更多的引擎,包括Maria存儲引擎、PBXT存儲引擎、XtraDB存儲引擎、FederatedX存儲引擎,它能夠更快的復(fù)制查詢處理、運(yùn)行的速度更快、更好的功能測試以及支持對Unicode的排序等。
其次是rcona,它為MySQL數(shù)據(jù)庫服務(wù)器進(jìn)行了改進(jìn),在功能和性能上較MySQL有著很顯著的提升。該版本提升了在高負(fù)載情況下的InnoDB的性能,同時,它還為DBA提供一些非常有用的性能診斷工具,并且提供很多參數(shù)和命令來控制服務(wù)器行為。
第三是Percona Server,它使用了諸如google-mysql-tools、Proven Scaling和 Open Query對MySQL進(jìn)行改造。并且,它只包含MySQL的服務(wù)器版,并沒有提供相應(yīng)對 MySQL的Connector和GUI工具進(jìn)行改進(jìn)。
非關(guān)系型數(shù)據(jù)庫NoSQL
從NoSQL的字面上理解,NoSQL就是Not>
當(dāng)然,NoSQL也是隨著互聯(lián)網(wǎng)Web2.0網(wǎng)站的興起才能取得長足的進(jìn)步。關(guān)鍵的需求在于,傳統(tǒng)的關(guān)系數(shù)據(jù)庫在應(yīng)付Web2.0網(wǎng)站,特別是超大規(guī)模和高并發(fā)的SNS類型的web2.0純動態(tài)網(wǎng)站顯得力不從心,暴露了很多難以克服的問題,而非關(guān)系型的數(shù)據(jù)庫則由于其本身的特點(diǎn)得到了非常迅速的發(fā)展。
首先推薦的是Oracle NoSQL Database,這是一個社區(qū)版。Oracle的這個NoSQL Database, 是在10月4號的甲骨文全球大全上發(fā)布的Big Data Appliance的其中一個組件,Big Data Appliance是一個集成了Hadoop、NoSQL Database、Oracle數(shù)據(jù)庫Hadoop適配器、Oracle數(shù)據(jù)庫Hadoop裝載器及R語言的系統(tǒng)。
其次推薦的是Membase。Membase是NoSQL家族的一個新的重量級的成員。Membase是開源項(xiàng)目,源代碼采用了Apache2.0的使用許可。該項(xiàng)目托管在GitHub.Source tarballs上,目前可以下載beta版本的Linux二進(jìn)制包。該產(chǎn)品主要是由North Scale的memcached核心團(tuán)隊(duì)成員開發(fā)完成,其中還包括Zynga和NHN這兩個主要貢獻(xiàn)者的工程師,這兩個組織都是很大的在線游戲和社區(qū)網(wǎng)絡(luò)空間的供應(yīng)商。