PostgreSQL新版提高Oracle兼容性 欲與甲骨文試比高?
原創【51CTO快譯】商業開源數據庫廠家EnterpriseDB與6月17日發布了***的Postgres Plus高級服務器版,其目標是提高與Oracle數據庫的兼容性,EnterpriseDB是開源數據庫PostgreSQL(也叫做Postgres)背后的主要商業支持公司。
其實Postgres Plus高級服務器版并非完全開源,它是在開源的PostgreSQL數據庫基礎之上添加了許多附加特性,以提高和Oracle數據庫的兼容性。
在8.3 R2發行版中,EnterpriseDB添加了許多性能和可伸縮性選項,有意思的是現在Oracle購買了Sun的開源數據庫MySQL,而EnterpriseDB現在也獲得了IBM的投資。
EnterpriseDB CEO Ed Boyajian透露,這個版本對企業更有吸引力和可行性,受經濟危機的影響,很多已經部署了Oracle的企業正在考慮將它們的非關鍵業務轉移到Postgres。
截至目前Oracle還未對其競爭對手EnterpriseDB發布新版數據庫這一事件做出任何評論。
Boyajian說Postgres Plus高級服務器版中的新的Oracle兼容特性關注的是降低成本,風險和從Oracle數據遷移應用程序的時間。
EnterpriseDB***架構師Jim Mlodgenski說實際上這一次發布是該公司第五代Oracle兼容性產品了,在以前的版本中僅僅做了那些比較容易實現的事情,在這個版本中我們深入到Oracle行為中去了,一個最明顯的例子就是事務控制。
Mlodgenski說實際上事務控制的靈感是來自EnterpriseDB的客戶洛杉磯時報,它們注意到事務是發生在Oracle數據庫往數據庫寫入數據行時的。
除了提供Oracle兼容性特征外,EnterpriseDB還給數據庫添加了新的可伸縮性特性,其中一個例子就是“無限緩存,Infinite Cache”,它基于開源的memcached應用程序。(51CTO編輯推薦:從memcached看MySQL和關系數據庫的未來)
Mlodgenski說分布式內存緩存已經很常見了,但從系統管理和數據庫視角來看還是非常困難的。我們的做法是將分布式內存緩存放在數據庫前面,然后將其推送到數據庫,這樣就允許開發人員使用簡單的SQL接口訪問分布式內存緩存,并且系統管理開銷現在是由數據庫自身控制的了。Mlodgenski說無限緩存對于讀操作性能有10到20倍的提升。欲更多的了解分布式數據庫,可參考51CTO之前發布的分布式數據庫的前世今生一文。
也可以通過一些叫做異步預取(Asynchronous Pre-Fetch)的技術提升性能,異步預取是一個高性能查詢解決方案,它使你的磁盤資源得到更高效地利用,它提前告訴內核你需要的是那一塊數據,對于那些報表型應用程序這個特性非常的好,你可以從磁盤上快速獲得大塊的數據。
由于無限緩存和Oracle兼容性特性都是有專利保護的特性,因此目前僅Postgres Plus高級服務器版具有這些特性,異步預取特性在下一個開源PostgreSQL發行版中也將取消。
目前PostgreSQL 8.4已經處于RC 1狀態。
Mlodgenski說異步預取特性來自我們的客戶,它是通過社區模式實現的,我們會將其放到PostgreSQL社區版中,這是我們回饋社區的一個極好的例子。
原文:Postgres More Compatible with Oracle
作者:Sean Michael Kerner
【編輯推薦】