Tải bản đầy đủ (.pdf) (71 trang)

chuong 1 kiến trúc dbms

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.24 MB, 71 trang )

<span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<b>MỤC TIÊU </b>

<small>l</small> <b>Trình bày cái nhìn bao quát về CSDL(Database), hệ quản trị CSDL (DBMS) cũng như về hệ CSDL (Database System).</b>

<small>l</small> <b>Các yêu cầu khi xây dựng một DBMS.</b>

<small>l</small> <b>Một số thành phần chính của DBMS: giao tác (transaction), concurrent control, khôi phục sự cố, xử lý câu truy vấn, …</b>

<small>l</small> <b>Hiểu cấu trúc tổng thể của một DBMS.</b>

<small>l</small> <b>Hiểu vai trò của người sử dụng hệ thống.</b>

<small>2</small>

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

<small>l</small> Triển khai ứng dụng nhanh

<small>l</small> Khả năng đáp ứng nhanh chóng, kịp thời (vì chỉ phục vụ cho mục đích hạn hẹp)

<small>l</small> <b>Nhược điểm:</b>

<small>l</small> Dữ liệu bị trùng lắp và dư thừa

<small>l</small> Thiếu tính nhất quán giữa các dữ liệu

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

<b>VÍ DỤ</b>

<small>Course scheduling application</small>

<small>Student admission application</small>

<small>Instructors schedules application</small>

<small>Semester planning application</small>

<small>Course data fileStudent data fileStudent data file</small>

<small>Instructor data fileCourse data file</small>

<small>Course data fileSemeter data file</small>

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

<b>VÍ DỤ (tt)</b>

<small>Course scheduling application</small>

<small>Student admission application</small>

<small>Instructors schedules application</small>

<small>Semester planning application</small>

<small>Course data file</small>

<small>Student data file</small>

<small>Instructor data file</small>

<small>Semeter data file</small>

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

- Tính bất thường trong truy xuất cạnh tranh.

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

<b><small>Người sử dụng/Lập trình viênChương trình ứng dụng/Truy vấn</small></b>

<b><small>Hệ CSDL </small></b>

<small>Catalog</small>

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

<b>Cơ sở dữ liệu (Database)</b>

<b>Định nghĩa: Cơ sở dữ liệu là một tập các dữ liệu có liên quan với nhau được tổ chức và lưu trữ theo một định dạng nào đó nhằm làm giảm thiểu sự dư thừa dữ liệu và có thể phục vụ cho nhiều user đồng thời.</b>

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

Cơ sở dữ liệu (tt)

v<b>Ưu điểm:</b>

<small>Ø</small> <b><small>Giảm trùng lắp thơng tin xuống mức thấp nhất và do đó đảm bảo tính nhất qn và tồn vẹn dữ liệu.</small></b>

<small>Ø</small> <b><small>Đảm bảo dữ liệu được truy xuất theo nhiều cách khác nhau.</small></b>

<small>Ø</small> <b><small>Khả năng chia sẻ thông tin cho nhiều người, nhiều ứng dụng khác nhau.</small></b>

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

<small>Ø</small> <b><small>Một mơ tả hình thức về thơng tin và hoạt động</small></b>

<small>o</small> <b><small>Tên, địa chỉ, số điện thoại của khách hàng</small></b>

<small>o</small> <b><small>Báo cáo doanh thu</small></b>

<small>o</small> <b><small>Đăng ký học phần</small></b>

<b><small>Thông tin</small></b>

<b><small>Dữ liệu</small></b>

<small>Chọn lọc</small>

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

<b>Cơ sở dữ liệu (tt)</b>

<small>l</small> <b>Cơ sở dữ liệu (Database)</b>

<small>l</small> <b><small>Một tập hợp có cấu trúc của những dữ liệu có liên quan với nhau được lưu trữ trong máy tính</small></b>

<small>l</small> <b><small>Danh sách sinh viên</small></b>

<small>l</small> <b><small>Niên giám điện thoại</small></b>

<small>l</small> <b><small>Tập ngẫu nhiên của các dữ liệu không thể xem là một CSDL.</small></b>

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

