CGFT大數(shù)據(jù)技術(shù)原理中關(guān)系數(shù)據(jù)庫的關(guān)鍵特性有哪些?關(guān)系數(shù)據(jù)庫的關(guān)鍵特性包括完善的事務(wù)機制和高效的查詢機制。關(guān)系數(shù)據(jù)庫的事務(wù)機制是由1998年圖靈獎獲得者、被譽為“數(shù)據(jù)庫事務(wù)處理*”的詹姆斯·格雷提出的,一個事務(wù)原子性、一致性、隔離性、持續(xù)性等“ACID”四性,有了事務(wù)機制,數(shù)據(jù)庫中的各種操作可以*數(shù)據(jù)的一致性修改。
關(guān)系數(shù)據(jù)庫還擁有*高效的查詢處理引擎,可以對查詢語句進行語法分析和性能優(yōu)化,*查詢的高效執(zhí)行。
但是,關(guān)系數(shù)據(jù)庫引以為傲的兩個關(guān)鍵特性,到了Web2.0時代卻成了“雞肋”,主要表現(xiàn)在以下幾個方面。
1.Web2.0網(wǎng)站系統(tǒng)通常不要求嚴格的數(shù)據(jù)庫事務(wù)
對于許多Web2.0網(wǎng)站而言,數(shù)據(jù)庫事務(wù)已經(jīng)不是那么重要。
比如,對于微博網(wǎng)站而言,如果一個用戶發(fā)布微博過程出現(xiàn)錯誤,可以直接丟棄該信息,而不必像關(guān)系數(shù)據(jù)庫那樣執(zhí)行復(fù)雜的回滾操作,這樣并不會給用戶造成什么損失。而且,數(shù)據(jù)庫事務(wù)通常有一套復(fù)雜的實現(xiàn)機制來*數(shù)據(jù)庫一致性,需要大量系統(tǒng)開銷,對于包含大量頻繁實時讀寫請求的Web2.0網(wǎng)站而言,實現(xiàn)事務(wù)的代價是難以承受的。
2.Web2.0并不要求嚴格的讀寫實時性
對于關(guān)系數(shù)據(jù)庫而言,一旦有一條數(shù)據(jù)記錄成功插入數(shù)據(jù)庫中,就可以立即被查詢。
這對于銀行等金融機構(gòu)而言,是*重要的。銀行用戶肯定不希望自己剛剛存入一筆錢,卻無法在系統(tǒng)中立即查詢到這筆存款記錄。但是,對于Web2.0而言,卻沒有這種實時讀寫需求,用戶的微博粉絲數(shù)量增加了10個,在幾分鐘后顯示更新后的粉絲數(shù)量,用戶可能也不會察覺。
3.Web2.0通常不包含大量復(fù)雜的SQL查詢
復(fù)雜的SQL查詢通常包含多表連接操作,在數(shù)據(jù)庫中,多表連接操作代價高昂,因此,各類SQL查詢處理引擎都設(shè)計了十分巧妙的優(yōu)化機制,通過調(diào)整選擇、投影、連接等操作的順序,達到盡早縮小參與連接操作的元組數(shù)目的目的,從而降低連接代價、提高連接效率。但是,Web2.0網(wǎng)站在設(shè)計時就已經(jīng)盡量減少甚至避免這類操作,通常只采用單表的主鍵查詢,因此,關(guān)系數(shù)據(jù)庫的查詢優(yōu)化機制在Web2.0中也就難以有所作為。
