作者young60509 (帥氣小安)
看板Grad-ProbAsk
標題[理工] 107清大計系第6題
時間Thu Jan 31 22:37:26 2019
https://imgur.com/a/ZiR5btu
這題要怎麼判斷
剛好一個小題一種嗎
怎麼感覺c小題linked跟indexed都可以
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.218.93.111
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Grad-ProbAsk/M.1548945450.A.9E0.html
※ 編輯: young60509 (180.218.93.111), 01/31/2019 22:38:17
1F:推 gama79530: 我自己的意見 01/31 23:52
2F:→ gama79530: 第一個用indexed,第二個用contiguous,第三個用linked 01/31 23:52
3F:→ gama79530: 第一個用indexed是因為OS的swap space需要多大並不固定 01/31 23:56
4F:→ gama79530: ,所以不想用contiguous避免external fragment,但又想 01/31 23:56
5F:→ gama79530: 要有random access的能力所以用這個 01/31 23:56
6F:→ gama79530: 第二個用contiguous,因為資料庫通常你會預設要存取的 01/31 23:59
7F:→ gama79530: 資料量很大,事先開一大塊給資料庫專門使用很合理,而 01/31 23:59
8F:→ gama79530: 且contiguous的話access因為可以直接access所以效率也 01/31 23:59
9F:→ gama79530: 比較好 01/31 23:59
10F:→ gama79530: log檔不用想就是用linked,因為它只會一直往下面寫不需 02/01 00:00
11F:→ gama79530: 要random access,用這個方式最省空間 02/01 00:00
12F:→ young60509: 第二個不是要有insertion嗎? contiguous很難擴充吧? 02/01 18:37
13F:推 gama79530: 以我之前工作時用oracle資料庫的經驗給你參考 02/02 11:26
14F:→ gama79530: 資料庫在處理儲存空間的做法很像是在資料庫裡面在建立 02/02 11:26
15F:→ gama79530: 一個只有他自己能用的檔案系統,資料庫的操作從操作者 02/02 11:26
16F:→ gama79530: 的角度都是在資料最後都是存在table space這個抽象的儲 02/02 11:26
17F:→ gama79530: 存空間上面,這個東西通過設定會對應到一個以上在OS裡 02/02 11:26
18F:→ gama79530: 實際存在的file,這兩者之間的關係就好像OS的檔案系統 02/02 11:26
19F:→ gama79530: 可以有很多顆硬碟一樣,資料會被實際丟到那一個file去 02/02 11:26
20F:→ gama79530: 存放是db的程式去處理的,通常在實務操作的時候對應tab 02/02 11:26
21F:→ gama79530: le space的file建立都至少是用gb作為單位的所以我才會 02/02 11:26
22F:→ gama79530: 說用contiguous比較好,不然檔案太大光index的容量就先 02/02 11:26
23F:→ gama79530: 佔去一大部分 02/02 11:26
24F:→ young60509: 原來如此 感謝 02/03 11:33
25F:推 we777: 我 c 小題是寫 indexed,我的想法是如果 log file 有很多 02/04 22:10
26F:→ we777: 個而且很大,這樣每次 append 的時候,都需要從 list 的 h 02/04 22:10
27F:→ we777: ead 一路找到 tail 再 append,而 indexed 在找 tail 相對 02/04 22:10
28F:→ we777: 會比 link 快一些,但是會損失一些空間去儲存 index @@ 02/04 22:10
29F:推 we777: 啊...我好像忽略 linked 同時也可以記錄檔案結尾位置了,g 02/05 11:16
30F:→ we777: 大才是正解 02/05 11:16