<b>Ví dụ về CSDL</b>

<b><small>PHANCONG</small></b> <small>MA_NVIENSODATHOIGIAN123456789132.512345678927.5666884444340.0453453453120.0</small>

<b><small>DEAN</small></b> <small>TENDAMADADDIEM_DAPHONGSan pham X1VUNG TAU5San pham Y2NHA TRANG5San pham Z3TP HCM5Tin hoc hoa10HA NOI4</small>

<b><small>NHANVIEN</small></b> <small>HONVTENLOTTENNVMANVNGSINHMA_NQLPHGTranHongQuang12345678903/09/19699876543214NguyenThanhTung33344555512/08/19558886655555NguyenManhHung66688444409/15/19623334455555TranThanhTam45345345307/31/19723334455555</small>

</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">

<b>HỆ QUẢN TRỊ CSDL (DBMS - DataBase Management System)</b>

l <b>Là một phần mềm hệ thống cho phép định nghĩa, xây dựng, xử lý và bảo trì dữ liệu.</b>

<small>Ø</small><b><small>Định nghĩa: khai báo bộ khung dữ liệu cùng với các mô tả chi tiết về dữ liệu thông qua DDL</small></b>

<small>Ø</small><b><small>Xây dựng: lưu trữ dữ liệu lên bộ nhớ phụ</small></b>

<small>Ø</small><b><small>Xử lý: truy vấn, cập nhật và phát sinh báo cáo thông qua DML.</small></b>

<small>Ø</small><b><small>Bảo trì: cho phép bảo trì dữ liệu ở trạng thái nhất quán trước khi hư hỏng phần cứng hoặc phần mềm.</small></b>

</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">

<small>l</small>

Phần mềm cung cấp các công cụ để xây dựng và quản lý CSDL.

</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">

<b>Góc nhìn dữ liệu (Data View)</b>

<small>l</small> Mức khung nhìn (View Level)

<small>l</small> Mức luận lý (Logical level)

<small>l</small> Mức vật lý (Physical Level)

<b><small>View 1 View 2</small></b> <sub>…</sub> <b><small>View n</small></b>

<small>View Level</small>

</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24">

<b>Góc nhìn dữ liệu (tt)</b>

<b><small>type customer = record</small></b>

<small>customer-id: string;customer-name: string;customer-street: string;cusomter-city: string;</small>

</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="25">

<b>Các đặc trưng của dữ liệu </b>

<small>l</small> Có tính ít dư thừa dữ liệu

<small>l</small> Chia sẻ cho nhiều người sử dụng

<small>l</small> Có tính an tồn, bảo mật

<small>l</small> Cho phép truy xuất đồng thời

<small>l</small> Có thể khơi phục khi có sự cố

<small>l</small> Có tính độc lập<small>l</small> <b><small>Vật lý (physical)</small></b>

<small>l</small> <b><small>Khi thay đổi tổ chức vật lý của CSDL thì khơng làm ảnh hưởng đến chương trình đang khai thác CSDL đó</small></b>

<small>l</small> <b><small>Luận lý (logical)</small></b>

<small>l</small> <b><small>Khi thay đổi mức quan niệm không làm ảnh hưởng đến các chương trình đang khai thác CSDL</small></b>

</div><span class="text_page_counter">Trang 26</span><div class="page_container" data-page="26">

quyền, sao lưu, phục hồi dữ liệu, giải quyết các tranh chấp dữ liệu, …

</div><span class="text_page_counter">Trang 27</span><div class="page_container" data-page="27">

<b>Người dùng cuối </b>

<small>l</small> Người ít sử dụng

<small>l</small> <b><small>Ít khi truy cập CSDL, nhưng cần những thông tin khác nhau trong mỗi lần truy cập và dùng những câu truy vấn phức tạp</small></b>

<small>l</small> <b><small>Người quản lý </small></b>

<small>l</small> Người sử dụng thường xuyên

<small>l</small> <b><small>Thường xuyên truy vấn và cập nhật CSDL nhờ vào một số các chức năng đã được xây dựng sẳn</small></b>

