Chương 1: Thiết kế CSDL phân tán cho hệ thống
I. Khảo sát nghiệp vụ.
- Trong quy chế quản lí học phí của trường Đại học Công Nghiệp Hà Nội, có các
cơ quan phòng ban có liên quan sau:
+ Sinh Viên
+Phòng Kế Hoạch-Tài Chính
+Phòng Công Tác Học Sinh-Sinh Viên
- Tên giao dịch: Hanoi University of industry
- Địa chỉ: Khu A, Phường Minh Khai, Quận Bắc Từ Liêm, Hà Nội.
- Điện thoại liên hệ: 04.37655391.
- Địa chỉ Website:
II. Mô tả bài toán.
Vào đầu mỗi kì học sinh viên nhận được thông báo đóng học phí thông qua thầy
cô giáo chủ nhiệm lớp hoặc các bộ trong lớp. Sinh viên cần biết được số tiền mà
học kì này mình đóng. Việc đóng học phí tại trường Đại học Công Nghiệp Hà Nội
thông qua: Đóng trực tiếp tại phòng Tài Chính-Kế Toán. Khi thực hiện đóng trực
tiếp yêu cầu sinh viên mang theo thẻ sinh viên và đủ số tiền cần đóng. Khi đó nhân
viên tại phòng Tài Chính-Kế Toán sẽ nhập các thông tin cần thiết của sinh viên cho
hệ thống. Khi đó hệ thống sẽ xuất ra 2 biên lai phiếu thu, 1 phiếu lưu lại phòng Tài
Chính-Kế Toán, 1 phiếu sinh viên sẽ giữ.
Ngoài ra hệ thống cần lưu trữ thông tin về sinh viên trong trường(tên, lớp,mã sinh
viên, số điện thoại, địa chỉ, khoa...). Trong thông tin lưu trữ về sinh viên cần có
thông tin về các khoản thu đã nộp và khoản thu chưa nộp.
* Cơ cấu hoạt động của các phòng ban:
1. Sinh Viên.
- Sinh viên cần nắm rõ được chính xác lịch đóng học phí theo từng hệ mà mình học
như: Đại Học, Cao Đẳng, Trung Cấp... để tránh đóng lịch nhàm gây ra hiện tượng
quá tải khi đóng học phí.
- Sinh viên cần biết được số tiền mà mình học kì này mình đóng. Việc đóng học
1. Phân tích thực thể.
Thực thể Sinhvien là đối tượng mà hệ thống quản lí có nhiệm vụ nộp học phí.
Thuộc tính
Mô tả
Masv
Mã sinh viên
Hoten
Họ tên
Malop
Mã lớp
Gioitinh
Giới tính
Thực thể Lớp để lưu trữ thông tin về lớp học của sinh viên
Thuộc tính
Mô tả
Malop
Makhoa
Mã khoa
Tenkhoa
Tên khoal
Thực thể phieuthu để lưu trữ khoản thu học phí
Thuộc tính
Mô tả
Sophieuthu
Số phiếu thu
Ngaythu
Ngày thu
Masv
Mã sinh viên
Mahocki
Mã học kì
Số phiếu thu
Makhoanthu
Mã khoản thu
Soluong
Số lượng
Thực thế đangkiHP lưu trữ thông tin về học phần
Thuộc tính
Mô tả
Masv
Mã sinh viên
Mamon
Mã môn
Ngaydangki
Ngày đăng kí
Mahk
Tên học kì
2. Mô hình cơ sở dữ liệu tập trung
IV. Thiết kế mô hình cơ sở dữ liệu phân tán cho hệ thống
Trong hệ thống quản lí thu học phí, ở đây phân mảnh ngang nguyên thủy để
chia hệ cơ sở dữ liệu thành 3 mảnh đặt ở 3 trạm dựa trên 3 nhóm khoa và 1
trạm trung tâm dữ liệu:
Trạm 1: CSDL của sinh viên ngành: KHMT, HTTT, Cơ Khí, Điện tử,
Ngoại ngữ.
Trạm 2: CSDL của sinh viên ngành: May, Kế toán, QTKD, QTKD du
lich-khách sạn, Hóa.
Trạm 3:CSDL của sinh viên các ngành còn lại
Trạm 4: Trạm trung tâm dữ liệu
Trong đó:
Trạm 1 chỉ được quản lí việc thu học phí của sinh viên các ngành
KHMT, HTTT, Cơ Khí, Điện tử, Ngoại ngữ.
Trạm 2 chỉ được quản lí việc thu học phí của sinh viên các ngành
May, Kế toán, QTKD, QTKD du lich-khách sạn, Hóa.
Trạm 3 chỉ được quản lí việc thu học phí của sinh viên các ngành còn
lại.
Trạm 4 được truy cập tới tất cả các trạm còn lại. Trạm trung tâm được
thêm, sửa, xóa thông tin tại tất cả các trạm. Còn các trạm 1, trạm 2, trạm 3 chỉ
được phép thêm, sửa, xóa thông tin thuộc trạm đấy quản lý.
1. Phân mảnh dữ liệu
Phân mảnh ngang quan hệ ngành
m10: p1˄ ┐(p2˄p3) p1˄p1 p1
m11: p2˄ ┐(p1˄p3) p2˄p2 p2
m12: p3˄ ┐(p1˄p2) p3˄p3 p3
do p1˄ p2 = Ø, p1˄ p3= Ø,p2˄ p3= Ø
=>chọn m10, m11, m12 để phân mảnh
Quan hệ Khoa đươc phân mảnh ngang nguyên thủy thành 3 mảng ngang như sau:
Khoa_Tram1, Khoa_Tram2, Khoa_Tram3 :
Khoa_Tram1= σ Khoa=” khmt,ktpm,httt, cơ khí, điện tử, ngoại ngữ”(Khoa)
Khoa_Tram2= σ Khoa=” may,kế toán,qtkd, du lịch-khách sạn, hóa”(Khoa)
Khoa_Tram3= σ Khoa=” tập các ngành còn lại”(Khoa)
Ta phân mảnh dữ liệu dựa trên các quan hệ sau:
KHOA(makhoa,tenkhoa)
LOP(malop,tenlop,makhoa)
NGANH(manganh,makhoa,tennganh)
SINHVIEN(maSV, tenSV, malop, gioitinh)
MON(mamon,tenmon,sotinchi)
DANGKIHP(maSV, mamon, maHK, ngayDK)
PHIEUTHU(maSV, sophieuthu, ngaythu,maHK,mamon)
KHOANTHU(makhoanthu,tenkhoanthu,sotien)
CHITIETPHIEUTHU(sophieuthu, makhoanthu, soluong)
HOCKI(maHK,tenHK)
Phân mảnh ngang dẫn xuất trên quan hệ Nganh thành 3 mảnh ngang Nganh_Tram1,
Nganh _Tram2, Nganh _Tram3 như sau:
Nganh _Tram1 = Nganh
Khoa_Tram1
Nganh _Tram2 = Nganh
Lop _Tram2
Sinhvien _Tram3 = Sinhvien
Lop _Tram3
Phân mảnh ngang dẫn xuất trên quan hệ DangkiHP thành 3 mảnh ngang DangkiHP
_Tram1, DangkiHP _Tram2, DangkiHP _Tram3 như sau:
DangkiHP _Tram1 = DangkiHP
Sinhvien_Tram1
DangkiHP _Tram2 = DangkiHP
Sinhvien _Tram2
DangkiHP _Tram3 = DangkiHP
Sinhvien _Tram3
Phân mảnh ngang dẫn xuất trên quan hệ Phieuthu thành 3 mảnh ngang Phieuthu
_Tram1, Phieuthu _Tram2, Phieuthu _Tram3 như sau:
Phieuthu _Tram1 = Phieuthu
DangkiHP_Tram1
Phieuthu _Tram2 = Phieuthu
DangkiHP _Tram2
Ràng buộc Khóa chính
Mô tả
/ khóa phụ
(PK/FK)
1
Masv
varchar(10)
Not null
PK
Mã sinh viên
2
Hoten
nvarchar(30) Not null
Họ tên
3
Malop
Malop
Varchar(10) Not null
PK
Mã lớp
2
Tenlop
nvarchar(30) Not null
Tên lớp
3
Makhoa
Varchar(10) Not null
Mã khoa
Kiểu
Mô tả
Bảng NGANH
PK
Mã ngành
Tên ngành
PK
Mã khoa
Stt Tên thuộc tính
Kiểu
Ràng buộc Khóa chính
Mô tả
/ khóa phụ
(PK/FK)
1
Makhoa
varchar(10)
Not null
PK
PK
Số phiếu thu
2
Ngaythu
datetime
Not null
Ngày thu
3
Masv
Varchar(10)
Not null
Mã sinh viên
4
Mahocki
Varchar(10)
varchar(10)
Not null
PK
Mã khoản thu
2
Tenkhoanthu
nvarchar(30) Not null
Tên khoản thu
3
Sotien
float
Not null
Số tiền
Ràng buộc Khóa chính
Mô tả
Mã khoản thu
3
Soluong
float
Not null
Số lượng
Bảng DANGKIHOCPHAN
Stt Tên thuộc tính
Kiểu
Ràng buộc Khóa chính
Mô tả
/ khóa phụ
(PK/FK)
1
Masv
varchar(10)
Varchar(10)
Not null
Kiểu
Ràng buộc Khóa chính
Ngày đăng kí
PK
Mã học kì
Bảng MON
Stt Tên thuộc tính
Mô tả
/ khóa phụ
(PK/FK)
1
Mamon
varchar(10)
Not null
2
/ khóa phụ
(PK/FK)
1
Mahk
varchar(10)
2
Tenhk
nvarchar(30) Not null
II.
Mô hình CSDL phân tán.
Not null
PK
Mã học kỳ
Tên học kì