Database ecosystem

在資訊系統領域之中,空有系統功能不一定能有所貢獻。目前凡俱有一定使用量的軟體,其背後都有著強大的軟體生態系在支撐著,其必然包含了技術面、應用面、工具面、及商業面的支援。換句話說,軟體是由人來使用的,它必須要滿足各種使用角度的人,才能夠持續發展。然而,沒有任何一套軟體是完美的,所以需要一個軟體生態系來互利共生。老牌的PostgreSQL,歷史悠久,是典型的關聯式資料庫系統,近年來積極轉型,卻仍不捨既有穩定發展的特色,故以其為例說明其生態系的發展應具有代表性。

技術面先以歷史來看,PostgreSQL為名是在西元1996年開始的,至今為20年,並一直以Open source的方式發展。開發團隊有良好的制度,提供長期的營運,並且使用者眾多,才能長期位居熱門系統之中。尚不論功能是否強大,至少其滿足了開發者與使用者多數的需求,才能在時代的洪流中存續。

資料庫系統可說是整個應用服務的黑手,它絕對不會是最酷炫的那個模樣,卻必須肩負著資料穩定存取的信任感。PostgreSQL長期專注於關聯式資料庫的核心發展,依賴展現其最尖端的應用服務眾多,以db-engines.com所統計的排名而言,均在前5名之譜,顯示其不論在輿論或人力需求上,都必然有一定有應用服務在支持著。

軟體是必須要被「人」所使用才有意義,良好的技術是必要,但並非唯一。長期使用之下,支援工具的完整度也是相當重要的事。任何系統都無法避免完全不產生錯誤,日常的監控系統就有其必要性,PostgreSQL在知名監控系統Zabbix上有pg_monz[25],也有開源的Open PostgreSQL Monitoring(opm.io)專案[26];圖型化資料庫管理介面常見的pgAdmin[27],也有Web-based PostgreSQL Studio[28];還有輕量化Connection pool的pgBouncer[29];支援分散式資料庫的pgPool[30]……等等。這些工具能讓資料庫系統更接近人與應用的需求,簡化工具流程,才有利於持續使用。

商業化支援一直是開源軟體無法進入主流市場的關鍵,其相關的問題不一定在於軟體本身,而是在於人員的技術支援,終究必須要能夠解決人的問題才能佔有其市場。這部份如Oracle database或Microsoft SQL Server[31],均是熟稔商業經營的領導廠商,凡舉軟體問題、商業合約問題、人力資源問題,都是商業化必須面對的。PostgreSQL近年來才開始有廠商來補強這一塊,如EnterpriseDB[32]、CrystalDB[33]等。而台灣的軟體人才輸出,雖然在技術面可達世界水準,卻在產業面的商業支援一直都相對貧乏,以致於在資料庫系統軟體,呈現大量入超現象。

results matching ""

    No results matching ""