Bài giảng môn học Cơ sở dữ liệu - Chương 1: Tổng quan về cơ sở dữ liệu

Giới thiệu

 Ví dụ:

- Kinh doanh

- Ngân hàng và tài chính

- Giáo dục

- Hành chính

- Giải trí

-

 Dữ liệu (Data)

- Một mô tả về thông tin và hoạt động

• Tên, địa chỉ, số điện thoại của khách hàng

• Thông tin bán hàng

• Đăng ký học phần

- Dữ liệu tạo ra thông tin

• Báo cáo doanh thu

Thông tin

Dữ liệu

Chọn lọcCơ sở dữ liệu

Giới thiệu (tt)

 Cơ sở dữ liệu (Database)

- 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

• Danh sách sinh viên

• Niên giám điện thoại

• Danh mục các đề án

- Một CSDL biểu diễn một phần của thế giới thực (thế giới

thu nhỏ)

- CSDL được thiết kế, xây dựng, và lưu trữ với một mục

đích xác định, phục vụ cho một số ứng dụng và người

dùng

- Tập ngẫu nhiên của các dữ liệu không thể xem là một

CSDL

pdf 43 trang kimcuc 3200
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng môn học Cơ sở dữ liệu - Chương 1: Tổng quan về cơ sở dữ liệu", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Bài giảng môn học Cơ sở dữ liệu - Chương 1: Tổng quan về cơ sở dữ liệu

Bài giảng môn học Cơ sở dữ liệu - Chương 1: Tổng quan về cơ sở dữ liệu
Chương 1
Tổng quan về CSDL
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 2
Nội dung chi tiết
 Giới thiệu
 Quá trình phát triển
 Một số đặc tính của CSDL
 Người sử dụng CSDL
 Kiến trúc của HQT CSDL
 Các tính năng của HQT CSDL
 Mô hình dữ liệu
 Ngôn ngữ CSDL
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 3
Giới thiệu
 Ví dụ:
- Kinh doanh
- Ngân hàng và tài chính
- Giáo dục
- Hành chính
- Giải trí
- 
 Dữ liệu (Data)
- Một mô tả về thông tin và hoạt động
• Tên, địa chỉ, số điện thoại của khách hàng
• Thông tin bán hàng
• Đăng ký học phần
- Dữ liệu tạo ra thông tin
• Báo cáo doanh thu
Thông tin
Dữ liệu
Chọn lọc
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 4
Giới thiệu (tt)
 Cơ sở dữ liệu (Database)
- 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
• Danh sách sinh viên
• Niên giám điện thoại
• Danh mục các đề án
- Một CSDL biểu diễn một phần của thế giới thực (thế giới
thu nhỏ)
- CSDL được thiết kế, xây dựng, và lưu trữ với một mục
đích xác định, phục vụ cho một số ứng dụng và người
dùng
- Tập ngẫu nhiên của các dữ liệu không thể xem là một
CSDL
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 5
Giới thiệu (tt)
 Hệ quản trị CSDL (Database Management System)
- Tập hợp các chương trình hoặc hệ thống được thiết kế
để tạo ra và duy trì hoạt động của một CSDL.
- Một phần mềm hệ thống cho phép định nghĩa, xây dựng
và xử lý dữ liệu
• Đị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
• Xây dựng – lưu trữ dữ liệu lên bộ nhớ phụ
• Xử lý – truy vấn, cập nhật và phát sinh báo cáo
 Một số hệ QTCSDL phổ biến: MySQL, Oracle, SQL
Server, 
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 6
Giới thiệu (tt)
 Hệ CSDL (Database System)
Xử lý truy vấn
HQT CSDL
Truy xuất dữ liệu
CSDL
Định nghĩa
CSDL
Người sử dụng/Lập trình viên
Chương trình ứng dụng/Truy vấn
Hệ CSDL 
Catalog
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 7
Một ví dụ về CSDL
PHANCONG MA_NVIEN SODA THOIGIAN
123456789 1 32.5
123456789 2 7.5
666884444 3 40.0
453453453 1 20.0
DEAN TENDA MADA DDIEM_DA PHONG
San pham X 1 VUNG TAU 5
San pham Y 2 NHA TRANG 5
San pham Z 3 TP HCM 5
Tin hoc hoa 10 HA NOI 4
NHANVIEN HONV TENLOT TENNV MANV NGSINH MA_NQL PHG
Tran Hong Quang 987987987 03/09/1969 987654321 4
Nguyen Thanh Tung 333445555 12/08/1955 888665555 5
Nguyen Manh Hung 666884444 09/15/1962 333445555 5
Tran Thanh Tam 453453453 07/31/1972 333445555 5
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 8
Một ví dụ về CSDL (tt)
 Quản lý đề án của một công ty
