1. Trang chủ
  2. » Công Nghệ Thông Tin

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

134 226 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

Cấu trúc

  • 4.2.3 Điểm xác nhận của một giao tác

  • 2. Với mỗi trường hợp trong S ở đó Tj thực hiện một thao tác read_item(X) sau khi Ti thực hiện một thao tác write_item(X) thì tạo ra một cạnh (Ti  Tj ) trong đồ thì ưu tiên

  • 3. Với mỗi trường hợp trong S, ở đó Tj thực hiện một thao tác write_item(X) sau khi Ti thực hiện một thao tác read_item(X) thì tạo ra một cạnh (Ti  Tj) trong đồ thị ưu tiên

  • 4. Với mỗi trường hợp trong S, ở đó Tj thực hiện một thao tác write_item(X) sau khi Ti thực hiện một thao tác write_item(X) thì tạo ra một cạnh (Ti  Tj) trong đồ thị ưu tiên

  • 5. Lịch biểu S là sắp thứ tự được khi và chỉ khi đồ thị ưu tiên không có chu trình

  • Đồ thị ưu tiên được xây dựng như miêu tả trong thuật toán 5.1 Nếu có một chu trình trong đồ thị ưu tiên, lịch biểu S là không sắp thứ tự được (xung đột) nếu không có chu trình thì S là sắp thứ tự được

  • Trong đồ thị ưu tiên, một cạnh từ Ti tới Tj có nghĩa là giao tác Ti phải xuất hiện trước giao tác Tj trong bất kỳ lịch biểu có thứ tự tương đương với S bởi vì hai thao tác xung đột xuất hiện trong một lịch biểu theo thứ tự đó. Nếu không có chu trình trong đồ thị ưu tiên, chúng ta có thể tạo ra một lịch biểu có thứ tự tương đương S’ tương đương với S bằng cách sắp xếp các giao tác tham gia trong S như sau: khi một cạnh tồn tại trong đồ thị ưu tiên từ Ti tới Tj, Ti phải xuất hiện trước Tj trong lịch biểu theo thứ tự tương đương S’. Chú ý rằng các cạnh (Ti  Tj) trong đồ thị ưu tiên có thể được đánh nhãn bởi tên của mục dữ liệu dẫn đến việc tạo nên cạnh

  • T1 a) T2 T1 b) T2

  • X X

  • X

  • c) d)

  • T1 T2 T1 T2

  • X

  • X

  • Hình 4.7 Xây dựng đồ thị ưu tiên đối với các lịch biểu A tới D từ hình 2.5 để kiểm tra thứ tự xung đột

  • Đồ thị ưu tiên đối với lịch biểu theo thứ tự A

  • Đồ thị ưu tiên đối với lịch biểu theo thứ tự B

  • Đồ thị ưu tiên đối với lịch biểu C (Không theo thứ tự xung đột)

  • Đồ thị ưu tiên đối với lịch biểu D (theo thứ tự xung đột , tương đương với lịch biểu A)

  • Nói chung, nhiều lịch biểu có thứ tự tương đương với lịch biểu S nếu đồ thị ưu tiên cho S không có chu trình. Tuy nhiên, nếu đồ thị ưu tiên có một chu trình, thì dễ dàng chỉ ra rằng chúng ta không thể tạo ra bất kỳ một lịch biểu có thứ tự tương đương, và như vậy S là không sắp thứ tự được. Các đồ thị ưu tiên được tạo ra cho các lịch biểu từ A đến D, được minh hoạ bằng hình vẽ ở trên. Đồ thị cho lịch biểu C có một chu trình, như vậy nó không phải là sắp thứ tự được. Đồ thị cho lịch biểu D không có chu trình, và lịch biểu có thứ tự tương đương là T1 theo sau là T2. Các đồ thị cho lịch biểu A và B không có chu trình bởi vì các lịch biểu là có thứ tự và như vậy là sắp thứ tự được.

  • Một ví dụ khác, xét lịch biểu mà trong đó có 3 giao tác như trong hình 2.8 Hai lịch biểu E và F trong hình (b) và (c) các giao tác được thực thi một cách độc lập và các đồ thị ưu tiên đối với lịch biểu E và F được thể hiện trong phần (d) và (e) .Lịch biểu F được thể hiện trong hình 4.8(e) .Mặc dù chỉ một lịch biểu theo thứ tự tương đương với một lịch biểu theo thứ tự xung đột . Hình 4.8(f) thể hiện một đồ thị ưu tiên mà dựa vào nó xác định được 2 lịch biểu theo thứ tự tương đương

  • (a)

  • (b)

Nội dung

Tìm hiểu cấu trúc về bộ nhớ ngoài các loại cơ sở dữ liệu nâng cao, các thuật toàn tìm kiếm trong cơ sở dữ liệu theo chỉ mục.... Qua đó xây dựng được các cách lưu trữ dữ liệu trên bộ nhớ ngoài. Hiểu biết về các trigger, bẫy lỗi trong việc xây dựng cơ sở dữ liệu

