什么是數據庫 常見的數據庫類型有哪些?
2022-06-01 10:07:57 閱讀(882)
相信很多的小伙伴在平時都沒有接觸過數據庫這個東西,一位內這涉及到技術層面了,下面萬商云集小編就給大家來詳細介紹一下什么是數據庫 常見的數據庫類型有哪些?希望能幫助到大家。
數據庫常見類型分為四種:層次式數據庫、網絡式數據庫、關系型數據庫、非關系型數據庫。那這幾種數據庫具備什么特點呢?
層次數據庫
層次模型的概念:層次模型是數據處理中發(fā)展較早、技木上也比較成熟的一種數據模型。
層次數據庫系統(tǒng)采用層次模型作為數據的組織方式。
層次數據庫系統(tǒng)的典型代表是IBM公司的IMSDBMS,這是1968年IBM公司推出的第一個大型的商用DBMS,曾經得到廣泛的使用。
層次模型的數據結構:層次模型用樹形結構來表示各類實體以及實體間的聯系?,F實世界中許多實體之間的聯系本來就呈現出一種很自然的層次關系,如行政機構、家族關系等。其特點是將數據組織成有向有序的樹結構層,由處于不同層次的各個結點組成。在數據庫中定義滿足下面兩個條件的基本層次聯系的集合為層次模型:
有且只有一個結點沒有雙親結點,這個結點稱為根結點。
除根結點外,其余各結點有且僅有一個上一層結點作為其“雙親”,而位于其下的較低一層的若千個結點作為其“子女"
網絡式數據庫
按照網狀數據結構建立的數據庫系統(tǒng)稱為網狀數據庫系統(tǒng),其典型代表是DBTG(Data Base Task Group)。用數學方法可將網狀數據結構轉化為層次數據結構。
關系型數據庫
關系型數據庫,是指采用了關系模型來組織數據的數據庫。
關系模型是在1970年由IBM的研究員E.F.Codd博士首先提出的,在之后的幾十年中,關系模型的概念得到了充分的發(fā)展并逐漸成為主流數據庫結構的主流模型。
簡單來說,關系模型指的就是二維表格模型,而一個關系型數據庫就是由二維表及其之間的聯系所組成的一個數據組織。
關系模型中常用的概念:
關系:可以理解為一張二維表,每個關系都具有一個關系名,就是通常說的表名
元組:可以理解為二維表中的一行,在數據庫中經常被稱為記錄
屬性:可以理解為二維表中的一列,在數據庫中經常被稱為字段
域:屬性的取值范圍,也就是數據庫中某一列的取值限制
關鍵字:一組可以唯一標識元組的屬性,數據庫中常稱為主鍵,由一個或多個列組成
關系模式:指對關系的描述。其格式為:關系名(屬性1,屬性2, ... ... ,屬性N),在數據庫中成為表結構
非關系型數據庫
由于非關系型數據庫本身天然的多樣性,以及出現的時間較短,因此,不想關系型數據庫,有幾種數據庫能夠一統(tǒng)江山,非關系型數據庫非常多,并且大部分都是開源的。
這些數據庫中,其實實現大部分都比較簡單,除了一些共性外,很大一部分都是針對某些特定的應用需求出現的,因此,對于該類應用,具有極高的性能。依據結構化方法以及應用場合的不同,主要分為以下幾類:
1).面向高性能并發(fā)讀寫的key-value數據庫:key-value數據庫的主要特點即使具有極高的并發(fā)讀寫性能,Redis,Tokyo Cabinet,Flare就是這類的代表
2).面向海量數據訪問的面向文檔數據庫:這類數據庫的特點是,可以在海量的數據中快速的查詢數據,典型代表為MongoDB以及CouchDB
3).面向可擴展性的分布式數據庫:這類數據庫想解決的問題就是傳統(tǒng)數據庫存在可擴展性上的缺陷,這類數據庫可以適應數據量的增加以及數據結構的變化
但是常用數據庫類型為:關系型數據庫和非關系型數據庫。
關系型數據庫 V.S. 非關系型數據庫
關系型數據庫的最大特點就是事務的一致性:傳統(tǒng)的關系型數據庫讀寫操作都是事務的,具有ACID的特點,這個特性使得關系型數據庫可以用于幾乎所有對一致性有要求的系統(tǒng)中,如典型的銀行系統(tǒng)。
但是,在網頁應用中,尤其是SNS應用中,一致性卻不是顯得那么重要,用戶A看到的內容和用戶B看到同一用戶C內容更新不一致是可以容忍的,或者說,兩個人看到同一好友的數據更新的時間差那么幾秒是可以容忍的,因此,關系型數據庫的最大特點在這里已經無用武之地,起碼不是那么重要了。
相反地,關系型數據庫為了維護一致性所付出的巨大代價就是其讀寫性能比較差,而像微博、facebook這類SNS的應用,對并發(fā)讀寫能力要求極高,關系型數據庫已經無法應付(在讀方面,傳統(tǒng)上為了克服關系型數據庫缺陷,提高性能,都是增加一級memcache來靜態(tài)化網頁,而在SNS中,變化太快,memchache已經無能為力了),因此,必須用新的一種數據結構存儲來代替關系數據庫。
關系數據庫的另一個特點就是其具有固定的表結構,因此,其擴展性極差,而在SNS中,系統(tǒng)的升級,功能的增加,往往意味著數據結構巨大變動,這一點關系型數據庫也難以應付,需要新的結構化數據存儲。
于是,非關系型數據庫應運而生,由于不可能用一種數據結構化存儲應付所有的新的需求,因此,非關系型數據庫嚴格上不是一種數據庫,應該是一種數據結構化存儲方法的集合。
必須強調的是,數據的持久存儲,尤其是海量數據的持久存儲,還是需要一種關系數據庫這員老將。
上面就是關于什么是數據庫 常見的數據庫類型有哪些的全部內容介紹,希望上面的內容能幫助到大家解決這個問題。
未經允許不得轉載,或轉載時需注明出處