103年地特 三等資料庫 - 考試

Gary avatar
By Gary
at 2015-03-23T10:05

Table of Contents


您好:


從你的應答中發現幾個觀念偏差的地方

處理交易時,若只能循序處理,會造成資源浪費。
例如:
T1 若要執行 10 分鐘,在後面排隊的 T2、T3、T4 .... 每個人都要等 10 分鐘。
不符合經濟效益,所以要做「並行控制」,讓大家的交易可以穿插著執行。

但是,問題就來了:

循序處理 --> 除了浪費時間要等待,沒什麼大問題。
並行控制 --> 會發生「死結、活結、飢餓」,這很嚴重。

而且並行控制的不好,演算法太爛,還會發生:

遺失更新(Lost Update)
不一致分析(Inconsistent Analysis)
未確認相依(Uncommitted Dependency)


這二邊要分的清楚,一個是不想要循序處理所以讓交易並行。
另一個是並行的機制做的不好,引發其它問題。

要知道他們二邊有一點點不同,但事實上最後會黏在一起(後面會說明)。

這裡也不難想像,並行控制雖會引發一大堆問題,但我們還是硬要做並行控制
,這代表它帶來的效益遠超過缺點。


為了避免發生「死結、活結、飢餓」所以我們用:
wait - die
wound - wait
來解決問題。



為了避免發生:
遺失更新(Lost Update)
不一致分析(Inconsistent Analysis)
未確認相依(Uncommitted Dependency)

所以我們用:
鎖定(Locking)
時間戳記(Timestamp)
多重版本並行控制(Multi-version Concurrency Control)

來解決問題。

此為第一個偏差的地方。你把他們混為一談了。
(我知道他們可以合在一起,但先分開看,後面會解釋)






再來。

當優先權與數字搞在一起,就會混淆不清:

數字:1、2、3、4、5
優先:5、4、3、2、1
這是種 First Come First Service(FCFS),就像在銀行、郵局排隊時抽號碼牌,
數字小的,優先權大。

另一種

數字:1、2、3、4、5
優先:1、2、3、4、5

這種就相反,數字小的,優先權小。



但是 Timestamp 強調的是「早、晚」的問題。

當要進行交易 Tx 時,只要去看時戳「有沒有比我晚的已經做過交易了」?

有:我要 roll back transaction
沒有:我可以進行交易,然後把時戳改成我的。

它的演算法就這麼簡單!

唐箏是這樣教的,陳士杰(高手)的講義也這麼寫,有兩位神的加持,看到其它不
同的,就別管它了吧。

細節的地方來了,當「有比我晚的已經做過交易了」,我只能一味 roll back 嗎?
這時再來談:
wait - die
wound - wait

但是,但是,但是!這是在實作資料庫時才用的到,我們在考試的時候,並不用在
Timestamp 裡面考慮 wait die、wound wait

我們現在在考試,不是要幫公司寫一套資料庫管理系統。
也就是說,不用考慮 wait die、wound wait,答案還是寫的出來。

此其二也。


謝謝各位,祝大家都上榜。

各位高手,承讓。


閒聊:

去年地特三的資料庫,改的很嚴,尤其第三大題。
另外,第一大題沒有人發現那裡不對勁嗎? 我站在旁邊觀察很久,版上都沒人提出來。
好吧,讀書去。



--
Tags: 考試

All Comments

Doris avatar
By Doris
at 2015-03-26T15:01
那裡不對勁呢?可以po出來大大討論看看
Olga avatar
By Olga
at 2015-03-28T18:27
大家討論看看
Hedwig avatar
By Hedwig
at 2015-03-30T18:08
不對勁的點?
Kama avatar
By Kama
at 2015-04-01T19:54
是不是指(二)裡的2題?
Skylar Davis avatar
By Skylar Davis
at 2015-04-04T01:20
抱歉沒事
Oscar avatar
By Oscar
at 2015-04-04T16:51
剛看一下題目也太恐怖…
Vanessa avatar
By Vanessa
at 2015-04-06T14:14
我沒考地特,不過第一次看到真的會看不懂要多看幾次,沒
Hamiltion avatar
By Hamiltion
at 2015-04-11T07:13
給的條件老師有說可以自己假設但要寫出來
Franklin avatar
By Franklin
at 2015-04-12T03:13
特殊化沒畫完整其實還好因為有d可以知道不會重複
Odelette avatar
By Odelette
at 2015-04-16T17:37
多值屬性有複合屬性其實也不會影響結果,都要KEY+多值屬
Elizabeth avatar
By Elizabeth
at 2015-04-17T17:49
性來成為另一個關聯以上是個人想法
Zenobia avatar
By Zenobia
at 2015-04-19T08:10
所以考試 直接寫roll back??
Cara avatar
By Cara
at 2015-04-22T14:39
「有沒有比我晚的已經做過交易了」 要roll bcak的是
哪個交易??優先權高的還是低的??

brooker 3

Charlie avatar
By Charlie
at 2015-03-23T03:00
徵求brooker 3 原文書或電子檔 請來信報價 謝謝 - ...

104退除役行政法概要 Q43 閱覽卷宗權

Carol avatar
By Carol
at 2015-03-23T00:22
wwwc.moex.gov.tw/ExamQuesFiles/Question/102/102050_3541.pdf 43 下列何者並非行政程序法規定之拒絕閱覽卷宗事由? A.涉及個人隱私、職業秘密、營業秘密,依法規規定有保密之必要者 B.有關專門知識、技能或資格所為之考試、檢定或鑑定等有關資料,其公開或提 ...

方智口袋書 & 高進歷題 詳解

Joseph avatar
By Joseph
at 2015-03-22T23:42
考試快到了,是否已經具備基本觀念?還是還在做一些很難卻不會考的題目呢? 上榜生推荐您方智口袋書詳解--將方智老師口袋書中的所有反應式由前到後清 楚解析,從課本何處以及反應相關名稱、記法通通一次蒐集,讓您在最短時間 内清楚自己到底懂不懂此題的概念,若是不懂可以再翻閱課本以及做更詳儘的 複習。本詳解已經幫您省下 ...

想請問票據法1130條支票付款提示期限

Linda avatar
By Linda
at 2015-03-22T23:20
票據法第130條 支票之執票人,應於左列期限內,為付款之提示: 一、發票地與付款地在同一省(市)區內者,發票日後七日內。 二、發票地與付款地不在同一省(市)區內者,發票日後十五日內。 三、發票地在國外,付款地在國內者,發票日後二個月內。 想請問怎麼分辨是不是在同一個省市區內 是以直轄市來分辨 或是單純以and ...

103地特三等人事行政(雲嘉區)

Barb Cronin avatar
By Barb Cronin
at 2015-03-22T23:16
背景:畢業於護理系,當過半年精神科護士,護士工作不可怕,可怕的是醫療體系對護理人員 的壓榨,及在醫院中護理人員好像是隨時可取而代之的物品罷了,體會日夜顛倒的血汗生活 ,覺得此路不可行便轉行了,在家苦讀四個月考上了公路特考上班去,後來看到資位制的缺 點,才開始準備高普考,前幾年斷斷續續的準備,後來全職兩年不過期 ...