關係型資料庫和非關係型資料庫的區別
1.關係型資料庫透過外來鍵關聯來建立表與表之間的關係,2.非關係型資料庫通常指資料以物件的形式儲存在資料庫中,而物件之間的關係透過每個物件自身的屬性來決定
比如 有一個學生的資料:
姓名:張三,性別:男,學號:12345,班級:二年級一班
還有一個班級的資料:
班級:二年級一班,班主任:李四
關係型資料庫中,我們建立學生表和班級表來存這兩條資料,並且學生表中的班級儲存的是班級表中的主鍵。
非關係型資料庫中,我們建立兩個物件,一個是學生物件,一個是班級物件,用java來表示就是:
class Student {
String id;
String name;
String sex;
String number;
String classid;
}
class Grade {
String id;
String name;
String teacher;
}
透過設定Student類的classid等於Grade類的id來建立這種關係;
非關係型資料庫中,我們查詢一條資料,結果出來一個陣列,關係型資料庫中,查詢一條資料結果是一個物件。
資料庫
型別特性優點缺點
關係型資料庫
SQLite、Oracle、mysql1、關係型資料庫,是指採用了關係模型來組織
資料的資料庫;
2、關係型資料庫的最大特點就是事務的一致性;
3、簡單來說,關係模型指的就是二維表格模型,
而一個關係型資料庫就是由二維表及其之間的聯絡所組成的一個資料組織。1、容易理解:二維表結構是非常貼近邏輯世界一個概念,關係模型相對網狀、層次等其他模型來說更容易理解;
2、使用方便:通用的SQL語言使得操作關係型資料庫非常方便;
3、易於維護:豐富的完整性(實體完整性、參照完整性和使用者定義的完整性)大大減低了資料冗餘和資料不一致的機率;
4、支援SQL,可用於複雜的查詢。1、為了維護一致性所付出的巨大代價就是其讀寫效能比較差;
2、固定的表結構;
3、高併發讀寫需求;
4、海量資料的高效率讀寫;
非關係型資料庫
MongoDb、redis、HBase1、使用鍵值對儲存資料;
2、分散式;
3、一般不支援ACID特性;
4、非關係型資料庫嚴格上不是一種資料庫,應該是一種資料結構化儲存方法的集合。1、無需經過sql層的解析,讀寫效能很高;
2、基於鍵值對,資料沒有耦合性,容易擴充套件;
3、儲存資料的格式:nosql的儲存格式是key,value形式、文件形式、圖片形式等等,文件形式、圖片形式等等,而關係型資料庫則只支援基礎型別。1、不提供sql支援,學習和使用成本較高;
2、無事務處理,附加功能bi和報表等支援也不好;
注1:資料庫事務必須具備ACID特性,ACID是Atomic原子性,Consistency一致性,Isolation隔離性,Durability永續性。
注2:資料的持久儲存,尤其是海量資料的持久儲存,還是需要一種關聯式資料庫
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31543790/viewspace-2657684/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 非關係型資料庫(NOSQL)和關係型資料庫(SQL)區別詳解資料庫SQL
- SQL與NoSQL(關係型與非關係型)資料庫的區別SQL資料庫
- 關係型資料庫與非關係型資料庫介紹!資料庫
- redis—非關係型資料庫Redis資料庫
- 列舉常見的關係型資料庫和非關係型都有那些?資料庫
- 關係型資料庫資料庫
- 資料庫入門之3張表對比關係型與非關係型資料庫資料庫
- 聊聊非關係型資料庫MongoDB索引資料庫MongoDB索引
- nodejs之MongoDB 非關係型資料庫NodeJSMongoDB資料庫
- 關係型資料庫概要資料庫
- 關係型資料庫原理資料庫
- 關係型和非關係型資料庫一定要對立?達夢資料提供新思路資料庫
- 關係型資料庫之SQL資料庫SQL
- 關係型資料庫之索引資料庫索引
- MYSQL資料庫型別與JAVA型別對應關係MySql資料庫型別Java
- Java資料型別與資料庫欄位型別對應關係Java資料型別資料庫
- mysqlclient操作MySQL關係型資料庫MySqlclient資料庫
- SQLALchemy操作MySQL關係型資料庫MySql資料庫
- FastAPI(44)- 操作關係型資料庫ASTAPI資料庫
- Node MySQL打造關係型資料庫MySql資料庫
- 資料庫——關係型資料庫MySQL--簡單使用資料庫MySql
- 反DDD模式之關係型資料庫模式資料庫
- 平時常見關係型資料庫資料庫
- 資料庫基礎知識詳解五:MySQL中的索引和其兩種引擎、主從複製以及關係型/非關係型資料庫資料庫MySql索引
- 雲關係型資料庫(Relational Database Service,RDS)資料庫Database
- 關係型資料庫分庫分表系列之一資料庫
- 如何將資料從Hadoop匯出到關係型和NoSQL資料庫?HadoopSQL資料庫
- 批量鎖(適用各種關係型資料庫)資料庫
- SQL Server 2016關係型資料庫概覽AZSQLServer資料庫
- 看看關係型資料庫是怎麼吊打Hadoop的資料庫Hadoop
- 常見的關係型資料庫有什麼區別?網路安全入門資料庫
- 關係型資料庫全表掃描分片詳解資料庫
- 分散式關係型資料庫RadonDB體驗歸來分散式資料庫
- 關係型資料庫設計三大正規化資料庫
- 關係型資料庫 RDBMS 的舊與新 — 談談 NewSQL資料庫SQL
- 資料庫多對多表關係資料資料庫
- 並推出了關係型資料庫功能來補充其核心NoSQL資料庫功能資料庫SQL
- 設計資料庫關係模型資料庫模型