Phân tích yêu cầu nghiệp vụ cho việc lưu trữ dữ liệu Dựa trên yêu cầu nghiệp vụ, thiết kế mô hình CSDL Xác định các yêu cầu để thiết kế một ứng dụng và thực thi CSDL... Là bước
Trang 2 Phân tích yêu cầu nghiệp vụ cho việc lưu trữ dữ liệu
Dựa trên yêu cầu nghiệp vụ, thiết
kế mô hình CSDL
Xác định các yêu cầu để thiết kế một ứng dụng và thực thi CSDL
Trang 3 Là bước đầu tiên trong quá trình
mô hình hoá dữ liệu và thiết kế
CSDL
Các bước phân tích nghiệp vụ:
Thu thập dữ liệu (Data collection)
Phân tích dữ liệu (Data analysis)
Xem xét đối chiếu lại yêu cầu của
khách hàng
Ví dụ: nghiên cứu tình huống của
Trang 4Là một công ty ảo chuyên buôn sỉ các mặt hàng xuất
trực tiếp từ kho
Để đặt hàng, khách hàng gọi điện cho nhân viên bán
hàng,người mà có trách nhiệm lập hoá đơn (invoice) cho khách Các hoá đơn này sẽ in ngay tại kho, và chuyển đến phòng vận chuyển hàng, sau đó hàng hoá sẽ được đóng gói và chuyển đên cho khách hàng
Hàng hoá lưu kho được đặt mua bằng cách đặt hàng
trực tiếp đến nhà máy sản xuất Ngay khi nhận được
hàng, hồ sơ kho sẽ được cập nhật để phản ánh số lượng
và đơn giá mới Ngay khi nhà sản xuất tăng giá một mặt hàng nào, tất cả hàng tồn kho của mặt hàng đó sẽ được cập nhật ngay với giá mới
Công ty này đang muốn cài đặt một hệ thống mới để
quản lý mọi dữ liệu và họ đã quyêt định chọn SQL server
Trang 5 Bao gồm 3 giai đoạn:
Conceptual design
Logical design
Physical design
Các giai đoạn này phải theo đúng trình
tự tuy có thể gối lên nhau
Trang 6 Conceptual design (thiết kế nhận thức) — phát triển một nền tảng
cho giải pháp nghiệp vụ
Điều tra & thu thập các nhu cầu của khách hàng
Đưa ra các quyết định thiết kế có
tính tổng quát
Xem xét ngân sách và các công nghệ hiện có
Trang 7 Logical design (thiết kế mức luận lý)
— thiết kế các yêu cầu về dữ liệu và thiết kế giải pháp nghiệp vụ
Phát triển mô hình dữ liệu (data model)
Physical design (thiết kế vật lý) —
xác định các công nghệ để thực thi giải pháp và xác định các yêu cầu
thiết kế về vật lý
Trang 8Tìm hiểu hoạt động nghiệp vụ hiện
tại
Thông tin nào hiện đang sẵn có
Các biểu mẫu mà hiện thời được
dùng để chứa thông tin
Nhân viên phụ trách việc nhập liệu
Các phương pháp mà thông tin được
Trang 9 Bắt đầu bằng cách xác định các thành phần của mô hình dữ liệu
Entities – Các thực thể
Attributes - Thuộc tính
Relationships - Mối quan hệ giữa các thực thể
Trang 10 Là các hạng mục mà CSDL cần phải lưu trữ
Mỗi loại thực thể - a table
Mỗi một điển hình cụ thể của 1 thực thể
- một hàng row trong bảng
Xác định các thực thể của Fairco
Trang 11 Là một công ty ảo chuyên buôn sỉ các mặt hàng xuất
trực tiếp từ kho
Để đặt hàng, khách hàng gọi điện cho nhân viên bán
hàng,người mà có trách nhiệm lập hoá đơn (invoice) cho khách Các hoá đơn này sẽ in ngay tại kho, và chuyển đến phòng vận chuyển hàng, sau đó hàng hoá sẽ được đóng gói và chuyển đên cho khách hàng
Hàng hoá lưu kho được đặt mua bằng cách đặt hàng
trực tiếp đến nhà máy sản xuất Ngay khi nhận được
hàng, hồ sơ kho sẽ được cập nhật để phản ánh số lượng
và đơn giá mới Ngay khi nhà sản xuất tăng giá một mặt hàng nào, tất cả hàng tồn kho của mặt hàng đó sẽ được cập nhật ngay với giá mới
Công ty này đang muốn cài đặt một hệ thống mới để
quản lý mọi dữ liệu và họ đã quyêt định chọn SQL server
Trang 13Các thực thể và thuộc tính
Trang 14one-to- Mỗi lớp có 1 lớp trưởng duy nhất one-to-one
Mối quan hệ giữa các bảng của Fairco??
Trang 15 Chu ẩn hoá th ường được dùng
trong thiết kế các bảng của
Hạn chế việc dư thừa dữ liệu, tránh
được việc không thống nhất dữ liệu
khi các bảng có cột trùng nhau nhưng lại chứa các giá trị sai lệch nhau
Phân rã không tổn thất (Nonloss
decomposition) là quá trình phân chia
1 bảng thành 2 hay nhiều bảng nhỏ hơn mà không làm mất dữ liệu
Trang 16 Ba dạng chuẩn hoá thông dụng
Dạng chuẩn 1 (First normal form) — một giá trị cho 1 ô của bảng
Dạng chuẩn 2 (Second normal form)
— ở dạng chuẩn 1 và mọi thuộc tính không khoá đều phụ thuộc đầy đủ
Trang 17 Để thực thi 1 CSDL
Trang 18Một CSDL bao gồm các file dùng để lưu trữ các đối tượng, bảng và chỉ mục của CSDL đó.
Có tối thiểu là 2 file cho 2 CSDL
File dữ liệu cơ bản (Primary data file) (.mdf) : mỗi CSDL chỉ có duy nhất 1 file cơ bản (m ặc định )
File nh ật ký giao dịch (Transaction log file)
(.ldf): mỗi CSDL có từ 1 đến nhiều file nhật ký
Các file thứ cấp (Secondary data files) (.ndf)
(tu ỳ chọn ):
Trang 19 Chứa thông tin sẽ cần để khôi phục
(recover) CSDL.
Bất kỳ sửa đổi dữ liệu nào đều được ghi lại vào transaction log.
Nếu có lỗi hệ thống, SQL server sẽ tự
động khôi phục ngay khi khởi động lại nhờ vào thông tin của transaction log.
Mặc định, Transaction log sẽ chiếm
khoảng 25% kích cỡ của 1 CSDL.
Trang 20Mydb.mdf Morespac.ndf Mylog.ldf
Trang 21Mydb.mdf Morespac.ndf Mylog.ldf
D:\
Default Filegroup FilegroupMy extra
-Filegroup mặc định phải đủ lớn để chứa tất cả các bảng
hệ thống và các đối tuợng của người dùng
- Các filegroup khác nên chứa tất các chỉ mục và các
bảng mới
Trang 22 Để xem thông tin về các file của CSDL hiện hành:
Trang 23 Đơn vị cơ bản để lưu trữ CSDL là trang (page)
Trang là 1 khối 8KB nằm liên tục trên đĩa
File log không chứa các trang, nó là 1 chuỗi các record
Các trang dữ liệu chứa tất cả các dữ liệu của hàng (row), ngoại trừ kiểu dữ liệu text và
image nằm trên các trang riêng
Các hàng (row) của bảng không thể quá lớn
để kéo dài từ trang này sang trang khác, vì
vậy mỗi hàng bị giới hạn không thể lớn hơn 8KB (=8060 byte)
Các hàng dữ liệu nằm tuần tự trên mỗi trang
Trang 24Page header chiếm 96
byte chứa thông tin
hệ thống như loại
trang, số không gian
còn trống ,…
Trang 25 Các trang được tổ chức thành các extent
Một extent là 1 tập hợp 8 trang liên tục nhau.
Một CSDL có 16 extents (128 pages) trên
1 MB
Extent đầu tiên của mỗi file CSDL được
dùng riêng bởi SQL server để theo dõi
việc phân phối dữ liệu trên đĩa
Trang 27 Cú pháp Filespec:
< filespec > ::=
( NAME = logical_name,
FILENAME = 'path\filename', SIZE = size_in_MB,
MAXSIZE = size_in_MB | UNLIMITED, FILEGROWTH = %_or_MB )
Trang 30 Thêm files hay filegroups vào CSDL
Th êm log files v ào CSDL
Xoá files hay filegroups từ 1 CSDL
Cài đặt các tuỳ chọn của CSDL
Trang 31 Cú pháp lệnh thay đổi cấu trúc CSDL :
ALTER DATABASE database_name
filegroup_name]
| ADD LOG FILE filespec
| REMOVE FILE logical_filename
| ADD FILEGROUP filegroup_name
| REMOVE FILEGROUP filegroup_name
| MODIFY FILE filespec
| MODIFY FILEGROUP filegroup_name
filegroup_property
|SET optionspec [WITH termination]
Trang 34- Chọn Actions\New
Database
- Hoặc nhấp phải chuột
tại folder Databases,
chọn lệnh New Database