Bài giảng Cơ sở dữ liệu nâng cao

Tóm tắt Bài giảng Cơ sở dữ liệu nâng cao: ...n trường không khóa (có giá trị giống nhau với những bản ghi khác nhau trong file dữ liệu). Nếu chỉ mục được thiết lập trên trường khóa không được sắp xếp thì mỗi bản ghi trên file dữ liệu sẽ có tương ứng một bản ghi trong file chỉ mục (Khác với chỉ mục chính: Số bản ghi trong file chỉ mục c...Vi(MaDV, TenDV) Truy vấn đưa ra họ tên của các nhân viên nữ ở đơn vị có tên là „PhongDaoTao‟: 31 32 3.4. Câu hỏi ôn tập chƣơng 3 3.4.1. Trình bày các bước trong quá trình xử lý truy vấn. 3.4.2. Trình bày các phép biến đổi tương đương. 3.4.3. Trình bày thuật toán tối ưu hóa cây đại số... Tạo một cung từ Ti đến Tj; Khi Tj loại bỏ khóa xung đột thì xóa cung tương ứng đi. o Đồ thị có chu trình Deadlock xảy ra. Khi đó một số giao dịch gây ra Deadlock sẽ bị loại bỏ. 2Hai khóa được gọi là xung đột nếu tồn tại một khóa là khóa ghi (Write lock). 43 Hình 5.5: Wait – for – graph ...

pdf60 trang | Chia sẻ: havih72 | Lượt xem: 302 | Lượt tải: 0download
Nội dung tài liệu Bài giảng Cơ sở dữ liệu nâng cao, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
imestamp – Ordering Protocol) 
 Giao dịch T muốn thực hiện write_item(X): 
1. Nếu Read_TS(X) >TS(T) hoặc Write_TS(X) > TS(T) thì bỏ qua và rollback. 
 44 
2. Nếu điều kiện 1 khơng thỏa mãn, cho phép T write_item(X) và gán lại: 
Write_TS(X) = TS(T). 
 Giao dịch T muốn thực hiện read_item(X): 
1. Nếu Write_TS(X) >TS(T) thì bỏ qua và rollback. 
2. Nếu điều kiện 1 khơng thỏa mãn, cho phép T read_item(X) và gán lại: 
Read_TS(X) = Max{Read_TS(X), TS(T)}. 
5.3.Phục hồi hệ thống dựa vào nhật ký giao dịch (Log-based) 
Một cấu trúc thường được dùng để ghi lại những thay đổi trên cơ sở dữ liệu là sổ ghi lộ trình 
(log). Log là một dãy các mẩu tin lộ trình (log records). Một thao tác cập nhật trên cơ sở dữ liệu sẽ 
được ghi nhận bằng một log record. Một log record kiểu mẫu chứa các trường sau: 
 Định danh giao dịch ( transaction identifier ): định danh duy nhất của giao dịch thực hiện 
hoạt động write. 
 Định danh hạng mục dữ liệu ( Data-item identifier ): định danh duy nhất của hạng mục dữ 
liệu được viết ( thường là vị trí của hạng mục dữ liệu trên đĩa ). 
 Giá trị cũ ( Old value ): giá trị của hạng mục dữ liệu trước thao tác write. 
 Giá trị mới ( New value ): giá trị hạng mục dữ liệu sẽ cĩ sau khi write. 
Cĩ một vài log record đặc biệt mang các ý nghĩa riêng. Bảng sau đây chỉ ra một số loại log record 
và ý nghĩa của chúng: 
LOẠI LOG RECORD Ý NGHĨA 
 Giao dịch Ti đã khởi động. 
Giao dịch Ti đã thực hiện thao tác ghi trên hạng mục dữ liệu Xj, Xj 
cĩ giá trị V1 trước khi ghi và nhận giá trị V2 sau khi ghi. 
 Giao dịch Ti đã bàn giao. 
 Giao dịch Ti đã huỷ bỏ. 
