關系型數據庫與非關系型數據庫的發展前景?
優點:
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. 對簡單查詢需要快速返回結果的處理