BÀI GIẢNG Thiết kế vật lý database

116 399 0
BÀI GIẢNG Thiết kế vật lý database

Đ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

Chương 6: Thiết kế vật lý database Nội dung      Quá trình thiết kế database vật lý Chọn định dạng lưu trữ cho thuộc tính từ mô hình liệu luận lý Mô tả ba kiểu tổ chức tập tin Chỉ mục: mục đích loại mục Chuyển đổi mô hình liệu quan hệ thành cấu trúc database hiệu 6.1 Thiết kế database  Yêu cầu: Thận trọng thiết kế định làm giai đoạn ảnh hưởng đến khả truy xuất liệu, thời gian đáp ứng, tính bảo mật, tính thân thiện với người dùng, …  Phạm vi thiết kế: Chỉ thiết kế database tập trung (centralized DB), không phân tán Mục tiêu thiết kế database   Tập trung vào tính hiệu xử lý liệu (data processing efficiency) Chi phí máy tính ngày giảm đáng kể, việc thiết kế cần tập trung vào việc giảm nhỏ thời gian xử lý làm xử lý database file vật lý hiệu quả, không quan tâm nhiều đến không gian lưu trữ Chuẩn bị trước thiết kế  Cần thu thập thông tin liên quan đến hệ thống thiết kế: • Các quan hệ chuẩn hoá, kể việc ước lượng khối lượng thông tin • Các định nghĩa thuộc tính • Các mô tả nơi liệu dùng: thêm, truy xuất, xóa, cập nhật • Các mong muốn yêu cầu thời gian đáp ứng, độ bảo mật liệu, lưu phục hồi liệu, tính toàn vẹn liệu • Mô tả công nghệ, DBMS dùng để thực thi DB Quá trình thiết kế database Chọn kiểu liệu cho thuộc tính có mặt mô hình liệu luận lý: kiểu liệu tốn nhớ mà bảo đảm tính toàn vẹn liệu Nhóm thuộc tính từ mô hình liệu luận lý vào ghi vật lý (physical record) Sắp xếp ghi có cấu trúc tương tự vào nhớ phụ (đĩa cứng) cho việc truy xuất ghi nhanh chóng • Cần quan tâm đến việc bảo vệ khôi phục liệu có lỗi Chọn cấu trúc lưu trữ kết nối file để việc truy xuất liệu hiệu Tối ưu hóa xử lý câu truy vấn Khối lượng liệu & tần suất sử dụng (Data volume and usage frequency)   Đánh giá khối lượng liệu tần số sử dụng liệu bước cuối trình thiết kế CSDL luận lý bước trình thiết kế vật lý CSDL Để thống kê, thêm ghi (natation) vào sơ đồ ERR biểu diễn quan hệ chuẩn hóa cuối 200 PART 1000 SUPPLIER 70 50 40% O 60 70% (50) 140 MANUFACTURED PART 400 PURCHASED PART QUOTATION 2500 700 40 40 80 Khối lượng liệu & tần suất sử dụng (Data volume and usage frequency)   Việc thống kê khối lượng tần suất thực giai đoạn phân tích hệ thống phân tích viên hệ thống ( system analyst) Việc thống kê không đòi hỏi xác tuyệt đối mà dùng làm sở cho bước thiết theo 6.2 Thiết kế vùng tin (Field design)    Field đơn vị nhỏ liệu mà phần mềm hệ thống hay DBMS nhận biết Field tương ứng với thuộc tính (attribute) mô hình liệu luận lý Quyết định cần làm thiết kế phải chọn kiểu liệu cho field, kiểm soát tính toàn vẹn liệu DBMS quản lý giá trị bị thiếu cho field nào?? 10 Mary Mary bill bill B0 John John sol sol B1 B2 Pete Pete v h3 karen karen vince vince 33 Current_hash B3 B5 Bucket_level[6] Judy Judy jane jane B6 102 Hoàn chỉnh giải thuật phân chia bucket  Nên lưu trữ số lần phân chia bucket thông qua biến mảng bucket_level[i] Lúc đầu bucket_level[0]=0 Bi phân chia bucket_level[i] +1 xem mức bucket cho Bi B vừa tạo 103 Linear hashing    Khuyết điểm extendable hashing có liên quan đến directory Directory cần thiết bucket phân chia, cần chuyển hàm hash lên miền lớn hơnCác search key hash vào bucket khác hash đến giá trị khác Vì miền hk+1 chứa gấp hai lần số phần tử miền hk, hi(v) hi+1(v) không giống 104 Linear hashing  Một cách khác sử dụng chuỗi hàm hash h0, h1, h2,…, hb, hi hi+1 sử dụng lúc: • Hi dành cho giá trị thuộc vào bucket không bị phân chia • Hi+1 dành cho giá trị thuộc vào bucket bị phân chia  Ưu điểm: cung cấp ánh xạ trước sau phân chia cho search key mà không liên quan đến phân chia 105 Linear hashing  Việc phân chia bucket thực qua nhiều giai đoạn: • Các bucket tồn từ giai đoạn dầu 106 Denormalization  Mục tiêu thiết kế CSDL: • Hiệu đĩa • Hiệu    việc sử dụng không gian việc truy xuất liệu Denormalization trình biến đổi quan hệ chuẩn hóa thành bảng có ghi vật lý không chuẩn hóa Mục tiêu denormalization tối ưu hóa việc xử lý liệu Denormalization kết hợp phân chia quan hệ 107 Denormalization Trường hợp thực thể quan hệ 1-1: Ngay thực thể tùy chọn (optional), thực thể tồn nên kết hợp chúng lại thành định nghĩa ghi  Ví dụ: sinh viên nộp không nộp đơn xin học bổng  108 Quan hệ chuẩn hóa Student_ID Application_ID Campus_Address Application_Date Qualifications Student_ID Quan hệ khử chuẩn hóa Student_ID Campus_Address Application_Date Qualifications Application_Date Qualifications có giá trị null 109 Denormalization Trường hợp thực thể kết hợp có thuộc tính không khóa: Nên kết hợp quan hệ từ thực thể lúc đầu lại  Mục đích: để tránh việc phải dùng thao tác kết nối (join) quan hệ việc truy xuất liệu dùng thường xuyên  110 Quan hệ chuẩn hóa Vendor_ID Item_Id Price PRICE QUOTE VENDOR ITEM Address Contact_Name Description VENDOR Vendor_Id Address Contact_Name Item_Id ITEM Description PRICE QUOTE Vendor_Id Item_Id Price 111 Quan hệ khử chuẩn hóa VENDOR Vendor_Id Address Contact_Name PRICE QUOTE Vendor_Id Item_Id Description Price 112 Denormalization Trường hợp liệu tham chiếu: Dữ liệu tham chiếu nằm thực thể phía mối kết nối 1-M thực thể phía không quan hệ thêm với thực thể khác Nên trộn hai thực thể vào bảng số thực thể điển hình thực thể phía M ứng với thực thể phía tương đối  Ví dụ: nhiều mặt hàng (item) có phiếu lưu kho  113 Quan hệ chuẩn hóa Item_ID Item_Id Where_Store PRICE Control_for QUOTE STORAGE VENDOR INSTRUCTIONS ITEM Container_Type Description STORAGE Instr_Id Where_Store Container_Type ITEM Item_Id Description Instr_Id 114 Denormalization   Trường hợp tạo nhiều bảng cách phân chia quan hệ thành nhiều bảng Phân chia (partition) quan hệ có dạng: • Chiều ngang • Chiều dọc 115 Quan hệ khử chuẩn hóa ITEM Item_Id Description Where_Store Container_Type 116 ... thiện với người dùng, …  Phạm vi thiết kế: Chỉ thiết kế database tập trung (centralized DB), không phân tán Mục tiêu thiết kế database   Tập trung vào tính hiệu xử lý liệu (data processing efficiency)... đáng kể, việc thiết kế cần tập trung vào việc giảm nhỏ thời gian xử lý làm xử lý database file vật lý hiệu quả, không quan tâm nhiều đến không gian lưu trữ Chuẩn bị trước thiết kế  Cần thu thập... để quản lý trường độ dài thay đổi chia quan hệ thành ghi vật lý chứa toàn trường có chiều dài cố định hay nhiều ghi vật lý chứa trường có chiều dài thay đổi 28 6.4 THIẾT KẾ TỆP TIN VẬT LÝ  

Ngày đăng: 25/08/2017, 09:45

Từ khóa liên quan

Mục lục

  • Chương 6: Thiết kế vật lý database

  • Nội dung

  • 6.1 Thiết kế database

  • Mục tiêu thiết kế database

  • Chuẩn bị trước khi thiết kế

  • Quá trình thiết kế database

  • Khối lượng dữ liệu & tần suất sử dụng (Data volume and usage frequency)

  • Slide 8

  • Slide 9

  • 6.2 Thiết kế các vùng tin (Field design)

  • 8.2.1 Chọn kiểu dữ liệu

  • 8.2.2 Kỹ thuật mã hoá và nén dữ liệu

  • Slide 13

  • Kỹ thuật mã hoá và nén dữ liệu

  • Slide 15

  • 6.2.3 Kiểm soát tính toàn vẹn dữ liệu

  • Giá trị mặc định (Default value)

  • Kiểm soát miền giá trị (Range control)

  • Kiểm tra giá trị rỗng (Null value control)

  • Bảo toàn tham chiếu (Referential integrity)

Tài liệu cùng người dùng

Tài liệu liên quan