</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28">

<b>Thiết kế viên </b>

<small>l</small> Chịu trách nhiệm về

<small>l</small> <b><small>Lựa chọn cấu trúc phù hợp để lưu trữ dữ liệu</small></b>

<small>l</small> <b><small>Quyết định những dữ liệu nào cần được lưu trữ</small></b>

<small>l</small> Liên hệ với người dùng để nắm bắt được những yêu cầu và đưa ra một thiết kế CSDL thỏa yêu cầu này

<small>l</small> Có thể là 1 nhóm các DBA quản lý các CSDL sau khi việc thiết kế hoàn tất

</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="29">

<b>Quản trị viên </b>

<small>l</small> Có trách nhiệm quản lý hệ CSDL<small>l</small> <b><small>Cấp quyền truy cập CSDL</small></b>

<small>l</small> <b><small>Điều phối và giám sát việc sử dụng CSDL</small></b>

</div><span class="text_page_counter">Trang 30</span><div class="page_container" data-page="30">

<b><small>Mức ngoài</small></b>

<b><small>Mức quan niệm</small></b>

<b><small>Mức trong</small></b>

<small>Ánh xạ quan niệm/Ánh xạ trong</small>

</div><span class="text_page_counter">Trang 31</span><div class="page_container" data-page="31">

<b>Kiến trúc của HQT CSDL (tt)</b>

<b>Mức trong/Vật lý (Lược đồ trong)</b>

<small>Ø</small> <b><small>Mô tả cấu trúc lưu trữ vật lý CSDL</small></b>

<small>Ø</small> <b><small>Vấn đề cần giải quyết: Dữ liệu gì? Lưu trữ như thế nào? Ở đâu? Cần các chỉ mục gì? Truy xuất tuần tự hay ngẫu nhiên.</small></b>

<b><small>Dành cho người quản trị và người sử dụng chuyên môn.</small></b>

</div><span class="text_page_counter">Trang 32</span><div class="page_container" data-page="32">

<b>Kiến trúc của HQT CSDL (tt)</b>

<b>Mức quan niệm/Logic (Lược đồ quan niệm) </b>

<small>ØMơ tả cấu trúc của tồn thể CSDL cho 1 cộng đồng người sử dụng, gồm thực thể, kiểu dữ liệu, mối liên hệ và ràng buộc.</small>

<small>ØCSDL cần phải lưu trữ bao nhiêu loại dữ liệu? là dữ liệu gì? mối quan hệ giữa các loại dữ liệu này ntn ?</small>

<small>ØDành cho chuyên viên tin học khảo sát và phân tích cùng với những người quản trị CSDL xác định những loại thông tin cần thiết để đưa vào CSDL và mối quan hệ của chúng.</small>

<small>ØCSDL mức quan niệm là một biểu diễn trừu tượng của CSDL mức vật lý, hay CSDL mức vật lý là cài đặt cụ thể của CSDL mức quan niệm.</small>

<small>ØChe bớt các chi tiết của cấu trúc lưu trữ vật lý.</small>

</div><span class="text_page_counter">Trang 33</span><div class="page_container" data-page="33">

<b>Kiến trúc của HQT CSDL (tt)</b>

<b>Mức ngồi/Khung nhìn (Lược đồ ngồi)</b>

<small>ØCịn gọi là mức khung nhìn (view).</small>

<small>ØMơ tả một phần của CSDL mà 1 nhóm người dùng quan tâm đến và che dấu phần còn lại của CSDL đối với nhóm người dùng đó.</small>

<small>ØĐây là mức của người sử dụng và các chương trình ứng dụng</small>

<small>ØĐược “nhìn” (View) CSDL theo một góc độ khác nhau.</small>

<small>ØCó thể hồn tồn khơng biết về cấu trúc tổ chức lưu trữ thông tin trong CSDL, thậm chí cả tên gọi các dữ liệu, thuộc tính.</small>

<small>ØHọ chỉ làm việc trên một phần CSDL theo cách nhìn gọi là khung nhìn (View)</small>

