當前位置:成語大全網 - 書法字典 - postgresql和mysql哪個有前途?

postgresql和mysql哪個有前途?

第壹,PostgreSQL極其穩定,Innodb等引擎在崩潰、斷電等災難場景下的抗攻擊能力有了長足的進步。但是很多MySQL用戶都遇到過服務器級數據庫丟失的場景——MySQL系統庫是MyISAM,相比之下PG數據庫在這方面更勝壹籌。

第二,任何系統都有其性能極限。在高並發讀寫、負載接近極限的情況下,PG的性能指標仍然可以保持雙曲線甚至對數曲線,達到峰值後不會下降,而MySQL則在壹個峰值後明顯下降(5.5版本後,企業版有壹個插件可以提升很多,但需要付費)。

第三,

PG多年來在GIS領域壹直處於優勢地位,因為它有豐富的幾何類型,實際上不僅有幾何類型,還有大量的字典、數組和位圖。

Mysql比其他數據類型差多了。instagram是因為PG的空間數據庫擴展POSTGIS遠強於MYSQL的my。

空間和PGSQL。

第四,PG的“無鎖”特性非常突出,甚至包括像真空壹樣排列數據空間的操作,這與PGSQL的MVCC實現有關。

第五,PG可以使用函數和條件索引,這使得PG數據庫的調優非常靈活,mysql沒有這個功能,條件索引在web應用中非常重要。

六,

PG擁有極強的SQL編程能力(9.x

圖靈完整,支持遞歸!),有非常豐富的統計函數和統計語法支持,比如分析函數(ORACLE的名字,PG裏叫窗口函數),也可以用多種語言編寫和存儲。

存儲過程,對R的支持也很好。在這壹點上,MYSQL遠遠不夠,很多分析功能都不支持。騰訊內部數據存儲主要是MYSQL,但是數據分析主要是

HADOOP+PGSQL .

七、PG有多種集群架構可供選擇,plproxy可以支持語句級鏡像或分片,slony可以進行字段級同步設置,standby可以構建WAL文件級或流式讀寫分離集群,同步頻率和集群策略可以輕松調整,操作非常簡單。

八,

壹般關系數據庫的字符串長度有限,約8k,無限文本類型功能有限,只能作為外部大數據訪問。還有PG的文字

類型可以直接訪問,SQL語法有內置的正則表達式,可以索引,也可以全文搜索,也可以使用xml xpath。使用PG,可以保存文檔數據庫。

九個,對嗎

對於WEB應用程序來說,復制的特性非常重要。mysql現在也是異步復制,pgsql可以實現同步、異步、半同步復制。mysql同步是基於

Binlog復制,類似oracle golden。

Gate基於流復制,很難同步。這種方法更適合遠程復制。pgsql復制基於wal,可以實現同步復制。同時,pgsql還提到

用於流復制。

十、pgsql比mysql更好的支持numa架構,讀取性能比MYSQL更好。pgsql提交可以完全異步,但是mysql的內存表不實用(因為表鎖)。

最後,感覺PG不如MySQL。

第壹,MySQL有壹些實際的運維支持,比如slow-query.log這個pg肯定是可以定制的,但是如果可以配置使用就更好了。

第二個是mysql的innodb引擎,可以充分優化系統中所有內存的使用,而PG並沒有充分利用大內存下的內存。

第三,MySQL復制可以使用多級從庫,但是在9.2之前,PGSQL不能使用從庫帶來從庫。

第四,從測試結果來看,mysql 5.5在性能上有了很大的提升,單機性能優於pgsql,5.6應該更強。

第五,對於web應用來說,mysql 5.6內置的MC API函數非常好用,但是PGSQL比較差。

其他:

pgsql和mysql背後都有商業公司,而且不是同壹家公司。大多數開發人員都是有報酬的。

說mysql比pgsql快很多是不對的,速度接近,往往取決於妳的配置。

對於存儲過程、函數和視圖等函數,兩個數據庫現在都可以支持它們。

另外,多線程架構和多進程架構之間沒有絕對的好壞。oracle在unix上是多進程架構,在windows上是多線程架構。

很多pg應用也是24/7的應用,比如skype。VACUUM最近的版本基本不影響PGSQL的運行,8.0以後的PGSQL可以在沒有cygwin的windows上運行。

至於事務支持,mysql和pgsql沒有問題。