什么是數(shù)據(jù)庫

數(shù)據(jù)庫是一個程序,幫助管理數(shù)據(jù)用的碧浊。那么管理數(shù)據(jù)會面對哪些挑戰(zhàn)呢兜挨?

  • 數(shù)據(jù)在磁盤上可以高效管理的組織方式
  • 并發(fā)時能保證ACID(因為很多系統(tǒng)對ACID的需求不那么嚴(yán)格退唠,所以出現(xiàn)了某些NOSQL提出的最終一致性的調(diào)整)
  • 在程序運行到任何一步發(fā)生斷電/系統(tǒng)崩潰后,能恢復(fù)且保證ACID
  • 分布式ACID
  • 使用內(nèi)存提高數(shù)據(jù)管理性能窜醉,但仍要保證ACID的前提
  • 方便使用

說白了宪萄,就是在保證ACID(數(shù)據(jù)正確性)的前提下,對數(shù)據(jù)進(jìn)行管理的程序酱虎。我提到了很多次ACID雨膨,具體就不展開來講,網(wǎng)上有很多相關(guān)資料读串。無論怎么解讀聊记,其實就是在說保證數(shù)據(jù)的正確性這個議題。

如果要展開說恢暖,數(shù)據(jù)庫的內(nèi)容就很多了排监,我這里就簡要地提幾個關(guān)鍵的地方,短短幾句話不可能面面俱到杰捂,請不要在意行文細(xì)節(jié)上的邏輯漏洞舆床。

  • 行級別的約束,比如性別(男/女)嫁佳,如果一個叫“火車”的性別記錄到數(shù)據(jù)庫里挨队,那這個記錄就失去了準(zhǔn)確性了。
  • 表級的約束蒿往,比如唯一約束uniq盛垦。
  • 跨表級的約束,比如外鍵瓤漏,例如一個學(xué)校有Bob/Lob兩位班主任腾夯,那通過外鍵可以約束A班的班主任只能是Bob或是Lob颊埃。同時也能約束這個系統(tǒng)不能失去班主任Bob和Lob的信息,除非他們已經(jīng)不屬于任何一個班級了蝶俱。
  • 所有針對數(shù)據(jù)的改變都要落到磁盤上班利,大部分?jǐn)?shù)據(jù)庫的做法都是所有的修改都追加寫入日志文件而不是直接修改存放數(shù)據(jù)的文件。這樣就能做到回滾榨呆、斷電保護(hù)等效果罗标。
  • 提高查詢速度的內(nèi)存緩存,數(shù)據(jù)庫會把磁盤上的數(shù)據(jù)放入內(nèi)存進(jìn)行緩存积蜻,如果已經(jīng)緩存好了馒稍,就不會再去磁盤上讀了。雖然是緩存浅侨,仍不能拋棄ACID,這比平時用的如memcache等的緩存要求要嚴(yán)格得多证膨。
  • 提高查詢速度的索引如输,數(shù)據(jù)庫在進(jìn)行很多操作的時候,都可以藉由索引提高速度央勒,比如查詢時select a where b = 1(b有索引)不见,比如進(jìn)行uniq判斷時update a set b = 2(b要求唯一)。
  • 多臺數(shù)據(jù)庫組成的分布式系統(tǒng)崔步,需要保證整體上的ACID稳吮,一種設(shè)計就是一個全局的事務(wù)管理服務(wù)加上每個數(shù)據(jù)庫都使用兩階段提交機(jī)制進(jìn)行分段式事務(wù)管理。

