本文內容: 什麼是資料庫 什麼是關係資料庫 什麼是非關係型資料庫 PS:雖然這些東西都是一些比較基礎常識的東西,但為了記錄自己的學習之路,也為了為以後的一些突發奇想留下“坑”,所以寫下了這篇博文。 首發日期:2018-04-07 什麼是資料庫? 資料庫是數據的倉庫。 與普通的“數據倉庫”不同的是,數 ...
本文內容:
- 什麼是資料庫
- 什麼是關係資料庫
- 什麼是非關係型資料庫
PS:雖然這些東西都是一些比較基礎常識的東西,但為了記錄自己的學習之路,也為了為以後的一些突發奇想留下“坑”,所以寫下了這篇博文。
首發日期:2018-04-07
什麼是資料庫?
- 資料庫是數據的倉庫。
- 與普通的“數據倉庫”不同的是,資料庫依據“數據結構”來組織數據,因為“數據結構”,所以我們看到的數據是比較“條理化”的(比如不會跟以前的普通文件存儲式存儲成一個文件那麼不條理化,我們的資料庫分成一個個庫,分成一個個表,分成一條條記錄,這些記錄是多麼分明)
- 也因為其“數據結構”式,所以有極高的查找速率(比如B-Tree查找法),(由於專精,可以根據自己的結構特性來快速查找,所以對於資料庫的查找會比較快捷;不像普通文件系統的“查找”那麼通用)
- 如果與EXCEL來比的話,能明顯的看出資料庫的好處,我們能給一個個“欄位”添加“約束”(比如約束一列的值不能為空)
- 資料庫與普通的文件系統的主要區別(起因):資料庫能快速查找對應的數據
什麼是關係型資料庫?
- 關係型資料庫是依據關係模型來創建的資料庫。
- 所謂關係模型就是“一對一、一對多、多對多”等關係模型,關係模型就是指二維表格模型
- 關係型數據可以很好地存儲一些關係模型的數據,比如一個老師對應多個學生的數據(“多對多”),一本書對應多個作者(“一對多”),一本書對應一個出版日期(“一對一”)
- 關係模型是我們生活中能經常遇見的模型,存儲這類數據一般用關係型資料庫
數據的存儲形式:
關係的處理形式:
下麵是一個E-R圖,是多個模型一起用的情況:
常見的關係型資料庫:
Oracle、DB2、PostgreSQL、Microsoft SQL Server、Microsoft Access、MySQL
什麼是非關係型資料庫?
- 非關係型資料庫主要是基於“非關係模型”的資料庫(由於關係型太大,所以一般用“非關係型”來表示其他類型的資料庫)
- 非關係型模型比如有:
常見非關係模型資料庫:
- 列模型:Hbase
- 鍵值對模型:redis,MemcacheDB
- 文檔類模型:mongoDB