- Định nghĩa CSDL
• Cấu trúc bảng, bao gồm các thành phần dữ liệu và kiểu dữ
liệu tương ứng
- Xây dựng CSDL
• Đưa dữ liệu vào các bảng
- Xử lý CSDL
• Thực hiện các truy vấn: “Cho biết những nhân viên thuộc
phòng 5”
• Thực hiện các phép cập nhật: “Chuyển nhân viên Nguyễn
Thanh Tùng sang phòng số 1”
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 9
Nội dung chi tiết
 Giới thiệu
 Quá trình phát triển
 Một số đặc tính của CSDL
 Người sử dụng CSDL
 Kiến trúc của HQT CSDL
 Các tính năng của HQT CSDL
 Mô hình dữ liệu
 Ngôn ngữ CSDL
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 10
Quá trình phát triển
 Tập tin (File)
Chương trình ứng dụng 1
Chương trình ứng dụng 2
Chương trình ứng dụng 3
Tập
tin
Tập
tin
Tập
tin
Hệ
Thống 
Quản
Lý 
Tập 
Tin 
Dữ liệu
Mỗi chương trình đều có dữ liệu tương ứng
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 11
Quá trình phát triển (tt)
 Hạn chế
- Dữ liệu bị trùng lắp
• Tốn không gian lưu trữ
• Tiềm tàng khả năng dữ liệu không nhất quán
- Việc chia sẻ dữ liệu bị hạn chế
- Khó khôi phục
- Tính bảo mật thấp
 Nhưng vẫn phù hợp với 1 số ứng dụng
- Kích cỡ ứng dụng nhỏ
• Chỉ có dữ liệu, không có những xử lý dữ liệu khác
- Ít tốn kém chi phí
• Vận hành hay bảo trì
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 12
Quá trình phát triển (tt)
 Cơ sở dữ liệu (Database)
Hệ
Quản
Trị
CSDL 
Chương trình ứng dụng 1
Chương trình ứng dụng 2
Chương trình ứng dụng 3
CSDL
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 13
Nội dung chi tiết
 Giới thiệu
 Quá trình phát triển
 Một số đặc tính của CSDL
- Tính tự mô tả
- Tính độc lập giữa chương trình và dữ liệu
- Tính trừu tượng dữ liệu
- Tính nhất quán
- Cách nhìn dữ liệu
 Người sử dụng CSDL
 Kiến trúc của HQT CSDL
 Các tính năng của HQT CSDL
 Mô hình dữ liệu
 Ngôn ngữ CSDL
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 14
Tính tự mô tả
 Hệ CSDL không chỉ chứa bản thân CSDL mà còn
chứa định nghĩa đầy đủ (mô tả) của CSDL
 Các định nghĩa được lưu trữ trong catalog
- Chứa các thông tin về cấu trúc tập tin, kiểu và dạng thức
lưu trữ của mỗi thành phần dữ liệu và những ràng buộc
dữ liệu
 Dữ liệu trong catalog gọi là meta-data (data of data)
 Các CTƯD có thể truy xuất đến nhiều CSDL nhờ
thông tin cấu trúc được lưu trữ trong catalog
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 15
Tính độc lập
 Vì định nghĩa về cấu trúc CSDL được lưu trữ trong
catalog nên khi có thay đổi nhỏ về cấu trúc ta ít phải
sửa lại chương trình
Độc lập
Chương trình
Dữ liệu
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 16
Tính trừu tượng
 Hệ CSDL cho phép trình bày dữ liệu ở một mức
trừu tượng cho phép, nhằm che bớt những chi tiết
lưu trữ thật của dữ liệu
 Trừu tượng hóa dữ liệu
- Mô hình dữ liệu
• Đối tượng
• Thuộc tính của đối tượng
• Mối liên hệ
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 17
Tính nhất quán
 Lưu trữ dữ liệu thống nhất
- Tránh được tình trạng trùng lắp thông tin
 Có cơ chế điều khiển truy xuất dữ liệu hợp lý
- Tránh được việc tranh chấp dữ liệu
- Bảo đảm dữ liệu luôn đúng khi muốn truy xuất
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 18
Cách nhìn dữ liệu
 Hệ CSDL cho phép nhiều người dùng thao tác lên
cùng một CSDL
 Mỗi người đòi hỏi một cách nhìn (view) khác nhau
về CSDL
 Một view là
- Một phần của CSDL hoặc
- Dữ liệu tổng hợp từ CSDL
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 19
Nội dung chi tiết
 Giới thiệu
 Quá trình phát triển
 Một số đặc tính của CSDL
 Người sử dụng CSDL
