1. Trang chủ
  2. » Giáo Dục - Đào Tạo

(LUẬN văn THẠC sĩ) cơ sở dữ liệu hướng đối tượng thời gian và xử lý truy vấn trong cơ sở dữ liệu hướng đối tượng thời gian

110 2 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Cơ Sở Dữ Liệu Hướng Đối Tượng Thời Gian Và Xử Lý Truy Vấn Trong Cơ Sở Dữ Liệu Hướng Đối Tượng Thời Gian
Tác giả Nguyễn Thị Hội
Người hướng dẫn TS. Nguyễn Kim Anh
Trường học Trường Đại Học Bách Khoa Hà Nội
Chuyên ngành Công Nghệ Thông Tin
Thể loại luận văn thạc sĩ
Năm xuất bản 2006
Thành phố Hà Nội
Định dạng
Số trang 110
Dung lượng 13,62 MB

Cấu trúc

  • CHƯƠNG I TỔNG QUAN (5)
    • 1.1 Cơ ở ữ s d liệu thời gian (5)
      • 1.1.1 Khái niệm (5)
      • 1.1.2 Các vấn đề được nghiên cứu trong CSDL thời gian (0)
      • 1.1.3 Ngữ nghĩa của dữ liệu thời gian (0)
      • 1.1.4 Mô hình hóa thể hiện dữ liệu thời gian (7)
      • 1.1.5 Ngôn ngữ truy vấn trên các hệ CSDL thời gian (8)
      • 1.1.6 Thiết kế CSDL thời gian (9)
      • 1.1.7 Cài đặt các CSDL thời gian (10)
    • 1.2 Cơ ở ữ s d liệu hướng đối tượng (11)
      • 1.2.1 Đối tượng và cơ s d ở ữ liệu đối tượng (0)
      • 1.2.2 Các kiểu dữ liệu (13)
      • 1.2.3 Quản lý đối tượng (14)
    • 1.3 Kết luận chương I (15)
  • CHƯƠNG II CƠ S D Ở Ữ LIỆ U H ƯỚNG ĐỐI TƯỢNG THỜI GIAN (0)
    • 2.1 Tổng quan (16)
    • 2.2 Mục tiêu chung của TOOBIS (17)
    • 2.3 Kết quả thu được (18)
    • 2.4 H ệ ề n n TOOBIS (20)
      • 2.4.1 Phương pháp luận hướng đối tượng thời gian (0)
        • 2.4.1.1 Mục tiêu của phương pháp luận (20)
        • 2.4.1.2 Phương pháp hướ ng đối t ng.............................................. - 20 - ượ (21)
        • 2.4.1.3 Mở ộ r ng thời gian (23)
        • 2.4.1.4 Kết luận về phương pháp luận TOOBIS (28)
      • 2.4.2 H ệ quản tr ị ơ ở ữ c s d liệ u th ờ i gian h ướ ng đối t ng................... - 28 - ượ (29)
        • 2.4.2.1 Mô hình dữ liệu đối tượng thời gian (TODM) (29)
        • 2.4.2.2 Ngôn ngữ định ngh a đối tượng thời gian (TODL) .............. - 31 - ĩ (0)
    • 2.5 Kết luận chương 2 (33)
    • CHƯƠNG 3 CƠ S Ở TOÁN H ỌC CHO XỬ LÝ C Ơ Ở DỮ LIỆ S U HƯỚNG ĐỐI TƯỢNG THỜI GIAN (34)
      • 3.1 Mô hình hóa đối tượng thời gian và hình thức hóa truy vấn (35)
        • 3.1.1 Dữ liệu thời gian (35)
        • 3.1.2 Biểu diễ n đồ th c a TOODB........................................................ - 35 - ị ủ (0)
          • 3.1.2.1 Đồ thị lược đồ (36)
          • 3.1.2.2 Tổ chức dữ li ệu thời gian và đồ ị đối tượng thời gian ........ - 36 - th (0)
          • 3.1.2.3 Hình thức hoá truy vấn thời gian dựa mẫu (38)
      • 3.2 Đại số kết hợp thời gian (40)
        • 3.2.1 Các mẫu kết h ợp thờ i gian nguyên thu ỷ (40)
        • 3.2.2 Th ể hiện mẫu thờ i gian và t ập mẫu thời gian (41)
        • 3.2.3 So sánh khoảng thời gian (42)
        • 3.2.4 Ký hiệu (43)
        • 3.2.5 Toán tử (43)
          • 3.2.5.1 Hình thức hóa mẫu nguyên thuỷ (43)
          • 3.2.5.2 Thao tác mẫu (46)
          • 3.2.5.3 Thao tác mẫu không tính toán thời gian (52)
      • 3.3 Thi ết kế ngôn ngữ thờ i gian và phân tích đại số ọ h c (54)
        • 3.3.1 Các hàm thời gian và các thao tác so sánh khoảng (54)
        • 3.3.2 Một s ố ví dụ phân tích đạ ố ọ i s h c (56)
      • 3.4 Kết luận chương 3 (58)
    • CHƯƠNG 4 MỘT NGÔN NGỮ TRUY VẤN CƠ SỞ DỮ LIỆU HƯỚNG ĐỐI TƯỢNG THỜI GIAN (59)
      • 4.1 Đặc tả TOQL (59)
        • 4.1.1 Giới thiệu (59)
        • 4.1.2 Các kiểu dữ liệu cho trình diễn thời gian (59)
          • 4.1.2.1 Các thành tố (60)
          • 4.1.2.2 Hàm (62)
          • 4.1.2.3 Vị ừ t (63)
          • 4.1.2.4 Toán tử .................................................................................. - 63 - 4.1.2.5 Nguyên tắc tự động chuyể n đối ki u .................................... - 64 -ể (64)
        • 4.1.3 Cơ ở ữ s d liệu mẫu (66)
        • 4.1.4 Truy vấn trên dữ liệu thời gian (0)
          • 4.1.4.1 Các kiểu bi ểu thức hỗ trợ ử x lý truy vấ n c ủa TOQL (0)
          • 4.1.4.2 Các ví dụ (69)
          • 4.1.4.3 Kiểu kết quả ủ c a các toán tử ị k ch bản con (70)
          • 4.1.4.4 Hỗ trợ các giá trị ị ủ b h y bỏ và tiến triển (71)
          • 4.1.4.5 Trích chọn các trạng thái đối tượng (72)
          • 4.1.4.6 Giải quyết vấ n đề ng nghĩa nhập nhằng.............................. - 72 - ữ (0)
        • 4.1.5 Tham chiếu đến các đối tượng thay đối (0)
        • 4.1.6 Chuy ể n đổi gi ữ a giá tr ị thời gian và thông thường (0)
          • 4.1.6.1 Bổ nghĩa thông thường (0)
          • 4.1.5.2 Bổ nghĩa hiệu lực (0)
          • 4.1.6.3 Bổ nghĩa giao dịch (0)
          • 4.1.6.4 Bổ nghĩa bitemporal (0)
        • 4.1.7 Kết nối thời gian (77)
          • 4.1.7.1 Kiểu kết quả ủ c a kết n i th ố ời gian (0)
          • 4.1.7.2 Giá trị ế k t quả ủ c a một kết n i th ố ời gian (0)
          • 4.1.7.3 Kết n i th ố ời gian trên nhiều đố ượng.................................. - 80 - i t (0)
        • 4.1.8 Toán tử ấ c u trúc lại (82)
        • 4.1.9 Tập hợp (84)
          • 4.1.9.1 Phân hoạch một đối tượng thời gian đơn (85)
          • 4.1.9.2 Kết h ợp nh ng bi ữ ến thể ừ t nhiều đố ượng thời gian........... - 86 - i t (0)
      • 4.2 Bộ ử x lý TOQL (88)
        • 4.2.1 Giới thiệu (88)
        • 4.2.2 Kiến trúc bộ ử x lý TOQL (88)
        • 4.2.3 Xử lý truy vấn (90)
          • 4.2.3.1 Biến đổi cú pháp (90)
          • 4.2.3.2 Thực thi TOQL ở trên OQL 5.1.1 tương thích OODBMS (90)
      • 4.3 Cài đặt chương trình (90)
      • 4.4 Kết luận chương 4 (93)
  • CHƯƠNG V: KẾT LUẬN (94)

Nội dung

TỔNG QUAN

Cơ ở ữ s d liệu thời gian

Hệ quản trị cơ sở dữ ệ li u (DataBase Management System - DBMS) [NKA-

04] là một hệ thống phần mềm cho phép t o l p c sở dữ ệạ ậ ơ li u (DataBase – CSDL) và đ ềi u khiển mọi truy nhập đối với CSDL đó

Hệ cơ sở dữ liệu có 4 thành phần [NKA-04] :

• CSDL hợp nh t: CSDL c a h có hai tính ch t c bảấ ủ ệ ấ ơ n là t i thi u hóa ố ể dư thừa và được chia sẻ

