.Quan hệ theo hai loại thời gian

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Một số mô hình cơ sở dữ liệu mở rộng Luận văn ThS. Công nghệ thông tin 60 48 05002 (Trang 25 - 27)

Một vài ứng dụng có cả thời gian hợp lệ và thời gian giao tác, thì quan hệ trong ứng dụng này đƣợc gọi là quan hệ theo hai loại thời gian. Hình 1.6 (d) cho ta thấy đƣợc làm thế nào để các quan hệ phi thời gian NHANVIEN và DONVI trở thành các quan hệ theo hai loại thời gian NHANVIEN_BT và DONVI_BT.

[8].

NHANVIEN_BT

TenNV MasoNV Luong MasoDV VST VET TST TET

V1 Bắc 101 25000 5 1997-06-15 now 1997-06-08, 13:05:58 1998-06-04, 08:56:12 V2 Bắc 101 25000 5 1997-06-15 1998-05-31 1998-06-04, 08:56:12 uc V3 Bắc 101 30000 5 1998-06-01 now 1998-06-04, 08:56:12 uc V4 Trung 102 25000 4 1994-08-20 now 1994-08-20, 11:18:23 1996-01-07, 14:33:02 V5 Trung 102 25000 4 1994-08-20 1996-01-31 1996-01-07, 14:33:02 uc V6 Trung 102 30000 5 1996-02-01 now 1996-01-07, 14:33:02 1997-03-28, 09:23:57 V7 Trung 102 30000 5 1996-02-01 1997-03-31 1997-03-28, 09:23:57 uc V8 Trung 102 40000 5 1997-04-01 now 1997-03-28, 09:23:57 uc V9 Nam 103 28000 4 1996-05-01 now 1996-04-27, 16:22:05 1997-08-12, 10:11:07 V10 Nam 103 28000 4 1996-05-01 1997-08-10 1997-08-12, 10:11:07 uc V11 Tuấn 104 38000 5 1998-08-01 now 1998-07-28, 09:25:37 uc DONVI_BT.

TenDV MasoDV MasoNQL VST VET TST TET

V12 Reseach 5 106 1996-09-20 now 1996-09-15, 14:52:12 1996-03-28, 09:23:57 V13 Reseach 5 106 1996-09-20 1997-03-31 1996-03-28, 09:23:57 uc V14 Reseach 5 102 1997-04-01 now 1996-03-28, 09:23:57 uc

Hình 1.8. Các bộ trong quan hệ theo hai loại thời gian NHANVIEN_BT và DONVI_BT. DONVI_BT.

Trong các bảng này các bộ có giá trị TET là uc biểu diễn cho các thông tin hợp lệ hiện thời. Ngƣợc lại các bộ có giá trị TET là một mốc thời gian là các bộ hợp lệ cho đến(trƣớc) mốc thời gian đó. Nhƣ vậy, các bộ có giá trị uc ở TET trong hình 1.8 tƣơng ứng với các bộ trong quan hệ thời gian hợp lệ ở hình 1.8. Thuộc tính TST trong mỗi bộ là mốc thời gian do giao tác tạo ra cho bộ đó.

Hoạt động cập nhật sẽ đƣợc thực hiện nhƣ thế nào trong quan hệ theo hai loại thời gian. Để minh họa các bộ đƣợc tạo ra nhƣ thế nào ta xét quan hệ NHANVIEN_BT. Một phiên bản hiện thời của một nhân viên sẽ có giá trị là uc ở thuộc tính TET và now ở thuộc tính VET. Nếu một vài thuộc tính nhƣ Luong đƣợc cập nhật thì giao tác T tiến hành việc cập nhật sẽ có hai tham số: Một là giá trị mới của Luong, hai là thời gian hợp lệ VT khi lƣơng mới có hiệu quả trong thực tế. Giả sử rằng VT là thời điểm trƣớc, VT và giao tác T đó có một mốc thời gian TS(T). Những thay đổi tiếp theo sau đây sẽ đƣợc áp dụng với bảng NV_BT: - Tạo bản sao V2 của bản hiện thời V; đặt V2.VET thành VT-, V2.TST thành TS(T), V2.TET thành uc và chèn V2 vào NHANVIEN_BT; V2 là bản sao hiện thời trƣớc đó của V sau khi nó bị đóng tại thời gian hợp lệ VT-.

