建模三件套,database,algorithm,training data。
這個科普文章,讓我們來對比一下市面上常見的DB的性能以及其特殊的工作方式。
市面上常見的有很多,但其中大廠用得比較多的主要還是這幾個:MySQL、Oracle、MongoDB還有HBase。
MySQL
我們一個一個來看,首先是MySQL,免費的開源資源,用的也是最多的。不僅性能強大,擴展了SQL語言的實際應用,而且非常簡潔,同時又是開源資源,不需要前期軟件資源上的投資,通常中小企業都可以使用的。
由于是C和C++編寫的,所以對于操作系統的應用也是非常廣泛,windows,mac還有linux都是可以適應的。
而且作為一個關系型數據庫,通過關系模型構建的數據庫,這種數據庫靈活性高,而且速度快,還支持多線程,所以可以充分利用CPU資源,效率是杠杠滴。
它的特點是既可以作為一個應用程序嵌入到網絡環境中,也可以作為一個庫夾在語言中。這也是展示了他的靈活性。
但是問題存在于它只能局限于一種操作系統,比如處理分布式系統的問題時,sql server只能處理windows下的終端,而我們下面講的Oracle在這一點上可以處理多個操作系統的分布式問題,也算是美中不足的一點吧~
Oracle
接下來我們來看Oracle,相較于同為關系型數據庫卻免費的MySQL,Oracle擁有出色的是他的開放性,應該說是同等條件下最好的開放性DB平臺了。
給予他可以提供高吞吐量,所以大中小微型產業都可以使用他。
就受眾群體來說,還是很廣泛的,再加上對于分布式系統的完美契合,可以說靈活指數是幾款DB里最高的。
MongoDB
下一個是MongoDB。
這個database也是基于分布式系統的,應用的語言很廣泛,主要有Python/ target=_blank class=infotextkey>Python,php,Ruby,JAVA,C,C#,JavaScript,Perl及C++語言的驅動程序。和上面兩款不同的是,MongoDB不是一款關系型數據庫,而是基于文檔類型的數據庫。
這就帶來了一個問題,就是他只適合處理單一文檔的數據,而不是中和多方面的。
總的來說MongoDB可以處理的,MySQL基本上也可以解決。
HBase
最后讓我們來一起看HBase。
Hbase在海量存儲方面做到了爐火純青,在PB層面上也可以采用廉價的PC存儲。極易擴展也是它的特點之一,而且具有比MySQL更好的高并發性能,是一個真正意義上的分布式數據庫系統。
可以說得上是解決高并發問題的選項之一,在面臨分布式系統的架構中占有一席之地。
以上就是四種常見數據庫的特點分析,希望可以讓你了解一點常見數據庫的優劣與不同。