</div><span class="text_page_counter">Trang 34</span><div class="page_container" data-page="34">

<b>Kiến trúc của HQT CSDL (tt)</b>

<b><small>Cấu trúc</small></b>

<b><small> ngoài 1Cấu trúc</small></b>

<b><small> ngoài 2Cấu trúc</small></b>

<b><small> ngồi nChương trình </small></b>

<b><small>ứng dụng n</small></b>

<b><small>Mức vật lý – Cấu trúc vật lý</small></b>

<b><small>Môi trườngthực thế giới</small></b>

<b><small>NSD2</small></b>

</div><span class="text_page_counter">Trang 35</span><div class="page_container" data-page="35">

<b>Kiến trúc của DBMS (tt)</b>

<small>DDL Compiler</small>

<small>User/ApplicationDatabase Administrator</small>

<small>Query Compiler</small> <sup>Transaction </sup><sub>Manager</sub>

<small>Execution </small>

<small>Engine</small> <sup>Logging & </sup><small>Recovery</small> <sup>Concurrency </sup><small>Control</small>

<small>Index/File/Record Manager</small>

<small>StorageBuffer Manager</small>

<small>DDL CommandsTransaction Commands</small>

<small>Data, Metadata, Indexes</small>

<small>DDL Compiler</small>

<small>User/ApplicationDatabase Administrator</small>

<small>Query Compiler</small> <sup>Transaction </sup><sub>Manager</sub>

<small>Execution </small>

<small>Engine</small> <sup>Logging & </sup><small>Recovery</small> <sup>Concurrency </sup><small>Control</small>

<small>Index/File/Record Manager</small>

<b><small>StorageBuffer Manager</small></b>

<small>DDL CommandsTransaction Commands</small>

<small>Data, Metadata, Indexes</small>

</div><span class="text_page_counter">Trang 37</span><div class="page_container" data-page="37">

<b>Kiến trúc của HQT CSDL</b>

xóa, sửa, tìm kiếm dữ liệu

<small>l</small> Bộ phận khai thác dữ liệu: biên dịch NNLT cấp cao và biên dịch ngôn ngữ thao tác dữ liệu

<small>l</small> Từ điển dữ liệu: danh mục các loại dữ liệu, các CT xử lý, các dữ liệu nào được yêu cầu bảo mật,…

</div><span class="text_page_counter">Trang 39</span><div class="page_container" data-page="39">

<b>Các tính năng của HQT CSDL</b>

<small>l</small> Kiểm sốt được tính dư thừa của dữ liệu

<small>dựng một CSDL thống nhất</small>

<small>l</small> Chia sẻ dữ liệu

<small>phép truy xuất dữ liệu đồng thời</small>

<small>l</small> Hạn chế những truy cập không cho phép

<small>và mật mã để truy xuất dữ liệu</small>

<small>l</small> Cung cấp nhiều giao diện

</div><span class="text_page_counter">Trang 40</span><div class="page_container" data-page="40">

<small>lKhi có một sự thay đổi lên CSDL, tất cả người dùng đều thấy được</small>

</div><span class="text_page_counter">Trang 41</span><div class="page_container" data-page="41">

<b>Các tính năng của HQT CSDL (tt)</b>

<small>l</small> Đảm bảo các ràng buộc tồn vẹn

<small>thỏa mãn để đảm bảo dữ liệu ln phản ánh đúng ngữ nghĩa của thế giới thực</small>

<small>động kiểm tra. Một số RB khác được kiểm tra nhờ CTƯD</small>

<small>l</small> Khả năng sao lưu dự phòng khi gặp sự cố

<small>phần cứng hoặc phần mềm</small>

</div><span class="text_page_counter">Trang 42</span><div class="page_container" data-page="42">

<small>An tòan bảo mật</small>

<b>Các thành phần chính của DBMS</b>

<b><small>Quản lý khơi phụcXử lý </small></b>

<b><small>truy vấnNgôn ngữ </small></b>

<b><small>giao tiếp Quản lý giao tác</small></b>

<b><small>Quản lý lưu trữ</small></b>

<small>42</small>

