維基百科上這樣定義:
以一定方式儲(chǔ)存在一起、能與多個(gè)用戶共享、具有盡可能小的冗余度、與應(yīng)用程序彼此獨(dú)立的數(shù)據(jù)集合。
簡(jiǎn)單講,數(shù)據(jù)庫(kù)是一個(gè)數(shù)據(jù)倉(cāng)庫(kù),用來存儲(chǔ)結(jié)構(gòu)化數(shù)據(jù)。
早期比較流行的數(shù)據(jù)庫(kù)模型有三種,分別為層次式數(shù)據(jù)庫(kù)、網(wǎng)絡(luò)式數(shù)據(jù)庫(kù)和關(guān)系型數(shù)據(jù)庫(kù)。而在當(dāng)今的互聯(lián)網(wǎng)(IT行業(yè))中,最常用的數(shù)據(jù)庫(kù)模型主要是兩種,即關(guān)系型數(shù)據(jù)庫(kù)和非關(guān)系型數(shù)據(jù)庫(kù)。
關(guān)系型數(shù)據(jù)庫(kù):
創(chuàng)建在關(guān)系模型基礎(chǔ)上的數(shù)據(jù)庫(kù),借助于集合代數(shù)等數(shù)學(xué)概念和方法來處理數(shù)據(jù)庫(kù)中的數(shù)據(jù)?,F(xiàn)實(shí)世界中的各種實(shí)體以及實(shí)體之間的各種關(guān)聯(lián)均采用關(guān)系模型來表示。
數(shù)據(jù)保存在不同的二維表里,而一個(gè)關(guān)系型數(shù)據(jù)庫(kù)就是由二維表及其之間的聯(lián)系所組成的一個(gè)數(shù)據(jù)組織。
傳統(tǒng)的關(guān)系型數(shù)據(jù)庫(kù),如MySql、Oracle、db2、SqlServer、PostgreSql等采用行式存儲(chǔ)法。
非關(guān)系型數(shù)據(jù)庫(kù):
非關(guān)系型數(shù)據(jù)庫(kù)也被稱為 NoSQL(Not Only SQL的縮寫) 數(shù)據(jù)庫(kù),是對(duì)不同于傳統(tǒng)的關(guān)系型數(shù)據(jù)庫(kù)的數(shù)據(jù)庫(kù)管理系統(tǒng)的統(tǒng)稱,可用于超大規(guī)模數(shù)據(jù)的存儲(chǔ)。這些類型的數(shù)據(jù)存儲(chǔ)不需要固定的模式(當(dāng)然也有固定的模式),無需多余的操作就可以橫向擴(kuò)展。
NoSQL數(shù)據(jù)庫(kù)擁有高并發(fā)、易擴(kuò)展、可伸縮性,大數(shù)據(jù)下讀寫能力較強(qiáng),而且操作簡(jiǎn)單,弱結(jié)構(gòu)化存儲(chǔ)等通用優(yōu)點(diǎn)。
NoSQL 劃分為 4 種類型:鍵值數(shù)據(jù)庫(kù)、列式數(shù)據(jù)庫(kù)、文檔數(shù)據(jù)庫(kù)和圖形數(shù)據(jù)庫(kù)。
鍵值數(shù)據(jù)庫(kù):使用一個(gè)哈希表,表中的 Key(鍵)用來定位 Value(值),即存儲(chǔ)和檢索具體的 Value。
典型代表:Memcached、Redis(臨時(shí)性鍵值存儲(chǔ)),ROMA、Redis (永久性鍵值存儲(chǔ))
優(yōu)點(diǎn):
列式數(shù)據(jù)庫(kù):以列簇式存儲(chǔ),每行列數(shù)可變,將一列數(shù)據(jù)存儲(chǔ)在一起。
典型代表:Cassandra、HBase、HP Vertica、EMC Greenplum
優(yōu)點(diǎn):
缺點(diǎn):
文檔數(shù)據(jù)庫(kù):通過鍵來定位一個(gè)文檔的,是鍵值數(shù)據(jù)庫(kù)的一種衍生品。
典型代表:MongoDB,CouchDB
優(yōu)點(diǎn):
圖形數(shù)據(jù)庫(kù):以圖論為基礎(chǔ),用圖來表示一個(gè)對(duì)象集合,包括頂點(diǎn)及連接頂點(diǎn)的邊。
典型代表:Neo4J、OrientDB、InfoGrid、Infinite Graph 、GraphDB
優(yōu)點(diǎn):
MySql:關(guān)系型數(shù)據(jù)庫(kù),瑞典MySql公司開發(fā),屬于Oracle公司下的產(chǎn)品,是一個(gè)客戶機(jī)/服務(wù)器結(jié)構(gòu)的應(yīng)用。
優(yōu)點(diǎn):
缺點(diǎn):
Oracle:關(guān)系型數(shù)據(jù)庫(kù),甲骨文公司開發(fā)。在整個(gè)數(shù)據(jù)庫(kù)領(lǐng)域一直處于領(lǐng)先地位,是目前世界上最流行的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)。
優(yōu)點(diǎn):
缺點(diǎn):
db2:關(guān)系型數(shù)據(jù)庫(kù),IBM公司研制。主要應(yīng)用于大型應(yīng)用系統(tǒng),具有較好的可伸縮性,支持從大型機(jī)到單用戶環(huán)境。
優(yōu)點(diǎn):
缺點(diǎn):
SqlServer:關(guān)系型數(shù)據(jù)庫(kù),微軟公司產(chǎn)品。
優(yōu)點(diǎn):
缺點(diǎn):
PostgreSql:關(guān)系型數(shù)據(jù)庫(kù),美國(guó)加州大學(xué)計(jì)算機(jī)系研發(fā)。
優(yōu)點(diǎn):
缺點(diǎn):
#僅以MongoDB為例簡(jiǎn)單介紹
MongoDB:介于關(guān)系數(shù)據(jù)庫(kù)和非關(guān)系數(shù)據(jù)庫(kù)之間,C++語(yǔ)言編寫,分布式文件存儲(chǔ),可擴(kuò)展的高性能數(shù)據(jù)存儲(chǔ),是一種NoSQL的數(shù)據(jù)庫(kù)。存放xml、json、bson類型的數(shù)據(jù),數(shù)據(jù)結(jié)構(gòu)由鍵值(key=>value)對(duì)組成。
優(yōu)點(diǎn):
缺點(diǎn):
南大通用、武漢達(dá)夢(mèng)、人大金倉(cāng)、神舟通用等。
聯(lián)系客服