<em id="yr4vk"></em>
<strong id="yr4vk"><track id="yr4vk"></track></strong>
  • <nav id="yr4vk"></nav>

  • 如何選擇最適合你的需求的開源數據庫

    ——

    打印本文              

    開源數據庫 PostgreSQL、MariaDB 和 SQLite 的對比


    了解如何選擇最適合你的需求的開源數據庫。

    -- Sam Bocetta

    在現代的企業級技術領域中,開源軟件已經成為了一股不可忽視的重要力量。借助 開源運動 (open source movement)的東風,涌現除了許多重大的技術突破。

    個中原因顯而易見,盡管一些基于 Linux 的開源網絡標準可能不如專有廠商的那么受歡迎,但是不同制造商的智能設備之間能夠互相通信,開源技術功不可沒。當然也有不少人認為開源開發出來的應用比廠商提供的產品更加好,所以無論如何,使用開源數據庫進行開發確實是相當有利的。

    和其它類型的應用軟件一樣,不同的開源數據庫管理系統之間在功能和特性上可能會存在著比較大的差異。換言之, 不是所有的開源數據庫都是平等的 。因此,如果要為整個組織選擇一個開源數據庫,那么應該重點考察數據庫是否對用戶友好、是否能夠持續適應團隊需求、是否能夠提供足夠安全的功能等方面的因素。

    出于這方面考慮,我們在這篇文章中對一些開源數據庫進行了概述和優缺點對比。遺憾的是,我們必須忽略一些最常用的數據庫。值得注意的是,MongoDB 最近更改了它的許可證,因此它已經不是真正的開源產品了。從商業角度來看,這個決定是很有意義的,因為 MongoDB 已經成為了數據庫托管實際上的解決方案, 約 27000 家公司 在使用它,但這也意味著 MongoDB 已經不再被視為真正的開源產品。

    另外,自從 MySQL 被 Oracle 收購之后,這個產品就已經不再具有開源性質了,MySQL 可以說是數十年來首選的開源數據庫。然而,這為其它真正的開源數據庫解決方案提供了挑戰它的空間。

    下面是三個值得考慮的開源數據庫。

    PostgreSQL

    沒有 PostgreSQL 的開源數據庫清單肯定是不完整的。PostgreSQL 一直都是各種規模企業的首選解決方案。Oracle 對 MySQL 的收購在當時來說可能具有一定的商業意義,但是隨著云存儲的日益壯大, 開發者對 MySQL 的依賴程度或許并不如以前那么大了 。

    盡管 PostgreSQL 不是一個最近幾年才面世的新產品,但它卻是借助了 MySQL 相對衰落 的機會才逐漸成為最受歡迎的開源數據庫之一。由于它和 MySQL 的工作方式非常相似,因此很多熱衷于使用開源軟件的開發者都紛紛轉向 PostgreSQL。

    優勢

    劣勢

    MariaDB

    MariaDB 是 MySQL 的真正開源的發行版本(在 GNU GPLv2 下發布)。在 Oracle 收購 MySQL 之后,MySQL 的一些核心開發人員認為 Oracle 會破壞 MySQL 的開源理念,因此建立了 MariaDB 這個獨立的分支。

    MariaDB 在開發過程中替換了 MySQL 的幾個關鍵組件,但仍然盡可能地保持兼容 MySQL。MariaDB 使用了 Aria 作為存儲引擎,這個存儲引擎既可以作為事務式引擎,也可以作為非事務式引擎。在 MariaDB 分叉出來之前,就 有一些人推測 Aria 會成為 MySQL 未來版本中的標準引擎。

    優勢

    劣勢

    SQLite

    SQLite 可以說是世界上實現最多的數據庫引擎,因為它被很多流行的 web 瀏覽器、操作系統和手機所采用。它最初是作為 MySQL 的輕量級分支所開發的。SQLite 和很多其它的數據庫不同,它不采用客戶端-服務端的引擎架構,而是將整個軟件嵌入到每個實現當中。

    這樣的架構讓 SQLite 擁有一個強大的優勢,就是在嵌入式系統或者分布式系統中,每臺機器都搭載了數據庫的整個實現。這樣的做法減少了系統間的調用,從而大大提高了數據庫的性能。

    優勢

    劣勢

    哪個開源數據庫才是最好的?

    當然,對于開源數據庫的選擇還是取決于業務的需求,尤其是系統的體量。對于小型數據庫或者是使用量比較小的數據庫,可以使用比較輕量級的解決方案,這樣不僅可以加快實現的速度,而且由于系統的復雜程度不算太高,花在調試上的時間成本也不會太高。

    而對于大型的系統,尤其是在成長性企業中,最好還是花時間使用更復雜的數據庫(例如 PostgreSQL)。這是一個磨刀不誤砍柴工的選擇,能夠讓你不至于在后期再重新選擇另一款數據庫。


    上一篇
    下一篇 開源商業模式是萬惡之本?