Giao dịch muốn thực hiện một thao tác ghi, trước tiên phải tạo ra một log record cho thao 
tác ghi đĩ (trong log file), trước khi giao dịch thay đổi cơ sở dữ liệu. Như vậy, hệ thống cĩ cơ sở để 
huỷ bỏ (undo) một thay đổi đã được làm trên cơ sở dữ liệu bằng cách sử dụng trường Old-value 
trong log record.Log phải được lưu trong những thiết bị lưu trữ bền. Mỗi một log record mới ngầm 
định sẽ được thêm vào cuối tập tin log. 
5.3.1. Cập nhật trì hỗn cơ sở dữ liệu (Deferred Database Modification) 
 Tư tưởng chính của ký thuật cập nhật trì hỗn là trì hỗn việc cập nhật thực sự vào csdl cho 
đến khi giao dịch đạt tới trạng thái commit. 
 Một giao dịch khơng thể thay đổi csdl trên đĩa cho đến khi nĩ đạt tới trạng thái commit. 
 Một giao dịch khơng thể đạt tới trạng thái commit cho đến khi tất cả các thao tác cập nhật 
của nĩ được ghi lại trên file log (WAL: write – ahead logging). 
 45 
 Các thao tác CSDL sẽ khơng được cập nhật cho đến khi giao dịch hồn tất nên khơng cần 
các thao tác UNDO. Cĩ thể phải REDO trong trường hợp hệ thống lỗi sau khi giao dịch đã 
hồn tất nhưng trước khi tất cả các thay đổi được ghi vào cơ sở dữ liệu.Giao dịch Ti cần 
được REDO nếu trong file log chứa cả hai bản ghi: và . Cũng vì vậy 
mà kỹ thuật phục hồi này cịn được gọi là NO – UNDO/ REDO recovery algorithm. Bảng 
sau chỉ ra các loại bản ghi được tạo ra trong file log: 
Thao tác của giao dịch Bản ghi trong file Log 
Giao dịch Ti bắt đầu Ti,Start 
Ti Write(X) Ti, X, New_Value 
Giao dịch Ti hồn tất Ti, Commit 
Ví dụ: Xét ba mục dữ liệu A, B, C với các giá trị ban đầu lần lượt là 1000, 2000, 700 và hai giao 
dịch T1, T2: 
T0: Read(A) 
Bản ghi trong file log 
 A = A – 50 T0,Start 
 Write(A) T0, A, 950 
 Read(B) T0, B, 2050 
 B = B + 50 T0, Commit 
 Write(B) T1, Start 
 T1, C, 600 
T1: Read(C) T1, Commit 
 C = C – 100 
 Write(C) 
Sau đây là một số tình huống xảy ra và hành động của hệ thống phục hồi sử dụng kỹ thuật cập nhật 
trì hỗn cơ sở dữ liệu: 
Tình huống Hệ thống phục hồi 
Giá trị các mục dữ liệu 
A B C 
Lỗi sau khi T0 vừa thực hiện thao tác 
write B. 
Khơng làm gì. 1000 2000 700 
Lỗi sau khi T1 thực hiện Write(C). REDO(T0) 950 2050 700 
5.3.2. Cập nhật tức thời (Immediate Database Modification) 
Kỹ thuật cập nhật tức thời cho phép các thao tác sửa đổi cơ sở dữ liệu cĩ quyền xuất dữ liệu 
tức thời ra đĩa trong khi giao dịch vẫn cịn ở trong trạng thái hoạt động (active state). 
Trong kỹ thuật này khi giao dịch thực hiện thao tác ghi, cơ sở dữ liệu sẽ được cập nhật tức 
thời mà khơng cần đợi đến khi giao dịch đạt tới trạng thái commit.Các thao tác cập nhật vẫn phải 
được ghi lại trong file log trước khi ghi lại trong csdl. 
 46 