- Tạo bản sao V3 của bản hiện thời V; đặt V3.VST là VT, V3.VET là now, V3.Luong là giá trị lƣơng mới, V3.TST là TS(T), V3.TET là uc và chèn V3 vào NHANVIEN_BT. Lúc này V3 biễu diễn cho bản hiện thời mới.

- Đặt V.TET là TS(T) khi bản hiện thời V không còn đúng.

Ví dụ xét ba bộ đầu tiên v1,v2,v3 trong NHANVIEN_BT ở hình 1.8. Trƣớc khi cập nhật lƣơng mới cho Bắc từ 2500 lên 30000 thì chỉ v1 là ở trong NHANVIEN_BT ở hình 1.8 là bản hiện thời với giá trị ở TET là uc. Sau đó một giao tác T có mốc thời gian TS(T) là “1998-06-04; 08:56:12” Cập nhật lƣơng thành 30000 với thời gian có hiệu lực là “1998-06-01” khi cập nhật, bộ v2 đƣợc tạo ra là bản sao của v1 ngoại trừ giá trị ở VET đƣợc đặt lại là “1998-05-31” (trƣớc một ngày so với thời gian hợp lệ mới) và giá trị TST của nó là mốc thời gian của giao tác cập nhật. Tiếp đó, bộ v3 (bản sao của v1) đƣợc tạo ra với giá trị lƣơng mới ở Luong, giá trị ở VST “1998 06-01” giá trị ở VET vẫn là now, giá trị ở TST là mốc thời gian của giao tác cập nhật và giá trị TET cũng vẫn là uc. Cuối cùng giá trị TET của v1 đƣợc đặt lại là mốc thời gian của giao tác cập nhật “1998-06-04, 08:56:12”.Nhƣ vậy, v3 chính là bản hiện thời, chú ý rằng đây là một cập nhật sau, vì giao tác cập nhật đã đƣợc thực hiện vào ngày 4/6/1998, việc

thay đổi lƣơng bắt đầu có hiệu lực từ 1/6/1998 trƣớc khi cập nhật lƣơng mới cho Bắc.

Tƣơng tự, khi lƣơng và MasoDV của Trung đƣợc cập nhật (cùng lúc) thành 30000 và 5 với mốc thời gian của giao tác cập nhật là “1996-01-07, 14:33:02” và thời gian lƣơng có hiệu lực là “1996-02-01”. Vì thế đây là cập nhật trƣớc, trƣớc việc cập nhật đƣợc thực hiện vào 7/1/1999 nhƣng ngày có hiệu lực lại là ngày 1/2/1996. Trong trƣơng hợp này bộ v4 đƣợc thay thế hợp lý bởi v5 và v6

Tiếp đó, để biết đƣợc thao tác xóa sẽ đƣợc tiến hành nhƣ thế nào trong quan hệ theo hai loại thời gian ta xem xét bộ v9 và v10 trong quan hệ NHANVIEN_BT ở hình 1.8 Nhân viên Nam đã rời công ty từ 10/8/1997 và việc xóa đƣợc tiến hành bởi giao tác T và TS(T) là “1997-08-12, 10:11:07”. Trƣớc khi xảy ra điều này thì v9 là bản hiện thời của Nam với giá trị TET là uc. Việc xóa tiến hành thay đổi v9. TET thành “1997-08-10, 10:11:07” tạo ra bản cuối cùng v10 cho Nam với giá trị tại VET là “1997-08-10”. Cuối cùng giao tác chèn đƣợc tiến hành bằng cách tạo ra bản đầu tiên nhƣ đƣợc minh họa ở bộ v11 trong bản NHANVIEN_BT.

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Một số mô hình cơ sở dữ liệu mở rộng Luận văn ThS. Công nghệ thông tin 60 48 05002 (Trang 25 - 27)

Tải bản đầy đủ (PDF)

(72 trang)