Người sử dụng cơ sở dữ liệu (CSDL) bao gồm mọi cá nhân có nhu cầu truy cập thông tin, từ người dùng cuối đến lập trình viên và quản trị viên CSDL.

• Phần c ng: Ph n c ng c a h th ng bao g m các thi t b nh th cấp ứ ầ ứ ủ ệ ố ồ ế ị ớ ứ được sử ụ d ng để l u tr CSDL ư ữ

Sau đây là một số khái niệm về các hệ quản trị CSDL thông thường và thời gian [NN-02] :

• Snapshot DataBases Management Systems (DBMS): các DBMS truyền thống không hỗ trợ cho bất kỳ kiểu thời gian nào

• Valid Time (Historical) DBMSs: các DBMS chỉ hỗ ợ tr th i gian hi u ờ ệ lực

• Transaction Time (Rollback) DBMSs: các DBMS chỉ hỗ ợ tr th i gian ờ giao dịch

• Bi_Temporal DBMSs: các DBMS có hỗ ợ tr cả hai ki u th i gian giao ể ờ dịch và hiệu lực

1.1.2 Các vấ đền được nghiên c u trong CSDL thứ ời gian

Trong các hệ quản trị CSDL thời gian thì thuộc tính thời gian được xem là một bộ phận gắn kết với hệ quản trị CSDL thời gian

Một số vấn đề chính khi nghiên cứu CSDL thời gian là:

- Ngữ nghĩa của dữ liệu thời gian

- Mô hình hóa trình diễn dữ liệu thời gian

- Ngôn ngữ truy vấn trên các hệ quản trị CSDL thời gian

- Thiết kế CSDL thời gian

- Cài đặt và thực thi CSDL thời gian

- Các kỹ thuật tối ưu hóa trong thực thi CSDL thời gian

1.1.3 Ngữ nghĩa c a d liệu thời gian ủ ữ

Trong cơ sở dữ liệu thời gian, hai khái niệm quan trọng là thời gian hiệu lực và thời gian giao dịch Khi đề cập đến ngữ nghĩa của dữ liệu thời gian, chúng ta cần xem xét cả thời gian hiệu lực và thời gian giao dịch để hiểu rõ hơn về cách thức hoạt động của chúng trong hệ thống.

Thời gian hiệu lực của một sự kiện bao gồm tất cả các khoảng thời gian, từ quá khứ đến hiện tại và tương lai, khi sự kiện đó được coi là hợp lệ.

• Thời gian hi u l c ghi nh n quá trình thay đổi tr ng thái c a các s ki n ệ ự ậ ạ ủ ự ệ trong thực tế

Thời gian hiệu lực của các sự kiện không phải lúc nào cũng được ghi nhận trong cơ sở dữ liệu do một số lý do như thời gian hiệu lực không thể xác định hoặc không có thông tin chính xác về khoảng thời gian hiệu lực.

Thời gian giao dịch (Transaction Time - TT) là khoảng thời gian mà một sự kiện được ghi nhận và lưu trữ trong cơ sở dữ liệu (CSDL).

• Thời gian giao d ch ghi nh n s thay đổi tr ng thái c a chính b n thân ị ậ ự ạ ủ ả CSDL

Các ứng dụng yêu cầu hỗ trợ khẩn cấp để truy cập vào các trạng thái trước đó của cơ sở dữ liệu, do đó cần có sự hỗ trợ trong thời gian giao dịch.

• Thời gian giao d ch b ch n hai đầu b i các th i i m khi CSDL ị ị ặ ở ờ đ ể được khởi tạo và trạng thái hiện thời của chính nó

• Thời gian giao d ch còn có tính ch t là t ng tu n t và d dàng cho vi c ị ấ ă ầ ự ễ ệ ghi nhận một cách tự động b i hệ quản trị CSDL đó ở

1.1.4 Mô hình hóa thể hiện dữ liệu thời gian Để biểu di n và xây d ng các h qu n tr CSDL th i gian, người ta m rộng ễ ự ệ ả ị ờ ở các hệ quản trị CSDL thông thường (hệ quản trị CSDL quan hệ, hệ quản trị CSDL đ ểi m nối đ ểi m…) theo một trong hai hoặc cả hai cách sau đây:

• Ghi nhận thông tin th i gian liên quan đến mỗ ộ ữ ệờ i b d li u

• Ghi nhận thông tin th i gian liên quan đến mỗờ i thu c tính trong t ng bộ ộ ừ

Cách thứ nhất, m i bỗ ộ ữ d liệu được thêm 4 trường dùng để lưu các giá trị thời gian bao gồm: {TT B, TT E , VT B , VT E }

- TTB: Thời gian bắt đầu giao dịch

- TT E : Thời gian kết thúc giao dịch

- VT B : Thời gian hiệu lực bắt đầu

- VTE: Thời gian hiệu lực kết thúc

Sau khi bổ sung 4 trường mới, cách biểu diễn các bộ dữ liệu ở dạng chuẩn 1 (1NF) vẫn được hỗ trợ trong nhiều hệ quản trị cơ sở dữ liệu phổ biến hiện nay Tuy nhiên, nếu các thuộc tính trong cùng một bộ dữ liệu thay đổi không đồng thời, điều này sẽ vi phạm nguyên tắc về sự dư thừa dữ liệu.

Cách thứ hai để biểu diễn thông tin là rất phức tạp, vì mỗi loại dữ liệu sẽ có các giá trị thời gian riêng tương ứng Do đó, các hệ quản trị cơ sở dữ liệu cần hỗ trợ thêm các phương pháp lưu trữ, xử lý và truy vấn hiệu quả hơn Trong trường hợp này, việc sử dụng cơ sở dữ liệu hướng đối tượng thời gian sẽ mang lại nhiều ưu điểm hơn.

1.1.5 Ngôn ngữ truy vấn trên các hệ CSDL th i gian ờ Để thiế ết k xây d ng m t ngôn ng truy v n m i, yêu c u phảự ộ ữ ấ ớ ầ i tuân theo m t ộ s iố đ ều kiện như:

• Tương thích với các hệ quản trị CSDL đã có

• Việc cài đặt ngôn ng truy v n m i không quá khó kh n ữ ấ ớ ă

• Ngôn ngữ truy v n m i ph i có cú pháp gi ng các ngôn ng truy v n ã ấ ớ ả ố ữ ấ đ có

• Ngôn ngữ truy v n m i ph i có kh năấ ớ ả ả ng di n ễ đạt cao hơn và hỗ trợ nhiều hơn các ngôn ngữ truy vấ đã có n

Việc thiết kế một ngôn ngữ truy vấn mới với các yêu cầu phức tạp là một công việc khó khăn, tốn nhiều thời gian và công sức, và không đảm bảo rằng việc phổ biến nó sẽ trở nên dễ dàng.

Giải quyết vấn đề truy vấn trên cơ sở dữ liệu thời gian đòi hỏi việc mở rộng các ngôn ngữ truy vấn phổ biến như SQL bằng cách tích hợp yếu tố thời gian Đối với cơ sở dữ liệu thời gian hướng đối tượng, đã có một số ngôn ngữ truy vấn chuyên biệt được phát triển, bao gồm TOQL, TOOSQL và OQL/T Chương 4 của luận văn sẽ tập trung trình bày chi tiết về TOQL.

1.1.6 Thiết kế CSDL thời gian

Mục tiêu chính của thiết kế là tối ưu hóa khả năng và tiện ích của các hệ quản trị cơ sở dữ liệu (CSDL) nhằm phục vụ hiệu quả cho ứng dụng của hệ thống.

Các ứng dụng yêu cầu hỗ trợ yếu tố thời gian thường phức tạp hơn so với các ứng dụng thông thường, đồng thời việc thiết kế cũng gặp nhiều khó khăn Thiết kế cơ sở dữ liệu (CSDL) cho các ứng dụng này thường dựa trên các mẫu thiết kế CSDL thông thường và sau đó bổ sung thêm các yếu tố thời gian.

Trong quá trình thiết kế logic, việc tích hợp yếu tố thời gian và mở rộng các phụ thuộc liên quan là rất quan trọng Sau đó, quá trình chuẩn hóa dữ liệu sẽ được điều chỉnh để phù hợp với dữ liệu thời gian, đồng thời các thuật toán chuẩn hóa cũng cần được cập nhật để đáp ứng yêu cầu này.

Quá trình thiết kế cơ sở dữ liệu (CSDL) thời gian thường dựa trên mô hình thực thể liên kết và một số dựa trên mô hình đối tượng Để chuyển đổi từ mô hình thực thể liên kết sang mô hình có yếu tố thời gian, cần mở rộng thêm các yếu tố thời gian và thực hiện chuyển đổi thủ công Tuy nhiên, khi sử dụng mô hình đối tượng, việc chuyển đổi sang mô hình đối tượng thời gian trở nên đơn giản hơn, chỉ cần thêm yếu tố thời gian vào các thuộc tính của đối tượng, trong khi các thao tác liên quan được tự động thêm vào các yếu tố thời gian.