Bảng sau chỉ ra các loại bản ghi được tạo ra trong file log: 
Thao tác của giao dịch Bản ghi trong file Log 
Giao dịch Ti bắt đầu Ti, Start 
Ti Write(X) Ti, X, Old_Value, New_Value 
Giao dịch Ti hồn tất Ti,Commit 
5.4.Kỹ thuật phân trang bĩng (Shadow Paging) 
Kỹ thuật “Phân trang bĩng” cũng là kỹ thuật cho phép phục hồi sau lỗi, nhưng ý tưởng thực 
hiện khác với các kỹ thuật dựa trên sổ ghi lộ trình vừa trình bày ở phần trên. 
Bảng trang và ý nghĩa của nĩ: Khái niệm trang đã nĩi được mượn từ lý thuyết về Hệ điều 
hành. Cách quản lý trang cũng được thừa kế từ đĩ. Giả sử rằng cơ sở dữ liệu được phân thành n 
trang và sự phân bố trên đĩa của chúng cĩ thể khơng theo một thứ tự cụ thể nào cả. Tuy nhiên, phải 
cĩ cách để tìm ra nhanh một trang.Người ta dùng bảng trang cho mục đích này.Bảng trang cĩ n đầu 
vào (entry).Mỗi đầu vào ứng với một trang. Một đầu vào chứa một con trỏ, trỏ đến một trang trên 
đĩa. Đầu vào đầu tiên chỉ đến trang đầu tiên của cơ sở dữ liệu, đầu vào thứ hai chỉ đến trang thứ hai 
... 
Hình 5.6: Bảng trang 
Ý tưởng then chốt của kỹ thuật “Phân trang bĩng” là người ta sẽ duy trì hai bảng trang trong 
suốt chu kỳ sống của giao dịch, một bảng trang gọi là “bảng trang hiện hành” (current page table), 
bảng trang cịn lại gọi là “bảng trang bĩng” (shadow page table). Khi giao dịch khởi động, hai bảng 
trang này giống nhau.Bảng trang bĩng sẽ khơng thay đổi suốt quá trình hoạt động của giao dịch. 
Bảng trang hiện hành sẽ bị thay đổi mỗi khi giao dịch thực hiện tác vụ write. Tất cả các thao tác 
 47 
input và output đều sử dụng bảng trang hiện hành để định vị các trang trong đĩa. Điểm quan trọng 
khác là nên lưu bảng trang bĩng vào thiết bị lưu trữ bền. 
Hình 5.7: Current Page và Shadow Page 
Giả sử giao dịch thực hiện tác vụ write(X) và hạng mục dữ liệu X được chứa trong trang thứ i. 
Tác vụ write được thực thi như sau: 
1. Nếu trang thứ i chưa cĩ trong bộ nhớ chính, thực hiện input(X). 
2. Nếu đây là lệnh ghi được thực hiện lần đầu tiên trên trang thứ i bởi giao dịch, sửa đổi bảng 
trang hiện hành như sau: 
a) Tìm một trang chưa được dùng trên đĩa. 
b) Xố trang vừa được tìm xong ở bước 2.a khỏi danh sách các khung trang tự do. 
c) Sửa lại bảng trang hiện hành sao cho đầu vào thứ i trỏ đến trang mới vừa tìm được trong 
bước 2.a. 
d) Gán giá trị xi cho X trong trang đệm (buffer page). 
Để bàn giao một giao dịch, cần làm các bước sau: 
B1. Đảm bảo rằng tất cả các trang đệm trong bộ nhớ chính đã được giao dịch sửa đổi phải 
được xuất ra đĩa. 
B2. Xuất bảng trang hiện hành ra đĩa (khơng được ghi đè lên trang bĩng). 
B3. Xuất địa chỉ đĩa của bảng trang hiện hành ra vị trí cố định trong thiết bị lưu trữ bền. Vị trí 
này chính là nơi chứa địa chỉ của bảng trang bĩng. Hành động này sẽ ghi đè lên địa chỉ 
của bảng trang bĩng cũ. Như vậy, bảng trang hiện hành sẽ trở thành bảng trang bĩng và 
giao dịch được bàn giao. 
 48 
Nếu sự cố xảy ra trước khi hồn thành bước thứ 3, hệ thống sẽ trở về trạng thái trước khi giao 
dịch được thực hiện.Nếu sự cố xảy ra sau khi bước thứ 3 hồn thành, hiệu quả của giao dịch được 
bảo tồn; khơng cần thực hiện thao tác redo nào cả. 
 Kỹ thuật phân trang bĩng cĩ một số điểm lợi hơn so với các kỹ thuật dựa vào file log: 
o Khơng mất thời gian ghi các log record. 
o Khơi phục sau sự cố nhanh hơn, do khơng cần các thao tác undo hoặc redo. 
 Tuy nhiên kỹ thuật phân trang bĩng lại cĩ nhiều nhược điểm: 
