資訊處理 108 年資料庫應用考古題
題目為考試當年公告版本,實務標準請以現行規範為準。
在現今大數據(Big Data)盛行的時代,已經有許多大數據平台提供各種 不同的服務,而在這些平台上運行的軟體多半包括有Data Warehouse、Data Mining、OLTP(Online Transaction Processing)、OLAP(Online Analytical Processing)、ETL(Extract, Transform, Load)等: ㈠ 試說明此五個軟體的主要功用。(15 分) ㈡ 試說明此五個軟體的相互運作關係,以達成提供大數據服務的目的。 (10 分)
某一資料庫系統內有以下資料表(實底線欄位為主鍵): 課程 教師 課本 資料庫應用 王大明 CS 資料庫應用 王大明 BA 資料庫應用 李大華 CS 資料庫應用 李大華 BA 資料庫實務 王大明 CS 資料庫實務 王大明 CE 試說明此資料表為何符合BCNF 正規化形式、但不符合第四階正規化形 式?(15 分)應如何修改使之符合第四階正規化形式?(10 分)
當資料庫系統發生故障時,回復處理常採用交易記錄回復處理(Log-based Recovery)。試說明此種回復處理方式的原理以及運作過程。(25 分)
某一資料庫系統內有以下三個資料表: 教師資料表(實底線欄位為主鍵) 教師編號 姓名 科系 P001 王大明 CS P002 李大華 BA 課程資料表(實底線欄位為主鍵) 課程編號 名稱 學分數 C101 資料庫應用 3 C102 網路概論 3 C103 多媒體導論 4 修課資料表(實底線欄位為主鍵) 教師編號 課程編號 學生編號 教室 時間 成績 P001 C101 S2003 A513 13:30 86 P002 C103 S6121 A226 14:30 72 P002 C103 S6186 A226 14:30 80 ㈠ 試寫出一個SQL 指令,建立一個視界(View),以顯示每位教師的開 課資料以及修習這些課程的學生資料。(10 分) ㈡ 試寫出一個SQL 指令,建立一個統計性摘要視界(View),以顯示每 位教師的開課數以及開課總學分數。(15 分)
有關交易管理中並行控制(concurrency control)的主要目的,是維持各 別不同交易在共時情況下,在完成後仍然保有可循序性(serializability), 用以保證交易的正確無誤。(每小題10 分,共20 分) ㈠請說明何謂交易的可循序性?並用以下交易1 與交易2 二筆交易所進 行的動作,具體舉例在何種共時狀況下會違反可循序性,造成問題。 ㈡請您提出一種控制機制可以保證共時交易的可循序性。並請使用該控 制機制,以交易1 與交易2 二筆交易為例,簡要說明如何達成共時交 易的可循序性。 交易1 交易2 read(x) read(x) x = x + 1000 if x >=100 write(x) x = x - 100 Commit write(x) Commit