BÀI GIẢNG SỞ DỮ LIỆU NÂNG CAO Chương 1: Hệ sở liệu quan hệ 1.1 sở liệu quan hệ 1.1.1 Vòng đời hệ thống ứng dụng sở liệu Các hoạt động liên quan đến vòng đời hệ thống ứng dụng sở liệu bao gồm giai đoạn sau đây: Định nghĩa hệ thống: Định nghĩa phạm vi hệ thống sở liệu, người sử dụng ứng dụng Các giao diện cho loại người sử dụng khác nhau, ràng buộc thời gian trả lời, yêu cầu lưu trữ xử lý xác định Thiết kế sở liệu: Vào cuối giai đoạn này, thiết kế logic vật lý đầy đủ hệ sở liệu hệ quản trị sở liệu chọn sẵn sàng Cài đặt sở liệu: Giai đoạn bao gồm trình đặc tả định nghĩa sở liệu quan niệm, bên bên ngoài, tạo file sở liệu trống cài đặt ứng dụng phần mềm Nhập chuyển đổi: Nhập trực tiếp liệu cho sở liệu chuyển đổi file sở liệu sẵn từ hệ thống khác thành khn dạng hệ sở liệu Chuyển đối ứng dụng: Mọi ứng dụng phần mềm từ hệ thống trước chuyển đổi thành ứng dụng hệ thống Kiểm tra làm hiệu lực: Hệ thống kiểm tra làm hiệu lực Hoạt động : Hệ thống sở liệu ứng dụng đưa vào hoạt động Thông thường hệ thống cũ hoạt động song song thời gian Hướng dẫn bảo trì: Trong giai đoạn hoạt động, hệ thống ln ln hướng dẫn bảo trì Sự phát triển mở rộng xảy nội dung liệu ứng dụng phần mềm Đa số sửa đổi tổ chức lại cần thiết thường xuyên 1.1.2 Quá trình thiết kế sở liệu thực tiễn Bài tốn thiết kế sở liệu phát biểu sau: Thiết kế cấu trúc lô gic vật lý sở liệu để cung cấp nhu cầu thông tin người sử dụng tổ chức tập hợp ứng dụng xác định Các mục tiêu thiết kế sở liệu : • Làm thỏa mãn yêu cầu nội dung thông tin người sử dụng ứng dụng cụ thể • Cung cấp cấu trúc thông tin tự nhiên dễ hiểu • Hỗ trợ yêu cầu xử lý mục tiêu thao tác thời gian trả lời, thời gian xử lý không gian lưu trữ Quá trình thiết kế sở liệu bao gồm giai đoạn sau đây: Tập hợp phân tích yêu cầu Thiết kế sở liệu quan niệm Lựa chọn hệ quản trị sở liệu Ánh xạ mơ hình liệu (còn gọi thiết kế sở liệu logic) Thiết kế sở liệu vật lý Cài đặt sở liệu điều chỉnh Việc thiết kế sở liệu bao gồm hai hoạt động song song (như hình vẽ 1.1) Hoạt động thứ bao gồm thiết kế cấu trúc nội dung sở liệu, hoạt động thứ hai liên quan đến việc thiết kế ứng dụng sở liệu Sau tìm hiểu chi tiết giai đoạn NỘI DUNG DỮ LIỆU CÁC ỨNG DỤNG Giai đoạn 1: Tập hợp VÀ CẤU TRÚC SỞ DỮ LIỆU Các yêu cầu liệu Các yêu cầu xử lý Phân tích yêu cầu Giai đoạn 2: Thiết kế CSDL quan niệm Thiết kế lược đồ Thiết kế giao tác quan niệm ứng dụng (độc lập với HQTCSDL) (độc lập với HQTCSDL) Giai đoạn 3: Lựa chọn HQTCSDL Giai đoạn 4: Ánh xạ mơ hình liệu Thiết kế lược đồ lơ gic khung nhìn Các ràng buộc thực (độc lập với HQTCSDL) Giai đoạn 5: Thiết kế vật lý Thiết kế lược đồ bên ( độc lập với HQTCSDL) Giai đoạn 6: Cài đặt hệ thống tinh chỉnh Các lệnh định nghĩa liệu Các lệnh lưu trữ liệu Cài đặt giao tác ứng dụng Hình 1.1 1.2 Hệ quản trị sở liệu quan hệ Trong phần nghiên cứu sâu hệ quản trị sở liệu, mục tiêu, chức cấu trúc 1.2.1 Các thể lược đồ Mọi sở liệu bao gồm việc việc định nghĩa tính chất tập hợp đối tượng mơ hình hóa sở liệu khơng phải định nghĩa tính chất đối tượng cụ thể Các đối tượng cụ thể định nghĩa thơng qua chương trình ứng dụng phép chèn cập nhật liệu Khi chúng phải thỏa mãn tính chất tập hợp mà chúng thuộc vào Người ta phân biệt hai khái niệm bản: - Kiểu đối tượng cho phép rõ tính chất chung cho tập hợp đối tượng theo thuật ngữ cấu trúc liệu nhìn thấy phép tốn truy cập Kiểu đối tượng tập hợp đối tượng đặc trưng thao tác phép toán - Thể đối tượng tương ứng với đối tượng cụ thể xác định số đối tượng kiểu Thể đối tượng phần tử cụ thể kiểu đối tượng đặc trưng qua tên gọi giá trị tính chất Ví dụ: SINHVIEN(maso, hoten, ngaysinh, gioitinh) kiểu đối tượng SinhviênA( ‘sv002’, ‘nguyễn văn lực’, ‘25/05/ 1986’, ‘nam’) thể đối tượng Như vậy, mô tả liệu thực mức kiểu với giúp đỡ tập hợp phần tử mơ tả cho phép diễn đạt tính chất tập hợp đối tượng tạo nên mô hình mơ tả liệu Mơ hình thường diễn đạt thơng qua hình thức đồ họa Nó vận dụng nhờ ngôn ngữ mô tả liệu Mô tả tập liệu cụ thể tương ứng vói ứng dụng nhờ ngơn ngữ mơ tả tạo lược đồ liệu Nói chung người ta phân biệt lược đồ nguồn người quản lý liệu lược đồ đối tượng kết việc dịch đồ nguồn thơng qua máy tính đồ đối tượng hệ quản trị sở liệu sử dụng cách trực tiếp để tìm kiểm tra tính chất thể đối tượng chương trình ứng dụng thao tác Chúng ta số khái niệm sau: - Mơ hình mơ tả liệu (data model): Là tập hợp khái niệm quy tắc cấu tạo khái niệm cho phép mô tả liệu - Ngôn ngữ mô tả liệu (data description language): Ngôn ngữ hỗ trợ mơ hình cho phép mơ tả liệu sở theo cách đồng hóa thơng qua máy tính - Lược đồ (schema): Mô tả ngôn ngữ xác định tập hợp liệu cụ thể 1.2.2 Kiến trúc hệ quản trị sở liệu độc lập liệu 1.2.2.1 Kiến trúc ba lược đồ Một mục tiêu hệ quản trị sở liệu đảm bảo trừu tượng liệu lưu trữ nhớ để làm đơn giản hóa cách nhìn người sử dụng Vì vậy, nhóm ANSI/X3/SPARC phân biệt ba mức mô tả liệu,gọi kiến trúc ba lược đồ (Three-SchemaArchitecture) Mục đích kiến trúc ba lược đồ tách rời ứng dụng người dùng sở liệu vật lý Trong kiến trúc này, lược đồ xác định ba mức sau đây: Mức (internal level) lược đồ (internal schema): Nó mơ tả cấu trúc lưu trữ vật lý sở liệu Lược đồ sử dụng mơ hình liệu vật lý mô tả chi tiết đầy đủ việc lưu trữ liệu đường dẫn truy cập sở liệu Mức quan niệm (conceptual level) lược đồ quan niệm: Nó mơ tả cấu trúc tồn sở liệu cho cộng đồng người sử dụng Lược đồ quan niệm che dấu chi tiết cấu trúc lưu trữ vật lý tập trung vào mô tả thực thể, kiểu liệu, mối liên kết, thao tác người sử dụng ràng buộc Một mơ hình liệu bậc cao mơ hình liệu thể sử dụng mức Mức (external) mức khung nhìn gồm số lược đồ ngồi khung nhìn người dùng Mỗi lược đồ ngồi mơ tả phần sở liệu mà nhóm người sử dụng quan tâm che dấu nhóm phần lại sở liệu Một mơ hình liệu bậc cao mơ hình liệu thể sử dụng mức Hình vẽ (1.5) sau mô tả kiến trúc ba lược đồ: Người dùng cuối MỨC NGỒI Khung nhìn ngồi …… Khung nhìn Ánh xạ Ngoài/Quan niệm LƯỢC ĐỒ QUAN NIỆM MỨC QUAN NIỆM LƯỢC ĐỒ TRONG Ánh xạ Quan niệm/Trong MỨC TRONG SỞ DỮ LIỆU ĐƯỢC LƯU GIỮ Hình 1.5 : Minh hoạ kiến trúc ba mức Kiến trúc ba mức công cụ thuận tiện cho người sử dụng hình dung mức lược đồ hệ sở liệu Đa số hệ quản trị sở liệu không phân tách ba mức cách đầy đủ, hỗ trợ kiến trúc ba lược đồ mức định Ba lược đồ mô tả liệu, thân liệu tồn mức vật lý Trong hệ sở liệu dự kiến trúc ba lược đồ, nhóm người sử dụng tham chiếu đến lược đồ họ Như vậy, hệ quản trị sở liệu phải chuyển đổi yêu cầu lược đồ thành yêu cầu lược đồ quan niệm sau thành yêu cầu lược đồ để xử lý sở liệu lưu giữ Nếu yêu cầu lấy liệu ra, liệu lấy phải định dạng lại cho phù hợp với khung nhìn bên ngồi người sử dụng Các tiến trình chuyển đổi yêu cầu kết mức gọi ánh xạ Các ánh xạ tiêu tốn thời gian, số hệ quản trị sở liệu – hệ hỗ trợ sở liệu nhỏ- không hỗ trợ khung nhìn ngồi Tuy nhiên, hệ phải số ánh xạ để chuyển đổi yêu cầu mức quan niệm mức 1.2.2.2 Sự độc lập liệu Kiến trúc ba lược đồ sử dụng để giải thích khái niệm độc lập liệu Độc lập liệu định nghĩa khả thay đổi lược đồ mức hệ sở liệu mà không làm thay đổi lược đồ mức cao hai loại độc lập liệu: Độc lập liệu lô gic : khả làm thay đổi lược đồ quan niệm mà không làm thay đổi lược đồ ngồi chương trình ứng dụng Chúng ta thay đổi lược đồ quan niệm để mở rộng sở liệu (bằng cách thêm vào kiểu ghi mục liệu) làm giảm sở liệu (bằng cách loại bỏ kiểu ghi mục liệu) Trong trường hợp làm giảm, lược đồ tham chiếu đến liệu lại khơng bị ảnh hưởng Chỉ định nghĩa khung nhìn ánh xạ cần thay đổi hệ sở liệu hỗ trợ độc lập liệu Các chương trình ứng dụng tham chiếu cấu trúc lược đồ phải làm việc trước đó, sau lược đồ quan niệm chịu tổ chức lại lô gic Các thay đổi ràng buộc áp dụng cho lược đồ quan niệm mà khơng làm thay đổi lược đồ ngồi chương trình ứng dụng Độc lập liệu vật lý: khả thay đổi lược đồ mà không làm thay đổi lược đồ quan niệm lược đồ Các thay đổi lược đồ cần thiết số file vật lý phải tổ chức lại - ví dụ, cách tạo cấu trúc truy cập phụ - để cải thiện thao tác rút cập nhật Nếu liệu trước lại sở liệu, không làm thay đổi lược đồ quan niệm Khi hệ quản trị sở liệu nhiều mức, từ điển (catalog) phải mở rộng để chứa thông tin việc ánh xạ yêu cầu liệu mức khác Hệ quản trị sở liệu sử dụng phần mềm phụ để thực ánh xạ cách tham chiếu đến thông tin ánh xạ catalog Sự độc lập liệu thực lược đồ bị thay đổi mức lược đồ mức cao tiếp khơng bị thay đổi, ánh xạ hai mức thay đổi 1.2.3 Các mục tiêu chức hệ quản trị sở liệu 1.2.3.1 Các mục tiêu Giải pháp sở liệu đặc trưng sau: Bản chất tự mô tả hệ sở liệu Một đặc trưng giải pháp sở liệu hệ thống sở liệu khơng gồm thân sở liệu định nghĩa mô tả đầy đủ cấu trúc sở liệu ràng buộc Định nghĩa lưu trữ từ điển hệ thống, chứa thông tin cấu trúc tệp, kiểu dạng lưu trữ mục liệu Các thông tin lưu giữ từ điển gọi siêu liệu (meta-data) chúng mô tả cấu trúc liệu nguyên thủy Phần mềm hệ quản trị sở liệu người sử dụng sở liệu sử dụng từ điển để lấy thông tin cấu trúc sở liệu Sự độc lập chương trình liệu Trong hệ thống tệp, cấu trúc tệp sở liệu nhúng vào chương trình truy cập, thay đổi cấu trúc tệp đòi hỏi phải thay đổi tất chương trình truy cập đến tệp Ngược lại, chương trình truy cập hệ quản trị sở liệu khơng đòi hỏi việc thay đổi Cấu trúc tệp liệu lưu trữ từ điển tách rời với chương trình truy cập Tính chất gọi độc lập liệu – chương trình Hỗ trợ khung nhìn liệu nhiều thành phần Một sở liệu nhiều người sử dung, người đòi hỏi phối cảnh khung nhìn (view) khác Một khung nhìn tập sở liệu chứa liệu ảo, liệu trích từ tệp sở liệu khác không lưu trữ cách rõ ràng Một hệ quản trị sở liệu nhiều người sử dụng phải cung cấp nhiều cơng cụ để định nghĩa khung nhìn nhiều thành phần Chia sẻ liệu nhiều người sử dụng Một hệ quản trị sở liệu nhiều người sử dụng phải cho phép nhiều người sử dụng truy cập đồng thời đến sở liệu Hệ quản trị sở liệu phải phần mềm kiểm tra cạnh tranh để đảm bảo người sử dụng cập nhật đến sở liệu phải thực theo cách kiểm tra kết cập nhật đắn 1.2.3.2 Các chức hệ quản trị sở liệu Kiểm tra thừa thừa liệu nghĩa liệu lưu trữ nhiều lần sở liệu Sự thừa dẫn đến nhiều vấn đề: Thứ nhất, phải thực cập nhật liệu nhiều lần Việc tốn nhiều cơng phu hay dẫn đến sai sót Thứ hai, thừa thơng tin làm lãng phí nhớ lưu trữ Thứ ba, file lưu trữ liệu trở nên mâu thuẫn việc cập nhật không thực tất file Kiểm tra thừa hệ quản trị sở liệu giảm vấn đề Hạn chế truy cập khơng phép Khi nhiều người sử dụng dùng chung hệ sở liệu, số người sử dụng khơng phép truy cập tất thơng tin hệ thống người được quyền truy cập để lấy thông tin từ sở liệu không quyền cập nhật Điều dẫn đến việc phải kiểm tra thao tác truy cập người sử dụng Hệ quản trị sở liệu cung cấp hệ thống cấp phép an ninh Người quản trị hệ thống sử dụng hệ thống để tạo tài khoản cho người sử dụng hạn chế truy cập tài khoản Cung cấp việc lưu trữ lâu dài cho đối tượng chương trình cấu trúc liệu Các đối tượng liệu phải lưu trữ lâu dài để phục vụ cho nhiều chương trình khác Các hệ quản trị sở liệu cung cấp phương tiện để lưu trữ sở liệu dạng file việc biến đổi liệu từ khuôn dạng file sang cấu trúc biến cuả chương trình Cho phép tham chiếu hành động cách sử dụng quy tắc Các hệ quản trị cung cấp quy tắc suy diễn để suy diễn thông tin từ liệu lưu giữ Cung cấp nhiều giao diện người sử dụng Do sở liệu nhiều người dùng trình độ hiểu biết sử dụng sở liệu khác nhau, hệ quản trị sở liệu phải cung cấp nhiều giao diện người sử dụng Các giao diện ngơn ngữ truy vấn cho người sử dụng bình thường, giao diện ngơn ngữ lập trình cho người lập trình ứng dụng, giao diện bảng chọn mẫu biểu (gọi giao diện người dùng đồ hoạ) cho người sử dụng độc lập,v v Biểu diễn mối liên hệ phức tạp liệu Một sở liệu gồm nhiều liệu liên kết với theo nhiều cách Một hệ quản trị sở liệu phải khă biểu diễn mối liên hệ phức tạp liệu việc rút cập nhật liệu liên quan với cách dễ dàng hiệu Áp đặt ràng buộc toàn vẹn Nhiều ứng dụng sở liệu số ràng buộc tồn vẹn phải thoả mãn liệu Hệ quản trị sở liệu cung cấp khả định nghĩa áp đặt ràng buộc Cung cấp việc lưu phục hồi Việc thác sử dụng hệ thống sở liệu tránh khỏi hỏng hóc phần cứng phần mềm Sau lần hỏng hóc, liệu cần phải phục hồi Hệ thống lưu phục hồi hệ quản trị sở liệu nhiệm vụ Ví dụ, hệ thống máy tính bị hỏng chương trình cập nhật phức tạp nhiệm vụ đảm bảo sở liệu phục hồi đến trạng thái trước chương trình bắt đầu thực 1.2.4 Các mô đun thành phần hệ quản trị sở liệu Một hệ quản trị sở liệu hệ thống phần mềm đầy đủ, gồm mô đun thành phần sau đây: Mô đun quản trị liệu lưu giữ mức cao (higher-level stored data manager) sở liệu từ điển hệ quản trị liệu thường lưu giữ đĩa Việc truy cập đến đĩa trước hết hệ điều hành (operating system) kiểm sốt, lập lịch ra/vào (input/output) đĩa Mô đun quản trị liệu mức cao kiểm tra truy cập đến thông tin hệ quản trị sở liệu lưu giữ đĩa phần sở liệu từ điển Bộ quản trị liệu lưu giữ sử dụng phục vụ hệ điều hành để thực việc chuyển liệu mức thấp đĩa nhớ máy tính kiểm sốt khía cạnh khác việc chuyển liệu điều khiển phòng đợi (buffer) nhớ Mỗi phòng đợi nhớ chính, mơ đun khác hệ quản trị sở liệu chương trình ứng dụng xử lý 10 Lịch biểu C Lịch biểu D Hình 4.5 Các ví dụ lịch biểu theo thứ tự không theo thứ tự thực giao tác T1 T2 (a) Lịch biểu theo thứ tự a : T1 đến T2 (b) lịch biểu theo thứ tự b : T2 đến T1 (c) (d) Hai lịch biểu không theo thứ tự 4.5.1 Các lịch biểu theo thứ tự , không theo thứ tự lịch biểu thứ tự xung đột Lịch biểu A B hinh 4.5(a) 4.5(b) gọi theo thứ thao tác giao tác thực cách liên tiếp mà khơng thao tác xen kẻ giao tác khác Trong lịch biểu thứ tự, giao tác nguyên vẹn thực theo trật tự : T1 đến T2 hình 4.5(a) T2 đến T1 hình 4.5(b) Các lịch biểu C D hình 4.5(c) gọi khơng theo thứ xen kẽ thao tác từ giao tác Một cách hình thức, lịch biểu S theo thứ tự giao tác T tham gia lịch biểu, toàn thao tác T thực cách liên tiếp lịch biểu, ngược lại lịch biểu coi không theo thứ tự Do đó, lịch biểu theo thứ tự thời điểm giao tác hoạt động – việc xác nhận (hoặc huỷ bỏ ) giao tác hoạt động khởi tạo việc thực giao tác Khơng xen kẽ xẩy lịch biểu theo thứ tự Chúng ta giả thiết hợp lý lịch biểu thứ tự xem đắn, ta xem giao tác độc lập Chúng ta giả thiết giao tác giả thiết đắn thực Chừng giao tác thực từ đầu đến cuối mà khơng xen kẽ từ thao tác giao tác khác, nhận kết cuối xác sở liệu Vấn đề với lịch biểu thứ tự chúng hạn chế tính đồng thời xen kẽ giao tác.Trong lịch biểu theo thứ tự, giao tác chờ thao tác I/O hồn thành, 120 khơng thể chuyển xử lý CPU sang giao tác khác, lãng phí thời gian xử lý CPU Thêm vào đó, giao tác T dài, giao tác khác phải đợi T hoàn thành tất hoạt động trước bắt đầu Do lịch biểu theo thứ tự xem không chấp nhận thực tế Để minh hoạ cho thảo luận chúng ta, xét lịch biểu hình 4.5 giả sử giá trị ban đầu mục sở liệu X=90 Y=90 nà N=3, M=2 Sau thực thi giao tác T1 T2 , hy vọng giá trị sở liệu X=89 Y=93 theo ý nghĩa giao tác Chắc chắn việc thực lịch biểu theo thứ tự A B đưa kết đắn Xét lịch biểu khơng theo thứ tự C D hình 4.5 Lịch biểu C đưa kết X=92 Y=93, X khơng đúng, lịch biểu D đưa kết *** Lịch biểu C đưa kết khơng vấn đề cập nhật bị Giao tác T2 đọc giá trị X trước giá trị thay đổi giao tác T1, ảnh hưởng T2 lên X phản ánh sở liệu Ảnh hưởng T1 X bị mất, bị T2 viết đè lên, dẫn tới kết không xác cho mục X Tuy nhiên, số lịch biểu không theo thứ tự đưa kết đúng, lịch biểu D Chúng ta muốn xác định lịch biểu không thứ tự luôn cho kết lịch biểu cho kết sai Khái niệm sử dụng để mô tả đặc trung lịch biểu theo cách thứ tự lịch biểu Một lịch biểu S n giao tác thứ tự tương đương với lịch biểu thứ tự n giao tác Chúng ta định nghĩa tương đương lịch biểu sau Để ý n! lịch biểu thứ tự n giao tác nhiều nhiều lịch biểu khơng thứ tự Chúng ta tạo hai nhóm lịch biểu khơng thứ tự: lịch biểu tương đương với (hoặc nhiều) lịch biểu thứ tự 121 thể thứ tự được, lịch biểu không tương đương với lịch biểu thứ tự khơng thứ tự Nói lịch biểu không thứ tự S thứ tự tương đương với việc nói đúng, tương đương với lịch biểu thứ tự xem Câu hỏi lại là: Khi hai lịch biểu xem tương đương? nhiều cách để định nghĩa tính tương đương lịch biểu Cách đơn giản nhất, thoả mãn định nghĩa tính tương đương lịch biểu bao hàm việc so sánh ảnh hưỏng lịch biểu lên sở liệu Hai lịch biểu gọi tương đương kết chúng đưa trạng thái cuối sở liệu Tuy nhiên , hai lịch biểu khác ngẫu nhiên đưa trạng thái cuối Ví dụ hình 4.6 lịch biểu S1 S2 đưa trạng thái sở liệu cuối chúng thực thi sở liệu với giá trị khởi tạo X=100; giá trị khởi tạo khác X, lịch biểu tương đương kết Hơn nữa, lịch biểu thực giao tác khác nhau, chúng khơng nên xem tương đương Như vậy, riêng tính tương đương kết khơng thể sử dụng để định nghĩa tương đương lịch biểu S1 S2 Read(X); Read(X); X:=X+10; X:=X*1.1; Write(X); Write(X); Hình 4.6 Hai lịch biểu tương đương kết giá trị khởi tạo X=100 thực tế chúng tương đương kết Cách tiếp cận an toàn phổ biến để định nghĩa tính tương lịch biểu khơng đưa giả thiết kiểu thao tác bao hàm 122 giao tác Đối với lịch biểu tương đương, thao tác áp dụng cho mục liệu ảnh hưởng lịch biểu áp dụng cho mục hai lịch biểu thứ tự Hai định nghĩa tính tương đương lịch biểu thường sử dụng là: tương đương xung đột tương đương khung nhìn Tính tương đương xung đột sử dụng phổ biến Hai lịch biểu xem tương đương xung đột thứ tự thao tác xung đột hai lịch biểu Nếu hai thao tác xung đột áp dụng trật tự khác lịch biểu ảnh hưởng khác sở liệu giao tác khác lịch biểu, lịch biểu khơng tương đương xung đột Ví dụ, thao tác đọc ghi xẩy theo theo thứ tự r 1(X), w2(X) lịch biểu S1 theo thứ tự ngược lại w2(X), r1(X) lịch biểu S2, giá trị thao tác r 1(X) khác hai lịch biểu Một cách tương tự, hai thao tác ghi xuất theo thứ tự w1(X), w2(X) S1 theo thứ tự ngược lại w 2(X), w1(X) S2 thao tác r(X) lịch biểu đọc giá trị khác nhau; chúng thao tác cuối ghi mục X lịch biểu giá trị cuối mục X sở liệu khác Sử dụng khái niệm tương đương xung đột, định nghĩa lịch biểu S thứ tự xung đột tương đương (xung đột) với lịch biểu thứ tự S’ Trong trường hợp vậy, xếp thứ tự lại thao tác không xung đột S tạo lịch biểu theo thứ tự tương đương S’ Theo định nghĩa , lịch biểu D hình 5.5(c) tương đương với lịch biểu theo thứ tự A hình 4.5(a) Trong lịch biểu, read_item(X) T đọc giá trị X ghi T 1, thao tác read_item khác đọc giá trị sở liệu từ trạng thái sở liệu ban đầu Thêm đó, T giao tác cuối để ghi Y T giao tác cuối để ghi X hai lịch biểu Bởi A lịch biểu theo 123 thứ tự lịch biểu D tương đương với A, D lịch biểu thứ tự Chú ý thao tác r 1(Y) w1(Y) lịch biểu D không xung đột với thao tác r2(X) w2(X) chúng truy cập đến mục liệu khác Do đó, chuyển r1(Y) , w1(Y) trước r2(X), w2(X) dẫn đến lịch biểu theo thứ tự tương đương T1,T2 Lịch biểu C hình 4.5(c) không tương đương với hai lịch biểu theo thứ tự A B không thứ tự Việc cố gắng xếp lại thứ tự thao tác lịch biểu C để tìm lịch biểu thứ tự tương đương thất bại, r 2(X) w1(X) xung đột nghĩa chuyển r2(X) xuống để lịch biểu theo thứ tự tương đương T 1,T2 Một cách tương tự, w1(X) w2(X) xung đột , nên chuyển r 2(X) xuống để nhận lịch biểu theo thứ tự tương đương T 1,T2 Tương tự, w1(X) w2(X) xung đột, chuyển w 1(X) xuống để nhận lịch biểu thứ tự tương đương T2, T1 4.5.2 Kiểm tra thứ tự xung đột lịch biểu thuật tốn đơn giản để xác định tính thứ tự xung đột lịch biểu Phần lớn phương pháp kiểm sốt đồng thời khơng kiểm tra tính thứ tự Thuật toán nhằm làm hiểu giao thức điều khiển đồng thời Thuật tốn 5.1 sử dụng để kiểm tra lịch biểu tính thứ tự xung đột Thuật toán ý đến thao tác read_item write_item lịch biểu để xây dựng đồ thị ưu tiên (hoặc đồ thị thứ tự), đồ thị hướng G=(N,E) gồm tập đỉnh N={T1.T2,….,Tn} tập cạnh hướng E={e 1,e2,…,en} đỉnh đồ thị cho giao tác T i lịch biểu Mỗi cạnh ei đồ thị dạng (Tj → Tk), T3) T3 Y(T3->T1) Y,Z 129 X, Y T1 T2 Lịch biểu thứ tự tương đương T3 T1 T2 T3 X, Y T1 T2 Lịch biểu thứ tự tương đương T3 T1 T2 T3 T2 T1 T3 Hình 4.9 Ví dụ khác việc kiểm tra (d) Đồ thị ưu tiên lịch biểu E (e) Đồ thị ưu tiên lịch biểu F (f) Đồ thị ưu tiên lịch biểu theo thứ tự tương đương 2.5 Sử dụng tính thứ tự Nói lịch biểu S xếp thứ tự (xung đột) – nghĩa S tương đương xung đột với lịch biểu thứ tự - tương đương với việc nói S đắn nhiên, xếp thứ tự khác với thứ tự Một lịch biểu thứ tự trình bày xử lý khơng hiệu khơng đan xen thao tác từ nhiều giao tác khác phép Điều dẫn tới việc sử dụng CPU thấp giao tác chờ đọi để vào/ra đĩa hoạc để giao tác khác kết thúc, chậm việc xử lý Một lịch biểu theo thứ tự cho lợi ích thực đồng thời đảm bảo tính đắn Trên thực tế, việc kiểm tra tính thứ tự lịch biểu hồn tồn khó khăn Việc đan xen thao tác từ 130 giao tác đồng thời – thường hệ điều hành thực tiến trình- thường xác định lập lịch hệ điều hành Bộ lập lịch hệ điều hành phân phối tài nguyên cho tất tiến trình Các nhân tố nạp hệ thống, thời gian đệ trình giao tác quyền ưu tiên q trình góp phần vào việc xếp thứ tự thao tác lịch biểu Do đó, khó xác định thao tác lịch biểu xen kẽ trước để đảm bảo tính thứ tự Nếu giao tác thực ý muốn sau lịch biểu kết kiểm tra việc thứ tự, phải bỏ ảnh hưởng lịch biểu sản xuất không thứ tự Đây vấn đề nghiêm trọng làm cho cách tiếp cận nayg khơng thực tế Do đó, tiếp cận lấy phần lớn hệ thống thực tiễn xác định phương pháp đảm bảo tính xếp thứ tự mà khơng cần kiểm tra lịch biểu Cách tiếp cận sử dụng phần lớn DBMS thương mại thiết kế giao thức (các tập hợp quy tắc), giao thức đảm bảo tính thứ tự tất lịch biểu giao tác tham gia Vấn đề khác xuất đây: giao tác đệ trình cách liên tục lên hệ thống, khó xác định lịch biểu bắt đầu kết thúc Lý thuyết xếp được áp dụng để giải vấn đề việc xem xét phép chiếu xác nhận lịch biểu S Phương án xác nhận C(S) lịch biểu S bao gồm thao tác S thuộc giao tác xác nhận định nghĩa cách lý thuyết lịch biểu S thứ tự phép chiếu xác nhận C(S) tương đương với lịch biểu thứ tự đấy, giao tác xác nhận đựơc DBMS đảm bảo nhiều giao thức kiểm soát cạnh tranh khác đảm bảo việc thứ tự Ký thuật hay dùng gọi khoá hai pha dựa việc khoá mục liệu dể ngăn ngừa giao tác đồng thời khỏi đan xen với bắt tuân theo điều kiện phụ thêm đảm bảo tính 131 thứ tự Điều sử dụng phần lớn hệ quản trị sở liệu thương mại Ngồi nhiều giao thức khác 4.5.4 Tương đương khung nhìn tính thứ tự khung nhìn Hai lịch biểu S S’ gọi tương đương khung nhìn thoả mãn điều kiện sau: Cùng tập giao tác tham gia S S’, S S’ bao gồm thao tác các giao tác Đối với thao tác r i(X) Ti S, giá trị X đọc thao tác ghi thao tác w j(X) Tj (hoặc giá trị nguyên thuỷ X trước lịch biểu bắt đầu), điều kiện phải thoả mãn giá trị X đọc thao tác r i(X) Ti S’ Nếu thao tác wk(Y) Tk thao tác cuối ghi mục Y S w k(Y) Tk phải thao tác cuối ghi mục Y S’ Tư tưởng đằng sau tương đương khung nhìn chừng thao tác “read” giao tác đọc kết thao tác ghi hai lịch biểu , thao tác ghi mối giao tác phải tạo kết Như vậy, thao tác đọc nói nhìn khung nhìn hai lịch biểu Điều kiện đảm bảo thao tác ghi cuối mục liệu lịch biểu, vậysẽ cuối hai lịch biểu Một lịch biểu S thứ tự khung nhìn tương đương khung nhìn với lịch biểu thứ tự Các định nghĩa xếp thứ tự xung đột xếp thứ tự khung nhìn tương tự điều kiện biết giả thiết ghi ràng buộc thoả mãn tất giao tác lịch biểu Điều kiện tuyên bố thao tác ghi w i(X) Ti trước ri(X) Điều thừa nhận việc tính tốn giá trị X hàm 132 f(X) dựa vào giá trị cũ X đọc từ sở liệu Tuy nhiên , định nghĩa thứ tự khung nhìn khắt khe so với thứ tự xung đột giả thiết ghi không bị ràng buộc giá trị ghi thao tác wi(X) độc lập với giá trị cũ từ sở liệu Đây gọi thao tác ghi khơng nhìn thấy, minh hoạ lịch biểu S g giao tác T1 :r1(X); w1(X); T2: w2(X) T3 : w3(X); Sg: r1(X); w2(X); w1(X); w3(X); c1; c2 ; c3; Trong Sg thao tác w2(X) w3(X) ghi khơng nhìn thấy T T3 không đọc giá trị X Lịch biểu Sg thứ tự khung nhìn, tương đương khung nhìn với lịch biểu thứ tự T1,T2,T3 Tuy nhiên Sg không thứ tự xung đột khơng tương đương xung đột với lịch biểu thứ tự Như lịch biểu thứ tự xung đột thứ tự khung nhìn ngựơc lại khơng , minh hoạ ví dụ 2.7 Các kiểu tương đương khác lịch biểu Thứ tự lịch biểu xem cứng nhắc điều kiện để đảm bảo xác thực đồng thời Một số ứng dụng đưa lịch biểu việc thoả mãn điều kiện khắt khe so với thứ tự xung đột thứ tự khung nhìn Một ví dụ kiểu giao tác gọi giao tác nợ-có áp dụng để gửi tiền rút tiền mục liệu mà giá trị số tài khoản ngân hàng Ngữ nghĩa thao tác nợ-có chúng cập nhật giá trị mục liệu X cách trừ thêm vào giá trị mục liệu Bởi phép cộng trừ giao hoán, nghĩa chúng áp dụng theo thứ tự tuỳ ý- việc tạo lịch biểu thứ tự Ví dụ, xét 133 giao tác sau, giao tác sử dụng để chuyển lượng tiền tài khoản T1 : r1(X); X:=X-10; w1(X);r1(Y);Y:=Y+10; w1(Y); T2 : r2(Y); X:=X-20; w2(Y) ; r2(X); X:=X+20; w2(X); Xét lịch biểu không thứ tự Sh sau giao tác: Sh : r1(X); w1(X); r2(Y); w2(Y); r1(Y); w1(Y); r2(X);w2(X); Với ngữ nghĩa thao tác r i(I) wi(I) giao hoán, biết thứ tự thực dãy bao gồm (đọc, cập nhật, ghi) không quan trọng dãy (đọc, cập nhật, ghi) giao tác cụ thể T i mục cụ thể I không bị gián đoạn thao tác xung đột Do , lịch biểu Sh xem khơng phải thứ tự Các nhà nghiên cứu làm việc lý thuyết kiểm soát đồng thời để điều khiển với trường hợp tính thứ tự xem hạn chế điều kiện cho đắn lịch biểu Cũng vậy, số lĩnh vực ứng dụng thiết kế máy tính trợ giúp ( computer hệ aidded design – CAD) hệ thống phức tạp aircraft, vi ệc thiết kế transaction last over a long time period Trong áp dụng vậy, more relazed shemes of concurrency control have been proposed to maintain consistency of the database 134 ... 1.3.3 Cơ sở liệu không gian 1.3.4 Cơ sở liệu đa phương tiện 28 Chương CÁC PHƯƠNG PHÁP LƯU TRỮ CƠ SỞ DỮ LIỆU Ở BỘ NHỚ NGOÀI Các quan hệ sở liệu thường lưu trữ thường trực nhớ nhớ máy tính lưu giữ liệu. .. chức hệ quản trị sở liệu 1.2.3.1 Các mục tiêu Giải pháp sở liệu có đặc trưng sau: Bản chất tự mơ tả hệ sở liệu Một đặc trưng giải pháp sở liệu hệ thống sở liệu khơng gồm có thân sở liệu mà có định... thiết kế sở liệu bao gồm giai đoạn sau đây: Tập hợp phân tích yêu cầu Thiết kế sở liệu quan niệm Lựa chọn hệ quản trị sở liệu Ánh xạ mơ hình liệu (còn gọi thiết kế sở liệu logic) Thiết kế sở liệu

Ngày đăng: 29/05/2018, 15:20

TỪ KHÓA LIÊN QUAN

w