CHƯƠNG I Giới thiệu
Hệ Cơ Sở Dữ Liệu
HCSDL
1
Nội dung
Hệ Cơ Sở Dữ Liệu
(cid:153) Giới thiệu (cid:153) Các mức mô hình CSDL (cid:153) Ngôn ngữ CSDL (cid:153) Qui trình phát triển CSDL (cid:153) Hệ quản trị CSDL
(cid:131) Các thành phần của Hệ quản trị CSDL (cid:131) Tính năng của Hệ quản trị CSDL (cid:131) Kiến trúc của Hệ quản trị CSDL
2
1. Giới thiệu: Quản lý file
Hệ Cơ Sở Dữ Liệu
Chương trình ứng dụng 1
Quản lý dữ liệu
Tập tin
Chương trình ứng dụng 2
Quản lý dữ liệu
Tập tin
Hệ Thống Quản Lý Tập Tin
Chương trình ứng dụng 3
Dữ liệu
Quản lý dữ liệu
Tập tin
3
Hạn chế
Hệ Cơ Sở Dữ Liệu
4
(cid:153) Dữ liệu bị trùng lắp và dư thừa (cid:153) Thiếu tính nhất quán giữa các dữ liệu (cid:153) Khó khăn trong việc truy xuất (cid:153) Việc chia sẻ dữ liệu bị hạn chế (cid:153) Khó khôi phục
Cơ sở dữ liệu (Database)
Hệ Cơ Sở Dữ Liệu
Chương trình ứng dụng 1
Quản lý dữ liệu
Chương trình ứng dụng 2
Quản lý dữ liệu
CSDL
Hệ Quản Trị CSDL
Chương trình ứng dụng 3
Quản lý dữ liệu
5
Ưu điểm khi sử dụng Cơ sở dữ liệu
Hệ Cơ Sở Dữ Liệu
6
(cid:153) Độc lập dữ liệu – chương trình (cid:153) Giảm tối thiểu dư thừa dữ liệu (cid:153) Nâng cao tính nhất quán dữ liệu (cid:153) Thuận tiện cho việc dùng chung dữ liệu (cid:153) Tăng hiệu suất phát triển bảo trì, ứng dụng (cid:153) Dễ dàng áp dụng các ràng buộc, tiêu chuẩn
Cơ sở dữ liệu (Database)
Hệ Cơ Sở Dữ Liệu
(cid:153) 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 (cid:131) Sinh viên (cid:131) Niên giám điện thoại (cid:131) Dự án
(cid:153) 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
(cid:153) Tập ngẫu nhiên của các dữ liệu không thể xem là
7
một CSDL
CSDL: Tính chất
Hệ Cơ Sở Dữ Liệu
(cid:153) Nó biểu diễn cho một phần thế giới thực (cid:153) Nó là tập hợp dữ liệu có quan hệ chặt chẽ về logic (cid:153) Nó có một mục tiêu phục vụ cho một nhóm người
8
dùng và ứng dụng nhất định
Ví dụ về CSDL
Hệ Cơ Sở Dữ Liệu
9
Thuật ngữ
Hệ Cơ Sở Dữ Liệu
(cid:153) Data (dữ liệu): văn bản(text), đồ họa(graphics), hình ảnh
(images), âm thanh (sound)…
(cid:153) Information (thông tin): dữ liệu đã được xử lý (cid:153) Database: Là một tập hợp dữ liệu có liên quan luận lý với nhau, chứa thông tin có tổ chức của một hệ thống nhằm đáp ứng nhu cầu khai thác và chia sẽ thông tin của người dùng.
(cid:153) Hệ quản trị CSDL ( Database Management System - DBMS): là một hệ thống các phần mềm cho phép người sử dụng định nghĩa, tạo lập, bảo trì và điều khiển truy xuất CSDL (cid:153) Hệ CSDL ?
10
2. Các mức mô hình CSDL
Hệ Cơ Sở Dữ Liệu
(cid:131) Cung cấp các khái niệm gần gũi với người dùng (cid:131) Mô hình phải tự nhiên và giàu ngữ nghĩa (cid:131) VD: mô hình thực thể kết hợp (ER), mô hình đối
tượng…
(cid:153) Mô hình mức cao (khái niệm)
(cid:153) 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
(cid:153) Mô hình Cài đặt CSDL: Cách thức dữ liệu tổ chức
11
trên máy tính
Mô hình ER
Hệ Cơ Sở Dữ Liệu
12
Lược đồ CSDL (Database Schema)
Hệ Cơ Sở Dữ Liệu
13
(cid:153) Là các mô tả về cấu trúc và ràng buộc trên CSDL
Thể hiện CSDL (Database Instance)
Hệ Cơ Sở Dữ Liệu
(cid:153) Là dữ liệu hiện thời được lưu trữ trong CSDL ở
14
một thời điểm nào đó (cid:153) Tình trạng của CSDL
3. Ngôn ngữ CSDL…
Hệ Cơ Sở Dữ Liệu
(cid:153) Ngôn ngữ xác định dữ liệu (DDL –Data Definition
Language)
(cid:153) Ví dụ
CREATE TABLE employees (
id INTEGER PRIMARY KEY, first_name CHAR(50) null, last_name CHAR(75) not null, date_of_birth DATE null ); )
15
…Ngôn ngữ CSDL…
Hệ Cơ Sở Dữ Liệu
(cid:153) Ngôn ngữ thao tác dữ liệu (DML –Data
Manipulation Language) (cid:131) Cho phép truy xuất, thêm, xóa, sửa dữ liệu (cid:131) Mức cao (phi thủ tục) (cid:131) Mức thấp (thủ tục)
Ví dụ
(cid:131) Các câu lệnh trọng SQL: SELECT, INSERT, UPDATE
và DELETE.
(cid:131) SELECT id, last_name FROM employees
16
…Ngôn ngữ CSDL
Hệ Cơ Sở Dữ Liệu
(cid:153) Ngôn ngữ điều khiển dữ liệu (Data Control
CSDL
(cid:131) Các câu lệnh SQL tương ứng: GRANT và REVOKE.
17
Language - DCL) (cid:131) Cung cấp các tính năng bảo vệ cho các đối tượng của
4. Qui trình phát triển CSDL
Hệ Cơ Sở Dữ Liệu
(cid:153) Mô hình hóa nghiệp vụ (Enterprise modeling) (cid:153) Thiết kế database luận lý (logical database
design)
18
(cid:153) Thiết kế CSDL vật lý (physical database design) (cid:153) Hiện thực CSDL (database implementation) (cid:153) Bảo trì CSDL (database maintenance)
Hệ Cơ Sở Dữ Liệu
Project identification and selection
Project initiation and planning
Analysis
Logical design
Physical design
Implement
Maintenance
19
5. Hệ quản trị CSDL
Hệ Cơ Sở Dữ Liệu
(cid:153) Hệ quản trị CSDL (Database Management System): Tập hợp các chương trình cho phép người sử dụng tạo ra, duy trì và quản lý CSDL
(cid:153) Hệ quản trị CSDL cho phép xác định, xây dựng và
chi tiết về dữ liệu
(cid:131) Xây dựng – lưu trữ dữ liệu lên bộ nhớ phụ (cid:131) Xử lý – truy vấn, cập nhật và phát sinh báo cáo
20
xử lý dữ liệu (cid:131) Xác định – khai báo bộ khung dữ liệu cùng với các mô tả
(cid:153) Cung cấp giao diện cho người sử dụng, các tiện ích: giải quyết tranh chấp, giao dịch, sao lưu, phục hồi, bảo mật CSDL…
Hệ CSDL (Database System)
Hệ Cơ Sở Dữ Liệu
21
kiến trúc DBMS
Hệ Cơ Sở Dữ Liệu
Application Programmers
End Users
Systems Analysts and Database Designers
PC DBMS and/or Query tools
Transaction Processing (TP) Monitor
DBMS
Data Manipulation Language (DML)
Data Definition Language (DDL)
Proprietary Language and Tools
DATABASE ENGINE
METADATA
Các thành phần của môi trường DBMS
Hệ Cơ Sở Dữ Liệu
(cid:153) Phần cứng (Hardware) (cid:153) Phần mềm (Software) (cid:153) Dữ liệu (data) (cid:153) Các thủ tục (procedure): các qui định hoạt động (cid:153) Con người
(cid:131) Người quản trị CSDL (DBA–Database
administration)
(cid:131) Người thiết kế CSDL (Database designer) (cid:131) Người dùng cuối (End-user)
23
Đặc điểm của CSDL trong HQTCSDL
Hệ Cơ Sở Dữ Liệu
(cid:153) Tính tự mô tả: mô tả chính bản thân CSDL (cid:131) Catalog: lưu trữ các thông tin tự mô tả (cid:131) Metadata: siêu dữ liệu, thông tin lưu trữ trong
catalog
(cid:153) Tính độc lập giữa chương trình và dữ liệu (cid:153) Tính trừu tượng dữ liệu: thể hiện qua các mô hình
dữ liệu
24
(cid:153) Hỗ trợ nhiều khung nhìn
Các tính năng của HQT CSDL…
Hệ Cơ Sở Dữ Liệu
(cid:153) Kiểm soát được tính dư thừa và nhất quán
của dữ liệu
(cid:153) Chia sẻ dữ liệu: Trong môi trường đa người
dùng, các HQT phải cho phép truy xuất dữ liệu đồng thời
(cid:153) Hạn chế những truy cập không cho 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
25
(cid:153) Tiện ích cho sử dụng: Cung cấp nhiều phương tiện xử lý, giao tiếp giữa HQT CSDL và người dùng
…Các tính năng của HQT CSDL…
Hệ Cơ Sở Dữ Liệu
(cid:153) Đảm bảo các ràng buộc toàn vẹn
(cid:131) 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
(cid:131) Một số ràng buộc có thể được khai báo với HQT và
HQT sẽ tự động kiểmtra.
(cid:131) Một số ràng buộc khác được kiểm tra nhờ chương
trình ứng dụng
26
(cid:153) Khả năng sao lưu và hồi phục
…Các tính năng của HQT CSDL
Hệ Cơ Sở Dữ Liệu
(cid:153) Các tính năng khác
(cid:131) Chuẩn hóa
• Cho phép DBA áp dụng một chuẩn thống nhất
mà mọi người phải tuân thủ
(cid:131) Uyển chuyển
• Khi nhu cầu công việc thay đổi, cấu trúc CSDL đòi hỏi 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 chương trình ứng dụng
(cid:131) Giảm thời gian phát triển ứng dụng
27
Các mức lược đồ
Hệ Cơ Sở Dữ Liệu
28
Kiến trúc Client/Server
Hệ Cơ Sở Dữ Liệu
Máy khách 2
Máy khách 3
Máy khách 1
LAN
Dữ liệu được chọn gửi về máy chủ
Các yêu cầu vể dữ liệu
Máy chủ (với DBMS)
Cơ sở dữ liệu
29
Kiến trúc của HQT CSDL
Hệ Cơ Sở Dữ Liệu
30
Lịch sử phát triển
Hệ Cơ Sở Dữ Liệu
(cid:153) Những ứng dụng CSDL đầu tiên: Mô hình mạng
và phân cấp được giới thiệu vào giữa những năm 60
(cid:153) Cơ sở dữ liệu quan hệ được giới thiệu vào 1970.
31
những sản phẩm DBMS nổi trội trong những năm 1980
Lịch sử phát triển
Hệ Cơ Sở Dữ Liệu
(cid:153) Những ứng dụng hướng đối tượng được giới thiệu trong những năm cuối của thập niên 80 và đầu thập niên 90 để đáp ứng những nhu cầu xử lý dữ liệu phức tạp. Việc dùng những ứng dụng này không nhiều
32
(cid:153) Dữ liệu cho những ứng dụng Web và thương mại điện tử dùng những tiêu chuẩn mới như XML (eXtended Markup Language)
Lịch sử phát triển
Hệ Cơ Sở Dữ Liệu
(cid:153) Những chức năng mới đang được cộng tới DBMS
33
trong những lãnh vực sau (cid:131) Những ứng dụng khoa học (cid:131) Quản lý và lưu trữ hình ảnh, Audio và Video (cid:131) Data mining (cid:131) Quản lý dữ liệu không gian (cid:131) Quản lý dữ liệu lịch sử và chuỗi thời gian
Những loại CSDL và những ứng dụng CSDL
Hệ Cơ Sở Dữ Liệu
34
(cid:153) Dữ liệu text và số (cid:153) Dữ liệu đa phương tiện (cid:153) Hệ thống thống tin địa lý (cid:153) Data Warehous (cid:153) Dữ liệu năng động và thời gian thực