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

Phân tích thiết kế hệ thống - Chương 12 pps

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 (677.39 KB, 4 trang )


Tài liệu Phân Tích Thiết Kế Hệ Thống


97
Chương 12 .
CÁC SUY XÉT TRONG THIẾT KẾ VẬT LÝ
(PHYSICAL DESIGN CONSIDERATIONS)
I GIỚI THIỆU
Trong các chương trước, chúng ta đã tìm hiểu qua các giai đoạn phân tích dữ liệu, mô hình hóa dữ liệu,
xây dựng mô hình quan hệ rồi chuẩn hóa các quan hệ. Trong chương này chúng ta sẽ bước sang giai
đoạn sử dụng một hệ QTCSDL cụ thể như SQL Sever hay Oracle hay MS Access … để xây dựng các
bảng, các mối kết hợp và các ràng buộc. Hình 11.1 cho ta thấy vò trí của hoạt động thiết kế csdl vật lý
trong các bước phân tích thiết kế dữ liệu.

Còn hình 11.2 cho ta thấy vò trí của hoạt động thiết kế vật lý trong qui trình phân tích thiết kế hệ thống.
II BẢNG, VÙNG
Khi chuyển các quan hệ thành bảng chúng ta có thể hợp nhiều quan hệ thành một bảng hay tách một
quan hệ thành nhiều bảng. Việc làm này tùy vào tính chất khai thác dữ liệu của vấn đề. Thông thường
chúng ta chuyển:
- một quan hệ thành một bảng trong HQTCSDL.
- Thuộc tính của quan hệ thành vùng trong bảng tương ứng
- Tạo khóa chính cho mỗi bảng
- Các vùng để lưu trữ các giá trò tổng hợp như thành tiền, tổng cộng


Tài liệu Phân Tích Thiết Kế Hệ Thống


98
Hình 11.2 - Thiết kế csdl vật lý trong qui trình PTTKHT


THIẾT KẾ HỆ THỐNG
(SYSTEMS DESIGN)
THỰC HIỆN VÀ VẬN HÀNH HỆ THỐNG
(SYSTEMS IMPLEMENTATION AND OPERATION)
1. Thiết kế giao diện con người (designing the human interface)
2. Thiết kế cơ sở dữ liệu (designing database)
a) Thiết kế csdl logic (designing logical database)
- Biến đổi mô hình ER thành mô hình quan hệ
- Kiểm tra yêu cầu chức năng
- Chuẩn hóa cơ sở dữ liệu
b)
Thiết kế csdl vật lý (designing physical database)
- Chuyển các quan hệ đạt chuẩn thành các đặc tả tập tin máy tính

III VÙNG, MÔ TẢ, LOẠI DỮ LIỆU VÀ KÍCH THƯỚC
Mỗi vùng cần xây dựng:
- Tên vùng có tính duy nhất trong một bảng.
- Mô tả vùng (đã được mô tả trong tự điển dữ liệu)
- Loại dữ liệu như số nguyên, ký tự, ngày, luận lý, tiền tệ
- Kích thước vùng như số ký tự đối với loại dữ liệu ký tự
- Tính bắt buộc hay không bắt buộc phải nhập dữ liệu (nghóa là có cho phép có giá trò Null hay
không). Ví dụ khi lưu trữ về KHÁCH HÀNG, ta có các vùng
mã khách hàng, tên khách hàng,
đòa chỉ, số điện thoại, số fax
trong đó các vùng mã khách hàng, tên khách hàng, đòa chỉ bắt
buộc phải nhập dữ liệu còn số điện thoại, số fax thì không bắt buộc vì có khả năng có khách
hàng không có số điện thoại hay số fax.
- Các ràng buộc về miền giá trò.
- Giá trò mặc nhiên.
IV KHÓA CHÍNH VÀ KHÓA NGOẠI

Cài đặt cơ chế xác đònh khóa chính và mối liên hệ giữa khóa chính và khóa ngoại. Cơ chế này tự động
kiểmtra không cho trùng lắp giá trò trên khóa chính và ngăn không cho nhập giá trò lạ trên khóa ngoại.
Mối kết hợp này còn ảnh hưởng đến việc thêm, sửa, xóa dữ liệu trên khóa chính và khóa phụ.
V KHÓA NHÂN TẠO
Khi sử dụng khóa nhân tạo ta cần chú ý hai khía cạnh sau:
- cơ chế tự động phát sinh giá trò trên vùng khóa. Các HQTCSDL đều cài sẵn cơ chế này
- cơ chế kiểm tra một đối tượng được lưu trữ hai lần dưới hai giá trò khóa khác nhau.
VI LẬP CHỈ MỤC

Tài liệu Phân Tích Thiết Kế Hệ Thống