- Quản trị viên (Database Administrator - DBA)
- Thiết kế viên (Database Designer)
- Người dùng cuối (End User)
 Kiến trúc của HQT CSDL
 Các tính năng của HQT CSDL
 Mô hình dữ liệu
 Ngôn ngữ CSDL
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 20
Quản trị viên 
 Có trách nhiệm quản lý hệ CSDL
- Cấp quyền truy cập CSDL
- Điều phối và giám sát việc sử dụng CSDL
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 21
Thiết kế viên 
 Chịu trách nhiệm về
- Lựa chọn cấu trúc phù hợp để lưu trữ dữ liệu
- Quyết định những dữ liệu nào cần được lưu trữ
 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
 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
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 22
Người dùng cuối 
 Người ít sử dụng
- Í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
- Người quản lý
 Người sử dụng thường xuyên
- 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
- Nhân viên
 Người sử dụng đặc biệt
- Thông thạo về HQT CSDL, tự xây dựng những truy vấn
phức tạp cho công việc
- Kỹ sư, nhà khoa học, người phân tích,
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 23
Nội dung chi tiết
 Giới thiệu
 Quá trình phát triển
 Một số đặc tính của CSDL
 Người sử dụng CSDL
 Kiến trúc của HQT CSDL
 Các tính năng của HQT CSDL
 Mô hình dữ liệu
 Ngôn ngữ CSDL
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 24
Kiến trúc của HQT CSDL 
 Kiến trúc 3 lược đồ
Mức ngoài
Mức quan niệm
Mức trong
Người dùng
Lược đồ ngoài 1 Lược đồ ngoài n
Lược đồ quan niệm
Lược đồ trong
Người dùng
Ánh xạ ngoài
(Ánh xạ quan niệm)
Ánh xạ quan niệm
(Ánh xạ trong)
Cấu trúc lưu trữ 
vật lý
Toàn bộ cấu trúc CSDL 
cho 1 cộng đồng người 
sử dụng
Một phần của CSDL cho 
1 nhóm người dùng
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 25
Kiến trúc của HQT CSDL (tt)
 Độc lập dữ liệu
- Độc lập logic
• Khả năng thay đổi lược đồ quan niệm mà không thay đổi lược
đồ ngoài hoặc các CTƯD
- Độc lập vật lý
• Khả năng thay đổi lược đồ trong mà không làm thay đổi lược
đồ quan niệm cũng như lược đồ ngoài
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 26
Kiến trúc của HQT CSDL (tt)
DDL Compiler
User/Application Database Administrator
Query Compiler
Transaction 
Manager
Execution 
Engine
Logging & 
Recovery
Concurrency 
Control
Index/File/
Record Manager
Storage
Manager
Storage
Buffer 
Manager
DDL Commands
Transaction Commands
Queries, Updates
Query plan
Index, File & 
Record Request
Page Commands
Read/Write Pages
Buffers
Log Pages
Lock Table
Metadata
Metadata, 
Statistics
Data, 
Metadata, 
Indexes
Nguồn: Database System: The Complete Book. 
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 27
Nội dung chi tiết
 Giới thiệu
 Quá trình phát triển
 Một số đặc tính của CSDL
 Người sử dụng CSDL
 Kiến trúc của HQT CSDL
 Các tính năng của HQT CSDL
 Mô hình dữ liệu
 Ngôn ngữ CSDL
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 28
Các tính năng của HQT CSDL
 Cho phép hạn chế sự trùng lắp dữ liệu
- Tích hợp các nhu cầu dữ liệu của người dùng để xây
dựng một CSDL thống nhất
 Chia sẻ dữ liệu
- Trong môi trường nhiều người dùng, các HQT phải cho
phép truy xuất dữ liệu đồng thời
 Hạn chế những truy cập không được phép
- Từng người dùng và nhóm người dùng có một tài khoản
và mật mã để truy xuất dữ liệu
 Cung cấp nhiều giao diện
- HQT cung cấp ngôn ngữ giữa CSDL và người dùng
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 29
Các tính năng của HQT CSDL (tt)
 Đảm bảo các ràng buộc toàn vẹn
- RBTV (Integrity Constraints) là những qui định cần được
thỏa mãn để đảm bảo dữ liệu luôn phản ánh đúng ngữ
nghĩa của thế giới thực
- Một số RB có thể được khai báo với HQT và HQT sẽ tự
động kiểm tra. Một số RB khác được kiểm tra nhờ
CTƯD
 Khả năng sao lưu dự phòng khi gặp sự cố
- Có khả năng khôi phục dữ liệu khi có sự hư hỏng về
phần cứng hoặc phần mềm
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 30
Các tính năng của HQT CSDL (tt)
 Các tính năng khác
- Chuẩn hóa
• Cho phép DBA định nghĩa và bắt buộc áp dụng một chuẩn
thống nhất cho mọi người dùng
- Uyển chuyển
• Khi nhu cầu công việc thay đổi, cấu trúc CSDL rất có thể thay
đổi, HQT cho phép thêm hoặc mở rộng cấu trúc mà không
làm ảnh hưởng đến CTƯD
- Giảm thời gian phát triển ứng dụng
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 31
Nội dung chi tiết
 Giới thiệu
 Quá trình phát triển
 Một số đặc tính của CSDL
 Người sử dụng CSDL
 Các tính năng của HQT CSDL
 Kiến trúc của HQT CSDL
 Mô hình dữ liệu
 Ngôn ngữ CSDL
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 32
Mô hình dữ liệu
 Bao gồm
- Các khái niệm biểu diễn dữ liệu
- Các phép toán xử lý dữ liệu
 Phân loại
- Mô hình mức cao
- Mô hình cài đặt
- Mô hình mức thấp
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 33
Mô hình dữ liệu (tt)
 Mô hình mức cao
- Cung cấp các khái niệm gần gũi với người dùng
- Mô hình phải tự nhiên và giàu ngữ nghĩa
- VD: mô hình thực thể kết hợp (ER), mô hình đối tượng
 Mô hình cài đặt
- Đưa ra các khái niệm người dùng có thể hiểu được
nhưng không quá xa với cách dữ liệu được tổ chức thật
sự trên máy tính
- VD: mô hình quan hệ, mô hình mạng, mô hình phân cấp
 Mô hình mức thấp (mô hình vật lý)
- Đưa ra các khái niệm mô tả chi tiết về cách thức dữ liệu
được lưu trữ trong máy tính
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 34
Ví dụ mô hình ER
SVien
hoc HPhan mo
MHoc
dieukien
Nganh
MaSV
Lop
Diem
(1,n)
(0,n)
Ten
(1,1)
mhoctruoc
mhocsau
(0,n)
(0,n)
Tinchi
MaMH
Khoa
TenMH
(0,n)
Hocky
GvienNam
MaHP
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 35
Ví dụ mô hình đối tượng
SVien
Ten
Lop
Nganh
LapTKB()
InBangDiem()
Diem
DiemTH
DiemLT
DiemPrj
SuaDiem()
HPhan
Ten
SLuong
0..*1..*
hoc
MHoc
Ten
Khoa
SoTinChi
CapNhatSTC()
0..*
1
mo
0..*
0..*
Dieu kien
+MHoc truoc
+MHoc sau
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 36
Ví dụ mô hình quan hệ
SVien
MaSV
Ten
Lop
Nganh
Hoc
MaSV
MaHP
DiemLT
DiemTH
HPhan
MaHP
SLuong
MaMH
MHoc
MaMH
TenMH
Khoa
TinChi
DKien
MaMH
MaMHTruoc
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 37
Ví dụ mô hình mạng
SVien MHoc 
HPhan
KQua
DKien
SVIEN_DIEM
MHOC_MO
MHOC_SAU
MHOC_TRUOC
KQUA_HPHAN
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 38
Ví dụ mô hình phân cấp
SVien
TenSV Lop Nganh
HPhan
TenHP SLuong
MHoc
TenMH Khoa TinChi
Mức 2:
Mức 1:
Mức 3:
KQua
DiemTH DiemLT
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 39
Nội dung chi tiết
 Giới thiệu
 Quá trình phát triển
 Một số đặc tính của CSDL
 Người sử dụng CSDL
 Các tính năng của HQT CSDL
 Kiến trúc của HQT CSDL
 Mô hình dữ liệu
 Ngôn ngữ CSDL
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 40
Ngôn ngữ CSDL
 Ngôn ngữ định nghĩa dữ liệu 
(DDL – Data Definition Language)
• Xác định ra lược đồ quan niệm
 Ngôn ngữ lưu trữ dữ liệu
(SDL – Storage Definition Language)
• Ngôn ngữ định nghĩa lược đồ trong
 Ngôn ngữ định nghĩa khung nhìn
(VDL – View Definition Language)
• Ngôn ngữ định nghĩa lược đồ ngoài
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 41
Ngôn ngữ CSDL (tt)
 Ngôn ngữ thao tác dữ liệu 
(DML – Data Manipulation Language)
• Cho phép truy xuất, thêm, xóa, sửa dữ liệu
• Mức cao (phi thủ tục)
• Mức thấp (thủ tục)
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 42
 Khi nào nên dùng và không nên dùng cách tiếp cận 
CSDL?
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM 43

File đính kèm:

  • pdfbai_giang_mon_hoc_co_so_du_lieu_chuong_1_tong_quan_ve_co_so.pdf