Tải bản đầy đủ (.pdf) (5 trang)

Chương 9: Thiết kế cơ sở dữ liệu vật lý potx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (516.35 KB, 5 trang )




Trang 93
Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường

G
Chương 9
Thiết kế cơ sở dữ liệu vật lý

9.1. Các phương thức lưu trữ dữ liệu
Có hai phương thức lưu trữ dữ liệu phổ biến là File và Cơ sở dữ liệu
9.1.1. File
Là một tập hợp của các bản ghi tương tự nhau. Các file không có liên quan với nhau trừ
khi được liên kết trong code của chương trình ngoài
Ưu điểm:
 Dễ dàng thiết kế nếu chỉ dùng cho một ứng dụng
 Tối ưu về hiệu năng nếu chỉ dùng cho một ứng dụng
Nhược điểm:
 Khó thích ứng hoặc khó dùng chung giữa nhiều ứng dụng
 Hay bị dư thừa dữ liệu (cùng một thông tin được lưu trữ trên nhiều file khác nhau)
9.1.2. Cơ sở dữ liệu
Là một tập hợp của nhiều files (bảng) có quan hệ với nhau. Bản ghi của một file (hay
bảng) có thể có mối quan hệ vật lý với một hay nhiều bản ghi ở các file (hay bảng) khác.
Ưu điểm:
 Tách biệt dữ liệu khỏi logic chương trình do đó tăng tính thích ứng, khả chuyển của
chương trình.
 Kiểm soát được quy mô, độ lớn của dữ liệu
 Tối ưu trong việc chia sẻ dùng chung giữa nhiều ứng dụng
 Giảm thiểu dư thừa dữ liệu
Nhược điểm:


 Phức tạp hơn công nghệ file rất nhiều
 Ở khía cạnh nào đó truy xuất cơ sở dữ liệu thường chậm hơn so với truy xuất file
 Cần tuân thủ nhiều nguyên tắc khi thiết kế để có thể khai thác được lợi ích của cơ
sở dữ liệu quan hệ
 Cần có chuyên gia sử dụng hệ quản trị cơ sở dữ liệu
9.2. Kiến trúc dữ liệu
Kiến trúc dữ liệu mô tả cách thức:
 sử dụng file/cơ sở dữ liệu để lưu trữ dữ liệu
 công nghệ file/cơ sở dữ liệu được lựa chọn sử dụng



Trang 94
Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường

G
 cơ cấu quản lý được thiết lập để quản lý các nguồn dữ liệu
Thông thường dữ liệu được lưu trữ đồng thời bởi nhiều cách thức, phương tiện:
 Các files,
 Cơ sở dữ liệu cá nhân, cơ sở dữ liệu chung của nhóm, cơ sở dữ liệu giao dịch,
 Nhà kho dữ liệu (tổng hợp các nguồn)
Hệ quản trị CSDL:
 Là một phần mềm dùng để quản lý việc tạo, truy nhập, kiểm soát, quản lý các đối
tượng dữ liệu của một hay nhiều cơ sở dữ liệu.
 Phần nền tảng của một HQTCSDL là một bộ máy dữ liệu - data engine
 Ngôn ngữ định nghĩa dữ liệu (Data Definition Language - DDL) là một phần của bộ
máy dùng để định nghĩa các bảng, trường, quan hệ
 Ngôn ngữ thao tác dữ liệu (Data Manipulation Language - DML) dùng để thêm,
sửa, xoá và di chuyển giữa các trường trong cơ sở dữ liệu
9.3. Triển khai mô hình dữ liệu logic dựa trên một cơ sở dữ liệu quan hệ

9.3.1. Cơ sở dữ liệu quan hệ
Là cơ sở dữ liệu lưu trữ và quản lý dữ liệu trong những bảng 2 chiều. Các bảng này có
thể có quan hệ với nhau thông qua các trường khoá
Đặc thù của cơ sở dữ liệu quan hệ:
 Mô hình dữ liệu vật lý (Schema)
 DDL và DML được thể hiện bởi ngôn ngữ SQL
 Triggers là các chương trình được nhúng cùng cơ sở dữ liệu và tự động thực thi
khi cơ sở dữ liệu được cập nhật
 Thủ tục thường trú (Stored procedure) là chương trình được nhúng cùng cơ sở dữ
liệu và thực thi từ câu lệnh của ứng dụng
9.3.2. Mô hình hoá dữ liệu
Một mô hình dữ liệu tốt là mô hình trong đó:
 Mỗi thuộc tính mô tả một và chỉ một thực thể
 Mỗi thuộc tính chỉ tồn tại ở duy nhất một thực thể (trừ thuộc tính khoá ngoại)