o Tốn chi phí bàn giao, xuất nhiều khối ra đĩa: các khối dữ liệu hiện tại, bảng trang hiện 
hành, địa chỉ của bảng trang hiện hành. Trong khi kỹ thuật dựa vào file log chỉ cần xuất ra 
các log record. 
o Gây ra hiện tượng phân mảnh dữ liệu: Do kỹ thuật phân trang bĩng đổi vị trí của trang khi 
trang này bị sửa đổi. 
o Ngồi ra, kỹ thuật phân trang bĩng sẽ gặp nhiều khĩ khăn khi cần đáp ứng yêu cầu phục vụ 
song song cho nhiều giao dịch. Vì những lý do trên, kỹ thuật phân trang bĩng khơng được 
sử dụng rộng rãi. 
 49 
5.5. Câu hỏi ơn tập chƣơng 5 
5.5.1. Trình bày mơ hình khĩa nhị phân. 
5.5.2. Trình bày các luật trong mơ hình khĩa nhị phân. 
5.5.3. Trình bày mơ hình khĩa đọc – ghi. 
5.5.4. Trình bày các luật trong mơ hình khĩa đọc – ghi. 
5.5.5. Trình bày mơ hình khĩa 2 pha. 
5.5.6. Trình bày về các biến thể của giao thức khĩa hai pha. 
5.5.7. Trình bày hiện tượng Deadlock. 
5.5.8. Trình bày các chiến lược ngăn cản và phát hiện Deadlock. 
5.5.9. Trình bày về giao thức thứ tự nhãn thời gian. 
5.5.10. Phân biệt hai kỹ thuật cập nhật trì hỗn và cập nhật tức thời. 
5.5.11. Trình bày kỹ thuật Shadow Paging. 
5.5.12. Cho hai giao dịch sau: 
 T1: read(A); 
 read(B); 
 if A = 0 then B := B + 1 
 write(B). 
 T2: read(B); 
 read(A); 
 if B = 0 then A := A + 1; 
 write(A). 
Thêm các lệnh lock và unlock vào hai giao dịch trên để đảm bảo chúng tuân theo giao thức 
khĩa hai pha. Việc thực thi hai giao dịch trên cĩ thể sinh ra deadlock khơng? 
 50 
MỘT SỐ ĐỀ THI MẪU 
 51 
Trƣờng Đại Học Hàng Hải Việt Nam 
Khoa Cơng nghệ Thơng tin 
BỘ MƠN HỆ THỐNG THƠNG TIN 
-----***----- 
THI KẾT THƯC HỌC PHẦN 
Tên học phần: CƠ SỞ DỮ LIỆU NÂNG CAO 
Năm học: x 
Đề thi số: Ký duyệt đề: 
x 
Thời gian: 60 phút 
Thang điểm: 100 
PHẦN I – TRẮC NGHIỆM (30 ĐIỂM) 
Câu 1: (10 điểm) 
Cho các quan hệ: 
o Khoa (MKhoa, TenKhoa, DiaDiem) 
o Lop (MaLop, TenLop, SiSo, MaKhoa) 
và truy vấn Q: Hiển thị TenLop của các lớp cĩ SiSo > 50 và thuộc khoa „Kinh Tế‟. Hỏi biểu 
thức đại số quan hệ nào dưới đây đã tối ưu? 
A. 
B. 
C. 
D. 
Câu 2: (10 điểm) 
Cho đồ thị phụ thuộc của lịch biểu S. 
Lịch biểu nào dưới đây là lịch biểu tuần 
tự tương đương với S: 
A. T1  T2  T3  T4 
B. T2  T1  T3  T4 
C. T4  T2  T3  T1 
D. T4  T3  T1  T2 
Câu 3: (10 điểm) 
Lịch biểu nào dưới đây là khả tuần tự: 
A. R1(X), R2(Y), R1(Y), W1(X), R3(Y), W2(Y), W3(Y) 
B. R1(X), R2(Y), R1(Y), W1(X), R3(Z), W2(Y), W3(Z) 
T1 T2 
T3 T4 
 52 
