Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 220 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
220
Dung lượng
1,62 MB
Nội dung
TRƯỜNG ĐẠI HỌC ĐIỆN LỰC KHOA CÔNG NGHỆ THÔNG TIN ************************* CƠ SỞ DỮ LIỆU GV: ThS.VŨ VĂN ĐỊNH Bài TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU Tại cần phải có CSDL? • • - Hệ thống tập tin cổ điển : Được tổ chức riêng rẽ, phục vụ mục đích hay phận doanh nghiệp Nhược điểm: - Tính phụ thuộc chương trình liệu - Lưu trữ trùng lặp liệu - Việc chia sẻ liệu bị hạn chế - Tốn thời gian xây dựng - Chi phí cho bảo trì chương trình lớn Ví dụ CSDL -Cơ sở liệu cho công ty chuyên kinh doanh : Gồm bảng: KHACH HANG, SANPHAM, DON_DAT_HANG, NHA_CUNG_CAP, số quy tắc nghiệp vụ áp đặt lên bảng Ví dụ bảng KHACHHANG : STT MKH luong CN22 CT20 Tên KH Hoàng Hà Bến Nghé Ma hang MK02 CT01 So Cơ sở liệu gì? ĐN: CSDL tập hợp liệu có cấu trúc tổ chức lưu trữ thiết bị lưu trữ thông tin thứ cấp băng từ, đĩa từ, Mục đích: Nhằm thoả mãn nhu cầu khai thác thông tin hay nhiều người sử dụng phục vụ cho nhiều mục đích khác Điểm khác bật CSDL hệ thống File : Các liệu Ưu điểm CSDL: Tối thiểu hoá dư thừa thông tin Tính độc lập chương trình- ứng dụng Nâng cao tính quán liệu Nâng cao tính chia sẻ liệu Nâng cao chất lượng liệu Nâng cao khả truy cập trả lại liệu Giảm chi phí bảo trì chương trình Tiêu chuẩn CSDL: Tính bảo mật Tính độc lập Tránh dư thừa thông tin Có khả lưu trữ, phục hồi gặp cố Hiệu suất sử dụng tốt, đảm bảo chế độ ưu tiên truy nhập liệu Các đối tượng sử dụng CSDL Những người sử dụng không chuyên lĩnh vực tin học Các chuyên viên tin học biết khai thác CSDL Những người quản trị CSDL: người tổ chức CSDL, cấp quyền hạn khai thác liệu giải tranh chấp gặp cố Các mức biểu diễn CSDL Gồm mức : Mức : tập tất liệu mà người sử dụng cụ thể nhìn thấy phép truy cập, mức người sử dụng chương trình ứng dụng Mức quan niệm : giải vấn đề lưu trữ liệu loại gì, lưu trữ bao nhiêu, mối quan hệ CSDL mối quan hệ loại liệu nào? Mức trong( mức vật lý): Đây mức lưu trữ liệu Mục đích mức giải vấn đề liệu gì, liệu lưu trữ nhằm mục đích Hình biểu diễn Sự phân mức CSDL User View View User …… ………… User k View k Mức CSDL mức khái niệm Mức trung gian CSDL mức vật lý Mức vật lý View ( khung nhìn) user tập hợp tất liệu mà user nhìn thấy, phép truy cập vào Tính độc lập liệu chương trình Một CSDL độc lập liệu có có khả phát triển mà không ảnh hưởng tới hệ ứng dụng Tính độc lập liệu " tính bất biến hệ ứng dụng thay đổi cấu trúc lưu trữ chiến lược truy nhập" Có hai mức độc lập liệu: Diễn giải mô hình a Diễn giải công thức: Một diễn giải CT gồm phần : * Miền giá trị biến công thức, KH tập M * Việc sử dụng công thức: , hàm , tân từ * Ý nghĩa công thức * Xác định quan hệ n tập Mn VD: Cho M = {Tùng, Minh , Hưng, Long, Đoàn, Tuấn} CT C có dạng sau : ∀x ∀ y (∃z (P(x,y) v P(y,z) => Q (x,z) ) Tập diễn giải công thức : - M : miền giá trị biến x, y, z - Các tân từ : P: CHA ; Q: ONG - Ý nghĩa : * CHA (x, y): x có cha y * ONG (x, y): x có ông y - Các quan hệ M2 : CHA = {(Tùng, Minh), (Long, Đoàn), (Đoàn, Tuấn),(Minh, Long)} ONG = {(Tùng, Long ), (Minh, Đoàn), (Long, Tuấn) } II Ứng dụng logic toán CSDL Dẫn nhập CSDL : mô hình hoá thông tin gồm kiện đựơc liên kết hay biểu diễn tình trạng giới thực Chú ý : i Câu hỏi đóng tương ứng với CT đóng Câu trả lời có hiệu lực sai VD: Tùng có cha Minh? CHA ( Tùng, Minh)? Con Long ai? ∃x CON (Minh, x) ? ii Câu hỏi mở tương ứng với CT Ngôn ngữ tân từ có biến -n Một câu hỏi ngôn ngữ tân từ có biến -n thoả quy tắc sau : a Biến: quan hệ b Từ : hằng, biến, hay biểu thức có dạng s[c] : s biến, c tập thuộc tính ( gọi từ chiếu) c Các biểu thức: - R s : với R quan hệ; s biến bộ-n gọi từ - t1 θ a, t1 θ t2: đây, t1, t2 từ chiếu, θ toán tử so sánh, a ĐN7: Một câu hỏi ngôn ngữ tân từ có biến -n đựơc biểu diễn sau : Ngôn ngữ tân từ có biến miền giá trị Một câu hỏi ngôn ngữ tân từ có biến -n thoả quy tắc sau : a Từ : biến b Công thức nguyên tố: i Q (t1, t2, ,tn) : với Q quan hệ; ti từ ii t1 θ a1, t2 θ a2: đây, ti từ ,θ phép toán c Trong CSDL, câu hỏi ngôn ngữ tân từ có dạng : { ( x1, x2,…, xk) | F ( x1, x2, …, xk) } Ở xi (i= 1,2, ,k) biến tự F F biến tự khác VD: Xét sở liệu Thực tập gồm quan hệ sau đây: SV( SV#, HT, NS, QUE, HL) DT(DT#, TDT, CN, KP) SD(SV#, DT#, NTT, KM, KQ) Q1: Cho danh sách sinh viên có quê Hà Nội có điểm học lực >=8.0? - Diễn tả ngôn ngữ tân từ có biến sau: { r[HT] | SV r Λ r[QUE=‘Hà Nội’] Λ r[HL]>=8.0} Và ngôn ngữ tân từ có biến miền giá trị sau: Q2: Cho biết tên sinh viên nam quê Hải Phòng có điểm học lực >8? - Diễn tả ngôn ngữ tân từ có biến sau: { r[HT] | SV r Λ r[GT]=‘Nam’ Λ r[QUE] = ‘Hải Phòng’ Λ r[HL]>=8} - Và ngôn ngữ tân từ có biến miền giá trị sau: {n | ∃x ∃t ∃z ( SV (n, x, y, ‘Nam’,’Hải Phòng’, z) Λ z > 8} Q3: Cho danh sách sinh viên có điểm thực tập =10? - Diễn tả ngôn ngữ tân từ có biến sau: { r[HT] | ∃p ( SV q Λ SD p Λ q[SV#]=pSV[#] Λ p[KQ]=9.0} - Và ngôn ngữ tân từ có biến miền giá trị sau: {y | ∃z ∃t ∃w ∃a ∃b ∃c ( SV (x, y, z, t, w) Λ SD(x, a, b, c, 10)} BTVN: Cho quan hệ Thực tập trên, viết câu truy vấn sau ngôn ngữ tân từ có biến -n có biến miền giá trị ? Cho thông tin sinh viên sinh trước năm 1985 có quê Hà Nội? Cho biết địa điểm thực tập xa trường (KM >100) đề tài số 5? Cho biết mã đề tài có kinh phí lớn triệu nhỏ triệu? Cho biết mã sinh viên 20 tuổi, thực tập ( có điểm kết thực tập >=6.5) Bài Tối ưu hoá câu hỏi Nói chung, ngôn ngữ bậc cao ( ngôn ngữ liệu ) đòi hỏi thực máy tốn thời gian Do vậy, trước thực câu hỏi thuộc ngôn ngữ cần thiết phải biến đổi hợp lý để giảm thời gian tính toán Việc làm gọi "tối ưu hoá " Ví dụ : Thực câu truy vấn : Cho biết thông tin cá nhân việc thực tập sinh viên có điểm thực tập >=8 Ta nên chọn sv có điểm thực tập >=8 quan hệ SD đem kết nối với quan hệ SV để lấy nhứng thông tin nhân họ I Các chiến lược tối ưu tổng quát Thực phép chọn sớm Biến đổi câu hỏi để đưa phép chọn vào thực trước nhằm làm giảm bớt kích cỡ kết trung gian chi phí phải trả giá cho việc truy nhập nhớ thứ cấp lưu trữ nhớ nhỏ Tổ hợp phép chọn xác định với phép tích Đề - Các thành phép kết nối Nếu kết tích Đề - Các R x S đối số phép chọn phép chọn liên quan tới phép so sánh thuộc tính R S thay phép tích Đề - Các phép kết nối Tổ hợp dãy phép tính phép chọn phép chiếu Một dãy phép ( phép chọn phép chiếu) mà kết chúng phụ thuộc vào quan hệ độc lập nhóm phép lại Tìm biểu thức chung biểu thức Nếu kết biểu thức chung ( biểu thức xuất lần) quan hệ không lớn đọc từ nhớ thứ cấp với thời gian nên tính toán trước biểu thức lần Xử lý tệp trước Đối với tệp số, có hai vấn đề quan trọng cần xử lý trước xếp trước tệp thiết lập tệp số Đánh giá trước thực tính toán Cần tính toán chi phí thực phép tính để có trình tự thực phép tính cách tốt II Biểu thức tương đương Hai biểu thức E1 E2 gọi tương đương ( viết tắt ( E1 ≡ E ) chúng biểu diễn ánh xạ, nghĩa thay quan hệ cho tên lược đồ tương ứng hai biểu thức cho kết III Các quy tắc liên quan tới phép kết nối phép tích Đề- Các L1 Quy tắc giao hoán phép kết nối phép tích Đề-Các Nếu E1 E2 hai biểu thức quan hệ, F điều kiện thuộc tính E1 E2 : E1 E2 F ≡ E2 E1 F E1 * E2 ≡ E2 * E1 E1 x E2 ≡ E2 x E1 L2 Quy tắc kết hợp phép kết nối phép tích Đề- Các Nếu E1, E2 E3 biểu thức quan hệ, F1, F2 điều kiện : (E1 E2 ) E3 ≡ E1 (E2 E3 ) F1 F2 F1 F2 (E1 * E2) * E3 ≡ E1 *( E2 * E3 ) (E1 x E2) x E3 ≡ E1 x ( E2 x E3 ) [...]... độc lập giữa dữ liệu và chương - Cung cấp giao trình diện thân thiện với người dùng không chuyên - Bài 2 NHỮNG CÁCH TIẾP CẬN MỘT CSDL Mô hình dữ liệu là sự trừu tượng hoá môi trường thực, nó là biểu diễn dữ liệu ở mức quan niệm Mỗi loại mô hình dữ liệu đặc trưng cho một cách tiếp cận dữ liệu khác nhau của những nhà phân tích thiết kế CSDL Một số loại mô hình dữ liệu phổ biến : 1 Mô hình dữ liệu quan hệ... hệ QTCSDL: Tạo cấu trúc lưu trữ dữ liệu trên máy Cho phép đưa dữ liệu vào máy tính theo cấu trúc đã tạo ra Cho phép khai thác CSDL đã lưu trữ Tạo cơ chế đảm bảo an toàn, bí mật cho dữ liệu trong quá trình thao tác 3 Các thành phần trong hệ QT CSDL: Ngôn ngữ giao tiếp với người sử dụng: Gồm :ngôn ngữ mô tả , thao tác , truy vấn và quản lý dữ liệu - Từ điển dữ liệu : là một CSDL của hệ QT CSDL sử... một CSDL của hệ QT CSDL sử dụng để lưu trữ cấu trúc CSDL, các thông tin bảo mật, bảo đảm an toàn- dữ liệu và các cấu trúc ngoài - Các biện pháp bảo mật - Cơ chế giải quyết tranh chấp dữ liệu Các biện pháp: + Cấp quyên ưu tiên cho NSD + Đánh dấu yêu cầu truy xuất, phân chia thời - Cơ chế phục hồi, sao lưu dữ liệu khi có sự cố: + Định kỳ kiểm tra CSDL, sau một thời gian nhất định tự động tạo bản sao + Tạo... Độc lập dữ liệu mức vật lý : Có thể tổ chức lại CSDL vật lý (như thay đổi các tổ chức, cấu trúc dữ liệu) để làm thay đổi hiệu quả tính toán của các chương trình ứng dụng nhưng không đòi hỏi phải viết lại chương trình ứng dụng Độc lập dữ liệu mức logic: Có thể thay đổi lược đồ khái niệm như thêm, xoá , bớt thông tin của các... những nhà phân tích thiết kế CSDL Một số loại mô hình dữ liệu phổ biến : 1 Mô hình dữ liệu quan hệ Mô hình dữ liệu quan hệ do E.F Codd đề xuất Nền tảng cơ bản của nó là khái niệm lý thuyết tập hợp trên các quan hệ, tức là tập các bộ giá trị 2 Cách tiếp cận theo mô hình dữ liệu mạng Mô hình dữ liệu mạng (lưới) là mô hình được biểu diễn bởi một đồ thị có hướng Loại mẫu tin (Record Type): là mẫu đặc... mẫu tin tham gia trong mỗi kết hợp Các loại liên hệ: 1-1 1-n n-1 Đệ quy PHÒNG LÝ LỊCH Gồm 1-n Có 1-1 NHÂN VIÊN n-1 Cùng làm CÔNG VIỆC 1-n quản lý Hình 3 Mô hình dữ liệu mạng ( Network 3 Mô hình dữ liệu phân cấp Mô hình dữ liệu phân cấp là một cây ( Tree) trong đó mỗi nút của cây biểu diễn một thực thể, giữa nút con và nút cha được liên hệ với nhau theo một mối quan hệ xác định Loại mẫu tin... tới các lược đồ con, do đó không cần phải viết lại các chương trình ứng dụng II Hệ quản trị CSDL 1 Khái niệm - Là một phần mềm điều khiển mọi truy nhập đối với CSDL Nó giúp người sử dụng có thể dùng được hệ thống mà không cần quan tâm tới thuật toán chi tiết hoặc biểu diễn dữ liệu trong máy - Mỗi hệ QT CSDL được cài đặt dựa trên mô hình dữ liệu cụ thể và hỗ trợ tối đa cho người dùng thực hiện các thao... 1 NK 1 BA ĐÌNH NAM HỒNG NAM ĐỊNH … … … … … 4 Mô hình dữ liệu hướng đối tượng - Cho phép biểu diễn các đối tượng khá tự nhiên và sát với thực tế - Hỗ trợ các ngôn ngữ thao tác hướng đối tượng mạnh, cho phép người sử dụng dễ dàng biểu diễn cả các truy vấn phức tạp Bài 3 Mô hình quan hệ của E.F Codd I Khái quát chung Mô hình quan hệ : • Biểu thị dữ liệu trong một CSDL như một tập các quan hệ • Một quan... Lược đồ R với tập thuộc tính là U= { A1, A2, An} được 3 Miền giá trị : - Là tập hợp các giá trị nguyên tử mà thuộc tính có thể nhận - Để đặc tả một miền, người ta dùng: tên miền, một kiểu dữ liệu và khuôn dạng dữ liệu VD: Miền Mã SV là tập hợp các dãy kí tự có độ dài từ 5 ki tự Miền Điểm là tập các giá trị số thuộc [0 10] 4 Quan hệ : Một quan hệ trên một tập thuộc tính là một tập con của tích Desscartes