</div><span class="text_page_counter">Trang 43</span><div class="page_container" data-page="43">

<b>Ngôn ngữ giao tiếp</b>

<small>l</small> DBMS cung cấp giao diện lập trình dể sử dụng với một ngơn ngữ lập trình CSDL

</div><span class="text_page_counter">Trang 44</span><div class="page_container" data-page="44">

<b>Quản lý giao tác</b>

<small>l</small> Thành phần quản lý các giao tác có ảnh hưởng đến CSDL

<small>được thì phải thực hiện hết tất cả các hành động trong giao tác đó, ngược lại xem như không thực hiện hành động nào</small>

<small>44</small>

</div><span class="text_page_counter">Trang 45</span><div class="page_container" data-page="45">

<b>Quản lý giao tác (tt)</b>

<small>l</small> <b><small>Để CSDL được bền vững (durable), mọi thay đổi lên CSDL phải được ghi nhận lại</small></b>

<small>l</small> <b><small>Log manager – ghi chép nhật ký</small></b>

<small>l</small> <b><small>Đảm bảo CSDL vẫn nguyên vẹn khi có sự cố xảy ra </small></b>

<small>l</small> <b><small>Recovery manager – khôi phục</small></b>

<small>l</small> <b><small>Dựa vào nhật ký để phục hồi lại CSDL về trạng thái nhất qn trước đó</small></b>

<small>§</small> <b><small>Trạng thái thỏa tất cả các RBTV của CSDL đó</small></b>

</div><span class="text_page_counter">Trang 46</span><div class="page_container" data-page="46">

<b>Quản lý giao tác (tt)</b>

<small>l</small> Điều khiển đồng thời

<small>l</small> <b><small>Bộ lập lịch (scheduler) - có nhiệm vụ lập 1 lịch thực </small></b>

<i><b><small>hiện từ n giao tác được kích hoạt đồng thời</small></b></i>

<small>l</small> <b><small>Cơ chế khóa (lock) - ngăn 2 giao tác cùng thao tác lên 1 đơn vị dữ liệu tại 1 điểm</small></b>

<small>DBMS ServerDB</small>

<small>Client</small> <b><small>ClientClient</small></b>

<small>Equivalent to serial result</small>

<small>46</small>

</div><span class="text_page_counter">Trang 47</span><div class="page_container" data-page="47">

<b>Quản lý giao tác (tt)</b>

<b>phải tranh giành tài nguyên</b>

<b>thực hiện được công việc của mình”</b>

<small>l</small> <b><small>Các giao tác chờ đợi lẫn nhau để được cấp phát tài nguyên</small></b>

<b>thiệp vào</b>

<small>l</small> <b><small>Rollback </small></b>

<small>l</small> <b><small>Abort </small></b>

</div><span class="text_page_counter">Trang 48</span><div class="page_container" data-page="48">

<small>l</small> <b><small>Kiểm tra ngữ nghĩa của câu truy vấn</small></b>

<small>l</small> <b><small>Chuyển đổi cấu trúc cây sang ngôn ngữ đại số quan hệ</small></b>

<small>l</small> <b><small>Query optimizer</small></b>

<small>l</small> <b><small>Sắp xếp các phép tốn nhằm mục đích tối ưu hóa câu truy vấn</small></b>

<small>48</small>

</div><span class="text_page_counter">Trang 51</span><div class="page_container" data-page="51">

<b>Mơ hình mạng</b>

<small>l</small> Dữ liệu ~ tập các record

<small>l</small> Mối quan hệ giữa các dữ liệu ~ các link

<small>l</small> Các record được tổ chức thành tập các đồ thị tùy ý

<small>Johnson 192-83-7465 AlmaPalo AltoSmith019-28-3746 NorthRyeHayes677-89-9011 MainHarisonTuner182-73-6091 Putnam StamfordJones321-12-3123 MainHarisonLindsay 336-66-9999 ParkPittsfield</small>

<small>A-101 500A-215 700A-102 400A-305 350A-201 900A-217 750A-222 700</small>

<small>MãTK SốDư</small>

