什么是關(guān)系數(shù)據(jù)庫(kù)和非關(guān)系數(shù)據(jù)庫(kù) 關(guān)系型數(shù)據(jù)庫(kù)與非關(guān)系型數(shù)據(jù)庫(kù)的發(fā)展前景?
關(guān)系型數(shù)據(jù)庫(kù)與非關(guān)系型數(shù)據(jù)庫(kù)的發(fā)展前景??jī)?yōu)點(diǎn):1)成本:nosql數(shù)據(jù)庫(kù)簡(jiǎn)單易部署,基本都是開源軟件,不需要像使用oracle那樣花費(fèi)大量成本購(gòu)買使用,相比關(guān)系型數(shù)據(jù)庫(kù)價(jià)格便宜。2)查詢速度:nosq
關(guān)系型數(shù)據(jù)庫(kù)與非關(guān)系型數(shù)據(jù)庫(kù)的發(fā)展前景?
優(yōu)點(diǎn):
1)成本:nosql數(shù)據(jù)庫(kù)簡(jiǎn)單易部署,基本都是開源軟件,不需要像使用oracle那樣花費(fèi)大量成本購(gòu)買使用,相比關(guān)系型數(shù)據(jù)庫(kù)價(jià)格便宜。
2)查詢速度:nosql數(shù)據(jù)庫(kù)將數(shù)據(jù)存儲(chǔ)于緩存之中,關(guān)系型數(shù)據(jù)庫(kù)將數(shù)據(jù)存儲(chǔ)在硬盤中,自然查詢速度遠(yuǎn)不及nosql數(shù)據(jù)庫(kù)。
3)存儲(chǔ)數(shù)據(jù)的格式:nosql的存儲(chǔ)格式是key,value形式、文檔形式、圖片形式等等,所以可以存儲(chǔ)基礎(chǔ)類型以及對(duì)象或者是集合等各種格式,而數(shù)據(jù)庫(kù)則只支持基礎(chǔ)類型。
4)擴(kuò)展性:關(guān)系型數(shù)據(jù)庫(kù)有類似join這樣的多表查詢機(jī)制的限制導(dǎo)致擴(kuò)展很艱難。
缺點(diǎn):
1)維護(hù)的工具和資料有限,因?yàn)閚osql是屬于新的技術(shù),不能和關(guān)系型數(shù)據(jù)庫(kù)10幾年的技術(shù)同日而語(yǔ)。
2)不提供對(duì)sql的支持,如果不支持sql這樣的工業(yè)標(biāo)準(zhǔn),將產(chǎn)生一定用戶的學(xué)習(xí)和使用成本。
3)不提供關(guān)系型數(shù)據(jù)庫(kù)對(duì)事物的處理。
非關(guān)系型數(shù)據(jù)庫(kù)與關(guān)系型數(shù)據(jù)庫(kù)各自的優(yōu)勢(shì)
非關(guān)系型數(shù)據(jù)庫(kù)的優(yōu)勢(shì):
1. 性能NOSQL是基于鍵值對(duì)的,可以想象成表中的主鍵和值的對(duì)應(yīng)關(guān)系,而且不需要經(jīng)過(guò)SQL層的解析,所以性能非常高。
2. 可擴(kuò)展性同樣也是因?yàn)榛阪I值對(duì),數(shù)據(jù)之間沒(méi)有耦合性,所以非常容易水平擴(kuò)展。
關(guān)系型數(shù)據(jù)庫(kù)的優(yōu)勢(shì):
1. 復(fù)雜查詢可以用SQL語(yǔ)句方便的在一個(gè)表以及多個(gè)表之間做非常復(fù)雜的數(shù)據(jù)查詢。
2. 事務(wù)支持使得對(duì)于安全性能很高的數(shù)據(jù)訪問(wèn)要求得以實(shí)現(xiàn)。對(duì)于這兩類數(shù)據(jù)庫(kù),對(duì)方的優(yōu)勢(shì)就是自己的弱勢(shì),反之亦然。
非關(guān)系型數(shù)據(jù)庫(kù)的優(yōu)勢(shì)和劣勢(shì)
關(guān)系型數(shù)據(jù)庫(kù)把所有的數(shù)據(jù)都通過(guò)行和列的二元表現(xiàn)形式表示出來(lái)。
關(guān)系型數(shù)據(jù)庫(kù)的優(yōu)勢(shì):
1. 保持?jǐn)?shù)據(jù)的一致性(事務(wù)處理)
2.由于以標(biāo)準(zhǔn)化為前提,數(shù)據(jù)更新的開銷很?。ㄏ嗤淖侄位旧隙贾挥幸惶帲?/p>
3. 可以進(jìn)行Join等復(fù)雜查詢
其中能夠保持?jǐn)?shù)據(jù)的一致性是關(guān)系型數(shù)據(jù)庫(kù)的最大優(yōu)勢(shì)。
關(guān)系型數(shù)據(jù)庫(kù)的不足:
不擅長(zhǎng)的處理
1. 大量數(shù)據(jù)的寫入處理
2. 為有數(shù)據(jù)更新的表做索引或表結(jié)構(gòu)(schema)變更
3. 字段不固定時(shí)應(yīng)用
4. 對(duì)簡(jiǎn)單查詢需要快速返回結(jié)果的處理
二維表的行.列各稱為什么?
在關(guān)系數(shù)據(jù)庫(kù)模型中,二維表的列稱為屬性或者說(shuō)是字段,二維表的行稱為記錄或者說(shuō)是元組。
關(guān)系數(shù)據(jù)庫(kù),是建立在關(guān)系數(shù)據(jù)庫(kù)模型基礎(chǔ)上的數(shù)據(jù)庫(kù),借助于集合代數(shù)等概念和方法來(lái)處理數(shù)據(jù)庫(kù)中的數(shù)據(jù)。
單一的數(shù)據(jù)結(jié)構(gòu)----關(guān)系(表文件)。關(guān)系數(shù)據(jù)庫(kù)的表采用二維表格來(lái)存儲(chǔ)數(shù)據(jù),是一種按行與列排列的具有相關(guān)信息的邏輯組,它類似于Excle工作表。一個(gè)數(shù)據(jù)庫(kù)可以包含任意多個(gè)數(shù)據(jù)表。