Bài giảng Chương 6: Thiết kế cơ sở dữ liệu

Mục tiêu: Chương này cung cấp một số yếu tố kỹ thuật có liên quan tới việc thiết kế một cơ sở dữ liệu trong hệ thống thông tin. Nội dung chính: Cách thức xây dựng cơ sở dữ liệu, thiết lập mối quan hệ giữa các dạng thực thể trong hệ thống, các kỹ thuật xây dựng cơ sở dữ liệu hiện đang được sử dụng.

ppt43 trang | Chia sẻ: nyanko | Lượt xem: 1587 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Bài giảng Chương 6: Thiết kế cơ sở dữ liệu, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
HỆ THỐNG THÔNG TIN QUẢN LÝGiảng viên: Nguyễn Thị Thanh TâmKhoa Đào Tạo Quốc TếĐại học Duy TânManagement Information SystemCHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUMục tiêu: Chương này cung cấp một số yếu tố kỹ thuật có liên quan tới việc thiết kế một cơ sở dữ liệu trong hệ thống thông tin. Nội dung chính: Cách thức xây dựng cơ sở dữ liệu, thiết lập mối quan hệ giữa các dạng thực thể trong hệ thống, các kỹ thuật xây dựng cơ sở dữ liệu hiện đang được sử dụng.Tệp và cơ sở dữ liệuHệ thống thông tin quản lý như vũ khí chiến lược của các doanh nghiệp trong thời đại bùng nổ thông tin hiện nay. Vậy, làm thế nào để có thể xây dựng được một hệ thống thông tin phục vụ được kịp thời những mục đích doanh nghiệp? Vấn đề sử dụng hệ thống thông tin như thế nào, Làm thế nào để có được một hệ thống thông tin hiệu quả (DB) Tuy vậy, đứng trên phương diện là người quản lý doanh nghiệp, một hiểu biết đúng đắn về cơ sở dữ liệu sẽ giúp chúng ta rât nhiều trong bước đầu tiên - bước cơ sở dữ liệu. CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUTệp và cơ sở dữ liệuVí dụ: Nội dung của tệp dữ liệu về các khách hàng của một công ty bảo hiểm Số TTTên khách hàngSố điện thoạiĐịa chỉDạng bảo hiểmSố tiền bảo hiểmNgày cập nhật thông tin1Nguyễn Văn Mẫn8300154125 Triệu Nữ VươngT1200 00001/10/022Lê Quỳnh Nga8697184113 Điện Biên PhủS1500 00020/10/023Hoàng Anh Tuấn8628761184 Nguyễn Văn LinhS2450 00030/10/03CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUTệp và cơ sở dữ liệuMột số thuật ngữ cơ bảnThuật ngữKhái niệmDữ liệuDữ liệu là những sự kiện thực tế được tổ chức và lưu lại trong máy tínhTrườngMột hoặc một nhóm ký tự được sử dụng để làm tiêu đề cho một nhóm các dữ kiện được lưu lạiBiểu ghiMột tập các trường được liên kết lại với nhau liên quan tới một nhóm các dữ kiện được lưu lạiTệpMột hoặc nhiều các biểu ghi theo cùng một tiêu chuẩn thống nhất nghĩa là được tổ chức theo cùng một số trường nhất địnhCHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUHệ thống quản lý cơ sở dữ liệuCHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUHệ thống quản lý cơ sở dữ liệuChức năng:Thiết lập từ điển cơ sở dữ liệuQuản lý việc lưu trữ dữ liệuChuyển đổi và hiển thị thông tinBảo đảm độ an toàn của dữ liệuKhôi phục lại dữ liệuTính toàn vẹn dữ liệuGiao diện trên cơ sở viễn thông của các cơ sở dữ liệuCHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUMô hình cơ sở dữ liệuMô hình khái niệm :- Nó tập trung vào bản chất logic của việc biểu diễn dữ liệu CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUMô hình cơ sở dữ liệuMô hình thực hiện:Các mô hình thực hiện thì quan tâm tới vấn đề làm thế nào để biểu diễn dữ liệu trong một cơ sở dữ liệu. Mô hình thực hiện bao gồm 3 loại: (1) Mô hình dữ liệu phân cấp, (2) Mô hình cơ sỏ dữ liệu dạng mạng lưới, (3) Mô hình cơ sở dữ liệu dạng quan hệ.CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChuyển đổi dữ liệu thành thông tin Ví dụ: Khi một ngân hàng muốn thu thập thông tin về khách hàng, nó sẽ cần những dữ liệu như: tuổi của khách, giới tính, những khoản nợ lâu dài sẵn có của khách, những khoản nợ ngắn hạn mà khách chưa trả cho ngân hàng hoặc các chủ nợ khác, mức độ học vấn của khách, quá trình hoạt động của khách, - Những dữ liệu thu thập được càng rõ ràng bao nhiêu thì việc phân tích nó càng rõ ràng bấy nhiêu.CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuVòng đời của cơ sở dữ liệu : Gồm 6 bước cơ bảnNghiên cứu ban đầu về cơ sở dữ liệu Mục đích:Phân tích tình trạng của doanh nghiệpXác định vấn đề tồn tại và các hạn chếXác định các mục tiêu cơ bảnXác định phạm vi thực hiện và những ranh giới thực hiện CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuNghiên cứu ban đầu về cơ sở dữ liệu (Chu trình)CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuNghiên cứu ban đầu về cơ sở dữ liệu (Các bước hoạt động)CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuQúa trình thiết kế cơ sở dữ liệu Quan điểm khác nhau của người quản lý và người thiết kế về dữ liệuCHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuQúa trình thiết kế cơ sở dữ liệu CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuQúa trình thiết kế cơ sở dữ liệu Thiết kế khái niệm - Mô hình hoá các dữ liệu nhằm tạo ra một cấu trúc cơ sở dữ liệu ngắn gọn giới thiệu những đối tượng thực sự trong phần lớn các cách có khả năng thực tiễn nhất. - Mô hình khái niệm cần phải gắn liền với lĩnh vực của doanh nghiệp và các chức năng của nó. -Dạng phần cứng và mô hình cơ sở dữ liệu còn chưa được xác định rõ ràng. CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuQúa trình thiết kế cơ sở dữ liệu Thiết kế khái niệmVí dụ: Lược đồ quan hệ thực thể ERD( Entity Relationship Diagram)Lam_viecLa_truong_phongPhan_congDCHINHANVIENTENNVNGSINHPHAILUONGHONVPHONGBANTENPHGPhu_trachDEANTENDADDIEM_DACHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuQúa trình thiết kế cơ sở dữ liệu Thiết kế khái niệm: Các bước thiết kế ERDXác định tập thực thểXác định mối quan hệXác định thuộc tính và gắn thuộc tính cho tập thực thể và mối quan hệQuyết định miền giá trị cho thuộc tínhQuyết định thuộc tính khóaQuyết định (min, max) cho mối quan hệCHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuQúa trình thiết kế cơ sở dữ liệu Ví dụ:Xét mối quan hệLam_viecNHANVIENPHONGBANNHANVIENPHONGBANTungHangNghien cuuDieu hanhVinhQuan ly(Tung, Nghien cuu)(Hang, Dieu hanh)(Vinh, Quan ly)CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuQúa trình thiết kế cơ sở dữ liệu ABQuan_hệmnABQuan_hệ1nABQuan_hệ11ABQuan_hện1CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuQúa trình thiết kế cơ sở dữ liệu EFQuan_hệ(min, max)(min, max)(0,1) – không hoặc 1(1,1) – duy nhất 1(0,n) – không hoặc nhiều (1,n) – một hoặc nhiềuCHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuQúa trình thiết kế cơ sở dữ liệu Ví dụ - Một phòng ban có nhiều nhân viên - Một nhân viên chỉ thuộc 1 phòng ban - Một nhân viên có thể được phân công vào nhiều đề án hoặc không được phân công vào đề án nào NVPBLam_viec(1,n)NVPBLam_viec(1,1)NVDAPhan_cong(0,n)CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuQúa trình thiết kế cơ sở dữ liệu Một loại thực thể có thể tham gia nhiều lần vào một quan hệ với nhiều vai trò khác nhauNHANVIENQuan_lyDuoc quan ly boi(0,1)(0,n)La nguoi quan lyCHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuQúa trình thiết kế cơ sở dữ liệu Thuộc tính này không thể gắn liền với những thực thể tham gia vào mối quan hệNHANVIENDUANLam_viec(0,n)(1,n)THGIANCHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuQúa trình thiết kế cơ sở dữ liệu Thuộc tính khóa: Khóa K của tập thực thể E là một hay nhiều thuộc tính sao cho Lấy ra 2 thực thể bất kỳ e1, và e2 trong E Thì e1 và e2 không thể có các giá trị giống nhau tại các thuộc tính trong KChú ý Mỗi tập thực thể phải có 1 khóa Một khóa có thể có 1 hay nhiều thuộc tính Có thể có nhiều khóa trong 1 tập thực thể, ta sẽ chọn ra 1 khóa làm khóa chính cho tập thực thể đóCHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuQúa trình thiết kế cơ sở dữ liệu Ví dụ:Lam_viecLa_truong_phongPhan_congNHANVIENTENNVNGSINHDCHIGTLUONGHONVPHONGBANTENPBPhu_trachDUANTENDADDIEM_DAMANVMAPHGMADACHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuQúa trình thiết kế cơ sở dữ liệu Ràng buộc tham giaNHANVIENtừ thời gianLà trưởng phòngPHONGBANMAPHGMANVCHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuQúa trình thiết kế cơ sở dữ liệu Tập thực thể yếu:Là thực thể mà khóa có được từ những thuộc tính của tập thực thể khácThực thể yếu (weak entity set) phải tham gia vào mối quan hệ mà trong đó có một tập thực thể chính (kiểu thực thể chủ)Mô tả kiểu thực thể yếu bằng hình thoi và hình chữ nhật nét đôiCHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuQúa trình thiết kế cơ sở dữ liệu Tập thực thể yếu:cóNHANVIENCON1nCHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuQúa trình thiết kế cơ sở dữ liệu Tập thực thể yếu:NHANVIENTENNVNSDCHIGTLUONGHONVMANVTHANNHANTENTNGTNSQUANHECo_than_nhan(1,1)(1,n)CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuQúa trình thiết kế cơ sở dữ liệu Các ký hiệuCHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuQúa trình thiết kế cơ sở dữ liệu b) Lựa chọn phần mềm quản lý CSDL Khi nghiên cứu để thiết kế hệ thống cơ sở dữ liệu, những vấn đề sau đây cần được xem xét: - Chi phí: bao gồm các chi phí mua bán, chi phí duy trì, chi phí điều hành, chi phí thiết lập, chi phí đào tạo, và chi phí chuyển giao. - Các công cụ và các đặc điểm của hệ quản lý cơ sở dữ liệu - Mô hình chính - Những yêu cầu về phần cứng của hệ quản lý cơ sở dữ liệu đó.CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuQúa trình thiết kế cơ sở dữ liệu c) Thiết kế logicThiết kế logic có nghĩa là chuyển đổi từ thiết kế khái niệm thành mô hình bên trong một hệ thống quản lý cơ sở dữ liệu được lựa chọn. Đối với một hệ thống quản lý cơ sở dữ liệu quan hệ, thiết kế logic bao gồm việc thiết kế các bảng, các chỉ số, các giao diện, các chuyển đổi, các thủ tục truy cập thông tin... CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuc) Thiết kế logicVí dụ:Chuyển đổi ERD sang thiết kế quan hệ(1) Tập thực thể: Các tập thực thể (trừ tập thực thể yếu) chuyển thành các quan hệ có cùng tên và tập thuộc tínhNHANVIENTENNVNSDCHIGTLUONGHONVMANVLam_viecLa_truong_phongPHONGBANMAPHGTENPHG(1,1)(1,n)(1,1)(1,1)NHANVIEN(MANV, TENNV, HONV, NS, DCHI, GT, LUONG)PHONGBAN(TENPHG, MAPHG)CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuc) Thiết kế logicVí dụ:Chuyển đổi ERD sang thiết kế quan hệ (2) Mối quan hệ: (2a) Một-Một Hoặc thêm vào quan hệ này thuộc tính khóa của quan hệ kia Hoặc thêm thuộc tính khóa vào cả 2 quan hệNHANVIENTENNVNSDCHIGTLUONGHONVMANVLa_truong_phongPHONGBANMAPHGTENPHG(1,1)(1,1)NG_NHANCHUCPHONGBAN(MAPHG, TENPHG, MANV, NG_NHANCHUC)CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuc) Thiết kế logicVí dụ:Chuyển đổi ERD sang thiết kế quan hệ (2) Mối quan hệ: (2b) Một-Nhiều:Thêm vào quan-hệ-một thuộc tính khóa của quan-hệ-nhiềuNHANVIENTENNVNSDCHIGTLUONGHONVMANVLam_viecPHONGBANMAPHGTENPHG(1,1)(1,n)NHANVIEN(MANV, TENNV, HONV, NS, DCHI, GT, LUONG, MAPHG)CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuc) Thiết kế logicVí dụ:Chuyển đổi ERD sang thiết kế quan hệ (2c) Nhiều-Nhiều:Tạo một quan hệ mới có tên quan hệ là tên của mối quan hệ. Thuộc tính là những thuộc tính khóa của các tập thực thể liên quanDEANTENDADDIEM_DAMADANHANVIENTENNVNGSINHDCHIPHAILUONGHONVMANVPhan_cong(1,n)(1,n)THOIGIANPHANCONG(MANV, MADA, THOIGIAN)CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuc) Thiết kế logicVí dụ:Chuyển đổi ERD sang thiết kế quan hệ (3) Thực thể yếu: Chuyển thành một quan hệ Có cùng tên với thực thể yếu Thêm vào thuộc tính khóa của quan hệ liên quanNHANVIENTENNVNSDCHIGTLUONGHONVMANVTHANNHAN(MANV, TENTN, GT, NS, QUANHE)THANNHANTENTNGTNSQUANHECo_than_nhan(1,1)(1,n)CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuQúa trình thiết kế cơ sở dữ liệu d) Thiết kế vật lý - Thiết kế vật lý là quá trình lựa chọn việc lưu trữ dữ liệu và các tính chất của dữ liệu được cập nhật của cơ sở dữ liệu. - Thiết kế vật lý không chỉ ảnh hưởng tới vị trí dữ liệu trong thiết bị lưu trữ mà cả tới việc thực hiện hệ thống.CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuThực hiện - Thực hiện: Quan tâm đến tham số cấu hình - Độ an toàn - Khôi phục dữ liệu - Chuẩn hoá cơ sở dữ liệu của doanh nghiệp - Điều khiển đồng thờiCHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuChu kỳ phát triển cơ sở dữ liệuKiểm tra và đánh giá Vận hành cơ sở dữ liệuDuy trì và phát triển cơ sở dữ liệu CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuCác yêu cầu đối với nhà quản trị cơ sở dữ liệuPhát triển một hệ thống cơ sở dữ liệu không chỉ đơn thuần là lựa chọn một mô hình thích hợp. Cơ sở dữ liệu đòi hỏi những thay đổi về nhận thức cũng như cách tổ chức. Không có sự hỗ trợ từ phía quản lý, mọi nỗ lực xây dựng hệ thống cơ sở dữ liệu sẽ thất bại. Hình 3.10 cho thấy những thành tố căn bản trong một môi trường cơ sở dữ liệu.Hệ thống quản lý CSDLQuản trị dữ liệuCông nghệ và quản lý CSDLHoạch định và thiết kêNgười sử dụngCHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUThiết kế cơ sở dữ liệuKỹ thuật thiết kế cơ sở dữ liệuHiện nay, có khá nhiều kỹ thuật thiết kế CSDL đang được sử dụng. Trong tài liệu này, chúng ta sẽ liệt kê ba loại kỹ thuật thiết kế CSDL Kỹ thuật khách/chủ, Data mining, Liên kết ứng dụng website với các siêu CSDL. CHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUTỔNG KẾTCHƯƠNG 6: THIẾT KẾ CƠ SỞ DỮ LIỆUTóm lại trong chương này các anh chị biết được cách thức xây dựng và thiết kế CSDL trong doanh nghiệp. Đồng thời biết cách lựa chọn các phần mềm CSDL phù hợp để giảm được chi phí cho doanh nghiệp
Tài liệu liên quan