Ngày nay, chúng ta đang sống và làm việc trong thời đại phát triển của công nghệ thông tin. Nhu cầu sử dụng thông tin ngày càng được mọi người quan tâm hơn, thông tin không những phải được truy cập nhanh mà còn phải chính xác.
Với một lượng lớn dữ liệu từ các lĩnh vực khác nhau đang ngày một tăng nhanh, các kho dữ liệu sớm được hình thành. Do đó, để sử dụng và khai thác dữ liệu một cách có hiệu quả, các nhà khoa học đã tập trung nghiên cứu về cơ sở dữ liệu (CSDL). Một khía cạnh quan trọng khi nghiên cứu cơ sở dữ liệu đó chính là yếu tố thời gian.
Yếu tố thời gian làm cho CSDL rõ ràng hơn, hữu ích hơn nhưng đồng thời cũng làm cho nó trở nên phức tạp hơn. Do đó người ta thường bỏ qua yếu tố thời gian, không quan tâm đến nó khi thiết kế CSDL. Song, hầu hết các ứng dụng CSDL hiện nay đều có liên quan đến yếu tố thời gian. Vì vậy, vấn đề đặt ra cho các nhà khoa học là: làm thế nào để có thể xây dựng được các ứng dụng CSDL có yếu tố thời gian một cách thích hợp và có hiệu quả. Các nghiên cứu về CSDL trong những năm gần đây đa số tập trung vào việc giải quyết vấn đề này.
Yếu tố thời gian có ở khắp nơi trong các hệ thống thông tin và làm cho các hệ thống đó trở nên phức tạp. Tại các hệ thống thông tin, dữ liệu luôn tăng nhanh và không ngừng thay đổi theo thời gian, do đó việc lưu trữ không chỉ được thực hiện tại một thời điểm nhất định ở một ngày cụ thể nào đó mà phải thường xuyên được lưu trữ theo thời gian nhằm đảm bảo việc cung cấp thông tin cho người sử dụng là hoàn toàn chính xác ở mọi thời điểm, cả trong qúa khứ, hiện tại và tương lai.
Yếu tố thời gian trong CSDL bước đầu được nghiên cứu trong ngữ cảnh của mô hình quan hệ [12] do mô hình này được xây dựng trên một cơ sở toán học chặt chẽ với các phép toán đại số và logic, điều này rất phù hợp với việc mô tả các khái niệm về thời khoảng cũng như một số các thao tác đối với dữ liệu có yếu tố thời gian. Song, trong những năm gần đây, mô hình hướng đối tượng cũng đã và đang phát triển theo xu thế của việc đưa khái niệm hướng đối tượng vào trong một số lĩnh vực của khoa học máy tính. Việc áp dụng cách tiếp cận hướng đối tượng vào lĩnh vực CSDL đã tạo khả năng linh hoạt cho mô hình dữ liệu này trong việc mô hình hóa thế giới thực vốn ngày càng phức tạp.
Một trong những vấn đề đặt ra đối với CSDL có yếu tố thời gian đó là phụ thuộc hàm theo thời gian (TFD). Phụ thuộc hàm theo thời gian có vai trò quan trọng đối với việc phân tích và thiết kế CSDL có yếu tố thời gian.
Phụ thuộc hàm theo thời gian được nghiên cứu lần đầu tiên bởi Wang [12], kết quả nghiên cứu của ông liên quan đến việc thiết kế CSDL có yếu tố thời gian. Sau này đã được các nhà khoa học khác như Jensen, Vianu, Navathe tiếp tục nghiên cứu và phát triển, đặc biệt đã được Wijsen [15] nghiên cứu trong mô hình hướng đối tượng.
Trong luận văn này, mục đích chính của chúng tôi là nhằm nghiên cứu các phụ thuộc hàm theo thời gian, thông qua hai quan điểm của Wang và Wijsen. Liên quan đến lý thuyết phụ thuộc hàm theo thời gian của Wang, chúng tôi cũng đã đưa ra một số hệ quả và tính chất về mối liên hệ giữa phụ thuộc hàm theo thời gian (TFD) và phụ thuộc hàm (FD) truyền thống. Bên cạnh đó, khi tìm hiểu cách tiếp cận của Wijsen chúng tôi đã so sánh hai quan điểm về lý thuyết phụ thuộc hàm theo thời gian của Wang và Wijsen thông qua việc so sánh hệ 4 tiên đề cho các TFD của Wang và hệ 7 tiên đề cho các TFD của Wijsen.
Tổ chức của luận văn
Luận văn bao gồm phần mở đầu, ba chương nội dung, phần kết luận, tài liệu tham khảo và phần phụ lục.
Các khái niệm cơ sở của luận văn được trình bày trong chương 1. Chương này nhằm giới thiệu khái quát về CSDL có yếu tố thời gian bao gồm: ngữ nghĩa dữ liệu theo thời gian, cách biểu diễn yếu tố thời gian trong CSDL, các phép toán trên thời khoảng, cách biểu diễn các bộ dữ liệu theo thời gian, các phép toán giữa các bộ theo thời gian và các phép toán đại số trong CSDL có yếu tố thời gian.
Chương 2 trình bày về lý thuyết chuẩn hoá cơ sở dữ liệu quan hệ theo thời gian theo cách tiếp cận của Wang [12] bao gồm: khái niệm kiểu thời gian và môđun thời gian, cơ sở lý thuyết của phụ thuộc hàm theo thời gian với khái niệm về TFD, hệ tiên đề cho các TFD, bao đóng của tập TFD, khoá của lược đồ môđun thời gian, bao đóng của tập thuộc tính, phủ tối thiểu TFD, lý thuyết chuẩn hóa CSDL quan hệ theo thời gian. Trên cơ sở đó, chúng tôi đưa ra một số tính chất và hệ qủa phản ánh mối quan hệ giữa TFD và FD truyền thống.
Chương 3 trình bày về việc mở rộng lý thuyết phụ thuộc hàm theo thời gian trên các đối tượng phức theo cách tiếp cận của Wijsen [15] bao gồm: việc định danh đối tượng, vai trò của việc định danh đối tượng, các mô hình dữ liệu ngữ nghĩa, mô hình thời gian, mô hình dữ liệu hướng đối tượng và sự thể hiện theo thời gian, lý thuyết phụ thuộc hàm theo thời gian trên các đối tượng phức với khái niệm hình thức về TFD và hệ tiên đề cho các TFD. Từ đó, chúng tôi so sánh cách tiếp cận của Wang và Wijsen để thấy rằng: khái niệm kiểu thời gian theo cách tiếp cận của Wijsen là một mở rộng so với cách tiếp cận của Wang.
Phần phụ lục trình bày một số chứng minh của các định lý, bổ đề và mệnh đề đã được trình bày trong chương 2 và chương 3.
114 trang |
Chia sẻ: tuandn | Lượt xem: 2058 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Luận văn Phụ thuộc hàm theo thời gian, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
MỞ ĐẦU
Ngày nay, chúng ta đang sống và làm việc trong thời đại phát triển của công nghệ thông tin. Nhu cầu sử dụng thông tin ngày càng được mọi người quan tâm hơn, thông tin không những phải được truy cập nhanh mà còn phải chính xác.
Với một lượng lớn dữ liệu từ các lĩnh vực khác nhau đang ngày một tăng nhanh, các kho dữ liệu sớm được hình thành. Do đó, để sử dụng và khai thác dữ liệu một cách có hiệu quả, các nhà khoa học đã tập trung nghiên cứu về cơ sở dữ liệu (CSDL). Một khía cạnh quan trọng khi nghiên cứu cơ sở dữ liệu đó chính là yếu tố thời gian.
Yếu tố thời gian làm cho CSDL rõ ràng hơn, hữu ích hơn nhưng đồng thời cũng làm cho nó trở nên phức tạp hơn. Do đó người ta thường bỏ qua yếu tố thời gian, không quan tâm đến nó khi thiết kế CSDL. Song, hầu hết các ứng dụng CSDL hiện nay đều có liên quan đến yếu tố thời gian. Vì vậy, vấn đề đặt ra cho các nhà khoa học là: làm thế nào để có thể xây dựng được các ứng dụng CSDL có yếu tố thời gian một cách thích hợp và có hiệu quả. Các nghiên cứu về CSDL trong những năm gần đây đa số tập trung vào việc giải quyết vấn đề này.
Yếu tố thời gian có ở khắp nơi trong các hệ thống thông tin và làm cho các hệ thống đó trở nên phức tạp. Tại các hệ thống thông tin, dữ liệu luôn tăng nhanh và không ngừng thay đổi theo thời gian, do đó việc lưu trữ không chỉ được thực hiện tại một thời điểm nhất định ở một ngày cụ thể nào đó mà phải thường xuyên được lưu trữ theo thời gian nhằm đảm bảo việc cung cấp thông tin cho người sử dụng là hoàn toàn chính xác ở mọi thời điểm, cả trong qúa khứ, hiện tại và tương lai.
Yếu tố thời gian trong CSDL bước đầu được nghiên cứu trong ngữ cảnh của mô hình quan hệ [12] do mô hình này được xây dựng trên một cơ sở toán học chặt chẽ với các phép toán đại số và logic, điều này rất phù hợp với việc mô tả các khái niệm về thời khoảng cũng như một số các thao tác đối với dữ liệu có yếu tố thời gian. Song, trong những năm gần đây, mô hình hướng đối tượng cũng đã và đang phát triển theo xu thế của việc đưa khái niệm hướng đối tượng vào trong một số lĩnh vực của khoa học máy tính. Việc áp dụng cách tiếp cận hướng đối tượng vào lĩnh vực CSDL đã tạo khả năng linh hoạt cho mô hình dữ liệu này trong việc mô hình hóa thế giới thực vốn ngày càng phức tạp.
Một trong những vấn đề đặt ra đối với CSDL có yếu tố thời gian đó là phụ thuộc hàm theo thời gian (TFD). Phụ thuộc hàm theo thời gian có vai trò quan trọng đối với việc phân tích và thiết kế CSDL có yếu tố thời gian.
Phụ thuộc hàm theo thời gian được nghiên cứu lần đầu tiên bởi Wang [12], kết quả nghiên cứu của ông liên quan đến việc thiết kế CSDL có yếu tố thời gian. Sau này đã được các nhà khoa học khác như Jensen, Vianu, Navathe … tiếp tục nghiên cứu và phát triển, đặc biệt đã được Wijsen [15] nghiên cứu trong mô hình hướng đối tượng.
Trong luận văn này, mục đích chính của chúng tôi là nhằm nghiên cứu các phụ thuộc hàm theo thời gian, thông qua hai quan điểm của Wang và Wijsen. Liên quan đến lý thuyết phụ thuộc hàm theo thời gian của Wang, chúng tôi cũng đã đưa ra một số hệ quả và tính chất về mối liên hệ giữa phụ thuộc hàm theo thời gian (TFD) và phụ thuộc hàm (FD) truyền thống. Bên cạnh đó, khi tìm hiểu cách tiếp cận của Wijsen chúng tôi đã so sánh hai quan điểm về lý thuyết phụ thuộc hàm theo thời gian của Wang và Wijsen thông qua việc so sánh hệ 4 tiên đề cho các TFD của Wang và hệ 7 tiên đề cho các TFD của Wijsen.
Tổ chức của luận văn
Luận văn bao gồm phần mở đầu, ba chương nội dung, phần kết luận, tài liệu tham khảo và phần phụ lục.
Các khái niệm cơ sở của luận văn được trình bày trong chương 1. Chương này nhằm giới thiệu khái quát về CSDL có yếu tố thời gian bao gồm: ngữ nghĩa dữ liệu theo thời gian, cách biểu diễn yếu tố thời gian trong CSDL, các phép toán trên thời khoảng, cách biểu diễn các bộ dữ liệu theo thời gian, các phép toán giữa các bộ theo thời gian và các phép toán đại số trong CSDL có yếu tố thời gian.
Chương 2 trình bày về lý thuyết chuẩn hoá cơ sở dữ liệu quan hệ theo thời gian theo cách tiếp cận của Wang [12] bao gồm: khái niệm kiểu thời gian và môđun thời gian, cơ sở lý thuyết của phụ thuộc hàm theo thời gian với khái niệm về TFD, hệ tiên đề cho các TFD, bao đóng của tập TFD, khoá của lược đồ môđun thời gian, bao đóng của tập thuộc tính, phủ tối thiểu TFD, lý thuyết chuẩn hóa CSDL quan hệ theo thời gian. Trên cơ sở đó, chúng tôi đưa ra một số tính chất và hệ qủa phản ánh mối quan hệ giữa TFD và FD truyền thống.
Chương 3 trình bày về việc mở rộng lý thuyết phụ thuộc hàm theo thời gian trên các đối tượng phức theo cách tiếp cận của Wijsen [15] bao gồm: việc định danh đối tượng, vai trò của việc định danh đối tượng, các mô hình dữ liệu ngữ nghĩa, mô hình thời gian, mô hình dữ liệu hướng đối tượng và sự thể hiện theo thời gian, lý thuyết phụ thuộc hàm theo thời gian trên các đối tượng phức với khái niệm hình thức về TFD và hệ tiên đề cho các TFD. Từ đó, chúng tôi so sánh cách tiếp cận của Wang và Wijsen để thấy rằng: khái niệm kiểu thời gian theo cách tiếp cận của Wijsen là một mở rộng so với cách tiếp cận của Wang.
Phần phụ lục trình bày một số chứng minh của các định lý, bổ đề và mệnh đề đã được trình bày trong chương 2 và chương 3.
Do thời gian còn hạn chế nên bài luận văn này không thể tránh khỏi những nhầm lẫn và thiếu sót. Rất mong nhận được những ý kiến đóng góp chân thành của qúy thầy cô giáo, bạn bè và những người quan tâm.
CHƯƠNG 1
GIỚI THIỆU KHÁI QUÁT VỀ
CƠ SỞ DỮ LIỆU CÓ YẾU TỐ THỜI GIAN
1.1. Giới thiệu
Cơ sở dữ liệu và khai thác dữ liệu là hai vấn đề có thể được xem là quan trọng trong ngành công nghệ thông tin. Với sự ra đời của mô hình dữ liệu quan hệ vào năm 1970 do E. Codd đề xuất, mô hình này sớm được chọn để cài đặt các CSDL. Sở dĩ như vậy là do nó có hỗ trợ các ngôn ngữ khai báo, khá đơn giản nhưng lại có hiệu quả, cùng với các phép toán trên dữ liệu.
Với một lượng lớn dữ liệu được lưu trữ ngày càng nhiều nên yếu tố thời gian trong vấn đề lưu trữ dữ liệu luôn là vấn đề được quan tâm đến, dữ liệu cung cấp cho người sử dụng phải có giá trị ở mọi thời điểm khác nhau, cả trong quá khứ, hiện tại và tương lai.
Cơ sở dữ liệu có yếu tố thời gian sẽ lưu lại các thông tin liên quan khi các sự kiện thực sự xảy ra hoặc khi các sự kiện được xem là đúng. Trong CSDL có yếu tố thời gian, các sự kiện thường được gắn liền với một thời điểm hoặc với một khoảng thời gian cụ thể nào đó. Trong quá trình lưu trữ dữ liệu, giá trị của một số thuộc tính như Họ tên, Ngày sinh, Phái ... luôn ổn định, thông thường không thay đổi theo thời gian. Trong khi đó, giá trị của một số thuộc tính như Phòng ban, Chức vụ, Bậc lương ... thay đổi theo thời gian. Những thuộc tính có giá trị không thay đổi theo thời gian được gọi là thuộc tính phi thời gian, ngược lại được gọi là những thuộc tính có yếu tố thời gian.
Trong chương 1 trình bày một cách khái quát về CSDL có yếu tố thời gian, bao gồm các mục như: mục 1.1 là phần giới thiệu, mục 1.2 trình bày các ngữ nghĩa dữ liệu theo thời gian, vấn đề về cách biểu diễn yếu tố thời gian trong mô hình dữ liệu quan hệ được trình bày trong mục 1.3, mục 1.4 trình bày các phép toán trên thời khoảng, từ những mối quan hệ khác nhau giữa hai thời khoảng trong cùng một quan hệ, chúng có thể dẫn đến các phép toán như phép hợp, phép giao và phép hiệu giữa hai thời khoảng. Mục 1.5 trình bày cách biểu diễn các bộ dữ liệu theo thời gian, mục 1.6 trình bày các phép toán trên các bộ dữ liệu theo thời gian như phép tương đương, phép hợp nhất theo thời gian, phép bao theo thời gian. Các phép toán đại số trong CSDL có yếu tố thời gian được trình bày trong mục 1.7 và cuối cùng là kết luận chương, phần này được trình bày trong mục 1.8.
1.2. Ngữ nghĩa dữ liệu theo thời gian
Trong nhiều ứng dụng, yếu tố thời gian được xem là quan trọng đối với CSDL. Chẳng hạn như hệ thống theo dõi sức khỏe bệnh nhân ở bệnh viện, hệ thống đặt vé máy bay tại các phòng bán vé…
Cơ sở dữ liệu có yếu tố thời gian sẽ lưu lại các thông tin liên quan khi các sự kiện thực sự xảy ra hoặc khi các sự kiện được xem là đúng. Trong CSDL có yếu tố thời gian, các sự kiện thường được gắn liền với một thời điểm hoặc với một khoảng thời gian cụ thể nào đó, chẳng hạn giáo viên “Lê Hoàng” dạy cho khóa “TINA28” kể từ ngày 06/03/05.
Xét về mặt ngữ nghĩa, ta có thể phân yếu tố thời gian trong CSDL thành các dạng thời gian khác nhau tùy từng cách hiểu.
Thời gian có thể được gọi là thời gian hợp lệ nếu nó được hiểu như là thời gian mà sự kiện xảy ra hoặc là quãng thời gian mà sự kiện đúng trong thực tế.
Thời gian cũng có thể được gọi là thời gian giao dịch nếu nó được hiểu như là thời gian mà khi thông tin thực sự được lưu giữ trong CSDL, thời gian ở đây chính là giá trị của đồng hồ hệ thống khi thông tin được lưu giữ.
Chẳng hạn, giả sử CSDL của một hệ thống đặt vé máy bay lưu trữ các thông tin về Họ tên khách hàng, Số CMND, Chuyến bay, Hướng bay, Thời gian xuất phát. Giả sử rằng, tại thời điểm 07:30:00 ngày 01/03/2006, một khách hàng đã cập nhật hệ thống để đặt mua vé máy bay với các thông tin như Họ tên khách hàng: Nguyễn Nam, Số CMND:123456789, Chuyến bay: HS2, Hướng bay: Huế đi TP. Hồ Chí Minh, Thời gian xuất phát: 14:00:00 ngày 05/03/2006. Với CSDL như thế này, xét về mặt ngữ nghĩa thì thời gian hợp lệ chính là thời gian xuất phát của máy bay, tức là vào lúc 14:00:00 ngày 05/03/2006, còn thời gian giao dịch chính là thời gian được tính kể từ lúc khách hàng cập nhật vào hệ thống để đặt mua vé, tức là vào lúc 07:30:00 ngày 01/03/2006.
Thời gian hợp lệ và thời gian giao dịch là hai dạng thời gian thông dụng nhất trong CSDL có yếu tố thời gian. Tùy từng ứng dụng cụ thể, ta có thể chỉ cần đến một dạng thời gian nào đó. Song, có một vài ứng dụng lại đòi hỏi phải sử dụng đến cả hai dạng thời gian kể trên.
Bên cạnh thời gian hợp lệ và thời gian giao dịch còn có nhiều dạng thời gian khác cũng được xét đến như: thời gian dự kiến, thời gian quyết định…
Một dạng thời gian khác thúc đẩy sự nghiên cứu của các nhà khoa học trong nhiều thế kỷ qua và thật khó để có thể mô tả một cách cụ thể và rõ ràng đó chính là thời gian hiện tại (ta ký hiệu là “nay” trong CSDL). Thời gian hiện tại là dạng thời gian không ngừng tăng, toàn bộ các hoạt động thường được đặt ở thời gian hiện tại, thời gian hiện tại tách rời quá khứ và tương lai. Thời gian hiện tại đã mở ra một thách thức mới cho những ai quan tâm đến việc quản lý dữ liệu, mà đặc biệt là với các CSDL có yếu tố thời gian.
1.3. Biểu diễn yếu tố thời gian trong CSDL
Ta gọi không gian các thời điểm C là không gian một chiều, liên tục và không âm [0, +¥), trên đó có xác định quan hệ thứ tự “£”.
Ta quy ước các ký hiệu như sau:
t Î C cho biết t là một thời điểm.
a = Í C cho biết là một khoảng thời gian hay còn được gọi là một thời khoảng, với t £ t’. Thời khoảng này có thể được phân loại dựa trên các khoảng đóng hay mở bên trái hoặc bên phải, bao gồm (t, t’); [t, t’]; (t, t’]; [t, t’).
Với mô hình quan hệ n ngôi, yếu tố thời gian trong CSDL được biểu diễn bởi một bảng gồm n cột, các cột có tên cột được gọi là thuộc tính của quan hệ.
Các chữ cái in hoa ở đầu dãy Alphabeta như A, B, C, ... được dùng để ký hiệu cho tên các thuộc tính.
Các chữ cái in hoa ở cuối dãy Alphabeta như U, V, Z, ... được dùng để ký hiệu cho tập các thuộc tính.
R được sử dụng để ký hiệu cho lược đồ quan hệ có yếu tố thời gian.
r được sử dụng để ký hiệu cho quan hệ hiện hành của lược đồ quan hệ R.
Phép ghép được sử dụng thay cho phép hợp. Như vậy, A1A2...An được sử dụng để biểu diễn tập {A1, A2, ...,An}, và với phép hợp của X và Y, thay vì ta viết X È Y thì ta có thể viết XY.
Ví dụ 1.1. Xét quan hệ GIÁOVIÊN như sau:
Bảng 1.1. Quan hệ GIÁOVIÊN có yếu tố thời gian.
GIÁOVIÊN:
Mã GV
Họ tên
Khoá dạy
HS lương
Thời gian
001
Lê Hoàng
KTV36
1.82
[01/03/05, 01/05/05)
002
Nguyễn Huy
TINA27
1.82
[02/10/05, 15/10/05]
002
Nguyễn Huy
KTV36
1.82
[01/11/05, 30/11/05]
005
Phạm Khoa
KTV63
2.30
[05/09/06, nay]
Như vậy, từ ví dụ trên, nếu GIÁOVIÊN là một quan hệ có yếu tố thời gian gồm các thuộc tính như: Mã GV, Họ tên, Khoá dạy, Môn dạy, HS lương và Thời gian thì GIÁOVIÊN = (Mã GV, Họ tên, Khoá dạy, Môn dạy, HS lương, Thời gian) được gọi là một lược đồ quan hệ có yếu tố thời gian.
1.4. Các phép toán trên thời khoảng
Với a1 và a2 là hai thời khoảng trên C (a1, a2 Î C). Mối quan hệ giữa hai thời khoảng đó có thể đưa về một trong các trường hợp sau:
a1 và a2 rời nhau, ký hiệu a1 ¹ a2
a1 và a2 giao nhau, ký hiệu a1 Ç a2
a1 chứa a2, ký hiệu a1 É a2
a1 chứa trong a2, ký hiệu a1 Ì a2
Từ đó, ta có các phép toán trên thời khoảng như sau:
Phép giao: a1 Ç a2 = {t Î C | t Î a1 Ù t Î a2}
Phép hợp: a1 È a2 = {t Î C | t Î a1 Ú t Î a2}
Phép hiệu: a1 \ a2 = {t Î C | t Î a1 Ù t Ï a2}
Hai thời khoảng a1 và a2 được gọi là kề nhau, ký hiệu a1 Ñ a2 nếu:
a1 = hoặc a1 =
1.5. Biểu diễn các bộ dữ liệu theo thời gian
R = (A1, A2, …, An) là một lược đồ quan hệ có yếu tố thời gian, trong đó {A1, A2, …An} là tập các thuộc tính của quan hệ và An là một thuộc tính chỉ thời gian, ta ký hiệu là thuộc tính T. Với mỗi thuộc tính Ai (i = ) tương ứng với miền giá trị của thuộc tính Ai, ký hiệu là dom(Ai).
Đặt D = dom(A1) È … È dom(An). Khi đó:
Một bộ dữ liệu trên R, ký hiệu t, là một ánh xạ được xác định như sau:
t: R D, sao cho t[Ai] Î dom(Ai), i = .
Như vậy, ta có thể xem các bộ như là các ánh xạ từ tên các thuộc tính đến các giá trị trong miền thuộc tính. Nếu t là một bộ và X là một tập các thuộc tính, chúng ta có thể dùng t[X] để thay cho các thành phần của t trong tập các thuộc tính của X.
Trong ví dụ 1.1, nếu t là một bộ thì t[{Mã GV, Họ tên, Khoá dạy, Môn dạy, HS lương, Thời gian}] là bộ (001, Lê Hoàng, KTV36, Excel, 1.82, [01/03/05, 01/05/05]).
1.6. Các phép toán giữa các bộ theo thời gian
Định nghĩa 1.1. (Phép tương đương giữa hai bộ theo thời gian)
Cho lược đồ quan hệ R với t1 và t2 là hai bộ trên R. Khi đó, t1 và t2 được gọi là tương đương nhau, ký hiệu t1 » t2, nếu với "X Î (R \ {T}) thì (t1[X] = t2[X]) trong đó T là thuộc tính chỉ thời gian.
Nhận xét:
+ Hai bộ dữ liệu được gọi là tương đương nhau nếu giá trị các thuộc tính của chúng bằng nhau, ngoại trừ thuộc tính chỉ thời gian.
+ Ngược lại, hai bộ dữ liệu t1 và t2 là không tương đương, ký hiệu t1≉ t2.
Ví dụ 1.2. Xét quan hệ GIÁOVIÊN như sau:
Bảng 1.2. Phép tương đương giữa hai bộ theo thời gian.
GIÁOVIÊN:
Mã GV
Họ tên
Khoá dạy
HS lương
Thời gian
001
Lê Hoàng
KTV36
1.82
[01/03/05, 01/05/05)
002
Nguyễn Huy
KTV36
1.82
[01/11/05, 30/11/05]
002
Nguyễn Huy
TINA27
1.82
[02/10/05, 15/10/05]
005
Phạm Khoa
KTV63
2.30
[05/09/06, nay]
005
Phạm Khoa
KTV63
2.30
[01/09/06, 10/09/06]
Trong ví dụ 1.2, nếu t1[{Mã GV, Họ tên, Khoá dạy, HS lương, Thời gian}] = (005, Phạm Khoa, KTV63, 2.30, [01/09/06, nay]) và t2[{Mã GV, Họ tên, Khoá dạy, HS lương, Thời gian}] = (005, Phạm Khoa, KTV63, 2.30, [01/09/06, 10/09/06]) ta nói rằng t1 » t2.
Như vậy, với các bộ dữ liệu tương đương nhau, nếu ta không xét đến yếu tố thời gian thì chúng hoàn toàn trùng nhau trong một mô hình dữ liệu quan hệ thông thường. Vì quan hệ thực chất là tập các bộ, mà theo lý thuyết tập hợp thì không thể tồn tại hai bộ trùng nhau trong cùng một tập, do đó sự trùng nhau của hai bộ trong cùng một quan hệ sẽ dẫn đến điều không hợp lệ. Chính vì vậy, việc tìm ra một phép toán nhằm đưa toàn bộ các bộ dữ liệu tương đương trong cùng một quan hệ về dạng hợp lệ được xem là vấn đề cần thiết, và phép toán thực hiện được điều này được gọi là phép hợp nhất. Khi đó, một quan hệ không chứa các bộ dữ liệu tương đương nhau được gọi là quan hệ chính tắc.
Nói cách khác, một quan hệ có yếu tố thời gian r trên lược đồ R được gọi là chính tắc nếu nó không tồn tại hai bộ phân biệt của r tương đương nhau. Điều này có nghĩa là, r là chính tắc nếu với "t1, t2 Î r mà t1 ≉ t2.
Như ta đã biết, nguyên nhân dẫn đến sự trùng lặp dữ liệu giữa các bộ trong cùng một quan hệ đó chính là yếu tố thời gian. Vì vậy, để đưa một quan hệ có yếu tố thời gian về dạng chính tắc ta cần phải thực hiện một phép toán gọi là phép hợp nhất theo chiều thời gian.
Định nghĩa 1.2. (Phép hợp nhất theo thời gian)
Cho lược đồ quan hệ R với t1 và t2 là hai bộ tương đương nhau trên R. Khi đó, phép hợp nhất của t1 và t2, ký hiệu t1 Å t2 là một bộ m được xác định như sau:
m = t1 Å t2 Û (m » t1) Ù (m » t2) Ù (m[T] = t1[T] È t2[T])
Ví dụ 1.3. Xét quan hệ GIÁOVIÊN được cho trong bảng 1.2. Áp dụng phép hợp nhất, ta có thể đưa quan hệ ở bảng 1.2 về dạng chính tắc như sau:
Bảng 1.3. Phép hợp nhất theo thời gian.
GIÁOVIÊN:
Mã GV
Họ tên
Khoá dạy
HS lương
Thời gian
001
Lê Hoàng
KTV36
1.82
[01/03/05, 01/05/05)
002
Nguyễn Huy
TINA27
1.82
[02/10/05, 15/10/05]
002
Nguyễn Huy
KTV36
1.82
[01/11/05, 30/11/05]
005
Phạm Khoa
KTV63
2.30
[01/09/06, nay]
Định nghĩa 1.3. (Quan hệ bao theo thời gian)
Cho lược đồ quan hệ R với t1 và t2 là hai bộ tương đương nhau trên R. Khi đó, t1 được gọi là bao theo thời gian t2 trên R, ký hiệu t1 ®T t2, nếu t1 và t2 là hai bộ tương đương nhau trong đó thời khoảng của t1 chứa thời khoảng của t2, hay ta nói cách khác t1[T] Ê t2[T].
Nhận xét: t1 ®T t2 Û t1 = t1 Å t2
Ví dụ 1.4. Xét quan hệ GIÁOVIÊN được cho trong bảng sau:
Bảng 1.4. Quan hệ bao theo thời gian.
GIÁOVIÊN:
Mã GV
Họ tên
Khoá dạy
HS lương
Thời gian
001
Lê Hoàng
KTV36
1.82
[01/03/05, 01/05/05)
002
Nguyễn Huy
TINA27
1.82
[02/10/05, 15/10/05]
002
Nguyễn Huy
KTV36
1.82
[01/11/05, 30/11/05]
005
Phạm Khoa
KTV63
2.30
[01/09/06, nay]
005
Phạm Khoa
KTV63
2.30
[05/09/06, 10/09/06]
Trong bảng 1.4, với t1[{Mã GV, Họ tên, Khoá dạy, HS lương, Thời gian}] = (005, Phạm Khoa, KTV63, 2.30, [01/09/06, nay]) và t2[{Mã GV, Họ tên, Khoá dạy, HS lương, Thời gian}] = (005, Phạm Khoa, KTV63, 2.30, [05/09/06, 10/09/06]). Ta có thể nói rằng t1 bao t2 theo thời gian hay t1 ®T t2.
Định nghĩa 1.4. (Phần tử theo thời gian)
Cho lược đồ quan hệ R với t là một bộ trên R. Khi đó, t là một phần tử theo thời gian của quan hệ r trên R, ký hiệu t ÎT r, nếu $t’Î r sao cho t’ ®T t.
Như vậy, một quan hệ có yếu tố thời gian có thể chứa vô số các phần tử, song quan hệ này luôn được biểu diễn bởi một quan hệ chính tắc chứa một số hữu hạn các bộ.
1.7. Các phép toán đại số trong CSDL có yếu tố thời gian
Định nghĩa 1.5. (Phép hợp nhất trên một quan hệ)
Cho r là một quan hệ trên R. Khi đó, phép hợp nhất theo thời gian của một quan hệ, ký hiệu År, chính là phép hợp nhất giữa các bộ trong cùng một quan hệ, được xác định như sau:
År = {t | $t1, t2 ÎT r: t1 » t2, t = t1 Å t2}
Nhận xét: Quan hệ År có được bằng cách hợp nhất các bộ trên r tương đương với nhau.
Định nghĩa 1.6. (Phép hợp theo thời gian)
Cho r1 và r2 là hai quan hệ chính tắc trên R. Khi đó, phép hợp theo thời gian của hai quan hệ r1 và r2 trên R, ký hiệu r1 ÈT r2 là tập các bộ được xác định như sau:
r1 ÈT r2 = {t | (t ÎT r1 Ù t ÏT r2) Ú (t ÏT r1 Ù t ÎT r2) Ú
($t1 ÎT r1, $t2 ÎT r2: t1 » t2, t = t1 Å t2)}
Định nghĩa 1.7. (Phép hiệu theo thời gian)
Cho r1 và r2 là hai quan hệ chính tắc trên R. Khi đó, phép hiệu theo thời gian của hai quan hệ r1 và r2 trên R, ký hiệu r1 \T r2, là tập các bộ được xác định như sau:
r1 \T r2 = {t | (t ÎT r1 Ù t ÏT r2) Ú
($t1 ÎT r1, $t2 ÎT r2: t1 » t2, t[T] = t1[T] \ t2[T] )}
Ví dụ 1.5. Xét hai quan hệ GV1 và GV2 như sau:
Bảng 1.5. Hai quan hệ GV1 và GV2 có yếu tố thời gian.
GV1:
Mã GV
Họ tên
Khoá dạy
HS lương
Thời gian
001
Lê Hoàng
KTV36
1.82
[01/03/05, 01/05/05)
002
Nguyễn Huy
TINA27
1.82
[02/10/05, 15/10/05]
002
Nguyễn Huy
KTV36
1.82
[01/11/05, 15/11/05)
005
Phạm Khoa
KTV63
2.30
[01/09/06, 10/09/06]
GV2:
Mã GV
Họ tên
Khoá dạy
HS lương
Thời gian
002
Nguyễn Huy
TINA 27
1.82
[05/10/05, 10/10/05]
002
Nguyễn Huy
KTV36
1.82
[15/11/05, 30/11/05]
005
Phạm Khoa
KTV63
2.30
[06/09/06, nay]
Thực hiện phép hợp theo thời gian cho hai quan hệ GV1 và GV2, ta có:
Bảng 1.6. Phép hợp theo thời gian của hai quan hệ.
GV1 ÈT GV2:
Mã GV
Họ tên
Khoá dạy
HS lương
Thời gian
001
Lê Hoàng
KTV36
1.82
[01/03/05, 01/05/05)
002
Nguyễn Hu