C. R1(X), R2(Z), R1(Y), W1(X), R3(Z), W2(Z), W3(Z) 
D. R1(Z), R2(Z), R1(Y), W1(Z), R3(Y), W2(Z), W3(Y) 
PHẦN II – TỰ LUẬN (70 ĐIỂM) 
Câu 4: (30 điểm) 
 Cho các quan hệ sau: 
 LoaiHang (MaLH, TenLH, MoTa) 
 HangHoa (MaHH, TenHH, HinhThuc, SoLuong, MaLH) 
và truy vấn Q: Lập danh sách gồm MaHH, TenHH của các mặt hàng cĩ số lượng >100 và 
thuộc loại hàng „Mỹ phẩm‟. 
a. Viết biểu thức đại số quan hệ thực hiện truy vấn Q. 
b. Sử dụng phương pháp tối ưu Heuristic để tối ưu hĩa Q. 
Câu 5: (40 điểm) 
 Cho các quan hệ tồn cục: 
 Khoa (MaKhoa, TenKhoa, DiaDiem) 
 Lop (MaLop, TenLop, SiSo, MaKhoa) 
Giả sử Khoa và Lop được phân đoạn ngang theo MaKhoa =1 và MaKhoa = 2 thành Khoa1, 
Khoa2, Lop1, Lop2. 
a. Viết biểu thức đại số quan hệ của các đoạn trên. 
b. Viết biểu thức xây dựng lại của 2 quan hệ tồn cục Khoa, Lop. 
c. Hãy viết truy vấn tồn cục QTC: Lập danh sách gồm TenLop, TenKhoa của các lớp cĩ 
MaKhoa = 2. 
d. Chuyển truy vấn QTC ở câu c thành truy vấn đoạn. 
----------------------------***HẾT***---------------------------- 
Lưu ý: - Khơng sửa, xĩa đề thi, nộp lại đề sau khi thi 
 53 
Trƣờng Đại Học Hàng Hải Việt Nam 
Khoa Cơng nghệ Thơng tin 
BỘ MƠN HỆ THỐNG THƠNG TIN 
-----***----- 
THI KẾT THƯC HỌC PHẦN 
Tên học phần: CƠ SỞ DỮ LIỆU NÂNG CAO 
Năm học: x 
Đề thi số: Ký duyệt đề: 
x 
Thời gian: 60 phút 
Thang điểm: 100 
PHẦN I – TRẮC NGHIỆM (30 ĐIỂM) 
Câu 1: (10 điểm) 
 Cho các quan hệ: 
o Khoa (MKH, TenKH, DiaDiem, MaCNK) 
o Lop (MaLH, TenLH, SiSo, MaKH) 
và truy vấn Q: Hiển thị MaLH, TenLH, SiSo của các lớp thuộc khoa „CNT‟. Hỏi biểu thức 
đại số quan hệ nào dưới đây đã tối ưu? 
A. 
B. 
C. 
D. 
Câu 2: (10 điểm) 
Cho đồ thị phụ thuộc của lịch biểu S. 
Lịch biểu nào dưới đây là lịch biểu tuần 
tự tương đương với S? 
A. T4  T1  T2  T3 
B. T4  T3  T2  T1 
C. T3  T1  T4  T2 
D. T4  T3  T1  T2 
Câu 3: (10 điểm) 
Lịch biểu nào dưới đây là khả tuần tự? 
A. R1(X), R1(Y), R3(Z), R2(Y), W3(Z), W2(Y), W1(X) 
T1 T2 
T3 T4 
 54 
B. R2(Y), R1(X), R1(Y), R3(X), W3(X), W2(Y), W1(X) 
C. R3(X), R2(Y), R1(X), R1(Y), W2(Y), W1(Y), W3(X) 
D. R1(X), R1(Y), R3(X), R2(Y), W2(Y), W1(Y), W3(X) 
PHẦN II – TỰ LUẬN (70 ĐIỂM) 
Câu 4: (30 điểm) 
 Cho các quan hệ sau: 
 HoaDon (MaHD, MaKH, NgayLap) 
 ChiTiet (MaHD, MaHang, SoLuong, GiaBan, ChietKhau) 
