1. 程式人生 > >關系型和非關系型數據庫的區別

關系型和非關系型數據庫的區別

TE replace sql語句 microsoft HR 可擴展性 之間 固定 對象

參考:https://blog.csdn.net/longxingzhiwen/article/details/53896702

當前主流的關系型數據庫有Oracle、DB2、Microsoft SQL Server、Microsoft Access、MySQL等。

非關系型數據庫有 NoSql、Cloudant

nosql和關系型數據庫比較?
優點:
1)成本:nosql數據庫簡單易部署,基本都是開源軟件,不需要像使用oracle那樣花費大量成本購買使用,相比關系型數據庫價格便宜。
2)查詢速度:nosql數據庫將數據存儲於緩存之中,關系型數據庫將數據存儲在硬盤中,自然查詢速度遠不及nosql數據庫。
3)存儲數據的格式:nosql的存儲格式是key,value形式、文檔形式、圖片形式等等,所以可以存儲基礎類型以及對象

或者是集合等各種格式,而數據庫則只支持基礎類型。
4)擴展性:關系型數據庫有類似join這樣的多表查詢機制的限制導致擴展很艱難。
缺點:
1)維護的工具和資料有限,因為nosql是屬於新的技術,不能和關系型數據庫10幾年的技術同日而語。
2)不提供對sql的支持,如果不支持sql這樣的工業標準,將產生一定用戶的學習和使用成本。

3)不提供關系型數據庫對事物的處理。

非關系型數據庫的優勢:1. 性能NOSQL是基於鍵值對的,可以想象成表中的主鍵和值的對應關系,而且不需要經過SQL層的解析,所以性能非常高。2. 可擴展性同樣也是因為基於鍵值對,數據之間沒有耦合性,所以非常容易水平擴展

關系型數據庫的優勢:1. 復雜查詢可以用SQL語句方便的在一個表以及多個表之間做非常復雜的數據查詢。2. 事務支持

使得對於安全性能很高的數據訪問要求得以實現。對於這兩類數據庫,對方的優勢就是自己的弱勢,反之亦然。

關系型數據庫的優勢:

1. 保持數據的一致性(事務處理)

2.由於以標準化為前提,數據更新的開銷很小(相同的字段基本上都只有一處)

3. 可以進行Join等復雜查詢

其中能夠保持數據的一致性是關系型數據庫的最大優勢。

關系型數據庫的不足:

不擅長的處理

1. 大量數據的寫入處理

2. 為有數據更新的表做索引或表結構(schema)變更

3. 字段不固定時應用

4. 對簡單查詢需要快速返回結果的處理

關系型和非關系型數據庫的區別