Đăng ký Đăng nhập
Trang chủ Công nghệ thông tin Kỹ thuật lập trình Bài giảng nhập môn cơ sở dữ liệu...

Tài liệu Bài giảng nhập môn cơ sở dữ liệu

.PDF
188
423
141

Mô tả:

bài giảng nhập môn cơ sở dữ liệu
Nhập môn cơ sở dữ liệu www.ou.edu.vn [email protected] Chương 1: Tổng quan về cơ sở dữ liệu Tham khảo tài liệu [A]: Chapter 1: Introduction to Databases 1 [email protected] Nội dung chương 1 (1) 1. 2. 3. 4. 5. Một số ví dụ sử dụng hệ thống CSDL Đặc điểm của hệ thống lưu DL theo file Nhược điểm của hệ thống lưu DL theo file Ý nghĩa của thuật ngữ CSDL (database) Ý nghĩa của thuật ngữ hệ quản trị CSDL (DBMS) (DBMS: Database Management System) 2 Chương 1: Tổng quan về cơ sở dữ liệu Trang 1 Nhập môn cơ sở dữ liệu www.ou.edu.vn [email protected] Nội dung chương 1 (2) 6. Các chức năng chính của DBMS 7. Các thành phần chính của môi trường DBMS 8. Vai trò của con người trong môi trường DBMS 9. Lịch sử phát triển của các hệ DBMS 10. Ưu điểm và nhược điểm của DBMS 3 [email protected] Ví dụ về các ứng dụng CSDL ‹ Mua bán ở siêu thị ‹ Mua bán dùng thẻ tín dụng ‹ Đặt vé đi nghỉ mát tại trạm giao dịch du lịch ‹ Đọc, mượn sách tại thư viện ‹ Thanh lý hợp đồng bảo hiểm ‹ Sử dụng mạng internet ‹ Học tập, nghiên cứu tại trường đại học 4 Chương 1: Tổng quan về cơ sở dữ liệu Trang 2 Nhập môn cơ sở dữ liệu www.ou.edu.vn [email protected] Hệ thống lưu DL theo file (File-based System) ‹ Là tập hợp một số chương trình ứng dụng để phục vụ cho các người dùng cuối (end users), ví dụ chương trình giúp người dùng in ra các bảng báo cáo ‹ Mỗi chương trình quản lý các dữ liệu có thiết kế riêng cho chương trình đó 5 [email protected] Ví dụ về hệ thống lưu DL theo file: Hệ thống Quản lý cho thuê nhà (gồm 2 chương trình) 6 Chương 1: Tổng quan về cơ sở dữ liệu Trang 3 Nhập môn cơ sở dữ liệu www.ou.edu.vn [email protected] Hạn chế của phương pháp lưu DL theo file (1) 1. Dữ liệu riêng rẽ và cô lập – Mỗi chương trình sử dụng dữ liệu của riêng mình – Người dùng một chương trình khó thấy được những thông tin có ích cho mình khi thông tin này nằm trong dữ liệu của các chương trình khác 2. Dữ liệu bị trùng lắp – Các dữ liệu giống nhau có thể được lưu ở các chương trình khác nhau -> bị dư thừa DL – Các dữ liệu giống nhau có thể được lưu không cùng giá trị, hay không cùng format -> bị mâu thuẫn DL 7 [email protected] Hạn chế của phương pháp lưu DL theo file (2) 3. Dữ liệu lệ thuộc vào chương trình – Cấu trúc của file lưu DL do code của chương trình tạo ra 4. Chương trình lệ thuộc dữ liệu (không tương thích các format file DL khác nhau) – Các chương trình được viết bằng các ngôn ngữ LT khác nhau nên không thể dễ dàng truy xuất các file DL của các chương trình khác 5. Chức năng của chương trình là cố định, không linh hoạt – Các chương trình được viết theo các chức năng định sẳn, nếu có yêu cầu chức năng nào mới thì phải viết một chương trình mới 8 Chương 1: Tổng quan về cơ sở dữ liệu Trang 4 Nhập môn cơ sở dữ liệu www.ou.edu.vn [email protected] Phương pháp lưu dữ liệu bằng CSDL ‹ Lý do phát sinh phương pháp này: – Không nên đưa việc định nghĩa DL vào chương trình – Nên lưu DL riêng và không phụ thuộc vào chương trình – Nên có sự kiểm soát khi truy xuất và xử lý DL, và việc kiểm soát này không nên đặt trong một chương trình ‹ Kết quả: – Hệ quản trị CSDL (DBMS) 9 [email protected] Cơ sở dữ liệu (Database) ‹ Là tập hợp có tính chia sẽ của các DL có quan hệ logic với nhau (và sự miêu tả của các DL này), được thiết kế để đáp ứng nhu cầu về thông tin cho một tổ chức (Shared collection of logically related data (and a description of this data), designed to meet the information needs of an organization) ‹ System catalog (metadata): cung cấp thông tin miêu tả DL, giúp cho chương trình và DL có thể độc lập với nhau ‹ Các DL quan hệ logic với nhau bao gồm: các thực thể, các thuộc tính, và các mối quan hệ của các thông tin trong một tổ chức 10 Chương 1: Tổng quan về cơ sở dữ liệu Trang 5 Nhập môn cơ sở dữ liệu www.ou.edu.vn [email protected] Hệ quản trị CSDL (DBMS) ‹ Là một hệ thống phần mềm cho phép ngưới dùng có thể định nghĩa, tạo, và duy trì CSDL, cho phép truy xuất CSDL theo cách có kiểm soát 11 [email protected] Ví dụ về hệ quản trị CSDL (DBMS) 12 Chương 1: Tổng quan về cơ sở dữ liệu Trang 6 Nhập môn cơ sở dữ liệu www.ou.edu.vn [email protected] Phương pháp lưu dữ liệu bằng CSDL ‹ Ngôn ngữ định nghĩa dữ liệu (DDL: Data definition language) – Cho phép đặc tả kiểu DL, cấu trúc DL và ràng buộc DL – Tất cả các đặc tả DL được lưu trong CSDL ‹ Ngôn ngữ thao tác dữ liệu (DML: Data manipulation language). – Là công cụ để truy vấn DL 13 [email protected] Phương pháp lưu dữ liệu bằng CSDL ‹ Việc truy xuất CSDL có kiểm soát có thể bao gồm các hệ thống sau: – – – – – Hệ thống bảo mật DL Hệ thống nhất quán DL Hệ thống kiểm soát đồng thời Hệ thống kiểm soát việc phục hồi DL Bảng ghi quyền truy xuất của các users ‹ Dùng cơ chế khung nhìn dữ liệu (view mechanism) – Cung cấp cho người dùng chính xác các DL mà người dùng đang cần 14 Chương 1: Tổng quan về cơ sở dữ liệu Trang 7 Nhập môn cơ sở dữ liệu www.ou.edu.vn [email protected] Khung nhìn dữ liệu (View) (1) ‹ Cho phép mỗi user có cái nhìn riêng về CSDL ‹ Khung nhìn dữ liệu được xem là một phần cơ bản của CSDL 15 [email protected] Khung nhìn dữ liệu (View) (2) ‹ Lợi ích của việc dùng view: – Làm giảm sự phức tạp của CSDL – Cung cấp thêm một mức độ an toàn – Cung cấp một cơ chế tùy biến để có thể thay đổi cách trình bày CSDL – Giúp ta có một cái nhìn không thay đổi đối với cấu trúc của một CSDL, cho dù bản thân CSDL đó có thể bị thay đổi 16 Chương 1: Tổng quan về cơ sở dữ liệu Trang 8 Nhập môn cơ sở dữ liệu www.ou.edu.vn [email protected] Các thành phần của môi trường dùng DBMS (1) 17 [email protected] Các thành phần của môi trường dùng DBMS (2) ‹ Phần cứng (Hardware) – Có thể là một máy PC hay là một mạng máy tính ‹ Phần mềm (Software) – Hệ DBMS, hệ điều hành, phần mềm mạng (nếu cần) và các chương trình ứng dụng ‹ Dữ liệu (Data) – Là DL được dùng và sự miêu tả về DL đó (được gọi là lược đồ DL (schema)) 18 Chương 1: Tổng quan về cơ sở dữ liệu Trang 9 Nhập môn cơ sở dữ liệu www.ou.edu.vn [email protected] Các thành phần của môi trường dùng DBMS (3) ‹ Các thủ tục (Procedures) – Tài liệu hướng dẫn và các qui tắc được áp dụng khi thiết kế CSDL, sử dụng CSDL và DBMS ‹ Người dùng (People) 19 [email protected] Vai trò của con người trong môi trường DBMS ‹ Người quản trị dữ liệu (Data Administrator (DA)) ‹ Người quản trị CSDL (Database Administrator (DBA)) ‹ Người thiết kế CSDL (Database Designers) Mức logic và vật lý (Logical and Physical) ‹ Người lập trình ứng dụng (Application Programmers) ‹ Người sử dụng chương trình (End Users) Mức cơ bản và mức thành thạo (naive and sophisticated) 20 Chương 1: Tổng quan về cơ sở dữ liệu Trang 10 Nhập môn cơ sở dữ liệu www.ou.edu.vn [email protected] Lịch sử các hệ thống cơ sở dữ liệu Thế hệ đầu tiên (First generation) – Hệ thống CSDL phân cấp (Hierarchical) – Hệ thống CSDL mạng (Network) ‹ Thế hệ thứ hai (Second generation) – Hệ thống CSDL quan hệ (Relational) ‹ Thế hệ thứ ba (Third generation) – Hệ thống CSDL quan hệ - đối tượng (Object Relational) – Hệ thống CSDL hướng đối tượng (Object-Oriented) ‹ 21 [email protected] Ưu điểm của DBMS (1) ‹ Có kiểm soát sự dư thừa dữ liệu ‹ Có tính nhất quán dữ liệu (data consistency) ‹ Chứa được nhiều thông tin hơn với cùng số lượng dữ liệu như nhau ‹ Cho phép chia sẽ dữ liệu ‹ Tăng cường sự toàn vẹn của dữ liệu (data integrity) ‹ Tăng độ bảo mật (security) ‹ Có tuân theo các tiêu chuẩn ‹ Tiết kiệm về kích cỡ 22 Chương 1: Tổng quan về cơ sở dữ liệu Trang 11 Nhập môn cơ sở dữ liệu www.ou.edu.vn [email protected] Ưu điểm của DBMS (2) ‹ Cân đối các yêu cầu có tính xung đột ‹ Tăng cường khả năng truy xuất và đáp ứng của dữ liệu (accessibility and responsiveness) ‹ Nâng cao hiệu suất (productivity) ‹ Bảo trì tốt hơn nhờ dữ liệu độc lập với chương trình ‹ Tăng khả năng sử dụng đồng thời ‹ Cải thiện chức năng sao lưu và phục hồi dữ liệu 23 [email protected] Nhược điểm của DBMS ‹ ‹ ‹ ‹ ‹ ‹ ‹ Phức tạp (Complexity) Nhược điểm về kích thước (Size) Nhược điểm về chi phí (Cost of DBMS) Phải tốn chi phí thêm cho phần cứng Tốn chi phí vào việc chuyển đổi (Cost of conversion) Nhược điểm về tốc độ thực hiện Dễ bị hư hỏng hơn HẾT CHƯƠNG 1 24 Chương 1: Tổng quan về cơ sở dữ liệu Trang 12 Nhập môn cơ sở dữ liệu www.ou.edu.vn [email protected] Chương 2: Môi trường của cơ sở dữ liệu Tham khảo tài liệu [A]: Chapter 2: Database Environment 1 [email protected] Nội dung chương 2 (1) ‹ Mục đích của kiến trúc CSDL 3 mức ‹ Nội dung của mức ngoài, mức ý niệm và mức trong (external, conceptual, and internal levels) ‹ Mục đích của việc ánh xạ mức ngoài/mức ý niệm và mức ý niệm/mức trong ‹Ý nghĩa của sự độc lập dữ liệu giữa logic và vật lý ‹ Phân biệt DDL và DML ‹ Phân loại các mô hình dữ liệu 2 Chương 2: Môi trường của cơ sở dữ liệu Trang 1 Nhập môn cơ sở dữ liệu www.ou.edu.vn [email protected] Nội dung chương 2 (2) ‹ Mục đích và tầm quan trọng của việc mô hình hóa mức ý niệm ‹ Các chức năng và dịch vụ chính yếu của DBMS ‹ Các thành phần phần mềm của DBMS ‹ Ý nghĩa của kiến trúc client–server và sự tiện lợi của kiến trúc này đối với DBMS ‹ Chức năng và các trường hợp dùng Bộ giám sát việc xử lý giao tác (Transaction Processing Monitor) ‹ Chức năng và tầm quan trọng của catalog hệ thống (system catalog) 3 [email protected] Mục tiêu của kiến trúc 3 mức ‹ Tất cả users có thể truy xuất dữ liệu như nhau ‹ View của một user không bị thay đổi khi các view khác bị thay đổi ‹ Users không cần phải biết chi tiết ở mức vật lý cơ sở dữ liệu được lưu như thế nào 4 Chương 2: Môi trường của cơ sở dữ liệu Trang 2 Nhập môn cơ sở dữ liệu www.ou.edu.vn [email protected] Mục tiêu của kiến trúc 3 mức ‹ Người quản trị CSDL (DBA) có thể thay đổi cấu trúc lưu trữ CSDL nhưng không làm ảnh hưởng đến views của các users ‹ Cấu trúc mức trong của CSDL không bị ảnh hưởng bởi sự thay đổi các yếu tố mức vật lý ‹ DBA có thể thay đổi cấu trúc mức ý niệm nhưng không làm ảnh hưởng đến tất cả các users 5 Kiến trúc 3 mức ANSI-SPARC (ANSI-SPARC Three-level Architecture) [email protected] 6 Chương 2: Môi trường của cơ sở dữ liệu Trang 3 Nhập môn cơ sở dữ liệu www.ou.edu.vn [email protected] Kiến trúc 3 mức ANSI-SPARC ‹ Mức ngoài (External Level) – gồm các views của các users – miêu tả từng phần của CSDL có liên quan đến từng user ‹ Mức ý niệm (Conceptual Level) – là một view tổng quát cho cả CSDL – miêu tả dữ liệu gì được lưu trong CSDL và mối quan hệ giữa các dữ liệu đó ra sao 7 [email protected] Kiến trúc 3 mức ANSI-SPARC ‹ Mức trong (Internal Level) – là sự thể hiện ở mức vật lý của CSDL trên máy tính – miêu tả dữ liệu được lưu như thế nào trong CSDL 8 Chương 2: Môi trường của cơ sở dữ liệu Trang 4 Nhập môn cơ sở dữ liệu www.ou.edu.vn [email protected] Sự khác nhau giữa 3 mức 9 [email protected] Sự độc lập về dữ liệu (Data Independence) (1) ‹ Độc lập về mặt logic: – Loại trừ sự thay đổi của lược đồ mức ngoài khi lược đồ mức ý niệm thay đổi – Cho phép lược đồ mức ý niệm thay đổi (ví dụ khi thêm/bớt thực thể) – Không yêu cầu thay đổi của lược đồ mức ngoài hay viết lại chương trình ứng dụng 10 Chương 2: Môi trường của cơ sở dữ liệu Trang 5 Nhập môn cơ sở dữ liệu www.ou.edu.vn [email protected] Sự độc lập về dữ liệu (Data Independence) (2) ‹ Độc lập về mặt vật lý: – Loại trừ sự thay đổi của lược đồ mức ý niệm khi lược đồ mức trong thay đổi – Cho phép lược đồ mức trong thay đổi (ví dụ khi dùng cách tổ chức file khác nhau, các thiết bị hay các cấu trúc lưu trữ khác nhau) – Không yêu cầu thay đổi lược đồ mức ý niệm hay mức ngoài 11 [email protected] Độc lập dữ liệu của kiến trúc ANSI-SPARC 3 mức 12 Chương 2: Môi trường của cơ sở dữ liệu Trang 6 Nhập môn cơ sở dữ liệu www.ou.edu.vn [email protected] Ngôn ngữ cho CSDL (Database Languages) (1) ‹ Ngôn ngữ định nghĩa dữ liệu (DDL) – Cho phép người quản trị CSDL (DBA) hoặc user miêu tả và đặt tên cho các thực thể, các thuộc tính, và các mối quan hệ cần thiết của ứng dụng – Ngoài ra còn tạo sự toàn vẹn trong kết hợp DL (associated integrity) và sự ràng buộc an toàn DL (security constraints) 13 [email protected] Ngôn ngữ cho CSDL (Database Languages) (2) Ngôn ngữ thao tác dữ liệu DML – Cung cấp các phép thực hiện thao tác cơ bản trên dữ liệu đang lưu trong CSDL ‹ Ngôn ngữ DML thủ tục (Procedural DML) – Cho phép user ra lệnh một cách chi tiết cho hệ thống phải làm như thế nào (HOW) để thao tác dữ liệu ‹ Ngôn ngữ DML phi thủ tục (Non-Procedural DML) – Cho phép user đưa ra yêu cầu về dữ liệu đang cần (WHAT), chứ không nói cách thức hệ thống phải truy xuất dữ liệu đó như thế nào ‹ 14 Chương 2: Môi trường của cơ sở dữ liệu Trang 7 Nhập môn cơ sở dữ liệu www.ou.edu.vn [email protected] Ngôn ngữ cho CSDL (Database Languages) (3) ‹ Ngôn ngữ thế hệ thứ 4 (Fourth Generation Language (4GL)) – Ngôn ngữ truy vấn (Query Languages) ví dụ ngôn ngữ SQL, ngôn ngữ QBE – Công cụ tạo cửa sổ giao diện (Forms Generators) – Công cụ tạo bảng báo cáo (Report Generators) – Công cụ tạo biểu đồ dữ liệu (Graphics Generators) – Công cụ tạo ứng dụng (Application Generators) 15 [email protected] Mô hình dữ liệu (Data Model) (1) ‹ Là tập hợp các khái niệm có liên quan, dùng để miêu tả dữ liệu, mối quan hệ giữa các dữ liệu, và các ràng buộc trên dữ liệu của một tổ chức ‹ Mô hình dữ liệu bao gồm: – Một phần cấu trúc (A structural part) – Một phần thao tác (A manipulative part) – Có thể có một tập các qui tắc toàn vẹn (integrity rules) 16 Chương 2: Môi trường của cơ sở dữ liệu Trang 8
- Xem thêm -

Tài liệu liên quan