Để có được một mô hình dữ liệu tốt, ta tiến hành các bước chuẩn hoá (xem thêm phần
phân tích hệ thống)
Chuẩn hoá dữ liệu - Một thực thể logic hay một bảng vật lý được gọi là:
 Ở dạng chuẩn thứ nhất nếu không có thuộc tính (trường) nào có hai giá trị trong
cùng một thể hiện
 Ở dạng chuẩn thứ hai nếu nó đã ở dạng chuẩn thứ nhất và giá trị các trường
không phải là khoá chính hoàn toàn phụ thuộc vào khoá chính.



Trang 95
Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường

G
 Ở dạng chuẩn thứ ba nếu nó đã ở dạng chuẩn thứ hai và giá trị các trường không
phải khoá chính không phụ thuộc các trường không phải khoá chính khác

Các bước tạo mô hình dữ liệu vật lý
 Xem lại mô hình dữ liệu logic
 Tạo bảng cho mỗi thực thể
 Tạo trường cho mỗi thuộc tính
 Tạo chỉ mục (index) cho mỗi khoá
 Thiết kế khoá ngoại cho các quan hệ
 Định nghĩa kích thước/kiểu dữ liệu, thuộc tính null, giá trị mặc định
 Đánh giá và thiết lập các ràng buộc
 Chú ý các công nghệ khác nhau cho các kiểu dữ liệu khác nhau
Tạo câu lệnh SQL
 Tuỳ vào từng hệ quản trị CSDL, tạo CSDL tương ứng trên ngôn ngữ DDL.
9.4 Ví dụ thiết kế cơ sở dữ liệu vật lý
Bài toán quản lý bãi trông gửi xe đã được xem xét các chương trước. Bây giờ ta sẽ
chuyển các biểu đồ luồng dữ liệu mức logic sang biểu đồ luồng dữ liệu mức vật lý tương ứng.
Thông qua biểu đồ luồng dữ liệu vật lý, chúng ta sẽ biết được những chức năng – tiến trình
nào mà hệ thống (máy tính) sẽ đáp ứng, những tiến trình nào con người phải thực hiện.
Bước 1: Xây dựng biểu đồ luồng dữ liệu vật lý
a. Tiến trình “1.0 Nhận xe”

Hình 9.1 Tiến trình 1.2 và 1.4 do máy thực hiện
a1.Tiến trình "1.2. kiểm tra chỗ trống“
 Xử lý theo lô mỗi khi có xe vào.
 Sau khi nhập vào tên loại xe, xác định số chỗ trống như sau:

a2. Tiến trình "1.4. ghi sổ xe vào"



Trang 96
Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường


G
 Xử lý theo lô mỗi khi có xe vào và còn chỗ trống
 Chỉ cần nhập số vé và số xe, tên loại xe đã nhập trước, ngày giờ vào được nhập tự
động lấy từ thời gian của máy.
b. Tiến trình “2.0 Trả xe”. Hình 9.2 Tiến trình 2.3 và 2.4 do máy thực hiện

b1. Tiến trình “2.3. Thanh toán”
 Xử lý theo lô, mỗi khi có xe ra, vé xe kà thật và phù hợp với xe
 Sau khi nhập vào số vé, tìm ra số xe, bổ sung ngày giờ ra lấy từ ngày giờ hệ thống
rồi tính tiền như sau:

b2. Tiến trình “2.4 Ghi sổ xe ra”
 Là tiếp tục của tiến trình 2.3
 Chỉ cần ghi lại các dữ liệu đã có về xe vừa ra lên máy
c. Tiến trình “3.0 Giải quyết sự cố”

Hình 9.3 Máy tính thực hiện tiến trình 3.1, 3.3, 3.4
c1. Tiến trình “3.1 Kiểm tra sổ”
 Xử lý theo lô mỗi khi có sự cố



Trang 97
Giáo trình: Phân tích thiết kế hệ thống Giảng viên: Lê Đắc Nhường

G
 Cần nhập số xe, tìm xe trong sổ và cho hiện lên hoặc thông báo không tìm thấy.
c2. Tiến trình “3.3. Lập biên bản”
 Thực hiện sau khi xác định có sự cố thực

 Cập nhật nội dung biên bản theo mẫu trên máy
c3. Tiến trình “3.4 Thanh toán”
 Thực hiện tiếp ngay sau tiến trình 3.3 nếu cần
 Cập nhật nội dung phiếu thanh toán theo mẫu trên máy.
Bước 2: Đặc tả logic tiến trình

Bước 3: Xây dựng các bảng trên cơ sở dữ liệu vật lý
Bảng XEGUI

Bảng GIAGUI

×