Loading [MathJax]/jax/output/HTML-CSS/fonts/TeX/fontdata.js
Thiên Vũ Thái
Mind Map by , created more than 1 year ago

Mind Map on CSDL, created by Thiên Vũ Thái on 06/16/2018.

110
0
0
Thiên Vũ Thái
Created by Thiên Vũ Thái over 6 years ago
Rate this resource by clicking on the stars below:
1 2 3 4 5 (0)
Ratings (0)
0
0
0
0
0

0 comments

There are no comments, be the first and leave one below:

Close
CSDLVai tròTổng quanDữliệuCSDLKháiniệmKhái niệmĐặctrưngBiểu diễn 1 phần thế giớithựcĐược sinh ra với ục đíchxác định, phục vụ ứngdụng và người dùngKhông phải là một tập dữ liệu ngẫunhiênHệ quản trịCSDLKhái niệmNhững số liệu rờirạcMô tả những sự kiện, sự vật, hiệntượngĐược chọn lọc để lưu trữ với một mục đíchnào đóTập dữ liệucó liên quanGắn với một ngữ nghĩaTập hợp các chương trìnhCho phép người dùng tạo và duy trì CSDLChức năngĐịnh nghĩa: Khai báo khung dữ liệu và mô tả chi tiết về dữ liệuXây dựng: Lưu trữ dữ liệu vào phương tiện lưu trữXử lý: Truy vấn, truy cập, phát sinh báo cáoChia sẻ: Cho phép nhiều người dùng cùng truy cậpBảo vệ: Đảm bảo an toàn trước sự cố và truy cập trái phépĐặc tínhTính tự mô tảCô lập giữa chương trình và dữ liệuTrừu tượng hoá dữ liệuHỗ trợ nhiều khung nhìn dữ liệuChứa cả CSDL và mô tả CSDLHệ QT CSDL quản lý CSDL và metadata của nóChương trình chỉ truy cập dữ liệu thông qua hệ QT CSDLTrình bày dữ liệu ở mức trừu tượngChe đi các chi tiết lưu trữ và cài đặtDùng mô hình dữ liệu để trừu tượng hoá DLCác vai trò trong hệ QTCSDLQuản trị viên (Database Administrator - DBA)Thiết kế viên (Database Designer)Lập trình viên (Database programmer)Người dùng cuối (End User)Cấp quyền truy cậpĐiều phối và giám sát sử dụngLựa chọn cấu trúc phù hợp để lưu trữQuyết định dữ liệu nào cần lưu trữLiên hệ người dùng để biết yêu cầuLập trình chức năngNgười ít sử dụngNgười quản lýÍt truy cập,nhưng truy vấnphức tạpNgười sử dụngthường xuyênNhân viênThường xuyêntruy cập, dùngcác tính năngđịnh sẵnNgười sử dụng đặc biệtKỹ sư, nhà khoa họcThông thạo CSDL, tựxây dựng truy vấnTính năngKiểm soátdư thừa dữliệuChia sẻ dữliệuHạn chế truycập khôngđược phépCung cấpnhiều giaodiệnĐảm bảo các RBTVSao lưu dữ liệuMô tả dữ liệuMô hình dữ liệuKhái niệmLiên hệ giữa các kháiniệm mô tả dữ liệuCác phép toán cơbản trên dữ liệuPhân loạiMô hình mức caoCác khái niệmgần gũi ngườidùngTự nhiêngiàu ngữnghĩaMô hình cài đặtNgườidùng cóthể hiểuKhông quáxa dữ liệutrên máytínhMô hình mức thấpMô tả cách CSDLđược lưu trongmáy tínhLược đồ quan hệLà các mô tả vềcấu trúc vàràng buộc trênCSDLThể hiện CSDLLà dữ liệu hiện thờitrong CSDL tại mộtthời điểmKiến trúc 3 lược đồGồm 3 lược đồMức trongMức luận líMô tả toàn thể CSDLvới người dùngChe đi cấu trúc vật lýMức ngoàiMô tả cấu trúc vật lýMô tả 1 phần CSDL cho 1nhóm người dùngChe đi phần còn lạiTính độc lập dữ liệuĐộc lập logicCó thể thayđổi lược đồluận lý màkhông cầnthay đổi lượcđồ ngoài vàchương trìnhĐộc lập vật lýCó thể thayđổi lược đồtrong màkhông làmthay đổi lượcđồ logic vàlược đồ ngoàiNgôn ngữ CSDLNgôn ngữ định nghĩa dữliệu (Data DefinitionLanguage - DDL)Ngôn ngữ lưu trữ dữ liệu(Storage Definition Language -SDL)Ngôn ngữ địnhnghĩa khung nhìn(View definitionLanguage - VDL)Định nghĩalược đồtrongĐịnh nghĩalược đồ ngoàiNgôn ngữ thao tác dữ liệu(Data ManipulationLanguage - DML)Cho phép truy xuất,thêm, sửa, xoá dữ liệuMức cao (Phi thủ tục)Mức thấp (Thủ tục)Mô hình thực thể kết hợp(Entity Realtionship - ER)Một số khái niệmThực thểLà một đối tượng của thếgiới thựcGiới thiệuDo Dr. Peter Pin-ShanChen đề xuấtRa đờinăm 1976The Entity - Relationship Model -Toward a Unified View of DataaLà mô hìnhchuẩn cho hệthống từ điển tàinguyên(InfomationResourceDictionarySystem IRDS)Thuộc tínhLà đặc trưng của thực thểMang giá trị cụ thểLoại thực thểTập các thực thể giống nhauKhái niệmPhân loạiĐơn trịĐa trịKết hợpSuy diễnChỉ chứa 1 giá trịKý hiệu: hình ovan vớitên thuộc tính bêntrongNhận nhiều gái trịKý hiệu: Hai hìnhovan lồng nhauvới tên thuộc tínhbên trongThuộc tính gồm nhiềuthuộc tính khácGiá trị tính từ thuộc tính khácKý hiệu: Hình ovannét đứt với tênthuộc tính bêntrongKhái niệmLà tập thuộc tính giúpđịnh danh thực thểKý hiệu: Gạch chân tên thuộc tínhKhoá hợp: Khoá gồmnhiều thuộc tínhKhoáMối kết hợpLà liên kết giữacác thực thểLoại mối kếthợpTập các mối kết hợp tương tự nhauKý hiệu: Hình thoivới tên MKH bêntrongBản sốRàng buộc số lượng thựcthể tham gia MKHMaxcard: Số lần tối đaMincard: Số lần thối thiểuThực thể phụthuộcTồn tại phụ thuộc vào thực thể khácThực thể yếuKhông có khoáPhải tham gia MKHvới thực thể chínhMột số nguyên tắtMột thuộc tính dùng để mô tả đặc trưng cho duy nhất một thực thểTất cả các nhánh nối với mối kết hợp phải là nhánh bắt buộcNếu một thuộc tính phụ thuộc vào một thuộc tínhkhác thì phải định nghĩa thực thể bổ sungMô hình dữ liệu quan hệGiới thiệuDr. Edgar Frank Codd6/1970A Relation Model forLarge Shared DataBanks”,Communications ofACMLà cơ sở của SQL ServerMô hình quan hệQuan hệ (Relation)Thuộc tính (Attribute)Bộ (Tuple)Miền giá trịLược đồLà một bảng dữ liệuCác dòng thể hiện thực thể hoặc MKHTiêu đề cột cho biết ý nghĩa các giá trị trên dòngLà một dòng của quan hệLà các tiêu đề cột của quan hệTập hợp cácgiá trị màmột thuộctính có thểnhậnCác giá trị là nguyên tố(atomic), không thể chianhỏMô tả bằng kiểu dữliệu và định dạngKý hiệu: R(A1, A2, A3, ..., An)Ai nhận gái trịtrong miền giátrị tương ứng,ký hiệu:dom(Ai)Bậc lược đồ là nCác khái niệmKhoáLà tập các thuộc tính dùng định danh mỗi bộKhoáSiêu khoáLà siêu khoá có ít thuộc tính nhấtLà đặc trưng của lược đồ, không phụ thuộcvào thể hiện quan hệMột lược đồ có thể cónhiều khoáKhoá chínhCác thuộc tính phải khác nullLà khoá đơn giản nhấtKhoá ngoạiFK cùng miền giátrị với PKVới mọi t2 thuộcR2 luôn tồn tạit1 thuộc R1 saocho t2[FK] =t1[PK]1 thuộc tính có thể vừa là PK vừa là FKĐặc trưngThứ tự giữa các BỘ trong quan hệ KHÔNG quan trọngThứ tự giữa các GIÁ TRỊ trong LÀ quan trọngCác giá trị hoặc là nguyên tố, hoặc là nullCác bộ không trùng nhauQui tắc chuyển ER sang quan hệMỗi tập thực thể chính là 1quan hệTên tập thực thể là tên quan hệCác thuộc tính đơn của tập thực thể là các thuộc tính của quan hệCác thuộc tính kết hợp: gộp lại hoặc tách raCác thuộc tính đa trị: tạo thành một quan hệ mớiTập thực thểMõi tập thực thể yếu là 1 quan hệGiống tập thực thể chínhThêm khoá của tập thực thể chính ứng với tập thực thể yếu vào quan hệKhoá của quan hệ là kết hợp khoá yếu của thực thể yếu và khoá của thực thể chínhThêm khoá của quan hệ phía ÍT vào quan hệ phía NHIỀUMối kết hợp(1 - 1) hoặc (1 - n)Thêm thuộc tính riêng vào quan hệ phía NHIỀU(n - n)Tạo thực thể mới vớitên của MKHThuộc tính là khoá của các bênliên quan và thuộc tính riêngKhoá là khoá của các bên liên quanĐại số quan hệMột số đặc điểmBiến là các quan hệHằng là các thể hiện quan hệToán tử là các thao tác tạo thành quan hệ mớiBiểu thức là chuỗi các phép toán trên quan hệKết quả của biểu thức là quan hệCác phép toán tập hợpPhép hội ∪Phép giao ∩Phép hiệu -Chỉ thực hiện trêncác quan hệ khảhợpHai quan hệ cùng bậcTất cả thuộc tính tương ứng nhau có cùng miền giá trịKết quả là 1 quan hệ có cácthuộc tính cùng tênLà một quan hệ gồm các bộ thuộcr, hoặc thuộc s, hoặc thuộc cả 2(Loại bỏ bộ trùng)r ∪ s = {t|t ∈ r ∨ t ∈ s}Là một quan hệgồm các bộ đồngthời thuộc r và sr ∩ s = {t|t ∈ r ∧ t ∈ s}Là một quan hệ gồmcác bộ thuộc r màkhông thuộc sr - s = {t|t ∈ r ∧ t ∉ s}Tính chấtGiao hoánKết hợpPhép chọnPhép chiếuTích CartesianPhép kếtPhép chiaChọn các bộ r thoả điều kiện pσ_p (r)Phép tính quan hệPhụ thuộc hàm và dạng chuẩnp biểu thức gồm các mệnh đề so sánhKết quả trả về luôn có cùng danh sách thuộc tính với rσ_p1 (σ_p2 (r))=σ_p2 (σ_p1 (r))=σ_(p1 ∧p2) (r)Chọn ra một vài cột của rπ_(A1,A2,…,Ak) (r)π_(A1,A2,…,An) (π_(A1,A2,…,Am) (r))=π_(A1,A2,…,An) (r) nếu n<mA1, A2, ... có thể là các biểu thức quan hệ liên quan đến hằng số và các thuộc tính trong rChọn ra 1 quan hệ với mỗi bộ là tổ hợp giữa 1 bộ trong r và 1 bộ trong sr x sNếu r có u bộ và s có v bộ thì r x s có u x v bộNếu r có n thuộc tính, s có m thuộc tính thì r x s có m + n thuộc tínhRàng buộc toàn vẹnKhái niệmRBTV đượcphát hiệntừ ngữnghĩahoặc thểhiện củadữ liệuĐảm bảo ngữnghĩa của dữliệu cũng nhưtính đúng đắncủa dữ liệu vàmô hình dữliệuMọi thểhiện củaquan hệluôn luônphải thoảRBTVĐượcphát hiệnvà khaibáo bởithiết kếviênĐược địnhnghĩa trênmột hoặc liênquan nhiềuquan hệĐặc trưngLà các quanhệ có khảnăng vi phạmRBTV khi cậpnhật dữ liệuBối cảnhNội dungThể hiện bằng lời nóiThể hiện bằng ngôn ngữ hình thứcBảng tầm ảnh hưởngXác định các thao tác cần kiểm tra trên từng bối cảnhPhân loạiRBTV liên quan đến 1 quan hệRBTV liên quan đến nhiều quan hệMiền giá trịLiên bộLiên thuộc tínhLiên tụcRời rạcRàng buộcgiá trị chothuộc tínhSự tồn tại của một haynhiều bộ liên quan đếnsự tồn tại của một haynhiều bộ khácRB khoá chínhRB duy nhấtRàng buộcgiữa cácthuộc tínhtrong cùngmột quan hệTham chiếuLiên bộ, liên quan hệLiên thuộc tính. liên quan hệThuộc tính tổng hợpChu trìnhRB khoá ngoạiGiá trị xuất hiện tại các thuộc tínhcủa quan hệ nào đó phải thamchiếu đến giá trị khoá chính củamột quan hệ cho trướcThường có bối cảnh là hai qaun hệXảy ra giữa các bộ trên nhiều quan hệ khác nhauXảy ra giữa các thuộc tínhtrên nhiều quan hệ khácnhauĐảm bảo quan hệ giữa thuộc tínhtổng hợp và các thuộc tính nguồnVD: Nhân viên chỉ được phân công vào các đề ándo phòng ban của mình phụ tráchCSDL được biểu diễn bằng đồ thị có đường khép kínVD: Số giáo viên của một bộ mônphải bằng tổng số lượng giáo viênthuộc bộ môn đó đóVD: Phụ cấp của một công việctrong đề tài luôn luôn nhỏ hơnkinh phí của đề tài đóVí dụNgày sinh củatrưởng bộ mônphải nhỏ hơn ngàynhận chứcVí dụMỗi đề tài phải có ítnhất một công việcthuộc về đề tài đóMỗi bộ mônphải có ít nhấtmột giáo viênVí dụMọi giáo viên phải thuộc về một bộ môn cụ thểTrưởng bộ môn phải là một giáo viênVí dụMột giáo viên không trực tiếpquản lý chuyên môn chính mìnhNgày bắt đầu của đề tài luôn nhỏhơn ngày kết thúc của đề tàiVí dụTên bộ môn làduy nhấtMột giáo viênđược thamgia tối đa 5công việctrong tất cả đềtàiVD: Giới tính của giáo viên phảilà ‘Nam’ hoặc ‘Nữ’VD: Phụ cấp của mỗi công việctrong đề tài không được vượtquá 20 triệuPhụ thuộc hàmDạng chuẩnDạng chuẩn 1Không lặp, Không képTrùng lắp dữ liệu caoĐặc điểmBiến đổi về DC1Cách 1: Điền đầy đủ dữ liệuvào các chỗ còn trồngCách 2: Xác định khoá và tách các giá trị lặpkép thành quan hệ mớiDạng chuẩn 2Thuộc tính phụ thuộc đầy đủA PTĐĐ vào X nếu X -> A là mộtphụ thuộc hàm đầy đủĐặc điểmĐã đạt dạng chuẩn 1Thuộc tính không khoá phụthuộc đầy đủ vào thuộc tính khoáTồn tại trùng lắp dữ liệuBiến đổi về DC2B1: Xác định khoá chính trên quan hệ đạt DC1B2: Xác định các phụ thuộc hàm gây ra thuộc tính khôngkhoá không phụ thuộc đầy đủ vào thuộc tính khoáB3: Nếu tồn tại phụ thuộc hàm không đầy đủ trên khoáchính thì xoá chúng ở quan hệ cũ và đưa vào quan hệ mớiDạng chuẩn 3Thuộc tính phụ thuộc bắt cầuX→Y∈F+A∉(Y∪X)Y→A∈F+Y→X ∉F+Đặc điểmĐạt dạng chuẩn 2Tất cả thuộc tính không khoá không phụthuộc bắt cầu vào thuộc tính khoáBiến đổi về DC3Xác định thuộc tínhkhoá trong quan hệđạt DC 2Xác định PTH gâyra thuộc tínhkhông khoá bắtcầu vào khoáXoá PTH đóbằng cách đưanó vào quanhệ mớiLà dạng chuẩn tối thiểutrong thiết kế CSDLKhái niệmX -> Y với X là vế trái, Y là vế phảiÝ nghĩaVới hai thuộc tính t1, t2 của một bộ r bất kỳ,nếu t1[X] = t2[X] thì t1[Y] = t2[y]Phụ thuộc hàm dùng đánhgiá kết quả thiết kế CSDLPhụ thuộc hàm đầy đủPhụ thuộc hàmXét X->Y, nếu tồn tại tập con X'của X sao cho X' -> Y thì Y phụthuộc hàm đầy đủ vào XLuật dẫnVới mọi Y là tập con của X, ta có X->YNếu X->Y và Z là tập con của W thì X,W -> Y,ZX->Y và Y->Z thì X->ZX->Y và Y,W -> Z thì X,W -> ZX -> Y, X -> Z => X -> Y, ZX -> Y và Z là tập con của Y thì X -> ZThiết kế CSDL mức quan niệmThiết kế mô hình dữ liệu mức quan niệm (ER)Chuyển MHDL sang mức logic (ER -> QH)Với mỗi quan hệ xác định tập PTHNâng chuẩn lược đồ quan hệĐánh giá chấtlượng lược đồbằng tiêuchuẩn dạngchuẩnDouble click this nodeto edit the textClick and drag this buttonto create a new node