1.1.7 Cài đặt các CSDL thời gian Đối với vi c cài đặt CSDL th i gian [NN-02] có hai hướng ti p cận chính là: ệ ờ ế

Hướng tiếp cận tích hợp (Intergrated) và Hướng tiếp cận sử dụng lại các hệ đã có (Layered)

Cơ ở ữ s d liệu hướng đối tượng

Hiện nay, nhiều ứng dụng mới đang phát triển trong các lĩnh vực như thiết kế hỗ trợ máy tính (CAD), hệ thống thông tin đa phương tiện, trí tuệ nhân tạo và hệ thống tin học văn phòng Đối với những ứng dụng này, hệ quản trị cơ sở dữ liệu đối tượng (Object DBMS) được coi là phù hợp hơn với các đặc trưng cần thiết.

• Chúng phả ưi l u tr và thao tác v i các ki u d li u trừu tượng và khả ữ ớ ể ữ ệ năng cho phép người dùng định nghĩa các kiểu mới

Biểu diễn các đối tượng người dùng bằng mô hình quan hệ phẳng làm mất đi cấu trúc tự nhiên vốn có của các ứng dụng Mô hình quan hệ tồntại giữa các đối tượng không đạt được những ưu điểm mà mô hình đối tượng có thể thể hiện.

• Các hệ th ng đối tượng, các ng d ng ph c t p có th được vi t b ng ố ứ ụ ứ ạ ể ế ằ một ngôn ngữ lập trình CSDL đối tượng xác định

Sau đây, luận văn sẽ trình bày những nét cơ bản về CSDL đối tượng

1.2.1 Đối tượng và cơ sở dữ liệu đối tượng

Hệ quản trị cơ sở dữ liệu đối tượng sử dụng "đối tượng" làm đơn vị cơ bản để mô hình hóa và truy xuất dữ liệu Mô hình dữ liệu đối tượng có đặc điểm chung là định danh đối tượng, trong đó mỗi thực thể trong thế giới thực được chuyển hóa thành một đối tượng trong cơ sở dữ liệu Mỗi đối tượng được xác định duy nhất bởi định danh đối tượng, do hệ thống tự động sinh ra và được quản lý bởi hệ thống.