<small>Downtown Brooklyn9000000Perryridge Horseneck 1700000</small>

<small>Round Hill Horseneck 8000000MianusWoodside 1000000Redwood Princeton 2000000BrightonBrooklyn7000000</small>

<small>TênCNThànhPhố TổngTiền</small>

<small>Redwood Princeton 2000000A-222 700</small>

<small>Lindsay 336-66-9999 ParkPittsfield</small>

</div><span class="text_page_counter">Trang 52</span><div class="page_container" data-page="52">

<small>A-215 700</small>

<small>A-102 400</small>

<small>A-305 350A-201 900</small>

<small>A-217 750Smith019-28-3746…</small>

<small>A-201 900</small> <sub>John</sub> <sub>321-12-3123</sub> <sub>... </sub><small>A-215 700</small>

<small>A-201 900</small>

<small>52</small>

</div><span class="text_page_counter">Trang 53</span><div class="page_container" data-page="53">

<small>Johnson 192-83-7465 AlmaPalo Alto A-201A-217A-222</small>

<small>A-101 500A-215 700A-102 400A-305 350A-201 900A-217 750A-222 700</small>

<small>MãTK SốDư</small>

</div><span class="text_page_counter">Trang 54</span><div class="page_container" data-page="54">

<b>Mơ hình hướng đối tượng</b>

<small>l</small> Dữ liệu và mối quan hệ được biểu diễn bằng khái niệm đối tượng

<small>l</small> Cấu trúc 1 đối tượng

<small>l</small> Ngôn ngữ định nghĩa đối tượng - ODL

<small>l</small> Ngôn ngữ thao tác đối tượng - OML

<small>54</small>

</div><span class="text_page_counter">Trang 55</span><div class="page_container" data-page="55">

<b>Mơ hình hướng đối tượng (tt)</b>

