Bài giảng Chương 4: Phân tích và thiết kế dữ liệu

27 15 0
Bài giảng Chương 4: Phân tích và thiết kế dữ liệu

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Việc phân tích và thiết kế cơ sở dữ liệu cho một hệ thống có thể tiến hành đồng thời với việc phân tích và thiết kế hệ thống hoặc có thể tiến hành riêng. Vấn đề đặt ra là cần xây dựng một cơ sở dữ liệu giảm được tối đa sự dư thừa dữ liệu đồng thời phải dễ khôi phục và bảo trì. Đó cũng chính là nội dung mà Bài giảng Chương 4: Phân tích và thiết kế dữ liệu hướng đến trình bày.

CHƯƠNG : PHÂN TÍCH VÀ THIẾT KẾ DỮ LIỆU 4.1 TỔNG QUAN Tất hệ thống phải sử dụng sở liệu mình, sở liệu có sở liệu xây dựng Cũng có hệ thống sử dụng sở liệu cũ Việc phân tích thiết kế sở liệu cho hệ thống tiến hành đồng thời với việc phân tích thiết kế hệ thống tiến hành riêng Vấn đề đặt cần xây dựng sở liệu giảm tối đa dư thừa liệu đồng thời phải dễ khôi phục bảo trì 4.1.1 Các khái niệm - Cơ sở liệu (CSDL): CSDL máy tính kho chứa sưu tập có tổ chức file liệu, ghi trường - Hệ quản trị sở liệu (HQTCSDL): phần mềm điều khiển truy nhập CSDL - Các HQTCSDL phân loại theo mơ hình liệu sau: - Các HQTCSDL phân cấp ứng với mơ hình phân cấp (ví dụ: IMS IBM) - Các HQTCSDL mạng ứng với mơ hình mạng (ví dụ: IDMS Cullinet Software) - Các HQTCSDL quan hệ ứng với mơ hình quan hệ (ví dụ: ORACLE Oraccle, DB2 IBM, Access SQL server Microsoft) - Các HQTCSDL hướng đối tượng ứng với mơ hình hướng đối tượng (ví dụ: Jasmine ) 4.1.2 Các bước tiến hành phân tích thiết kế CSDL a Phân tích CSDL Bước phân tích CSDL độc lập với hệ quản trị CSDL, bước thực công việc sau: + Xác định yêu cầu liệu: Phân tích yêu cầu liệu hệ thống để xác định u cầu liệu + Mơ hình hố liệu: Xây dựng mơ hình thực thể liên kết biểu diễn yêu cầu liệu b Thiết kế CSDL quan hệ Thiết kế CSDL bao gồm: + Thiết kế logic CSDL: độc lập với hệ quản trị CSDL • Xác định quan hệ: Chuyển từ mơ hình thực thể liên kết sang mơ hình quan hệ • Chuẩn hoá quan hệ: chuẩn hoá quan hệ dạng chẩn chuẩn (3NF) + Thiết kế vật lý CSDL: dựa hệ quản trị CSDL cụ thể • Xây dựng bảng CSDL quan hệ: định cấu trúc thực tế bảng lưu trữ mơ hình quan hệ • Hỗ trợ cài đặt vật lý CSDL: cài đặt chi tiết HQTCSDL lựa chọn 4.2 MÔ HÌNH THỰC THỂ LIÊN KẾT 4.2.1 Mục đích việc xây dựng mơ hình Xây dựng mơ hình thực thể liên kết nhằm mục đích sau; - Mơ tả giới thực gần với quan niệm, suy nghĩ ta Đây mơ hình tốt với lượng thơng tin nhất, mô tả giới liệu đầy đủ - Việc xây dựng mơ hình nhằm thành lập biểu đồ cấu trúc liệu bao gồm liệu cần xử lý cấu trúc nội Ví dụ mơ hình thực thể liên kết Mơ hình liên kết thực thể việc bán hàng 4.2.2 Các thành phần mơ hình thực thể liên kết a Thực thể Khái niệm thực thể Thực thể khái niệm để lớp đối tượng có đặc tính chung mà người ta muốn quản lý thơng tin Ví du, sinh viên, hàng hóa, vật tư Một đối tượng cụ thể thực thể gọi cá thể (còn gọi thể thực thể) Ví dụ Lê Văn Bình cá thể thực thể Sinh viên, Xi măng cá thể thực thể Hàng hóa Thuộc tính thực thể Để mơ tả thơng tin thực thể người ta thường dựa vào đặc trưng riêng thực thể Các đặc trưng gọi thuộc tính thực thể Ví dụ thực thể Sinh viên có thuộc tính Mã sinh viên, Họ tên sinh viên, Ngày sinh, Địa chỉ, Trường, Khoa, Khóa sinh viên, Lớp,… Đối với thực thể Hàng hóa giá trị thuộc tính Mã hàng hóa, Tên hàng hóa, Đơn vị tính, Đơn giá,… thông tin mà nhà quản lý cần quan tâm để quản lý hàng hóa Thuộc tính thực thể bao gồm loại sau Thuộc tính định danh (cịn gọi định danh thực thể, đơi cịn gọi thuộc tính khố): Là thuộc tính mà giá trị cho phép phân biệt thực thể khác Một thực thể xác định thuộc tính định danh làm sở để phân biệt thể cụ thể Ví dụ : Số hiệu khách hàng, Mã mặt hàng, Mã sinh viên, Thuộc tính mơ tả: Là thuộc tính mà giá trị chúng có tính mơ tả cho thực thể hay liên kết mà thơi Hầu hết thuộc tính kiểu thực thể mơ tả Có số thuộc tính mơ tả đặc biệt sau: ƒ Thuộc tính tên gọi: thuộc tính mơ tả để tên đối tượng thuộc thực thể Thuộc tính tên gọi để phân biệt thực thể (tách thực thể) ƒ Thuộc tính kết nối (thuộc tính khố ngồi): thuộc tính mối quan hệ thực thể có thực thể bảng khác Thuộc tính kết nối giống thuộc tính mơ tả thơng thường thực thể chứa nó lại thuộc tính khố thực thể bảng khác Ví dụ: b Liên kết kiểu liên kết Liên kết (còn gọi quan hệ) kết hợp hai hay nhiều thực thể phản ánh ràng buộc quản lý Đặc biệt: Một thực thể liên kết với ta thường gọi tự liên kết Giữa hai thực thể có nhiều liên kết Có ba kiểu liên kết: - một, - nhiều, nhiều - nhiều Liên kết – (1-1): Mỗi thể thực thể A quan hệ với thể thực thể B ngược lại Kí hiệu: Ví dụ: Một sinh viên có luận văn Một luận văn thuộc sinh viên thuộc Liên kết – nhiều (1-N) Mỗi thể thực thể A quan hệ với nhiều thể thực thể B Ngược lại thể thực thể B quan hệ với thể thực thể A Kí hiệu: Ví dụ: Một khoa có nhiều sinh viên Một sinh viên thuộc khoa Liên kết nhiều – nhiều (N-N) Mỗi thể thực thể A quan hệ với nhiều thể thực thể B Ngược lại thể thực thể B quan hệ với nhiều thể thực thể A Kí kiệu Ví dụ: Một giáo viên dạy nhiều sinh viên Một sinh viên dạy nhiều giáo viên Điều kiện để cá thể thực thể tham gia vào liên kết với thực thể khác gọi loại thành viên Nó bắt buộc hay tuỳ chọn quan hệ Các loại thành viên cho biết số thể nhỏ thực thể tham gia vào liên kết với thể thực thể khác Kí hiệu: Ví dụ: Tuỳ chọn (ít 0) – “một giáo viên dạy không, nhiều môn học.” Bắt buộc (ít 1) – “một mơn học cần phải nhiều giáo viên dạy.” Chú ý: - Mô hình liệu khơng cơng cụ phân tích thiết kế mà phương pháp kiểm tra chặt chẽ yêu cầu nghiệp vụ người sử dụng - Nếu hai thực thể có quan hệ - thường có lý để coi chúng hai bảng tách biệt nên người ta thường gộp hai thực thể làm - Nếu hai thực thể có quan hệ nhiều - nhiều khơng có khác biệt chất chiều sử dụng Tóm lại ba kiểu liên kết trên, liên kết nhiều quan trọng mối quan hệ mơ hình thực thể liên kết nhiều Bài tập: Xác định liên kết kiểu thực thể hệ thống quản lý bến xe Khách hàng - Vé (1-n); Vé - Phương tiện (n-1); Đơn hàng- Nhà cc(n-1); Đơn hàng-Phương tiện (1-n) 4.2.3 Xây dựng mơ hình thực thể liên kết hệ thống a Các bước tiến hành Bước 1: Xác định định danh thực thể Xác định thực thể mục thông tin cần thiết cho hệ thống hệ thống cần lưu giữ Tìm thực thể từ ba nguồn : - Thông tin tài nguyên: người, kho bãi, tài sản (VD: nhà cung cấp, mặt hàng, kho ) - Thông tin giao dịch: luồng thông tin đến từ mơi trường kích hoạt chuỗi hoạt động hệ thống (VD: đơn hàng (mua,bán), dự trù, phiếu yêu cầu, ) - Thông tin tổng hợp: thường dạng thống kê liên quan đến kế hoạch kiểm soát (VD: dự toán chi tiêu, tính lương ) Việc xác định định danh thực thể phải thoả mãn: ƒ Tên gọi danh từ ƒ Có nhiều thể ƒ Có định danh ƒ Có thuộc tính mơ tả ƒ Có quan hệ với thực thể khác Bước 2: Xác định thuộc tính mơ tả cho thực thể Khi xác định thuộc tính mơ tả cho thực thể cần ý rằng: - Mỗi thuộc tính xuất lần thực thể tương ứng - Nếu không chắn thuộc tính hay thực thể cần tiếp tục nghiên cứu phân tích Chú ý: Khi thuộc tính thực thể A có nhiều giá trị ta mơ hình hố thuộc tính thực thể B có quan hệ phụ thuộc với thực thể A Định danh thực thể B bao gồm thuộc tính định danh thực thể A số thuộc tính khác thực thể B Liên kết thực thể A thực thể B gọi liên kết phụ thuộc Ví dụ: Một nhân viên có nhiều trình độ ngoại ngữ với ngơn ngữ khác Khi trình độ ngoại ngữ nhân viên khơng mơ hình hố thuộc tính mà mơ hình hố thực thể sau: Như định danh thực thể TRÌNH ĐỘ NN gồm hai thuộc tính mã NV ngoại ngữ Bước 3: Xác định liên kết thực thể Xác định liên kết thực thể theo trình tự sau: - Thiết lập tồn liên kết (Vẽ đường thẳng đặt tên quan hệ hai đầu) - Xác định loại liên kết (1-1, 1-N, N-N) loại thành viên (tuỳ chọn hay bắt buộc) - Tách liên kết N-N thành hai liên kết 1-N với thực thể kết hợp Khi thực thể kết hợp có định danh tạo thành từ hai thuộc tính định danh thực thể ban đầu Ví dụ: Tách liên kết thực thể giáo viên môn học sau: Ví dụ xây dựng mơ hình thực thể liên kết: Một công ty thương mại Y chuyên kinh doanh mặt hàng điện tử Công ty nhập mặt hàng từ nhà cung cấp khác Chi tiết mặt hàng gồm có: mã hàng (duy nhất), tên hàng mô tả mặt hàng Công ty cần lưu giữ thông tin nhà cung cấp tên, địa chỉ, điện thoại, fax Mỗi nhà cung cấp có mã Mỗi nhà cung cấp cung cấp nhiều mặt hàng mặt hàng cung cấp từ nhà cung cấp Các mặt hàng lưu giữ kho Mỗi kho hàng có diện tích khác chứa loại mặt hàng Cơng ty có nhiều cửa hàng đại lý để bán mặt hàng Hàng cung cấp cho cửa hàng thông qua phiếu xuất Thơng tin phiếu xuất cần có mã số cửa hàng nhận hàng, ngày xuất, thông tin mặt hàng xuất tên hàng, số lượng, đơn giá, thành tiền u cầu: Vẽ mơ hình thực thể liên kết hệ thống Xác định thực thể, định danh thực thể thuộc tính mơ tả: Tên thực thể Định danh Thuộc tính mơ tả HÀNG mã hàng tên hàng, đơn giá, số lượng mã NCC tên NCC, địa chỉ, điện thoại, fax KHO số kho diện tích PHIẾU XUẤT số phiếu ngày xuất, số cửa hàng CỬA HÀNG số cửa hàng địa điểm NHÀ CẤP CUNG Xác định liên kết thực thể + Một mặt hàng cần cung cấp nhà cung cấp Một nhà cung cấp cần cung cấp nhiều mặt hàng + Một mặt hàng cần lưu giữ kho Mỗi kho lưu giữ loại hàng + Một mặt hàng xuất 0, nhiều phiếu xuất Một phiếu xuất xuất nhiều mặt hàng + Một cửa hàng nhận 0, nhiều phiếu xuất Mỗi phiếu xuất cần xuất cho cửa hàng Vẽ mơ hình thực thể liên kết - Quan hệ n-n Hàng Phiếu xuất tách thành quan hệ 1- n với thực thể kết hợp Dòng phiếu xuất sau: 4.3 MƠ HÌNH QUAN HỆ 4.3.1 Các khái niệm a Khái niệm mơ hình quan hệ Mơ hình CSDL quan hệ hay ngắn gọn mơ hình quan hệ E.F.Codd phát triển vào đầu năm 1970 Mơ hình thiết lập sở lý thuyết tập hợp nên dễ hiểu sử dụng rộng rãi việc tổ chức liệu cho hệ thống - Các thành phần mơ hình quan hệ gồm: Các quan hệ - - thuộc tính Ví dụ: mã SV, số hố đơn…Thơng thường khố có từ thuộc tính trở lên người ta thường đặt khoá giả làm khố để tiện lợi việc truy vấn liệu Các ràng buộc mơ hình quan hệ là: - Ràng buộc thực thể: ràng buộc khố Nó u cầu khố phải tối thiểu, xác định không null (Giá trị null tức khơng có giá trị Nó khác với giá trị hay dấu cách.) - Ràng buộc tham chiếu (ràng buộc khố ngồi): liên quan đến tính toàn vẹn mối quan hệ tức liên quan đến tính tồn vẹn khố ngồi Một ràng buộc tham chiếu u cầu giá trị khố ngồi quan hệ cần phải tồn giá trị khố quan hệ khác giá trị null Ví dụ: quan hệ sau: Tên lớp T4-K7 quan hệ SINH VIÊN khơng có quan hệ LỚP vi phạm ràng buộc tham chiếu - Các ràng buộc định nghĩa người dùng: ràng buộc liên quan đến miền giá trị liệu thực tế 4.3.2 Các dạng chuẩn a Phụ thuộc hàm Khái niệm Trong quan hệ R, thuộc tính B phụ thuộc hàm vào thuộc tính A (hay thuộc tính A xác định hàm thuộc tính B) ký hiệu A→B với giá trị thuộc tính A xác định giá trị thuộc tính B Ví dụ: Mã SV->Ngày sinh Phụ thuộc hàm nhiều thuộc tính: thuộc tính B phụ thuộc hàm vào thuộc tính A1 A2 ký hiệu{A1,A2} → B với cặp giá trị A1 A2 xác định giá trị B Ví dụ: {Số hố đơn, Mã hàng}-> Số lượng Chú ý: A1-> {A2,A3} ≡A1-> A2 A1-> A3 {A1,A2}-> A3 ≠ A1-> A3 A2-> A3 Các loại phụ thuộc hàm Phụ thuộc hàm đầy đủ: Thuộc tính B gọi phụ thuộc đầy đủ vào tập thuộc tính A (có từ thuộc tính trở lên) phụ thuộc hàm vào A không phụ thuộc hàm vào tập A Ngược lại B gọi phụ thuộc hàm phận vào tập thuộc tính A Phụ thuộc hàm bắc cầu: Nếu có A1 -> A2 A2 -> A3 A1 -> A3 Khi A3 gọi phụ thuộc bắc cầu vào A1 Theo quan niệm phụ thuộc hàm định nghĩa khố sau: Trong quan hệ R, tập thuộc tính K khố quan hệ có K -> Bi với Bi tất thuộc tính cịn lại b Các dạng chuẩn Dạng chuẩn (1NF): Một quan hệ dạng chuẩn toàn miền thuộc tính miền đơn khơng tồn nhóm thuộc tính lặp Một thuộc tính A thuộc tính lặp với giá trị cụ thể khố có nhiều giá trị thuộc tính A kết hợp với khố Ví dụ: Khố Mã SV Nhóm thuộc tính lặp Môn học Điểm Dạng chuẩn (2NF): Một quan hệ dạng chuẩn dạng chuẩn không tồn phụ thuộc hàm phận vào khố Ví dụ: Cho quan hệ: R (A, B, C, D, E) Khố A,B Các phụ thuộc hàm: {A,B} -> D; A -> C; (Phụ thuộc hàm phận vào khoá) D -> E Chú ý: Quan hệ có khố thuộc tính dạng chuẩn Dạng chuẩn (3NF): Một quan hệ dạng chuẩn dạng chuẩn không tồn phụ thuộc hàm bắc cầu vào khoá (hay phụ thuộc hàm thuộc tính khơng khố) Ví dụ: Cho quan hệ: R (A, B, D, E) Khố A,B Các phụ thuộc hàm: {A,B} -> D; D -> E (Phụ thuộc hàm thuộc tính khơng khố) 4.4 THIẾT KẾ LOGIC CSDL 4.4.1 Các cách tiếp cận để mô hình hố liệu: Có hai cách tiếp cận để mơ hình hố liệu sau: a Cách 1: Vẽ mơ hình thực thể liên kết – Cách tiếp cận từ xuống (Top - down): Để xây dựng mơ hình thực thể liên kết cần xác định cách trực giác đối tượng quan trọng mà hệ thống cần phải lưu trữ liệu (đó thực thể) xác định thuộc tính mơ tả cho thực thể với quan hệ thực thể Nếu áp dụng luật mơ hình thực thể liên kết ta có quan hệ chuẩn hố b Cách 2: Chuẩn hoá – Các tiếp cận từ lên (Bottom - up): Để chuẩn hố cần nhóm tất thuộc tính liên quan hệ thống vào quan hệ Áp dụng luật chuẩn hoá để tách quan hệ thành quan hệ có cấu trúc tốt hơn, giảm bớt dư thừa liệu Mỗi cách tiếp cận có ưu điểm nhược điểm riêng thực tế người ta thường phối hợp hai cách tiếp cận để có mơ hình liệu xác Kết cuối phần thiết kế logic CSDL tập ghi logic biểu diễn quan hệ CSDL 4.4.2 Chuyển đổi từ mơ hình thực thể liên kết thành ghi logic a Các luật chuyển đổi - Mỗi thực thể mơ hình thực thể liên kết trở thành quan hệ - Mỗi thuộc tính mơ hình thực thể liên kết trở thành thuộc tính quan hệ tương ứng - Định danh thực thể mơ hình thực thể liên kết trở thành khố quan hệ tương ứng Nếu khố khơng đáp ứng tiêu chuẩn tính tối thiểu, tính xác định tính ổn định đưa vào khố giả làm khố - Thi hành liên kết thơng qua việc đặt khóa ngồi vào quan hệ - Với liên kết 1-1: đặt khố hai quan hệ vào quan hệ làm khố ngồi Ví dụ: Với mơ hình thực thể liên kết Ta có quan hệ: CÔNG NHÂN (mã CN, họ tên, ngày sinh, số máy) MÁY (số máy, mác, cơng suất) Hay: CƠNG NHÂN (mã CN, họ tên, ngày sinh) MÁY (số máy, mác, công suất, mã CN) Với liên kết 1-N: đặt khố quan hệ đầu vào quan hệ đầu nhiều làm khố ngồi Ví dụ: Với mơ hình thực thể liên kết Ta có quan hệ: SINH VIÊN (mã SV, họ tên, ngày sinh, tên lớp) LỚP (tên lớp, phòng học) - Với liên kết N-N: Cần tách thành quan hệ 1-N chuyển thành quan hệ Khi quan hệ tương ứng với thực thể kết hợp có khố ghép thuộc tính khố quan hệ khố ngồi Ví dụ: Với mơ hình thực thể liên kết Ta có quan hệ: GIÁO VIÊN (mã SV, tên GV, đại chỉ, điện thoại) MÔN HỌC (mã MH, tên MH, số trình) GIẢNG DẠY (mã GV, mã MH, ngày bắt đầu) - Một số liên kết đặc biệt: + Tự liên kết: Ví dụ: Mỗi nhân viên có khơng người quản lý (giám đốc khơng có người quản lý nào) Mỗi nhân viên quản lý 0, hay nhiều nhân viên Ta có quan hệ: NHÂN VIÊN (mã NV, họ tên, ngày sinh, giới tính, địa chỉ, mã NV quản lý) Trong Mã NV quản lý mã NV + Liên kết phụ thuộc Ví dụ: Một mặt hàng có nhiều giá khác giai đoạn khác Ta có quan hệ: MẶT HÀNG (Mã hàng, Tên hàng) GIÁ (Mã hàng , Ngày bắt đầu , đơn giá) b Ví dụ Chuyển mơ hình thực thể liên kết sau thành ghi logic biểu diễn quan hệ: Các ghi logic mô tả quan hệ công ty thương mại Y: NHÀ CUNG CẤP ( mã NCC, tên NCC, địa chỉ, điện thoại, fax) HÀNG (mã hàng, tên hàng, đơn giá, số lượng, mô tả, mã NCC, số kho) KHO (số kho, diện tích, mơ tả) PHIẾU XUẤT (số phiếu, ngày xuất, số cửa hàng) DÒNG PHIẾU XUẤT (mã hàng, số phiếu, số lượng xuất) CỬA HÀNG (số cửa hàng, địa điểm, mô tả) 4.4.3 Chuẩn hoá quan hệ a Các bước tiến hành: Bước 1: Từ biểu mẫu (tài liệu xuất: hoá đơn, chứng từ,…) lấy danh sách thuộc tính cho quan hệ chưa chuẩn hố (cịn gọi dạng chuẩn 0) - Mỗi tiêu đề biểu mẫu thuộc tính - Bỏ qua phần đầu đề phần (một số ghi chú, chữ ký …) biểu mẫu - Khơng lấy thuộc tính suy diễn từ thuộc tính khác (như thành tiền = đơn giá x số lượng) thuộc tính trình bày ‘số thứ tự’ có - Bổ sung thêm số thuộc tính định danh tương ứng với số thuộc tính tên gọi chưa có định danh cần thiết - Xác định nhóm thuộc tính lặp, phụ thuộc hàm thuộc tính Bước 2: Chuẩn hố dạng chuẩn (1NF): Tách nhóm thuộc tính lặp - Tách thuộc tính khơng nằm nhóm lặp thành quan hệ (R1) Xác định khố quan hệ - Các thuộc tính nhóm lặp khố quan hệ (R1) tạo thành quan hệ (R2) Xác định khóa cho quan hệ R2 (khố R2 khoá ghép khoá R1 thuộc tính khác R2) - Ví dụ: R{A, B, C, D, E} khố {A} Tồn nhóm thuộc tính lặp {C,D} tách thành quan hệ R1{A, B, E} R2{A,C,D} Bước 3: Chuẩn hoán dạng chuẩn (2NF): Loại bỏ phụ thuộc phận vào khố (chỉ áp dụng với quan hệ có khố ghép) - Tách thuộc tính tham gia vào phụ thuộc hàm xác định phần khố vào quan hệ (R3) Khố quan hệ thuộc tính xác định hàm - Phần cịn lại với khố quan hệ (R3) quan hệ giữ ngun khố quan hệ ban đầu - Ví dụ: R{A, B, C, D} khoá {A,B} Tồn phụ thuộc hàm Aà C tách thành quan hệ R1{A,C} R2{A, B, D} Bước 4: Chuẩn hoá dạng chuẩn (3NF): Loại bỏ phụ thuộc hàm thuộc tính khơng khố - Tách thuộc tính tham gia vào phụ thuộc hàm thuộc tính khơng khố vào quan hệ (R4) Khố quan hệ thuộc tính xác định hàm - Phần cịn lại khố quan hệ (R4) quan hệ giữ ngun khố quan hệ ban đầu - Ví dụ: R{A, B, C, D} mà khoá {A,B} Tồn phụ thuộc hàm Cà D tách thành quan hệ R1{C, D} R2{A, B, C} Ví dụ: Hãy xây dựng mơ hình liệu cho hệ thống từ mẫu phiếu xuất công ty thương mại Y - Danh sách thuộc tính: số PX, ngày, số đại lý, địa chỉ, tên hàng, đơn vị tính, đơn giá, số lượng - Bổ sung thêm thuộc tính mã hàng - Phụ thuộc hàm: (quy định giá bán mặt hàng không thay đổi) số PX -> ngày, mã KH số đại lý -> địa mã hàng -> tên hàng, đơn vị tính, đơn giá {số PX, mã hàng }-> số lượng - Khố chính: số PX Nhóm lặp (*): mã hàng, tên hàng, đơn vị tính, đơn giá, số lượng Chuẩn hố quan hệ: Các ghi logic biểu diễn quan hệ: ĐẠI LÝ (số đại lý, địa chỉ) PHIẾU XUẤT (số PX, ngày, số đại lý) HÀNG (mã hàng, tên hàng, đơn vị tính, đơn giá) HÀNG XUẤT (số PX, mã hàng, số lượng xuất) 4.4.4 Hồn thiện mơ hình CSDL logic a Một số nguyên tắc Sau tiến hành theo hai hướng khác nhau: xây dựng mơ hình thực thể liên kết chuẩn hoá liệu có hai tập ghi logic khác hệ thống Khi cần phải kết hợp lại để có mơ hình CSDL logic thống cho hệ thống Một số nguyên tắc kết hợp: - Kiểm tra thống tên gọi quan hệ thuộc tính hai kết Nếu tên khác nghĩa phải đặt lại tên cho khác Nếu nghĩa khác tên phải đặt lại tên cho giống - Lấy tất quan hệ khác từ hai kết Với hai quan hệ trùng lấy tất thuộc tính có hai quan hệ từ hai kết b Ví dụ: Trong ví dụ phần ta thu tập ghi logic mô tả quan hệ hệ thống công ty thương mại Y là: Nhóm 1: NHÀ CUNG CẤP ( mã NCC, tên NCC, địa chỉ, điện thoại, fax) HÀNG (mã hàng, tên hàng, đơn giá, số lượng, mô tả, mã NCC, số kho) KHO (số kho, diện tích, mô tả) PHIẾU XUẤT (số phiếu, ngày xuất, số cửa hàng) DÒNG PHIẾU XUẤT (mã hàng, số phiếu, số lượng xuất) CỬA HÀNG (số cửa hàng, địa điểm, mô tả) Trong ví dụ phần ta thu tập ghi logic mô tả quan hệ hệ thống cơng ty thương mại Y là: Nhóm 2: ĐẠI LÝ (số đại lý, địa chỉ) PHIẾU XUẤT (số PX, ngày, số đại lý) HÀNG (mã hàng, tên hàng, đơn vị tính, đơn giá) DỊNG PHIẾU XUẤT (số PX, mã hàng, số lượng xuất) Ta thấy + Trong nhóm có thực thể CỬA HÀNG nhóm có thực thể ĐẠI LÝ hai thực thể khác tên nghĩa + Thuộc tính số phiếu số PX, thuộc tính ngày xuất ngày nghĩa Kết thiết kế logic CSDL hệ thống công ty thương mại Y là: NHÀ CUNG CẤP ( mã NCC, tên NCC, địa chỉ, điện thoại, fax) HÀNG (mã hàng, tên hàng, đơn vị tính, đơn giá, số lượng, mơ tả, mã NCC, số kho) KHO (số kho, diện tích, mô tả) PHIẾU XUẤT (số phiếu, ngày xuất, số đại lý) DÒNG PHIẾU XUẤT (mã hàng ,số phiếu, số lượng xuất) ĐẠI LÝ (số đại lý, địa đại lý, mô tả) 4.5 THIẾT KẾ VẬT LÝ CSDL Phần thiết kế vật lý CSDL phụ thuộc vào HQTCSDL mà sử dụng để cài đặt CSDL Chúng ta cần chuyển từ ghi logic với thuộc tính thành quan hệ biểu diễn dạng bảng với trường hay cột cài đặt HQTCSDL cụ thể 4.5.1 Lập bảng - Với bảng cần rõ: + Khoá (có thể gồm hay nhiều thuộc tính) + Mô tả tất cột (trường) - Với cột (trường) cần phải có: + Một tên (trong bảng lưu giữ nó) + Một mơ tả ngắn gọn + Một kiểu liệu (ví dụ: integer, char, date, logical,… phụ thuộc vào HQTCSDL cụ thể cài đặt CSDL) + Một kích thước (mặc định hay rõ tuỳ kiểu liệu) + Chú ý: tên bảng, cột không nên dài, cần đủ nghĩa thường khơng có dấu - Các cột (trường) tuỳ chọn cột (trường) bắt buộc: + Nếu cột bắt buộc người sử dụng cần phải cung cấp giá trị cho cột dòng (bản ghi) thêm vào bảng cập nhật CSDL Cột cần phải rõ NOT NULL + Nếu cột tuỳ chọn nhận giá trị null Chú ý: lưu trữ giá trị cho cột tuỳ chọn khơng có giá trị cách khơng phải cách hay 4.5.2 Xác định khóa - Khố khố ngồi + Hầu hết HQTCSDL đại cho phép rõ khố chính, khố ngồi định nghĩa bảng + Nếu HQTCSDL không cho phép định nghĩa tự động cần phải rõ Khố cần phải not null Khố ngồi cần phải liên quan tới thể khoá có nhận giá trị null - Giá trị hợp lệ giá trị mặc định Ví dụ: Một mã KH định nghĩa nằm khoảng từ đến 1000 (giá trị hợp lệ) Giá trị mặc định cho số lượng bán (giá trị mặc định) + Thuận lợi việc rõ giá trị hợp lệ gắn vào tất chương trình lập trình Đảm bảo thống việc kiểm tra tính đắn liệu + Giá trị mặc định sử dụng để giảm bớt việc gõ máy cho người sử dụng Nó giúp cho việc nhập liệu nhanh giảm bớt lỗi - Khoá giả + Để tăng tốc độ tìm kiếm, tiết kiệm khơng gian nhớ giảm lỗi khoá cần phải ngắn Nếu vài khoá dài cần phải thay chúng khố giả + Có hai vấn đề đưa khoá giả: * Cần phải thiết lập kỹ thuật để sinh tự động giá trị cho khoá (sinh khoá tự động) * Cần phải cung cấp ràng buộc cho định danh tự nhiên để ngăn chặn việc lưu trữ vài ghi cho thực thể có liệu khác giá trị khoá 4.5.3 Thiết lập quan hệ - Các quan hệ + Các quan hệ bảng thiết lập khố ngồi + Cần phải đảm bảo ràng buộc khố ngồi cài đặt 4.6 Xem xét hiệu suất thực thi CSDL Cần phải đánh giá việc thực thi CSDL, tính hợp lý thời gian đáp ứng câu hỏi truy vấn Khi xem xét hiệu suất thực thi CSDL cần phải: - Chạy thử CSDL với tập đủ lớn ghi môi trường thực tế - Mô số người dùng thực truy vấn CSDL đa người sử dụng - Chạy trộn lẫn số chức với thời gian quy định 4.7 Điều chỉnh CSDL Sau Xem xét hiệu suất thực thi CSDL ta cần thực tiếp công việc sau : - Tạo thủ tục lưu phục hồi CSDL - Tổ chức bảo trì bảo mật cho CSDL - Thiết lập ràng buộc tồn vẹn cho CSDL - Xác định khơng gian nhớ cho bảng CSDL số - Thiết lập vùng nhớ đệm cho CSDL - Phân cụm CSDL, tổ chức lưu trữ vật lý tối ưu cho CSDL đĩa - Đảm bảo điều khiển tương tranh CSDL đa người sử dụng - Tạo khung nhìn CSDL cho đối tượng người dùng - Xác định phân tán liệu xử lý máy trạm (client) máy chủ (server) hệ thống phân tán CÂU HỎI ÔN TẬP CHƯƠNG Trình bày bước tiến hành phân tích thiết kế sở liệu Các thành phần mơ hình thực thể liên kết cách xây dựng mơ hình thực thể liên kết hệ thống Các dạng chuẩn mơ hình quan hệ Phương pháp chuẩn hóa quan hệ Thiết lập quan hệ sở liệu ... định phân tán liệu xử lý máy trạm (client) máy chủ (server) hệ thống phân tán CÂU HỎI ÔN TẬP CHƯƠNG Trình bày bước tiến hành phân tích thiết kế sở liệu Các thành phần mơ hình thực thể liên kết... thể liên kết biểu diễn yêu cầu liệu b Thiết kế CSDL quan hệ Thiết kế CSDL bao gồm: + Thiết kế logic CSDL: độc lập với hệ quản trị CSDL • Xác định quan hệ: Chuyển từ mơ hình thực thể liên kết sang...Bước phân tích CSDL độc lập với hệ quản trị CSDL, bước thực công việc sau: + Xác định yêu cầu liệu: Phân tích yêu cầu liệu hệ thống để xác định yêu cầu liệu + Mô hình hố liệu: Xây dựng

Ngày đăng: 10/05/2021, 13:58

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan