Bài giảng Cơ sở dữ liệu - Chương 1: Đại cương về các hệ cơ sở dữ liệu - Nguyễn Hồng Phương

Nội dung chương này  
Chương 1  
Đại cương về các hệ cơ sở dữ liệu  
• 1.1 Các hệ thống xử lý tệp  
truyền thống và những hạn  
chế của nó.  
Nguyễn Hồng Phương  
• 1.2 Các hệ CSDL: khái niệm,  
khả năng, kiến trúc, người  
dùng của một hệ quản trị  
CSDL.  
• 1.3 Sự phân loại các hệ  
CSDL.  
Bộ môn Hệ thống thông tin  
Viện Công nghệ thông tin và Truyền thông  
Đại học Bách Khoa Hà Nội  
1
2
1.1 Các hệ thống xử lý tệp  
truyền thống  
Các hệ thống xử lý tệp truyền thống  
• Mỗi chương trình ứng dụng  
định nghĩa và quản lý các tệp  
dữ liệu của riêng nó.  
• Trước khi xuất hiện các phần  
mềm hệ quản trị CSDL, trong  
quá khứ các hệ thống trên cơ  
sở tệp đã được tạo lập để xử  
lý một số lượng lớn dữ liệu.  
• Bước khởi đầu của quá trình  
tin học hóa doanh nghiệp.  
• Tập trung vào nhu cầu xử lý dữ liệu  
của các phòng riêng lẻ trong tổ chức  
mà không xem xét tổng thể tổ chức  
này.  
• Viết một chương trình mới  
đối với mỗi ứng dụng đơn lẻ,  
không có kế hoạch, không có  
mô hình hướng đến sự  
tăng trưởng.  
3
4
1
Hạn chế của các hệ thống xử lý  
tệp truyền thống  
Nội dung chương này  
• 1.1 Các hệ thống xử lý tệp  
truyền thống và những hạn  
chế của nó.  
• 1.2 Các hệ CSDL: khái niệm,  
khả năng, kiến trúc, người  
dùng của một hệ quản trị  
CSDL.  
• Dư thừa và không nhất quán dữ liệu  
• Khó khăn trong truy nhập dữ liệu  
• Cô lập và hạn chế chia sẻ dữ liệu  
• Các vấn đề về an toàn và toàn vẹn  
• Các vấn đề về độ tin cậy  
• Sự phụ thuộc dữ liệu của các chương  
trình ứng dụng  
• 1.3 Sự phân loại các hệ  
CSDL.  
5
6
Ví dụ về quản lý đào tạo  
1.2 Các hệ cơ sở dữ liệu  
• Thông tin cần quan tâm  
Khóa học, lớp học, sinh viên, giáo viên,  
môn học,…  
Thông tin về sinh viên: thông tin cá  
nhân, thông tin học tập,…  
Thông tin về môn học: khối lượng, giáo  
viên, lịch học,…  
• CSDL (database) là gì ?  
• Tại sao phải sử dụng CSDL ?  
• Tại sao phải tìm hiểu về các hệ CSDL  
(database systems) ?  
• Cần lưu trữ những thông tin đa dạng  
Cơ sở dữ liệu  
7
8
2
Ví dụ: khai thác thông tin  
"Hình dung" về xây dựng một CSDL  
• Sinh viên  
• Yêu cầu  
Các môn học trong CTĐT?  
– Lưu trữ thông tin cần thiết một cách chính xác  
– Truy xuất thông tin hiệu quả  
Điểm thi môn "Cơ sở dữ liệu"?  
• Giáo viên  
Danh sách sinh viên lớp 111565 ?  
Thời khóa biểu của lớp KTMT1-K62 ?  
• Giáo vụ  
• Thực hiện  
– Xác định yêu cầu nghiệp vụ  
– Xác định thông tin cần lưu trữ  
– Xác định cách thức lưu trữ  
Danh sách sinh viên K59 tốt  
nghiệp loại giỏi ?...  
• Cần công cụ trợ giúp xây dựng một CSDL  
Phần mềm quản trị CSDL  
Phần mềm ứng dụng  
9
10  
Hệ quản trị cơ sở dữ liệu  
Cơ sở dữ liệu (database)  
(Database Management System-DBMS)  
• Là một tập hợp các dữ liệu  
• Là một hệ thống phần mềm cho  
phép  
– Biểu diễn một vài khía cạnh nào đó của thế  
giới thực  
– Có liên hệ logic thống nhất  
– Được thiết kế và bao gồm những dữ liệu phục  
vụ một mục đích nào đó.  
Định nghĩa, tạo lập: xác định kiểu, cấu  
trúc, ràng buộc dữ liệu, lưu trữ dữ liệu  
trên các thiết bị nhớ.  
Thao tác: truy vấn, cập nhật, kết xuất,…  
các CSDL cho các ứng dụng khác nhau  
• Là một bộ sưu tập các dữ liệu tác nghiệp  
được lưu trữ lại và được các hệ ứng dụng  
của một xí nghiệp cụ thể nào đó sử dụng.  
• Ví dụ: MS SQL Server, mySQL,  
PostGreSQL, DB2, MS Access,  
Oracle, FoxPro,…  
11  
3
Hệ cơ sở dữ liệu  
Hệ CSDL  
• Là một hệ thống gồm 4 thành phần  
Hệ quản trị CSDL  
Hệ  
CSDL  
Ứng dụng  
Phần cứng  
CSDL và phần mềm ứng dụng  
Những người sử dụng  
Hệ Quản Trị CSDL  
• Ví dụ: Hệ quản lý đào tạo, hệ quản lý  
nhân sự, hệ quản lý kinh doanh,…  
CSDL  
CSDL  
13  
14  
Các tính năng của hệ quản trị CSDL  
Các tính năng của hệ quản trị CSDL  
• Hỗ trợ ít nhất một mô hình dữ liệu  
• Đảm bảo tính độc lập dữ liệu  
• Quản lý dữ liệu tồn tại lâu dài  
Định nghĩa dữ liệu  
• Hỗ trợ các ngôn ngữ cấp cao nhất  
định cho phép người sử dụng định  
nghĩa cấu trúc của dữ liệu, truy nhập  
và thao tác dữ liệu  
• Điều khiển truy nhập  
• Phục hồi dữ liệu  
Quản lý lưu trữ  
• Truy xuất dữ liệu một cách hiệu quả  
Biểu diễn các thao tác dữ liệu  
Xử lý câu hỏi  
Quản trị giao dịch  
15  
16  
4
Các ngôn ngữ  
Sự trừu tượng hóa dữ liệu  
• Ngôn ngữ định nghĩa dữ liệu (Data  
Definition Language - DDL)  
– Cấu trúc dữ liệu  
...  
Khung nhìn 1  
Khung nhìn n  
Mức khung nhìn  
(ngoài)  
– Mối liên hệ giữa các dữ liệu và quy tắc, ràng  
mô tả cách mà người sử  
dụng có thể nhìn thấy dữ  
liệu  
buộc áp đặt lên dữ liệu  
• Ngôn ngữ thao tác dữ liệu (Data  
Manipulation Language - DML)  
Sơ đồ khái niệm  
định nghĩa cấu trúc logic  
của dữ liệu, dữ liệu nào  
được lưu trữ và mối quan  
hệ giữa các dữ liệu  
(logic)  
– Tìm kiếm, thêm, xóa, sửa dữ liệu trong CSDL  
Mức quan niệm  
(logic)  
• Ngôn ngữ điều khiển dữ liệu (Data  
Control Language - DCL)  
định nghĩa cấu trúc các  
tệp và chỉ dẫn được sử  
dụng trong cơ sở dữ liệu  
(cách lưu trữ dữ liệu như  
thế nào)  
– Thay đổi cấu trúc của các bảng dữ liệu  
– Khai báo bảo mật thông tin  
Sơ đồ trong  
(vật lý)  
– Quyền hạn của người dùng trong khai thác  
Mức lưu trữ  
(trong)  
CSDL  
17  
18  
Kiến trúc của một hệ quản trị CSDL  
Quản lý lưu trữ  
Các thay đổi sơ đồ  
Các truy vấn  
Các thay đổi dữ liệu  
• Yêu cầu  
Bộ quản lý lưu trữ  
lưu trữ và truy xuất  
dữ liệu trên các thiết  
bị nhớ  
Quản  
lý  
giao  
dịch  
Quản lý buffer  
Quản lý tệp  
Bộ xử lý  
câu hỏi  
Bộ quản trị  
giao dịch  
• Thực hiện  
Tổ chức tối ưu dữ liệu  
trên thiết bị nhớ  
Bộ quản lý  
lưu trữ  
Tương tác hiệu quả  
với bộ quản lý tệp  
Metadata &  
Data dictionary  
(từ điển dữ liệu)  
Data & index  
(chỉ mục)  
Siêu dữ liệu  
(metadata)  
Dữ liệu (data)  
19  
20  
5
Quản trị giao dịch  
Xử lý câu hỏi  
Bộ xử lý câu hỏi  
• Yêu cầu  
– Tìm kiếm dữ liệu trả  
lời cho một yêu cầu  
truy vấn.  
• Yêu cầu  
Bộ biên dịch  
Bộ đánh giá  
Định nghĩa giao dịch: một tập các thao  
tác được xử lý như một đơn vị không  
chia căt được.  
Bộ tối ưu  
• Thực hiện  
– Biến đổi truy vấn ở  
mức cao thành các  
yêu cầu có thể hiểu  
được bởi hệ CSDL.  
– Lựa chọn một kế  
hoạch tốt nhất để trả  
lời truy vấn này.  
Đảm bảo tính đúng đắn và tính nhất  
quán của dữ liệu.  
• Thực hiện  
Bộ quản lý  
lưu trữ  
Quản lý điều khiển tương tranh.  
Phát hiện lỗi và phục hồi CSDL  
Metadata &  
Data dictionary  
Data & index  
21  
22  
Người dùng  
Người dùng  
Người phân tích hệ thống và phát triển ứng  
dụng: chịu trách nhiệm xác định yêu cầu của  
người dùng cuối, xác định các giao dịch cần thiết  
để đáp ứng các yêu cầu người dùng. Người lập  
trình ứng dụng cài đặt những yêu cầu này trong  
chương trình, kiểm thử, gỡ rối, lập tài liệu cho  
chương trình  
Người thiết kế và cài đặt hệ QTCSDL:  
chịu trách nhiệm thiết kế và cài đặt các  
module của hệ QTCSDL và các giao diện  
dưới hình thức các gói phần mềm  
Người phát triển công cụ: chịu trách  
nhiệm thiết kế và cài đặt các gói phần mềm  
hỗ trợ cho việc thiét kê, sử dụng cũng như  
tăng cường hiệu năng của các hệ CSDL.  
Người thiết kế CSDL: chịu trách nhiệm xác định  
dữ liệu lưu trữ trong CSDL và cấu trúc biểu diễn  
và lưu trữ những dữ liệu này  
23  
24  
6
Nội dung chương này  
Người dùng  
• 1.1 Các hệ thống xử lý tệp  
truyền thống và những hạn  
chế của nó.  
• 1.2 Các hệ CSDL: khái niệm,  
khả năng, kiến trúc, người  
dùng của một hệ quản trị  
CSDL.  
Người sử dụng cuối: là người khai thác các hệ  
CSDL  
Người quản trị CSDL: chịu trách nhiệm cho  
phép truy nhập CSDL, điều phối và kiểm tra sử  
dụng CSDL, quản lý tài nguyên phần cứng và  
phân mềm khi cần thiết  
Người bảo trì hệ thống: là những người quản  
trị hệ thống chịu trách nhiệm việc hoạt động và  
bảo trì môi trường (phần cứng và phần mềm)  
cho hệ CSDL  
• 1.3 Sự phân loại các hệ  
CSDL.  
25  
26  
Các hệ CSDL tập trung  
1.3 Phân loại các hệ CSDL  
• Hệ CSDL cá nhân: một người sử dụng đơn  
lẻ vừa thiết kế, tạo lập CSDL, cập nhật,  
bảo trì dữ liệu, lập và hiển thị báo cáo.  
• Mô hình dữ liệu  
– Mạng vs. phân cấp vs. quan hệ vs. hướng đối  
tượng vs. ...  
đảm nhiệm vai trò: người quản trị CSDL, người  
• Số người sử dụng  
viết chương trình ứng dụng, end-user.  
– Một người dùng vs. nhiều người dùng  
• Hệ CSDL trung tâm: dữ liệu được lưu trữ  
trên một máy tính trung tâm.  
• Tính phân tán của CSDL  
– Tập trung vs. Phân tán  
• Hệ CSDL khách-chủ:  
– Các máy tính trung tâm lớn đắt so với các  
• Tính thống nhất của dữ liệu  
máy nhỏ và máy trạm.  
– Đồng nhất vs. Không đồng nhất  
– Các ứng dụng máy khách truy nhập dữ liệu  
• ...  
được quản lý bởi máy chủ.  
27  
28  
7
Các hệ CSDL tập trung (tiếp)  
Các hệ CSDL phân tán  
• CSDL phân tán? Là một tập các CSDL có  
quan hệ logic với nhau nhưng được trải ra  
trên nhiều trạm làm việc của một mạng  
máy tính.  
Hệ CSDL trung  
tâm  
• Có 2 tính chất: quan hệ logic và phân tán  
Hệ CSDL cá nhân  
• Hệ QTCSDL phân tán: Là một hệ thống  
phần mềm cho phép tạo lập CSDLPT và  
điều khiển các truy nhập đối với CSDLPT  
này.  
• Chia ra 2 loại: CSDLPT thuần nhất và  
không thuần nhất  
Hệ CSDL khách-  
chủ  
29  
30  
Kết luận  
Các hệ CSDLPT (tiếp)  
• CSDL cho phép lưu trữ và khai thác dữ  
liệu một cách thống nhất và hiệu quả (đặc  
biệt trong trường hợp khối lượng dữ liệu  
lớn).  
• Sự trừu tượng về dữ liệu và tính độc lập  
dữ liệu cho phép phát triển ứng dụng “dễ  
dàng hơn”.  
• Hệ quản trị CSDL cung cấp các công cụ  
hữu hiệu trợ giúp việc tạo lập CSDL và  
phát triển ứng dụng  
31  
32  
8
Các điểm cần lưu ý trong chương này  
Sử dụng kiến thức môn học này  
trong tương lai  
• Cách tiếp cận tệp vs. cách tiếp cận  
CSDL  
• CSDL vs. hệ QTCSDL vs. hệ CSDL  
• Kiến trúc 3 mức của hệ CSDL  
‘‘More than 80 % of real world computer applications  
are associated with databases’’*  
* Korth & Silberschatz. Database System Concepts.  
• Các chức năng chính của một hệ  
QTCSDL  
• Người sử dụng trong một hệ CSDL  
• Phân loại các hệ CSDL  
Nghiên cứu  
Phát triển  
ứng dụng  
nghiên cứu và  
phát triển  
33  
34  
Lời hay ý đẹp  
Điều chúng ta biết chỉ là một giọt nước,  
điều không biết mênh mông như đại dương  
Einstein  
35  
36  
9
pdf 9 trang Thùy Anh 26/04/2022 6520
Bạn đang xem tài liệu "Bài giảng Cơ sở dữ liệu - Chương 1: Đại cương về các hệ cơ sở dữ liệu - Nguyễn Hồng Phương", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfbai_giang_co_so_du_lieu_chuong_1_dai_cuong_ve_cac_he_co_so_d.pdf