và truy vấn Q: Lập danh sách gồm MaHang, SoLuong của các mặt hàng bán vào ngày 
„29/04/2011‟. 
a. Viết biểu thức đại số quan hệ thực hiện truy vấn Q. 
b. Sử dụng phương pháp tối ưu Heuristic để tối ưu hĩa Q. 
Câu 5: (40 điểm) 
 Cho các quan hệ tồn cục: 
 KhoHang (MaKH, TenKH, ViTri) 
 LoaiHang (MaLH, TenLH, MoTa, MaKH) 
Giả sử KhoHang, LoaiHang được phân đoạn ngang theo MaKH =1 và MaKH = 2 thành 
KhoHang1, KhoHang2, LoaiHang1, LoaiHang2. 
a. Viết biểu thức đại số quan hệ của các đoạn trên. 
b. Viết biểu thức xây dựng lại của 2 quan hệ tồn cục DonVi, NhanVien. 
c. Hãy viết truy vấn tồn cục QTC: Lập danh sách gồm TenLH, ViTri của loại hàng cĩ 
MaLH=‟LH01‟ và ở kho hàng cĩ MaKH = 2. 
d. Chuyển truy vấn QTC ở câu c thành truy vấn đoạn. 
----------------------------***HẾT***---------------------------- 
Lưu ý: - Khơng sửa, xĩa đề thi, nộp lại đề sau khi thi 
 55 
Trƣờng Đại Học Hàng Hải Việt Nam 
Khoa Cơng nghệ Thơng tin 
BỘ MƠN HỆ THỐNG THƠNG TIN 
-----***----- 
THI KẾT THƯC HỌC PHẦN 
Tên học phần: CƠ SỞ DỮ LIỆU NÂNG CAO 
Năm học: x 
Đề thi số: Ký duyệt đề: 
x 
Thời gian: 60 phút 
Thang điểm: 100 
PHẦN I – TRẮC NGHIỆM (30 ĐIỂM) 
Câu 1: (10 điểm) 
 Cho các quan hệ: 
o LoaiHang (MLH, TenLH, MoTa) 
o Hang (MaHH, TenHH, HinhThuc, SoLuong, MaLH) 
và truy vấn Q: Hiển thị TenHH của các mặt hàng cĩ SoLuong <10 và thuộc loại hàng „Điện 
Tử‟. Hỏi biểu thức đại số quan hệ nào dưới đây đã tối ưu? 
A. 
B. 
C. 
D. 
Câu 2: (10 điểm) 
Cho đồ thị phụ thuộc của lịch biểu S. 
Lịch biểu nào dưới đây là lịch biểu tuần 
tự tương đương với S: 
A. T3  T1  T2  T4 
B. T3  T2  T1  T4 
C. T4  T2  T3  T1 
D. T4  T3  T1  T2 
Câu 3: (10 điểm) 
Lịch biểu nào dưới đây là khả tuần tự: 
A. R1(X), R2(Y), R1(Y), W2(Y), R3(Y), W1(X), W3(Y) 
T1 T2 
T3 T4 
 56 
B. R1(X), R2(Y), R1(Y), R3(Y), W1(X), W3(Y), W2(Y) 
C. R1(X), R2(Y), R1(Y), R3(Y), W3(Y), W2(Y), W1(X) 
D. R1(Y), R3(Y), R1(X), R2(Y), W3(Y), W2(Y), W1(X) 
PHẦN II – TỰ LUẬN (70 ĐIỂM) 
Câu 4: (30 điểm) 
 Cho các quan hệ sau: 
 Khoa (MKhoa, TenKhoa, DiaDiem) 
 Lop (MaLop, TenLop, SiSo, MaKhoa) 
và truy vấn Q: Lập danh sách gồm MaLop, TenLop của các lớp cĩ sĩ số nhỏ hơn 30 và thuộc 
khoa „Điện tự động‟. 
a. Viết biểu thức đại số quan hệ thực hiện truy vấn Q. 
b. Sử dụng phương pháp tối ưu Heuristic để tối ưu hĩa Q. 
Câu 5: (40 điểm) 
 Cho các quan hệ tồn cục: 
 DonVi (MaDV, TenDV, DiaDiem) 
 NhanVien (MaNV, HoTen, NgaySinh, GioiTinh, Luong, MaDV) 
