SQL與NoSQL

關係型數據庫的核心就是SQL,也就是關係,有很嚴謹的數學基礎-關係代數,能很好的呈現現實世界的複雜聯繫。html

最重要的特性就是對事務的支持,也就是ACID,這是由Jim Gray提出的,他所以榮獲1998年度的圖靈獎面試

這種數據庫,比較適合傳統的企業,以及電商公司,也就是交易型。mongodb


NoSQL,存儲的是key-value對,存儲模型相對簡單,容易擴展,比較適合簡單的業務。數據庫

把任務分解,發往各臺服務器,而後個臺服務器之間經過分佈式文件系統共享數據,底層經過一個存儲結構來存儲數據,這樣就能適應併發量和IO的高要求。安全

 對於有超大量併發的網站,好比facebook,就很適合,固然有這麼大併發量的公司,全世界也沒幾個。服務器


前天去面試,那個公司以前用的mongodb,他們說會有丟數的問題,今天上網查了一下,還真能查到很多丟數的問題。看來這是一個廣泛的問題,說明mongodb在這方面還須要不斷的改進,不然,就只能用於通常的互聯網方面,不太適合對數據質量和安全要求較高的業務。網絡


另外,以前看了一些DB2的資料,裏面提到DB2的一個重要特性DPF,就是數據庫分區特性。一個數據庫中的某個表可能超大,經過這個特性,能實現把這個表的數據自動水平分佈到多臺服務器,多臺服務器之間經過網絡文件系統來共享數據,固然,底層的數據結構,仍是採用B樹實現。數據結構

 

下面是一個訪談,寫的很是好:38期:NoSQL專家王濤訪談:爲何咱們還要作一個NoSQL?併發

ITPUB名人堂第38期:NoSQL專家王濤訪談:爲何咱們還要作一個NoSQL?

http://www.itpub.net/thread-1812251-1-1.html分佈式

相關文章
相關標籤/搜索