<b><small>class Account: public d_Object {private:</small></b>

<b><small>d_Long balance;public:</small></b>

<b><small>d _ R e f < B r a n c h > home_branch;</small></b>

</div><span class="text_page_counter">Trang 56</span><div class="page_container" data-page="56">

<small>lDữ liệu dưới dạng text </small>

<small>l</small> Ngôn ngữ truy vấn – Xquery, Xpath

<small>l</small> Ngôn ngữ định nghĩa – DTD, XML Schema (XSD)

<small>56</small>

</div><span class="text_page_counter">Trang 57</span><div class="page_container" data-page="57">

<small><customer customer-id=“C100” accounts=“A-401”><customer-name>Joe</customer-name></small>

<small><customer customer-id=“C102” accounts=“A-401 A-402”><customer-name>Mary</customer-name></small>

<small></bank-2></small>

</div><span class="text_page_counter">Trang 58</span><div class="page_container" data-page="58">

<b>CÁC YÊU CẦU KHI XÂY DỰNG MỘT DBMS</b>

<b><small>1.Ngôn ngữ giao tiếp giữa người sử dụng và CSDL</small></b>

<b><small>2.Từ điển dữ liệu (Data Dictionary)</small></b>

<b><small>3.Có biện pháp bảo mật tốt khi có yêu cầu</small></b>

<b><small>4.Cơ chế giải quyết tranh chấp dữ liệu</small></b>

<b><small>5.Cơ chế sao lưu (Backup) và phục hồi (Restore) dữ liệu </small></b>

<b><small>6.Cung cấp một giao diện tốt, dễ sử dụng, dễ hiểu</small></b>

<b><small>7.Bảo đảm tính độc lập giữa dữ liệu và chương trình</small></b>

</div><span class="text_page_counter">Trang 59</span><div class="page_container" data-page="59">

<b>CÁC YÊU CẦU KHI XÂY DỰNG MỘT DBMS (tt)</b>

<b><small>1. Ngôn ngữ giao tiếp giữa người sử dụng và CSDL</small></b>

<small>Ø</small> <i><b><small>Ngôn ngữ mô tả dữ liệu (DDL – Data Definition </small></b></i>

<i><b><small>Language): cho phép khai báo cấu trúc CSDL, các </small></b></i>

<b><small>mối liên hệ của dữ liệu, các quy định, ràng buộc dữ liệu.</small></b>

<small>Ø</small> <i><b><small>Ngôn ngữ thao tác dữ liệu (DML– Data Manipulation </small></b></i>

<i><b><small>Language): cho phép thực hiện thao tác thêm, xóa, </small></b></i>

<b><small>sửa dữ liệu.</small></b>

<small>Ø</small> <i><b><small>Ngơn ngữ truy vấn có cấu trúc (SQL – Structured </small></b></i>

<i><b><small>Query Language): cho phép người khai thác sử dụng </small></b></i>

<b><small>để truy vấn thông tin cần thiết.</small></b>

<small>Ø</small> <i><b><small>Ngôn ngữ quản lý dữ liệu (DCL – Data Control </small></b></i>

<i><b><small>Language) cho phép thay đổi cấu trúc bảng, khai báo </small></b></i>

<b><small>bảo mật, cấp quyền cho người sử dụng.</small></b>

</div><span class="text_page_counter">Trang 60</span><div class="page_container" data-page="60">

<b>CÁC YÊU CẦU KHI XÂY DỰNG MỘT DBMS (tt)</b>

<b><small>2. Từ điển dữ liệu (Data Dictionary)</small></b>

</div><span class="text_page_counter">Trang 61</span><div class="page_container" data-page="61">

<b>CÁC YÊU CẦU KHI XÂY DỰNG MỘT DBMS (tt)</b>

<b><small>5. Cơ chế sao lưu (Backup) và phục hồi (Restore) dữ kiệu khi có sự cố xảy ra.</small></b>

<small>Ø</small> <b><small>Định kỳ kiểm tra CSDL</small></b>

<small>Ø</small> <b><small>Tạo nhật ký (LOG) thao tác CSDL</small></b>

<b><small>6. Cung cấp một giao diện tốt, dễ sử dụng, dễ hiểu</small></b>

<b><small>7. Bảo đảm tính độc lập giữa dữ liệu và chương trình: khi có thay đổi dữ liệu thì các CT ứng dụng đang chạy trên CSDL đó khơng cần phải viết lại và cũng khơng ảnh hưởng đến những NSD khác.</small></b>

</div><span class="text_page_counter">Trang 62</span><div class="page_container" data-page="62">

<b>Ngôn ngữ CSDL</b>

<small>l</small> Ngôn ngữ định nghĩa dữ liệu

(DDL – Data Definition Language)

<small>lXác định ra lược đồ quan niệm </small>

<small>l</small> Ngôn ngữ lưu trữ dữ liệu

(SDL – Storage Definition Language)

<small>lNgôn ngữ định nghĩa lược đồ trong</small>

<small>l</small> Ngôn ngữ định nghĩa khung nhìn(VDL – View Definition Language)

<small>lNgơn ngữ định nghĩa lược đồ ngồi</small>

</div><span class="text_page_counter">Trang 65</span><div class="page_container" data-page="65">

<b>Mơ hình dữ liệu (tt)</b>

<small>l</small> Mơ hình mức cao

<small>l</small> Mơ hình cài đặt

<small>nhưng khơng q xa với cách dữ liệu được tổ chức thật sự trên máy tính</small>

<small>l</small> Mơ hình mức thấp (mơ hình vật lý)

<small>được lưu trữ trong máy tính</small>

</div><span class="text_page_counter">Trang 66</span><div class="page_container" data-page="66">

<small>TenMH</small> <sup>(0,n)</sup>

<small>MaHP</small>

</div><span class="text_page_counter">Trang 67</span><div class="page_container" data-page="67">

<b>Ví dụ: Mơ hình đối tượng</b>

<small>0..*1</small>

</div><span class="text_page_counter">Trang 68</span><div class="page_container" data-page="68">

<b>Ví dụ: Mơ hình quan hệ</b>

<small>MaMHTruoc</small>

</div><span class="text_page_counter">Trang 70</span><div class="page_container" data-page="70">

<small>Mức 3:</small>

<small>DiemTHDiemLT</small>

</div>

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×