Giả sử DonVi và NhanVien được phân đoạn ngang theo MaDV = 1 và MaDV = 2 thành 
DonVi1, DonVi2, NhanVien1, NhanVien2. 
a. Viết biểu thức đại số quan hệ của các đoạn trên. 
b. Viết biểu thức xây dựng lại của 2 quan hệ tồn cục DonVi, NhanVien. 
c. Hãy viết truy vấn tồn cục QTC: Lập danh sách gồm HoTen, TenDV của các nhân viên 
thuộc đơn vị cĩ MaDV = 1. 
d. Chuyển truy vấn QTC ở câu c thành truy vấn đoạn. 
----------------------------***HẾT***---------------------------- 
Lưu ý: - Khơng sửa, xĩa đề thi, nộp lại đề sau khi thi 
 57 
Trƣờng Đại Học Hàng Hải Việt Nam 
Khoa Cơng nghệ Thơng tin 
BỘ MƠN HỆ THỐNG THƠNG TIN 
-----***----- 
THI KẾT THƯC HỌC PHẦN 
Tên học phần: CƠ SỞ DỮ LIỆU NÂNG CAO 
Năm học: x 
Đề thi số: Ký duyệt đề: 
x 
Thời gian: 60 phút 
Thang điểm: 100 
PHẦN I – TRẮC NGHIỆM (30 ĐIỂM) 
Câu 1: (10 điểm) 
 Cho các quan hệ: 
o SinhVien (MSV, TenSV, NgaySinh, DiaChi, MaLop) 
o KetQua (MaSV, MaMH, Diem) 
và truy vấn Q: Hiển thị MaMH, Diem của sinh viên „Trần Huyền‟. Hỏi biểu thức đại số 
quan hệ nào dưới đây đã tối ưu? 
A. 
B. 
C. 
D. 
Câu 2: (10 điểm) 
Cho đồ thị phụ thuộc của lịch biểu S. 
Lịch biểu nào dưới đây là lịch biểu tuần 
tự tương đương với S? 
A. T2  T4  T1  T3 
B. T4  T3  T2  T1 
C. T2  T1  T4  T3 
D. T4  T3  T1  T2 
Câu 3: (10 điểm) 
Lịch biểu nào dưới đây là khả tuần tự? 
A. R1(X), R1(Z), R3(Z), R2(Y), W3(Z), W2(Y), W1(Z) 
T1 T2 
T3 T4 
 58 
B. R1(X), R2(Y), R1(Y), R3(X), W3(X), W1(X), W2(Y) 
C. R3(Z), R2(Y), R1(X), R1(Y), W1(X), W3(Z), W2(Y) 
D. R3(X), R1(X), R1(Y), R2(Y), W2(Y), W1(Y), W3(X) 
PHẦN II – TỰ LUẬN (70 ĐIỂM) 
Câu 4: (30 điểm) 
 Cho các quan hệ sau: 
 DonVi(MDV, TenDV, MaNQL, DiaDiem) 
 DuAn (MaDA, TenDA, KinhPhi, MaDV) 
và truy vấn Q: Hiển thị TenDA của các dự án cĩ KinhPhi > 100000 và do đơn vị cĩ TenDV 
= „XD1‟ quản lý. 
a. Viết biểu thức đại số quan hệ thực hiện truy vấn Q. 
b. Sử dụng phương pháp tối ưu Heuristic để tối ưu hĩa Q. 
Câu 5: (40 điểm) 
 Cho quan hệ NhanVien (MaNV, TenNV, DiaChi, Luong, PhuCap, MaNQL, MaPB) 
và thơng tin phân đoạn như sau: NhanVien được phân đoạn dọc thành: 
o NV1 chứa các thơng tin: MaNV, TenNV, DiaChi, MaNQL, MaPB 
o NV2 chứa các thơng tin: MaNV, Luong, PhuCap 
NV1 được phân đoạn ngang thành: 
o NV11: Những nhân viên cĩ MaPB < 5. 
o NV12: Những nhân viên cĩ MaPB 5. 
a. Viết biểu thức đại số quan hệ của các đoạn trên. Viết biểu thức xây dựng lại của 2 quan 
hệ tồn cục NhanVien. 
b. Hãy viết truy vấn tồn cục QTC: Lập danh sách gồm TenNV, Luong, PhuCap của các 
nhân viên cĩ MaPB = 8. Chuyển truy vấn QTC ở câu c thành truy vấn đoạn. 
----------------------------***HẾT***---------------------------- 
Lưu ý: - Khơng sửa, xĩa đề thi, nộp lại đề sau khi thi
 59 
