CHƯƠNG 1 TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU
GV Th.S. Thiều Quang Trung Bộ môn Khoa học cơ bản Trường Cao đẳng Kinh tế đối ngoại
Nội dung
• Giới thiệu đề cương môn học • Tổng quan về cơ sở dữ liệu
– Các khái niệm về dữ liệu, thông tin, CSDL – Các kiểu CSDL – So sánh hệ thống file với CSDL – Hệ thống CSDL và các thành phần chính – Hệ quản trị CSDL và các chức năng chính
GV: Thiều Quang Trung
2
Giới thiệu đề cương môn học
• Học phần: Cơ sở dữ liệu • Yêu cầu: bắt buộc cho chuyên ngành Tin học
quản lý
• Số tín chỉ: 2 • Phân bổ thời gian:
– Giảng lý thuyết: 30 tiết – Tự học : 60 tiết
GV: Thiều Quang Trung
3
Giới thiệu đề cương môn học
• Tóm tắt nội dung học phần:
– Cung cấp các kiến thức cơ bản về cơ sở dữ liệu, các mô hình dữ liệu, đại số quan hệ và các phép toán quan hệ, chuẩn hóa dữ liệu và ngôn ngữ truy vấn dữ liệu SQL.
– Các kiến thức này làm nền tảng cho sinh viên học tiếp các môn học Hệ quản trị cơ sở dữ liệu SQL Server, Phân tích thiết kế hệ thống, và giúp cho sinh viên trong việc xây dựng các ứng dụng phần mềm có sử dụng cơ sở dữ liệu khi làm đồ án, đề tài hay làm việc sau khi ra trường.
GV: Thiều Quang Trung
4
Giới thiệu đề cương môn học
• Tài liệu: slides bài giảng và bài tập do giảng viên
biên soạn
• Link: https://sites.google.com/site/thieutrung/ • Tài liệu tham khảo:
– Thomas Connolly & Carolyn Begg. DATABASE SYSTEMS – A practical approach to Design, Implementation, and Management, Pearson Education
– Các giáo trình môn cơ sở dữ liệu khác
GV: Thiều Quang Trung
5
Giới thiệu đề cương môn học
Tiêu chuẩn đánh giá sinh viên: • Điểm trung bình bộ phận: trọng số 40%
– 02 bài kiểm tra hệ số 2:
• 01 bài kiểm tra trắc nghiệm 1 tiết • 01 bài kiểm tra tự luận 1 tiết
• Điểm thi kết thúc học phần: trọng số 60%
– Hình thức thi: lý thuyết
GV: Thiều Quang Trung
6
Giới thiệu đề cương học phần CSDL
Nội dung học
Chương 1: Giới thiệu đề cương môn học và Tổng quan về cơ sở dữ liệu
Chương 2: Mô hình quan hệ, đại số quan hệ và các phép toán quan hệ, chuyển đổi mô hình E/R thành mô hình quan hệ
Chương 3: Chuẩn hóa cơ sở dữ liệu
Chương 4: Ngôn ngữ SQL - định nghĩa và thao tác dữ liệu
GV: Thiều Quang Trung
7
Dữ liệu & Thông tin là gì ?
GV: Thiều Quang Trung
8
Dữ liệu & Thông tin là gì ?
• Dữ liệu (data) là các dữ kiện thô chưa tinh chế • Thông tin (information) là kết quả của quá trình xử lý
dữ liệu nhằm bộc lộ ra nghĩa của nó
GV: Thiều Quang Trung
9
Cơ sở dữ liệu là gì?
• Cơ sở dữ liệu (Database) là một tập hợp có cấu trúc những dữ liệu liên quan với nhau được lưu trữ trong máy tính, bao gồm: – Dữ liệu người dùng cuối (End-user data) là các
dữ liệu liên quan tới người sử dụng – Dữ liệu về cấu trúc dữ liệu (Metadata)
• Metadata cung cấp sự mô tả các đặc điểm của
dữ liệu và các mối quan hệ trong dữ liệu
GV: Thiều Quang Trung
10
Các kiểu cơ sở dữ liệu
• CSDL có thể phân loại theo:
– Số lượng người dùng – Vị trí CSDL – Kiểu và quy mô sử dụng
• Single-user database: CSDL chỉ hỗ trợ một
người dùng tại một thời điểm – Desktop database – single-user, runs on PC • Multiuser database: CSDL hỗ trợ nhiều người
dùng tại cùng thời điểm – Workgroup database hỗ trợ số ít người dùng – Enterprise database hỗ trợ số nhiều
GV: Thiều Quang Trung
11
Các kiểu cơ sở dữ liệu
• Centralized database: CSDL tập trung tại một
vị trí
• Distributed database: CSDL được phân chia
tại nhiều vị trí khác nhau
• Operational database: CSDL hỗ trợ hoạt động
hằng ngày của công ty – Transactional hoặc production database
• Data warehouse: CSDL dạng kho dữ liệu dùng
cho việc khai thác hỗ trợ ra quyết định
GV: Thiều Quang Trung
12
Các kiểu cơ sở dữ liệu
GV: Thiều Quang Trung
13
Các kiểu cơ sở dữ liệu
• Unstructured data: dữ liệu phi cấu trúc => tồn tại ở
trạng thái nguyên thủy của dữ liệu
• Structured data: dữ liệu có cấu trúc => kết quả từ quá
trình định dạng/xử lý
• Semistructured data: dữ liệu bán cấu trúc => dữ liệu
đã được xử lý một phần
• XML database: CSDL hỗ trợ dạng dữ liệu bán cấu trúc XML (Extensible Markup Language, ngôn ngữ dùng để biểu diễn các phần tử dữ liệu trong định dạng văn bản)
GV: Thiều Quang Trung
14
Các kiểu cơ sở dữ liệu
GV: Thiều Quang Trung
15
So sánh hệ thống file với CSDL
GV: Thiều Quang Trung
16
So sánh hệ thống file với CSDL
• Hệ thống file bao gồm tập hợp các thư mục lưu các file được gắn nhãn và sắp xếp theo mục đích sử dụng
• Số lượng file gia tăng làm hệ thống file phát
triển – Mỗi file sử dụng chương trình ứng dụng riêng để
lưu, truy xuất và hiệu chỉnh dữ liệu
– Mỗi file thuộc sở hữu bởi cá nhân hoặc phòng
ban tạo ra nó
GV: Thiều Quang Trung
17
So sánh hệ thống file với CSDL
• Nhược điểm của hệ thống file:
– Đã được sử dụng hơn 4 thập kỷ qua – Khó khăn khi phải xử lý những câu truy vấn mở
rộng => lập trình phức tạp, nhiều hơn
– Thay đổi cấu trúc dữ liệu hiện hữu rất khó – Tính năng bảo mật gần như không có – Quản trị hệ thống phức tạp và khó khăn
GV: Thiều Quang Trung
18
Hệ thống cơ sở dữ liệu
• Hệ thống CSDL (database system) bao gồm
các dữ liệu có quan hệ một cách logic được lưu trữ trong một kho dữ liệu (data repository) • Phần mềm hệ quản trị CSDL (DBMS) loại trừ
hầu hết các lỗi của hệ thống file cũ
GV: Thiều Quang Trung
19
Hệ thống cơ sở dữ liệu
• Hệ thống CSDL gồm 5 thành phần:
– Phần cứng (Hardware) – Phần mềm (Software) – Người dùng (People) – Quy tắc thủ tục (Procedures) – Dữ liệu (Data)
GV: Thiều Quang Trung
20
Các thành phần của hệ thống CSDL
GV: Thiều Quang Trung
21
Các thành phần của hệ thống CSDL
• Hardware: tất cả các thiết bị vật lý của hệ
thống
• Software: 3 kiểu phần mềm yêu cầu:
– Operating system software – DBMS software – Application programs and utility software
GV: Thiều Quang Trung
22
Các thành phần của hệ thống CSDL
• People: tất cả người sử dụng hệ thống CSDL:
– System and database administrators – Database designers – Systems analysts and programmers – End users
• Procedures: các quy tắc và chỉ dẫn áp dụng
cho thiết kế và sử dụng hệ thống CSDL
• Data: tập hợp các dữ liệu lưu trữ trong CSDL
GV: Thiều Quang Trung
23
Hệ quản trị CSDL là gì?
• Hệ quản trị cơ sở dữ liệu (Database
management system – DBMS) là tập hợp các chương trình, dùng quản lý cấu trúc dữ liệu và điều khiển truy cập dữ liệu
GV: Thiều Quang Trung
24
Hệ quản trị CSDL là gì?
GV: Thiều Quang Trung
25
Hệ quản trị CSDL là gì?
• Vai trò của hệ quản trị CSDL (DBMS) – Là phương tiện giữa người dùng (User) và
CSDL
– Lưu trữ cấu trúc CSDL như tập hợp các file – Cho phép truy cập CSDL – Cho phép chia sẽ dữ liệu – Tích hợp nhiều khung nhìn dữ liệu (View of Data) cho người các đối tượng người dùng khác nhau
GV: Thiều Quang Trung
26
Chức năng của DBMS
• Gồm các chức năng:
– Quản lý từ điển dữ liệu (Data dictionary
management)
– Quản lý lưu trữ dữ liệu (Data storage management) – Trình bày và chuyển đổi dữ liệu (Data transformation
and presentation)
– Quản lý bảo mật (Security management) – Kiểm soát truy cập đa người dùng (Multiuser access
control)
GV: Thiều Quang Trung
27
Chức năng của hệ quản trị CSDL
– Quản lý sao lưu và phục hồi dữ liệu (Backup and
recovery management)
– Quản lý toàn vẹn dữ liệu (Data integrity
management)
– Ngôn ngữ truy cập dữ liệu (Database access
languages)
– Giao diện lập trình ứng dụng (Application
programming interfaces)
– Giao diện liên lạc dữ liệu (Database communication
interfaces)
– …
GV: Thiều Quang Trung
28
Chức năng quản lý từ điển dữ liệu
• Hệ quản trị CSDL DBMS lưu trữ các định nghĩa về
phần tử dữ liệu và mối quan hệ của nó, gọi là siêu dữ liệu (metadata) trong một từ điển dữ liệu
• Các thay đổi về cấu trúc dữ liệu sẽ được tự động ghi lại
trong từ điển dữ liệu
• Sự tách biệt lưu trữ dữ liệu và siêu dữ liệu một cách riêng biệt nhằm giải phóng sự phụ thuộc cả về dữ liệu và cấu trúc => tăng tính trừu tượng hóa dữ liệu (data abstraction)
GV: Thiều Quang Trung
29
GV: Thiều Quang Trung
30
Chức năng quản lý lưu trữ dữ liệu
• DBMS tạo và quản lý các cấu trúc phức tạp
theo yêu cầu lưu trữ dữ liệu, kể cả lưu các form nhập liệu, định nghĩa màn hình (screen), định nghĩa báo cáo (report), ...
• DBMS lưu CSDL trong nhiều file dữ liệu vật lý
GV: Thiều Quang Trung
31
GV: Thiều Quang Trung
32
Chức năng trình bày và chuyển đổi dữ liệu
• DBMS chuyển đổi dữ liệu => import dữ liệu phù
hợp với cấu trúc dữ liệu theo yêu cầu
GV: Thiều Quang Trung
33
Chức năng quản lý bảo mật
• DBMS tạo hệ thống bảo mật nhằm bảo đảm
tính bảo mật người dùng và tính bí mật dữ liệu • Quy tắc bảo mật xác định người dùng nào có thể truy cập CSDL, mục dữ liệu nào có thể được truy cập,...
GV: Thiều Quang Trung
34
Chức năng kiểm soát đa người dùng
• DBMS sử dụng các giải thuật tinh vi để đảm bảo sự truy cập đồng thời không làm ảnh hưởng tới tính toàn vẹn dữ liệu
GV: Thiều Quang Trung
35
Chức năng quản lý sao lưu và phục hồi dữ liệu
• DBMS cung cấp backup và phục hồi dữ liệu để
đảm bảo tính an toàn và toàn vẹn dữ liệu • Trình Recovery management xử lý phục hồi
CSDL sau khi gặp sự cố – Tiêu chuẩn để duy trì tính toàn vẹn CSDL
GV: Thiều Quang Trung
36
Chức năng quản lý tính toàn vẹn dữ liệu
• DBMS xúc đẩy và đảm bảo quy tắc toàn vẹn – Tối thiểu hóa tính dư thừa (minimizes redundancy) – Tối đa hóa tính nhất quán (maximizes consistency) • Các mối liên kết dữ liệu lưu trong từ điển dữ liệu
dùng để đảm bảo tính toàn vẹn dữ liệu
GV: Thiều Quang Trung
37
Ngôn ngữ truy vấn dữ liệu
• DBMS cung cấp truy cập dữ liệu thông qua
ngôn ngữ truy vấn
• Query language là một ngôn ngữ phi thủ tục • Structured Query Language (SQL) là ngôn
ngữ truy vấn trong CSDL – Tiêu chuẩn được hổ trợ bởi đa số các nhà cung
cấp DBMS
GV: Thiều Quang Trung
38
Tóm tắt bài giảng
• CSDL là một tập hợp có cấu trúc những dữ liệu liên
quan với nhau được lưu trữ trong máy tính bao gồm dữ liệu của người dùng và dữ liệu metadata
• CSDL có thể phân loại theo số lượng người dùng, vị trí
CSDL, kiểu và quy mô sử dụng
• Hệ thống CSDL có 5 thành phần: phần cứng, phần
mềm, người dùng, quy tắc thủ tục, dữ liệu
• Hệ quản trị CSDL là tập hợp các chương trình dùng quản lý cấu trúc dữ liệu và điều khiển truy cập dữ liệu
• SQL là ngôn ngữ truy vấn dữ liệu dạng phi thủ tục, được hổ trợ bởi đa số các nhà cung cấp DBMS
GV: Thiều Quang Trung
39
GV: Thiều Quang Trung
40