99
Khi xây dựng csdl ta phải sử dụng khả năng lập chỉ mục trên các vùng thích hợp để tăng khả năng khai
thác dữ liệu. Việc lập chỉ mục mang lại lợi ích sau:
- việc tìm kiếm và khai thác mẫu tin nhanh hơn
- Hiệu quả trong việc khai thác nhiều bảng
- Khai thác một bảng theo nhiều thứ tự khác nhau
- Tạo khả năng kiểm tra sự trùng lắp dữ liệu
- Sắp xếp dữ liệu theo nhiều cấp
Việc lập chỉ mục tạo ra các bất lợi sau:
- sử dụng không gian lưu trữ nhiều hơn.
- thời gian khai thác lâu hơn cho các thao tác thêm, sửa, xóa dữ liệu
VII PHÁ VỢ CÁC DẠNG CHUẨN (DENORMALIZATION)
Trong quá trình xây dựng csdl, để tăng tốc độ khai thác dữ liệu, đôi khi ta phải phá vỡ các dạng chuẩn
của các bảng.
1 Ví dụ 1

Trong mô hình trên, cột
thành tiền trên DÒNG ĐƠN HÀNG và cột tổng cộng trên HÓA ĐƠN được

thêm vào để lưu trữ các giá trò sau:
- kết quả tính toán của số lượng x đơn giá được lưu trữ trong cột thành tiền
- tổng các giá trò trên cột thành tiền của DÒNG ĐƠN HÀNG được lưu trữ trong cột tổng cộng
Như vậy ta không phải nhập liệu cho hai cột này mà giá trò của chúng được hệ thống tự động tính toán
mỗi khi có sự thay đổi giá trò trên cột
số lượng hay đơn gía.
2
Ví dụ 2
Trong csdl về vấn đề KHÁCH HÀNG và LẦN KHÁM BỆNH, ta có mô hình ER sau:

Trong mô hình trên, cột
ngày khám bệnh sau cùng được thêm vào để chứa giá trò ngày khám bệnh mới
nhất của khách hàng mặc dù ta có thể dùng truy vấn để xác đònh ngày này thông qua các ngày khám
bệnh của khách hàng.
3 Ví dụ 3

Tài liệu Phân Tích Thiết Kế Hệ Thống


100
KHÁCH
HÀNG
XE Ô TÔ


khách

hàng
tên
đòa chỉ

số ă g
bộ
cấu tạo
kiểu
dáng
số sườn
Hình 11.6 - Mô hình ER có mối quan hệ
dư thừa
sở
hữu
được sở hữu
bởi
LẦN
ĐĂNG

LẦN
SỬA
CHỮA

thuộc về
dành
cho
số đăng

ngày
thực hiện
bởi
mã lần
ngày
số cây

số
co
ù

được kê
bởi
Mối quan hệ được
thêm vào để
tăng tốc độ khai
thác

Trong mô hình trên, với mục đích làm tăng tốc độ khai thác người ta thêm mối kết hợp giữa XE ÔTÔ và
KHÁCH HÀNG dùng để diễn tả khách hàng nào sở hữu xe ôtô nào. Nếu không có mối kết hợp này, ta
vẫn xác đònh được khách hàng nào sở hữu xe ôtô nào thông qua mối kết hợp giữa KHÁCH HÀNG và
LẦN ĐĂNG KÝ, giữa LẦN ĐĂNG KÝ và LẦN SỬA CHỮA và giữa LẦN SỬA CHỮA và XE ÔTÔ.
Việc xác đònh qua nhiều mối kết hợp này sẽ đòi hỏi nhiều thời gian xử lý.

KHÁCH HÀNG (mã khách hàng
, tên, đòa chỉ)
XE ÔTÔ (số đăng bo
ä, cấu tạo, kiểu dáng, số sườn)
LẦN ĐĂNG KÝ(số đăng ký
, ngày, thực hiện bởi)
LẦN SỬA CHỮA(mã lần
, ngày, số cây số)
VIII CÁC KHÍA CẠNH KHÁC
Khi xây dựng csdl, để tăng tốc độ khai thác, ta cần chú ý đến các điều sau:
1.
Nên lưu trữ các thông tin không nằm trong mô hình dữ liệu nhưng được khai thác thường xuyên (như
tên đơn vò, đòa chỉ, vv ) trong một bảng. Ứng dụng sẽ khai thác thông tin này ngay lúc khởi động

chương trình.
2.
Nên lọc dữ liệu của các bảng trước khi kết nối chúng lại.
3.
Nên tách một bảng thành nhiều bảng khi trên bảng có các cột được khai thường xuyên và cũng có
các cột rất ít được khai thác.
oOo

×