Trƣờng Đại Học Hàng Hải Việt Nam 
Khoa Cơng nghệ Thơng tin 
BỘ MƠN HỆ THỐNG THƠNG TIN 
-----***----- 
THI KẾT THƯC HỌC PHẦN 
Tên học phần: CƠ SỞ DỮ LIỆU NÂNG CAO 
Năm học: x 
Đề thi số: Ký duyệt đề: 
x 
Thời gian: 60 phút 
Thang điểm: 100 
PHẦN I – TRẮC NGHIỆM (30 ĐIỂM) 
Câu 1: (10 điểm) 
 Cho các quan hệ: 
o DonVi (MDV, TenDV, DiaDiem) 
o NhanVien (MaNV, HoTen, NgaySinh, GioiTinh, Luong, MaDV) 
và truy vấn Q: Hiển thị HoTen của các nhân viên nữ thuộc đơn vị „PKD‟. Hỏi biểu thức đại 
số quan hệ nào dưới đây đã tối ưu? 
A. 
B. 
C. 
D. 
Câu 2: (10 điểm) 
Cho đồ thị phụ thuộc của lịch biểu S. 
Lịch biểu nào dưới đây là lịch biểu tuần 
tự tương đương với S: 
A. T3  T1  T2  T4 
B. T3  T2  T1  T4 
C. T3  T1  T4  T2 
D. T4  T3  T1  T2 
Câu 3: (10 điểm) 
Lịch biểu nào dưới đây là khả tuần tự: 
A. R2(X), R1(X), R1(Y), R3(Z), W3(Z), W2(X), W1(X) 
B. R1(Y), R2(X), R1(X), R3(Z), W3(Z), W2(X), W1(X) 
T1 T2 
T3 T4 
 60 
C. R1(Z), R2(X), R1(Y), W2(X), R3(Z), W1(Y), W3(Z) 
D. R1(Y), R2(X), R1(X), R3(Z), W1(X), W3(Z), W2(X) 
PHẦN II – TỰ LUẬN (70 ĐIỂM) 
Câu 4: (30 điểm) 
 Cho các quan hệ sau: 
 DonHang (MaDH, MaNV, MaNhaCC, NgayLap, TongTien) 
 ChiTiet (MaDH, MaHang, SoLuong, DonGia, ChietKhau) 
và truy vấn Q: Lập danh sách gồm MaHang, SoLuong của các mặt hàng cĩ DonGia > 90000 
trong đơn hàng cĩ NgayLap = „29/04/2011‟. 
a. Viết biểu thức đại số quan hệ thực hiện truy vấn Q. 
b. Sử dụng phương pháp tối ưu Heuristic để tối ưu hĩa Q. 
Câu 5: (40 điểm) 
 Cho các quan hệ tồn cục: 
 DonVi(MaDV, TenDV, MaNQL) 
 DuAn (MaDA, TenDA, KinhPhi, MaDV) 
Giả sử DonVi và DuAn được phân đoạn ngang theo MaDV = 1 và MaDV = 2 thành 
DonVi1, DonVi2, DuAn1, DuAn2. 
a. Viết biểu thức đại số quan hệ của các đoạn trên. 
b. Viết biểu thức xây dựng lại của 2 quan hệ tồn cục DonVi, DuAn. 
c. Hãy viết truy vấn tồn cục QTC: Lập danh sách gồm TenDA, TenDV của các dự án cĩ 
KinhPhi > 900000 và do đơn vị cĩ MaDV = 1 quản lý. 
d. Chuyển truy vấn QTC ở câu c thành truy vấn đoạn. 
----------------------------***HẾT***---------------------------- 
Lưu ý: - Khơng sửa, xĩa đề thi, nộp lại đề sau khi thi 

File đính kèm:

  • pdfbai_giang_co_so_du_lieu_nang_cao.pdf