Các đối tượng phức hợp là những mô hình dữ liệu cho phép tạo ra các kiểu dữ liệu mới từ các kiểu dữ liệu đã có, bao gồm cấu trúc bội c (tuple) và cấu trúc tập (set

Sự phân cấp kiểu: Mô hình dữ ệ li u đối tượng cho phép có các ki u con v i ể ớ các tính chất đặc biệt riêng của nó

Một đối tượng có 4 đặc trưng [MV-03] :

• Định danh: Mỗi đối tượng có m t định danh (IDentifier - ID) duy nh t ộ ấ xác định trong toàn bộ hệ thống

• Giá trị: M i ỗ đối tượng có th có m t giá trị tạể ộ i m t th i i m trong ộ ờ đ ể CSDL

• Các tham chiếu: Các tham chi u hay các quan h mà ế ệ đối tượng có th ể có

• Phương thức: Các phương th c mà đối tượng có th th c hi n ứ ể ự ệ

Hình 1 1 Mô hình một đối tượng

CSDL đối tượng tập trung vào việc cấp phát, quản lý và huỷ bỏ các đối tượng cùng với hành vi của chúng Mỗi đối tượng cần được xem xét từ hai khía cạnh quan trọng: Trạng thái (Status) và Hành vi (Behavior).

• Trạng thái được bi u di n nh mộ ậể ễ ư t t p các bi n th hi n (instance ế ể ệ variable) hay thuộc tính (attribute) và chúng là các giá trị

Hành vi của đối tượng được biểu diễn thông qua các phương thức Những hành vi này xác định các hành động hợp lệ trên các đối tượng và được sử dụng để thao tác với chúng.

Trong mô hình dữ liệu đối tượng chúng ta xét đến một số khái niệm liên quan:

- Truy vấn trên dữ liệu đối tượng …

Kiểu dữ liệu trừu tượng (Abstract Data Type - ADT) là một mô hình mô tả các đối tượng thuộc kiểu dữ liệu đó ADT định nghĩa kiểu dữ liệu bằng cách cung cấp một miền dữ liệu có cấu trúc tương đồng và các phương thức áp dụng cho các phần tử trong miền Khả năng trừu tượng của ADT được gọi là đóng gói (encapsulation), giúp ẩn đi các chi tiết cài đặt và cho phép biểu diễn bằng một ngôn ngữ hình thức.

Thành phần kết hợp là một đặc trưng nổi bật trong mô hình dữ liệu đối tượng, cho phép chia sẻ tham chiếu đến đối tượng thông qua các OID của nó.

Lớp (Class) là một nhóm các đối tượng có cùng kiểu dữ liệu, cho phép tổ chức và quản lý thông tin hiệu quả Mỗi lớp thường có các thuộc tính và phương thức riêng, tạo thành một cấu trúc hoàn chỉnh cho việc xử lý các đối tượng liên quan Lớp còn có thể kế thừa từ các lớp khác, giúp tái sử dụng mã nguồn và tăng tính linh hoạt trong lập trình.

Tập (Collection): Tập là m t nhóm do người dùng ộ định nghĩa chứa các đối tượng Sự khác biệt giữa lớp và tập như sau:

Bảng 1 1 Bảng so sánh giữa lớp và tập

Lớp có khả năng tạo ra các đối tượng Tập không có khả năng tạo ra đối tượng

Một đối tượng là phần tử của một lớp duy nhất Mộ t đối tượng có th trong nhi u t p ể ở ề ậ

Quản lý lớp là không tường minh và do hệ thống tự động duy trì các lớp

Quản lý tập là tường minh

Một lớp bao gồm các mở rộ ng c a m t ki u ủ ộ ể duy nhất và các mở rộ ng c a các ki u con c a ủ ể ủ nó

Một tập hợp là nhóm các đối tượng được người dùng định nghĩa, không đồng nhất về kiểu Nó bao gồm các đối tượng thuộc các kiểu khác nhau mà không có mối liên hệ nào với nhau.

Quản lý định danh đối tượng (OID) là phương pháp xác định duy nhất mỗi đối tượng trong hệ thống Để duy trì mối quan hệ giữa các đối tượng trong cơ sở dữ liệu, chúng ta sử dụng các biểu thức đường dẫn (path expression) chứa thuộc tính và giá trị của chúng Các đối tượng này được gọi là con trỏ, bao gồm hai loại: con trỏ trong bộ nhớ (in memory pointer) và con trỏ đĩa (disk pointer).

Con trỏ đĩa là phương pháp sử dụng OID và con trỏ trong bộ nhớ để duy trì liên kết giữa các đối tượng Quá trình chuyển đổi con trỏ đĩa thành con trỏ trong bộ nhớ được gọi là điều chế con trỏ (pointer swizzling) Có hai lược đồ chính được áp dụng trong việc điều chế con trỏ: lược đồ phần cứng và lược đồ phần mềm.

Lược đồ phần cứng sử dụng cơ chế khuyết trang (page fault) của hệ điều hành để quản lý bộ nhớ Khi một trang được đưa vào bộ nhớ, tất cả các con trỏ liên quan đều được điều chỉnh và chúng chỉ định các khung nhớ riêng biệt Các trang dữ liệu tương ứng với các khung ảo này chỉ được tải vào bộ nhớ khi có truy xuất đến chúng Việc truy xuất trang sẽ tạo ra một khuyết trang mà hệ điều hành cần ghi nhận và xử lý.

Lược đồ phần mềm là một công cụ quan trọng trong việc điều chỉnh và quản lý các đối tượng Mỗi con trỏ trong lược đồ này được thiết kế để chỉ đến một vị trí cụ thể trong bảng đối tượng, giúp việc truy cập và thao tác trở nên hiệu quả hơn.

Kết luận chương I

Chương này của luận văn giới thiệu các khái niệm cơ bản về cơ sở dữ liệu (CSDL) thời gian và CSDL đối tượng Một vấn đề quan trọng được đặt ra là cách giải quyết các yêu cầu của hệ quản trị cơ sở dữ liệu đối tượng liên quan đến quản lý thời gian Trong chương 2, luận văn sẽ đi sâu vào CSDL thời gian hướng đối tượng (Temporal Object Oriented Database - TOODB) trong các hệ thống thông tin CSDL TOODB được phát triển để hỗ trợ các ứng dụng có yêu cầu quản lý dữ liệu theo thời gian.

CƠ S D Ở Ữ LIỆ U H ƯỚNG ĐỐI TƯỢNG THỜI GIAN

Tổng quan

TOOBIS là một phương pháp luận mô hình hóa khái niệm mới, giúp nắm bắt ngữ nghĩa, phân tích yêu cầu và hình thức hóa thiết kế cho các hệ thống thông tin thời gian Nó cũng hỗ trợ lưu trữ một cách hiệu quả cơ sở dữ liệu hướng đối tượng (OODBMS) và lưu kết quả trong Hệ thống Quản lý Cơ sở dữ liệu Hướng đối tượng Thời gian (TOODBMS), cung cấp nền tảng cần thiết cho việc thực thi và bảo trì các ứng dụng thời gian.

Các ứng dụng hiện nay thực hiện theo hướng OODBMS bao gồm :

• Viễn thông: Qu n lý m ng, Qu n tr , Mô ph ng, L p kả ạ ả ị ỏ ậ ế ho ch, ạ

• Công nghiệp hàng không : D li u k thu t và qu n lý tài li u k thu t ữ ệ ỹ ậ ả ệ ỹ ậ

• Bảo vệ : Chuẩn bị các đặc vụ, Mô phỏng, Tập trận giả,

• Ngân hàng và bảo hi m : H th ng nhà thương m i, Hệ ốể ệ ố ạ th ng thông tin khách hàng…

• Dịch vụ : Phân phối đ ện, Quản lý mạng vận tải, bản đồ học, i

• Thương mại : ( Những ng dụng DSS vềứ tài chính, ngân hàng, bảo hiểm)

• Sức khỏe : ( Mô phỏng, Thao tác y học, Quản lý bệnh, dược lý)

Những lợi ích mà công nghệ TOODBMS mang lại trong quá trình xây dựng các ứng dụng thông tin:

• Tiện ích để phân tích và thi t k , v i các khía c nh th i gian có hành vi ế ế ớ ạ ờ động và tĩnh trên m t mi n ứộ ề ng d ng ụ

• Giảm giá thành cho quá trình thi t k nh ng ng d ng th i gian, phát ế ế ữ ứ ụ ờ triển, b o trì và tiến hóa ả

• Cải tiến việc thực thi những ứng dụng lưu kết quả

• Chuẩn b mộị t khung linh ho t để lưạ u d li u th i gian và m t ngôn ng ữ ệ ờ ộ ữ truy vấn mạnh để thao tác trên chúng.

Mục tiêu chung của TOOBIS

TOOBIS nhắm vào việc phát triển một Hệ nền c nh tranh để hỗ ợạ tr vòng đời

1 Cung cấp một phương pháp phân tích và thiết kế thời gian, bằng việc mở rộng và xây d ng để thích nghi v i nh ng phương pháp lu n ang ự ớ ữ ậ đ tồn tại

2 Mở rộng ch c n ng chính b ng vi c đề xu t O2 OODBMS, và h tr ứ ă ằ ệ ấ ỗ ợ cả thời gian hiệu lực lẫn thời gian giao dịch Những mở rộng này ph i ả tương thích với các chuẩn ODMG và các đ ều khoản mà các chuẩn i SQL/3 sắp định nghĩa

3 Tuân theo việc phát triển những chuẩn ODBMS, có mặt trong các định nghĩa mà những chuẩn này chị ảnh hưởng u

4 Làm giàu thêm chức năng của O2 OODBMS, cung cấp mô hình dữ liệu xây dựng để khởi tạo và thao tác trên các đố ượng thời gian i t

5 Tăng cường các chuẩn cho ngôn ngữ định nghĩa đối tượng (Object Definition Language - ODL)

6 Mở rộng chu n cho ngôn ng truy v n ẩ ữ ấ đối tượng ở mức cao (Object Query Language - OQL)

7 Tăng tính hiệu lực với cách tiếp cận và những sản phẩm TOOBIS (TOODBMS và Phương pháp luận) bằng việc phát triển các ứng dụng thực tế…

TOODBMS cung cấp một cách thức lưu trữ kiến trúc mô hình dữ liệu nhằm tạo mới và thao tác trên các đối tượng thời gian Nó kế thừa đối tượng thời gian từ O2 OODBMS và sử dụng ngôn ngữ định nghĩa thời gian (Temporal Object Defined Language - TODL), đồng thời mở rộng ODMG ODL và chuẩn ngôn ngữ truy vấn đối tượng mức cao (OQL).

Kết quả thu được

Dự án TOOBIS đã xây dựng một Hệ nền hoàn chỉnh cho các hệ thống thông tin thời gian, bao gồm nhiều thành phần quan trọng.

1 Phương pháp luận thời gian hướng đối tượng (Temporal Object

Phương pháp TOOM (Oriented Method) được áp dụng trong giai đoạn phân tích và thiết kế hệ thống thông tin thời gian TOOM không chỉ hỗ trợ việc nắm bắt và mô hình hóa mà còn cung cấp phương pháp xây dựng mô hình bao gồm cả khía cạnh cấu trúc và khía cạnh hành vi của hệ thống thông tin.

2 DBMS hướng đối tượng thời gian (TOODBMS) TOODBMS có thể sử dụng để định nghĩa, lưu trữ và truy vấn dữ liệu thời gian, cung cấp cơ sở h tạ ầng cần thiết cho việc thực thi và thao tác của các hệ thống thông tin thời gian TOODBMS gồm ba thành phần phân biệt được minh h a ọ trong Hình 2.1

Kiến trúc của TOODBMS bao gồm ba mô đun chính Đầu tiên, Mô hình Dữ liệu Đối tượng Thời gian (TODM) cung cấp các công cụ để tạo, lưu trữ và thực hiện thao tác trên các đối tượng phi thời gian và thời gian, bao gồm việc thêm mới, xóa bỏ thông tin thời gian và trích xuất thông tin theo giai đoạn thời gian Thứ hai, Ngôn ngữ Định nghĩa Đối tượng Thời gian (TODL) cho phép định nghĩa các đối tượng với cấu trúc thời gian, mở rộng từ Ngôn ngữ Định nghĩa Đối tượng ODMG (ODL), đồng thời lưu trữ meta-data để người dùng có thể truy vấn và xác định các thuộc tính của đối tượng Cuối cùng, Ngôn ngữ truy vấn Đối tượng Thời gian (TOQL) là một phần mở rộng của OQL, cho phép trích xuất thông tin từ cơ sở dữ liệu thời gian và cung cấp tính năng động cho người dùng có chiều thời gian, phù hợp với các ứng dụng kế thừa Kiến trúc hệ thống được minh họa trong Hình 2.2.

Hình 2 2 Kiến trúc tổng quan hệ ề n n TOOBIS

H ệ ề n n TOOBIS

2.4.1 Ph ng pháp lu n hươ ậ ướng đối tượng thời gian

2.4.1.1 Mục tiêu của phương pháp luận

Những vấn đề trọng tâm khi xây dựng phương pháp luận hướng đối tượng là:

• Đơn vị ờ th i gian dùng để i u khi n t ch c vòng đời ng d ng đ ề ể ổ ứ ứ ụ

• Ngữ ngh a và mi n th i gian c a m i thu c tính ĩ ề ờ ủ ỗ ộ

• Dữ liệu nào được thể hiện cho thích hợp để lưu tr và qu n lý trong c ữ ả ơ sở dữ liệu

Các ràng buộc được định nghĩa nhằm đảm bảo việc quản lý dữ liệu thời gian trong quá khứ, hiện tại và tương lai là vấn đề then chốt trong việc phát triển phương pháp luận thời gian Những khái niệm về độ chính xác và trình diễn thời gian cùng với các khái niệm quản lý lịch sử cho phép mô hình hóa theo khía cạnh thời gian của ứng dụng ở mức khái niệm.

2.4.1.2 Phương pháp hướng đố ượng i t

Phương pháp hướng đối tượng cơ bản sử dụng một mô hình duy nhất, được phân chia thành ba nhóm: cấu trúc, hàm và hành vi Các khái niệm chính của mô hình này được áp dụng để mô hình hóa hiện tượng trong thực tế, đồng thời thể hiện những mối quan hệ bên dưới chúng, như được minh họa trong Hình 2.3.

Hình 2 3 Các khái niệm cơ ả b n của mô hình đối tượng

Trong phần này chúng ta s xem xét theo 2 thuẽ ộc tính là: Cấu trúc và Hành vi

Khái niệm cơ bản của mô hình trong lập trình hướng đối tượng bao gồm đối tượng và lớp đối tượng, được hình thành từ sơ đồ hướng đối tượng Mục tiêu chính của mô hình là đảm bảo rằng khái niệm đối tượng được duy trì từ giai đoạn phân tích cho đến giai đoạn thực thi.

• Đối tượng biểu di n cho m t hi n t ng, mộễ ộ ệ ượ t th c th trong th c t ự ể ự ế không gian ứng dụng

• Lớp đối tượng mô tả một nhóm các đối tượng có cùng đặc tr ng v ư ề hành vi và cấu trúc

• Thuộc tính là m t đặc tr ng c a m t l p T p h p giá tr củộ ư ủ ộ ớ ậ ợ ị a m t thu c ộ ộ tính được định nghĩa thông qua khái niệm miền

Mô tả cấu trúc c a m t l p đối tượng y ủ ộ ớ đầ đủ bằng m t t p các ràng bu c S ộ ậ ộ ự ràng buộc có thể được phân loại thành ba phạm trù :

1 Ràng buộc thừa kế, sự phân chia các mô hình, sự phủ và sự tách rời

2 Ràng buộc thuộc tính, hạn chế các giá tr thuộc tính của một đối tượng, ị hoặc những giới hạn của các thuộc tính, định nghĩa những đối tượng liên quan hoặc những miền theo một chuẩn nhất định

3 Ràng buộc duy nhất, được định nghĩa giữa một tập của các thuộc tính và một tập các đố ượng i t

Mô hình đối tượng không chỉ tập trung vào cấu trúc mà còn khám phá các khái niệm liên quan đến sự kiện và thao tác, từ đó phân tích hành vi của các hệ thống thông tin ở mức độ khái niệm.

Ba nhóm sự kiện được phân biệt như sau: Sự ện ngoài, Sự ện bên trong và ki ki

• Sự kiện ngoài tương ứng với những sự kiện xuất hi n trong môi trường ệ bên ngoài hệ thống thông tin

• Sự kiện bên trong tương ứng với trạng thái bên trong thay đổi hoặc tương ứng với những đáp ứng lại của hệ thống do bên ngoài thay đổi

• Sự kiện thời gian là một trạng thái đặc biệt của đồng hồ đo thời gian

Sự kiện ngoài liên quan đến một lớp tác nhân, trong khi tất cả các sự kiện thời gian gắn liền với lớp lịch biểu Sự kiện bên trong kết nối với các lớp đối tượng Hình 2.4 tổng kết sự phối hợp của các khái niệm khác nhau như cấu trúc, hàm và hành vi.

Hình 2 4 Một lược đồ độ ng

Mở rộng thời gian tập trung vào việc trình bày các phân tích về yêu cầu quản lý thời gian trong bối cảnh ứng dụng cơ sở dữ liệu Các khái niệm mấu chốt liên quan đến yêu cầu này sẽ được làm rõ để nâng cao hiệu quả quản lý thời gian trong các ứng dụng.

Mở rộng th i gian c a phương pháp lu n hướờ ủ ậ ng đối t ng (Temporal Object ượ Oriented Method - TOOM) bao gồm những khía cạnh sau :

• Định nghĩa c a m t ho c nhi u l ch bi u cho m t ng d ng, ủ ộ ặ ề ị ể ộ ứ ụ

• Mở rộng của các miền cơ sở đến các miền thời gian,

• Mở rộng lớp đối tượng tới các chiều thời gian,

• Mở rộng của các ràng buộc áp dụng trên những lớp đối tượng,

• Mở rộng thời gian của các sự kiện

[EIV-99F] cho rằng một lịch biểu là một ống ma trận áp dụng cho các đường thời gian OOM đề xuất khái niệm lịch biểu để định nghĩa các sự kiện thời gian của ứng dụng Trong OOM ban đầu, lịch Gregorian được sử dụng như một đối tượng, và lịch biểu có một thể hiện đồng nhất với lịch Gregorian Lịch biểu nào được áp dụng cho ứng dụng sẽ được mô tả trong [EIV-99F].

- Gốc hay vị trí bắt đầu của lịch biểu,

- Một đơn vị cơ bản (nguyên tố),

- Một trật tự liệt kê của các thành tố với nh ng chuy n đổi đơn v l n ữ ể ị ớ hơn và đơn vị nhỏ ơ h n c a chúng, ủ

- Một thao tác chuyển dịch từ một thời đ ểm đến một giai đ ạn, i o

- Một thao tác chuyển đổi giữa những thành tố của cùng lịch biểu đó,

Hai thao tác chuyển đổi lịch biểu Gregorian rất đơn giản, bao gồm việc xác định điểm bắt đầu (from) và điểm kết thúc (to) Những thao tác này giúp dễ dàng chuyển đổi giữa các loại lịch khác nhau.

B - Mở ộ r ng miề n cơ ở ớ s t i miền thời gian

Miền thời gian mới được áp dụng để biểu diễn thời gian trong cơ sở dữ liệu, bao gồm ba kiểu chính: thời điểm (Instant), giai đoạn (Period) và khoảng thời gian (Interval).

• Một thời đ ểm trình bày một đ ểm trên đường thời gian i i

• Một thời kỳ hay giai đ ạn trình bày số lượng củo a th i gian gi a hai thời ờ ữ đ ểi m

• Một khoảng, là một số lượng không bị hạn chế của thời gian

Ba kiểu thời gian được biểu thị qua các đơn thể trong m t l ch ộ ị biểu, bao gồm các miền thời gian chung như INSTANT, PERIOD và INTERVAL.

Các kiểu cổ đ ể i n: ngày tháng, thời gian và ngày tháng, thời gian được tìm thấy trong DBMSs cổ đ ể i n Còn INSTANT-A, PERIOD-

A được sử dụng để ch mi n th i gian tuy t ỉ ề ờ ệ đối Mi n ề thời gian tương đố được trình bày bởi: INSTANT-R và i

C - Mở ộ r ng lớp đối tượng tới các chiều thời gian

Trong mục này luận v n să ẽ trình bày các chiều thời gian được mở rộng trong lớp đối tượng bao gồm: Lớp thông thường và lớp thời gian

Một lớp thông thường không hỗ trợ thời gian là lớp không yêu cầu quản lý thời gian Các thuộc tính của lớp này bao gồm việc không cần thiết lập thời gian biểu hay quy định thời gian cụ thể cho các hoạt động trong lớp học.

Một thuộc tính trong một lớp thông thường có thể liên quan đến một thuộc tính khác hoặc một lớp khác, và điều này được xác định trong lớp đối tượng.

Một ràng buộc định nghĩa cho lớp thông thường có thể là ràng buộc thuộc tính hoặc ràng buộc thừa kế, và điều này được mô tả trong lớp đối tượng.

Phương thức c a m t l p thông thường liên quan đến các truy vấn học tập cơ bản, có thể áp dụng cho đối tượng hoặc mức lớp Những thao tác cơ bản bao gồm tạo mới, cập nhật, xoá hoặc huỷ bỏ.

Sự kiện bên trong có thể được định nghĩa trong lớp thông thường

Kết luận chương 2

Trong chương 2, luận văn phân tích sâu về cơ sở dữ liệu thời gian hướng đối tượng trong các hệ thống thông tin TOOBIS, bao gồm phương pháp luận TOOBIS và hệ quản trị TOODBMS.

Phương pháp luận TOOBIS giúp người phân tích mô hình hóa các khía cạnh thời gian của các ứng dụng cơ sở dữ liệu và hỗ trợ tương ứng với các đặc tả khái niệm đến TOOBIS - TOODBMS thông qua ngôn ngữ định nghĩa TODL.

Hệ quản trị TOODBMS bao gồm ba mô đun chính: TODL, TODM và TOQL Trong Chương 2, hai mô đun TODM và TODL đã được trình bày, với việc mở rộng dữ liệu thời gian và ngôn ngữ định nghĩa mới, nhằm hỗ trợ đầy đủ các tính năng cho các ứng dụng quản lý cơ sở dữ liệu có yếu tố thời gian theo phương thức hướng đối tượng.

Chương 3 sẽ giới thiệu một đại s thố ời gian là cơ sở toán h c cho vi c x lý ọ ệ ử đối vớ ơ ở ữ ệi c s d li u th i gian theo phương th c hướng i tượng ờ ứ đố

CƠ S Ở TOÁN H ỌC CHO XỬ LÝ C Ơ Ở DỮ LIỆ S U HƯỚNG ĐỐI TƯỢNG THỜI GIAN

Mô hình dữ liệu hướng đối tượng mang lại nhiều ưu điểm nổi bật như tính kế thừa, định danh đối tượng, đóng kín, đóng gói thông tin, đa hình, và các kỹ thuật kiểu/lớp Những tính năng này cho phép các thực thể trong thế giới thực được mô hình hóa trực tiếp, từ đó hỗ trợ phát triển hệ thống và mô hình hóa dữ liệu hiệu quả Khung nhìn của một cơ sở dữ liệu hướng đối tượng có thể được trình bày thông qua việc kết nối các lớp đối tượng bằng nhiều kiểu kết hợp khác nhau, tạo nên một mô hình linh hoạt và dễ hiểu Các khung nhìn mở rộng của chúng giúp thể hiện rõ ràng mối quan hệ giữa các thực thể trong hệ thống.

Một hướng đi chính cho đại số TA là hỗ trợ cho việc truy vấn dựa trên mẫu hoặc đồ thị Trong một đặc tả truy vấn dựa mẫu, truy vấn có thể giải quyết các đối tượng đơn giản hoặc các lớp đối tượng phức tạp với cấu trúc tuyến tính, cây hoặc mạng lưới, bao gồm cả các vòng lặp Các nhánh của cây hoặc mạng có thể được gán nhãn là nhánh AND hoặc OR tùy thuộc vào ngữ nghĩa của truy vấn Các toán tử đại số rõ ràng được giới thiệu trong hướng này là rất quan trọng.

• Chúng tương thích với các c u trúc ngôn ng mứấ ữ c cao, d dàng cho kh ễ ả năng thiết lập cũng như ánh xạ giữa chúng với nhau

Đại số TA cho phép thực thi trực tiếp với hiệu suất cao hơn so với việc sử dụng một số toán tử khác để biểu diễn và thực thi các ngữ nghĩa tương tự Nội dung của đại số TA luôn được trình bày trong chương 3 này, với các đặc trưng riêng đã được chấp nhận trong tài liệu [SSH-98].

Sử dụng một số sơ đồ dựa trên các mẫu thay vì sơ đồ dựa vào bảng các thuộc tính đã sử dụng trong đại số quan hệ và các mở rộng thời gian của nó.

Các toán tử đại số thực hiện các thao tác trên một hoặc hai tập hợp mẫu đồng nhất hoặc không đồng nhất, nhằm tạo ra một tập hợp các mẫu có thể được xử lý tiếp bằng các toán tử khác.

Trực tiếp hỗ trợ việc xử lý ngữ nghĩa các phép kết hợp và quan hệ thời gian, đồng thời quản lý các nhánh AND/OR Hệ thống này duy trì sự kết hợp giữa các đối tượng, cho phép duyệt qua nhiều đường dẫn khác nhau trong quá trình xử lý truy vấn thời gian.

Trong chương này, luận văn tập trung vào mô hình hóa đối tượng và tối ưu hóa truy vấn thời gian Nó cũng đề cập đến đại số kết hợp thời gian, thiết kế ngôn ngữ thời gian và phân tích đại số liên quan đến các yếu tố này.

3.1 Mô hình hóa đối tượng thời gian và hình thức hóa truy vấn

CSDL phi thời gian và CSDL thời gian khác nhau chủ yếu ở cách thức ghi nhận các sự kiện Trong CSDL thời gian, các sự kiện được ghi lại theo một quá trình thời gian cụ thể, trong khi CSDL phi thời gian không chú trọng vào yếu tố thời gian của các sự kiện đó.

Có 3 sự kiện thời gian tiêu biểu trên các đố ượng i t đó là: update, delete, và insert (cập nhật, xoá và chèn) Triển khai của một thể hiện trên được xem như là phiên bản lịch sử của các th hi n và được g i là temporal instances (các ể ệ ọ thể hiện thời gian)

Triển khai một thể hiện bao gồm một chuỗi các thể hiện thời gian được sắp xếp theo thứ tự thời gian, thường được gọi là trục thời gian hoặc đường thời gian.

Trong chương này, luận văn trình bày về thời gian hiện thực để mô tả các toán tử đại số Khoảng thời gian được xác định bởi thời điểm bắt đầu (ts) và thời điểm kết thúc (te) Nếu một thể hiện trình bày một số thông tin hiện thời, có thể thiết lập quan hệ: ts = te = now, trong đó "now" mô tả một giá trị đặc biệt cho biết thông tin đó ở trạng thái hiện tại.

3.1.2 Biểu diễ đồn thị ủ c a TOODB

Một trình diễn đồ thị của cơ sở dữ liệu (CSDL) hướng đối tượng mô tả mối quan hệ giữa các đối tượng dữ liệu thời gian thông qua các liên kết kết hợp rõ ràng.

Trong mô hình dữ liệu dựa trên đồ thị, như OSAM*/T, một cơ sở dữ liệu thời gian hướng đối tượng được trình bày qua hai đồ thị: Đồ thị lược đồ (SG) và Đồ thị đối tượng thời gian (TOG) Hai đồ thị này tương ứng với cơ sở dữ liệu tĩnh và cơ sở dữ liệu mở rộng, cho phép quản lý và truy xuất dữ liệu một cách hiệu quả.

Trong một đồ thị lược đồ - Schema Graph (SG), [SSH-98] một CSDL được nhìn nhận như mộ ật t p các l p ớ đối tượng thông qua các ki u k t h p khác ể ế ợ nhau

Ví dụ SG của một CSDL công ty được trình bày trong hình 3.1

Hình 3 1 Đồ thị lược đồ c a m t CSDL công ty ủ ộ

Các hình chữ nhật trong sơ đồ biểu diễn các lớp thực thể (entity classes), trong khi các hình tròn thể hiện các thuộc tính được định nghĩa trên các lớp miền (domain classes) Các cạnh trong sơ đồ mô tả các mối quan hệ giữa các lớp đối tượng, với mũi tên hai đầu ký hiệu cho các liên kết tổng quát hóa (generalization) và các nhánh đơn giản biểu thị cho các liên kết gộp (aggregation) giữa các lớp đối tượng Tất cả các liên kết gộp đều được đặt tên, nhưng thứ tự của chúng không được xác định.

3.1.2.2 Tổ chức dữ liệu thời gian và đồ thị đối tượng th i gian ờ

Việc mở rộng cơ sở dữ liệu thời gian có thể được trình bày bằng đồ thị đối tượng tạm thời (TOG) Trong TOG, các cạnh biểu diễn các thể hiện thời gian, và các kết hợp giữa chúng được thể hiện qua các liên kết nội bộ Theo [SSH-98], một cơ sở dữ liệu được xem như là một tập hợp các thể hiện thời gian đã được kết nối thông qua các liên kết kết hợp phi kiểu Mỗi thể hiện thời gian trong TOG có thể được định danh bằng một TIID, được hình thức hóa bằng một chuỗi các sự kiện liên tiếp của nhãn thời gian và một IID.

MỘT NGÔN NGỮ TRUY VẤN CƠ SỞ DỮ LIỆU HƯỚNG ĐỐI TƯỢNG THỜI GIAN

Truy vấn cơ sở dữ liệu (CSDL) là một phần thiết yếu trong các mô hình CSDL, đặc biệt là trong CSDL thời gian Trong chương này, luận văn sẽ tập trung vào việc đặc tả và thiết kế ngôn ngữ truy vấn TOQL, một ngôn ngữ được thực thi trên CSDL thời gian hướng đối tượng TOQL là một trong ba mô đun đã được đề cập trong mục 2.4.2.

TOQL là một mở rộng phù hợp dựa trên OQL, với các tính năng được phát triển trong OQL 5.1.2 [EIV-99D] cũng áp dụng cho TOQL Điều này cho phép người dùng không hợp nhất ngữ nghĩa thời gian sử dụng các chức năng của DBMS mở rộng TOQL cũng cung cấp các mở rộng cần thiết cho quản lý dữ liệu thời gian, và những mở rộng này phải tuân theo toàn bộ cú pháp của OQL.

TOQL cung cấp chức năng quản lý thời gian toàn diện với ngôn ngữ mở, hỗ trợ tốt nhất cho nhu cầu của người dùng Các nhãn thời gian được định nghĩa rõ ràng giúp thực hiện các thao tác liên quan đến thời gian, đồng thời TOQL cũng đảm bảo cung cấp đầy đủ các lựa chọn về thời gian và nhãn thời gian.

Mục tiêu của TOQL là đảm bảo cú pháp truy vấn và ngữ nghĩa thời gian rõ ràng và dễ hiểu Việc đánh giá câu truy vấn cần phải tối ưu hóa khả năng thu thập kết quả trong phạm vi lớn nhất có thể.

4.1.2 Các kiểu dữ liệu cho trình diễn thời gian

TOQL cung cấp các công cụ để thao tác với các kiểu dữ liệu thời gian như INTERVAL, INSTANT, PERIOD và PERIOD_SET Một truy vấn TOQL có thể bao gồm các thành phần kiểu, hàm, vị từ và toán tử áp dụng cho những kiểu dữ liệu này Các đặc tính của TOQL sẽ được mô tả trong các mục tiếp theo.

Một thành phần kiểu Instant được xác định bằng từ khóa "Instant", theo sau là chuỗi ký tự chứa giá trị thực Kết quả trả về là một chuỗi ký tự đặc tả nguyên tố Đặc tả này có thể được đưa ra dưới dạng một đặc t lịch biểu.

• Khuôn dạng c a chu i ký t sau t khóa Instant là ph thu c l ch bi u ủ ỗ ự ừ ụ ộ ị ể Trong lịch Gregorian, chuỗi ký tự một đặc t Instant là ả YYYY - MM -

Chỉ có năm và tháng là bắt buộc, trong khi tất cả các phần khác như ngày, giờ, phút và giây đều có thể tùy chọn Các thành phần không được cung cấp sẽ sử dụng giá trị mặc định, trong đó tháng và ngày được mặc định là 1, còn giờ, phút và giây đều có giá trị mặc định là 0 trong lịch Gregorian.

• Chuỗi ký t có th ch a m t trong s từự ể ứ ộ ố ng BEGINNING, FOREVER ữ và NOW, chỉ định tương ng các nhãn thời gian cực tiểu, cực đại và ứ hiện thời

B ảng 4 1 Một số kiểu thời đ ểm i

M ột thời đ ểm năm 1990 của lịch Gregorian i

INSTANT 'NOW' MINUTE Thể hiện ' Now ' nhưng lưu đơn vị Phút nên sẽ bỏ qua các giá trị ư d thừa

Thời đ ể i m là Mùa xuân năm 1996 với lịch một niên họ c Và ây sử ụ đ d ng đơn v là một “Học Kỳ” ị

Kí tự kiểu INTERVAL được xác định bằng từ khóa INTERVAL, theo sau là một chuỗi ký tự chứa giá trị thực Chuỗi ký tự này sẽ trả về một chuỗi đặc tả, trong đó nếu có bất kỳ đặc tả nào bị bỏ qua, giá trị sẽ được gán mặc định giống như Instant.

Bảng 4 2 Một số kiểu khoảng

INTERVAL '10' DAY CALENDAR Gregorian Một khoảng 10 ngày trong lịch Gregorian

INTERVAL '5' YEAR Một khoảng 5 năm trong Gregorian lịch biểu

Một khoảng hai học kỳ trong lịch năm học

C - Giai đ ạo n hay thời kỳ

Kiểu PERIOD được xác định bằng từ khoá PERIOD theo sau bởi một chuỗi ký tự chứa giá trị thực

• Chuỗi ký t ph i có m t giá tr b t đầu v i m t d u móc vuông trái ('['), ự ả ộ ị ắ ớ ộ ấ kết thúc với một dấu ngoặc đơn phải (')') và chứa hai kí tự phân cách chúng là dấu phẩy

Giá trị chuỗi 'Giá trị chuỗi - 'string value' được sử dụng để phân chia các kiểu Instant cần xác định Giá trị kiểu PERIOD được xem xét bao gồm tất cả các khoảng thời gian từ l i đến l j nhưng không bao gồm l j.

B ảng 4 3 Một số kiểu giai đ ạn o

M ột giai đ ạn bắt đầu từ hiện thời và kết thúc ở ngày đầu o tiên năm 2000

Giai đ ạ o n '[Mùa đông 1996, Mùa xuân 1997) ' Lưu với lịch niên học từ mùa đông năm trước đến mùa xuân năm sau

Tập hợp giai đoạn (PERIOD SET) được định nghĩa qua cấu trúc period_set, cho phép xác định giá trị nguyên tố và ký hiệu lịch biểu trong OQL Cấu trúc này hỗ trợ danh sách các giá trị kiểu PERIOD, trong đó các phần tử là các tập hợp PERIOD.

Tuy nhiên, bộ xử lý TOQL ch p nh n nh ng đặc t giai o n y ấ ậ ữ ả đ ạ đầ đủ cho b t ấ kỳ tham số nào tới cấu trúc

B ảng 4 4 Một số kiểu tập giai đ ạn o

Thành tố Giá trị period_set('[1990,1991)',

M ột tập giai đ ạn chứa hai khoảng Lịch o Gregorian được sử dụng cho tập hợp giai đ ạ o n period_set('[Winter 1996, Spring 1997)')

Học kỳ lư u b i m t t p giai o n v i m t giai ở ộ ậ đ ạ ớ ộ đ ạ o n đơn , bi u th trong l ch niên h c ể ị ị ọ

TOQL giới thiệu nh ng hàm mới, có thể ứữ ng dụng trên dữ liệu Instant, Period và Period_set

Những ký hiệu của các hàm mới, cùng với mô tả ngắn gọn chức năng của chúng được giới thiệu trong những phần sau

Bảng 4 5 Danh sách một số hàm mới của TOQL

(in Instant I1, in Instant I2) period(INSTANT '1994-01' MONTH, INSTANT '1995-01'

MONTH) = PERIOD '[1994-01, 1995-01)' MONTH period(INSTANT '1995-01' MONTH, INSTANT '1994-01'

(in PERIOD_SET PS1, in PERIOD_SET PS2 intersection ('[1994-01, 1995-01)', '[1995-06, 1996-01)') = NIL intersection(period_set('[1994-01, 1995-01)', '[1996-01, 1997-01)') MONTH, period_set('[1994-06, 1995-06)') MONTH) = {'[1994-06, 1995-01)'}

(in PERIOD P1, in PERIOD P2); merge('[1994-01, 1995-01)', '[1995-06, 1996-01)') = NIL merge(period_set('[1994-01, 1995-01)') MONTH,

The period set defined as '[1994-06, 1995-06)' includes the short year and day for the instant '1994-01', which corresponds to the year 1994 Additionally, for the instant '1994-01-08 04:59:01', the specific day is the 8th, the hour is 4, and the minute is 59 This information establishes the beginning of the defined period.

(in PERIOD_SET PS) begin(PERIOD '[1994-01, 1995-01)' MONTH) = '1994-01' end(PERIOD '[1994-01, 1995-01)' MONTH) = '1995-01' end(period_set('[1994-01, 1995-01)', '[1995-06, 1997-01)')

(in PERIOD_SET PS): duration(PERIOD '[1994-01, 1995-01)' MONTH) = INTERVAL '12' MONTH duration(period_set('[1994, 1995)', '[1996, 1997)') YEAR) =

PERIOD last (in PERIOD_SET

PS): first(period_set('[1994, 1995)', '[1996, 1997)') YEAR) =

TOQL cung cấp cú pháp cấu trúc đơn giản cho việc chuyển đổi giữa các kiểu trình bày thời gian như INSTANT, INTERVAL, PERIOD và PERIOD SET Điều này cho phép người dùng dễ dàng chuyển đổi một phần tử dữ liệu sang đơn vị khác một cách linh hoạt.

CAST datum TO granularity_specification trong đó granularity_specification là một đơn v s chuy n đến ị ẽ ể

TOQL hỗ trợ tất cả các toán tử so sánh được định nghĩa trong OQL và giới thiệu những vị trí mới dễ dàng cho việc định nghĩa tương đối của Instant Các giá trị tập hợp PERIOD và PERIOD cũng được hỗ trợ Các vị trí mới này được mô tả trong bảng 4.6: i1 và i2 biểu thị những giá trị Instant, trong khi p1 và p2 biểu thị những giá trị giai đoạn.

B ảng 4 6 Các vị ừ ới của TOQL t m

Cú pháp Ví dụ p1 overlaps p2 ps1 overlaps ps2

PERIOD '[1994-01, 1995-01)' MONTH overlaps PERIOD '[1994-06, 1995- 06)' MONTH trả ề v True

PERIOD '[1994-01, 1995-01)' MONTH overlaps PERIOD '[1995-06, 1996- 01)' MONTH trả ề v False i1 precedes i2 p1 precedes p2 ps1 precedes ps2

INSTANT '1990-01' MONTH precedes INSTANT '1991-01' MONTH tr ả về

PERIOD '[1994-01, 1995-01)' MONTH precedes PERIOD '[1994-06, 1995-06)' MONTH trả ề v False p1 contains p2 ps1 contains ps2

PERIOD '[1994-01, 1996-01)' MONTH contains PERIOD '[1995-01, 1995-06)' MONTH trả ề v True

PERIOD '[1994-01, 1995-01)' MONTH contains PERIOD '[1994-06, 1995-06)' MONTH trả ề v False p1 meets p2 '[1994-01, 1995-01)' meets '[1995-01, 1995-06)' trả ề v True

Số học và phép toán chuẩn lý thuyết là các công cụ quan trọng giúp thực hiện các phép tính trên các kiểu dữ liệu Bài viết này sẽ trình bày cách sử dụng chúng để thực hiện các tính toán hiệu quả.

Bảng 4 7 Thao tác trên khoảng

Toán tử Toán hạng phải

+ interval interval interval + interval interval interval - interval interval interval * number interval number * interval interval interval / number interval interval / interval number

B ảng 4 8 Thao tác trên tập giai đ ạn o

Toán tử Toán h ạng phả i

K ết quả period_set union(+) period_set period_set period_set except( -) period_set period_set period_set intersect(

*) period_set period_set period_set + interval period_set period_set - interval period_set

B ảng 4 9 Thao tác trên thời đ ểm i

K ết quả instant + interval instant interval + instant instant instant - interval instant instant - instant interval

B ảng 4 10 Thao tác trên giai đ ạn o

Toán tử Toán hạng phải

Kết quả period + interval period period - interval period interval + period period period >> interval period period

Ngày đăng: 18/05/2022, 07:06

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
1. [NKA-04] Nguyễn Kim Anh (2004), Nguyên lý củ a các h cơ sở dữ ệ ệ li u, Nhà xuất bản Đại học Quốc gia Hà Nội, tr. 52 – 57, tr. 177 – 182 Sách, tạp chí
Tiêu đề: Nguyên lý của các h cơ sở dữ ệệ li u
Tác giả: [NKA-04] Nguyễn Kim Anh
Nhà XB: Nhà xuất bản Đại học Quốc gia Hà Nội
Năm: 2004
2. [NN-02] Nguy ễn Kim Anh, Nguyễ n Thái Linh (2002), Các kỹ thuật Index đối vớ ơ i c sở dữ ệ li u th i gian, Luậ ờ n v n th c s khoa h c Công ngh Thông ă ạ ỹ ọ ệ tin, Trường Đại học Bách Khoa Hà Nội, tr. 2 – 14 Sách, tạp chí
Tiêu đề: Các kỹ thuật Index đối vớ ơi c sở dữ ệ li u th i gian, "Luậ"ờ
Tác giả: [NN-02] Nguy ễn Kim Anh, Nguyễ n Thái Linh
Năm: 2002
3. [MTO-00] M.Tamer Ozsu (2000), Nguyên lý các hệ ơ ở c s dữ ệ li u phân tán, Nhà xuất bản Thống kê, Hà N ội, tr. 487 – 557TÀI LIỆU TIẾNG ANH Sách, tạp chí
Tiêu đề: Nguyên lý các hệ ơ ở c s dữ ệ li u phân tán
Tác giả: [MTO-00] M.Tamer Ozsu
Nhà XB: Nhà xuất bản Thống kê
Năm: 2000
6. [O298] O2 Technology (1998), ODMG C++ Binding Guide, (Release 5.0 )- April 1998 Sách, tạp chí
Tiêu đề: ODMG C++ Binding Guide
Tác giả: [O298] O2 Technology
Năm: 1998
1. [EIV-99F] European Community IV Frame work, Esprit Project 20671 (1999), Final Project Report - Deliverable T12R.3, TOOBIS - Temporal Object-Oriented Databases within Information Systems Khác
2. [EIV-99D] European Community IV Frame work, Esprit Project 20671 (1999), Deliverable T33TR.1 TOOBIS - Temporal Object Query Language Specifications and Design Khác
3. [SSH-98] Stanley Y.W.Su (Senior member, IEEE), Soon J.Hyun, Hsin – Hsing M.Chen (1998), Temporal Association Algebra: A Mathematical Foundation for Processing Object – Oriented Temporal Databases Khác
4. [LR-96] Leonidas Fegaras, Ramez Elmasri (1996), A Temporal Object Query Language Khác
5. [MV-03] Marios Vitos (2003), Rollnr: 73934, Master of Science in Computer Science, Dr. Meersmans, Course: Advanced Databases, Object Oriented Databases Khác

HÌNH ẢNH LIÊN QUAN

Bảng 1.1 Bảng so sánh giữa lớp và tập - (LUẬN văn THẠC sĩ) cơ sở dữ liệu hướng đối tượng thời gian và xử lý truy vấn trong cơ sở dữ liệu hướng đối tượng thời gian
Bảng 1.1 Bảng so sánh giữa lớp và tập (Trang 14)
hiện việc nắm bắt và mô hình hóa, còn cung cấp cách thức xây dựng mô hình hoá bao gồm cả khía cạnh cấu trúc lẫn khía cạnh hành vi củ a  hệ thống thông tin - (LUẬN văn THẠC sĩ) cơ sở dữ liệu hướng đối tượng thời gian và xử lý truy vấn trong cơ sở dữ liệu hướng đối tượng thời gian
hi ện việc nắm bắt và mô hình hóa, còn cung cấp cách thức xây dựng mô hình hoá bao gồm cả khía cạnh cấu trúc lẫn khía cạnh hành vi củ a hệ thống thông tin (Trang 19)
2.4.1 Ph ng pháp lu nh ươ ậ ướng đối tượng thời gian - (LUẬN văn THẠC sĩ) cơ sở dữ liệu hướng đối tượng thời gian và xử lý truy vấn trong cơ sở dữ liệu hướng đối tượng thời gian
2.4.1 Ph ng pháp lu nh ươ ậ ướng đối tượng thời gian (Trang 20)
Hình 2.4 Một lược đồ động - (LUẬN văn THẠC sĩ) cơ sở dữ liệu hướng đối tượng thời gian và xử lý truy vấn trong cơ sở dữ liệu hướng đối tượng thời gian
Hình 2.4 Một lược đồ động (Trang 23)
Hình 2.5 Các lớp thời gian - (LUẬN văn THẠC sĩ) cơ sở dữ liệu hướng đối tượng thời gian và xử lý truy vấn trong cơ sở dữ liệu hướng đối tượng thời gian
Hình 2.5 Các lớp thời gian (Trang 26)
Hình 2.6 Mở ộr ng đến kiểu phân cấp của ODMG - (LUẬN văn THẠC sĩ) cơ sở dữ liệu hướng đối tượng thời gian và xử lý truy vấn trong cơ sở dữ liệu hướng đối tượng thời gian
Hình 2.6 Mở ộr ng đến kiểu phân cấp của ODMG (Trang 30)
Hình 2.7 minh họa sự khác nhau giữa đối tượng thời gian thể hiện thuộc tính và đối tượng - (LUẬN văn THẠC sĩ) cơ sở dữ liệu hướng đối tượng thời gian và xử lý truy vấn trong cơ sở dữ liệu hướng đối tượng thời gian
Hình 2.7 minh họa sự khác nhau giữa đối tượng thời gian thể hiện thuộc tính và đối tượng (Trang 31)
Hình 2.9 Kiến trúc bộ ửx lý TODL 2.5  Kết luận chương 2 - (LUẬN văn THẠC sĩ) cơ sở dữ liệu hướng đối tượng thời gian và xử lý truy vấn trong cơ sở dữ liệu hướng đối tượng thời gian
Hình 2.9 Kiến trúc bộ ửx lý TODL 2.5 Kết luận chương 2 (Trang 33)
Ví dụ SG của một CSDL công ty được trình bày trong hình 3.1. - (LUẬN văn THẠC sĩ) cơ sở dữ liệu hướng đối tượng thời gian và xử lý truy vấn trong cơ sở dữ liệu hướng đối tượng thời gian
d ụ SG của một CSDL công ty được trình bày trong hình 3.1 (Trang 36)
Hình 3.3 Thể hiện nhãn thời gian trong tổ chức dữ liệu thời gian - (LUẬN văn THẠC sĩ) cơ sở dữ liệu hướng đối tượng thời gian và xử lý truy vấn trong cơ sở dữ liệu hướng đối tượng thời gian
Hình 3.3 Thể hiện nhãn thời gian trong tổ chức dữ liệu thời gian (Trang 38)
Hình 3.2 Thuộc tính nhãn thi gian trong ờổ chức dữ liệu thời gian - (LUẬN văn THẠC sĩ) cơ sở dữ liệu hướng đối tượng thời gian và xử lý truy vấn trong cơ sở dữ liệu hướng đối tượng thời gian
Hình 3.2 Thuộc tính nhãn thi gian trong ờổ chức dữ liệu thời gian (Trang 38)
Hình 3.4 Đồ thị đối tượng thời gian - (LUẬN văn THẠC sĩ) cơ sở dữ liệu hướng đối tượng thời gian và xử lý truy vấn trong cơ sở dữ liệu hướng đối tượng thời gian
Hình 3.4 Đồ thị đối tượng thời gian (Trang 39)
Hình 3.7 Các mẫu kết hợp thời gian nguyên thủy - (LUẬN văn THẠC sĩ) cơ sở dữ liệu hướng đối tượng thời gian và xử lý truy vấn trong cơ sở dữ liệu hướng đối tượng thời gian
Hình 3.7 Các mẫu kết hợp thời gian nguyên thủy (Trang 42)
Bảng 3.1 Các ký hiệu biểu diễn trong biểu thức đại số TA - (LUẬN văn THẠC sĩ) cơ sở dữ liệu hướng đối tượng thời gian và xử lý truy vấn trong cơ sở dữ liệu hướng đối tượng thời gian
Bảng 3.1 Các ký hiệu biểu diễn trong biểu thức đại số TA (Trang 44)
và Hình 3.10 minh hoạ chúng trên phương diện đồ thị: - (LUẬN văn THẠC sĩ) cơ sở dữ liệu hướng đối tượng thời gian và xử lý truy vấn trong cơ sở dữ liệu hướng đối tượng thời gian
v à Hình 3.10 minh hoạ chúng trên phương diện đồ thị: (Trang 46)

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w