每一個方面的展開井濒,都有許許多多的細(xì)節(jié)灶似,高效合理地數(shù)據(jù)管理是個大工程,所以就像操作系統(tǒng)一樣瑞你,數(shù)據(jù)庫這樣一個程序經(jīng)久不衰酪惭,一直被人關(guān)注著。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末者甲,一起剝皮案震驚了整個濱河市春感,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌虏缸,老刑警劉巖鲫懒,帶你破解...
    沈念sama閱讀 222,590評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異刽辙,居然都是意外死亡窥岩,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,157評論 3 399
  • 文/潘曉璐 我一進(jìn)店門扫倡,熙熙樓的掌柜王于貴愁眉苦臉地迎上來谦秧,“玉大人竟纳,你說我怎么就攤上這事【卫穑” “怎么了锥累?”我有些...
    開封第一講書人閱讀 169,301評論 0 362
  • 文/不壞的土叔 我叫張陵,是天一觀的道長集歇。 經(jīng)常有香客問我桶略,道長,這世上最難降的妖魔是什么诲宇? 我笑而不...
    開封第一講書人閱讀 60,078評論 1 300
  • 正文 為了忘掉前任际歼,我火速辦了婚禮,結(jié)果婚禮上姑蓝,老公的妹妹穿的比我還像新娘鹅心。我一直安慰自己,他們只是感情好纺荧,可當(dāng)我...
    茶點故事閱讀 69,082評論 6 398
  • 文/花漫 我一把揭開白布旭愧。 她就那樣靜靜地躺著,像睡著了一般宙暇。 火紅的嫁衣襯著肌膚如雪输枯。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,682評論 1 312
  • 那天占贫,我揣著相機(jī)與錄音桃熄,去河邊找鬼。 笑死型奥,一個胖子當(dāng)著我的面吹牛瞳收,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播桩引,決...
    沈念sama閱讀 41,155評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼缎讼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了坑匠?” 一聲冷哼從身側(cè)響起血崭,我...
    開封第一講書人閱讀 40,098評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎厘灼,沒想到半個月后夹纫,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,638評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡设凹,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,701評論 3 342
  • 正文 我和宋清朗相戀三年舰讹,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片闪朱。...
    茶點故事閱讀 40,852評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡月匣,死狀恐怖钻洒,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情锄开,我是刑警寧澤素标,帶...
    沈念sama閱讀 36,520評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站萍悴,受9級特大地震影響头遭,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜癣诱,卻給世界環(huán)境...
    茶點故事閱讀 42,181評論 3 335
  • 文/蒙蒙 一计维、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧撕予,春花似錦鲫惶、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,674評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至澜术,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間猬腰,已是汗流浹背鸟废。 一陣腳步聲響...
    開封第一講書人閱讀 33,788評論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留姑荷,地道東北人盒延。 一個月前我還...
    沈念sama閱讀 49,279評論 3 379
  • 正文 我出身青樓,卻偏偏與公主長得像鼠冕,于是被迫代替她去往敵國和親添寺。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,851評論 2 361

推薦閱讀更多精彩內(nèi)容

  • 一懈费、數(shù)據(jù)庫定義 1计露、顧名思義,數(shù)據(jù)庫(DB憎乙,database)是按照數(shù)據(jù)結(jié)構(gòu)來組織票罐、存儲和管理數(shù)據(jù)的“倉庫”。 2...
    IvanHung閱讀 4,496評論 0 2
  • 1泞边、狹義:存儲數(shù)據(jù)的倉庫 2该押、廣義:可以對數(shù)據(jù)進(jìn)行存儲和管理的軟件以及數(shù)據(jù)本身統(tǒng)稱為數(shù)據(jù)庫 數(shù)據(jù)庫是由表、關(guān)系阵谚、操...
    fa54021d36e2閱讀 341評論 0 0
  • 需要原文的可以留下郵箱我給你發(fā)蚕礼,這里的文章少了很多圖烟具,懶得網(wǎng)上粘啦 1數(shù)據(jù)庫基礎(chǔ) 1.1數(shù)據(jù)庫定義 1)數(shù)據(jù)庫(D...
    極簡純粹_閱讀 7,441評論 0 46
  • MySQL技術(shù)內(nèi)幕:InnoDB存儲引擎(第2版) 姜承堯 第1章 MySQL體系結(jié)構(gòu)和存儲引擎 >> 在上述例子...
    沉默劍士閱讀 7,426評論 0 16
  • 我想唱一首歌, 送給2016的那些糾結(jié)奠蹬, 但愿明早睜開眼睛朝聋, 我醒在心想事成的2017。
    吳春年閱讀 343評論 3 3