CHƯƠNG 1: TỔNG QUAN VỀ HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU (Database Management System-DBMS)

Nội dung

• Giới thiệu tổng quan về hệ quản trị cơ sở dữ

liệu (Overview of DBMS) • Ví dụ một cơ sở dữ liệu • Đặc điểm của cơ sở dữ liệu (Characteristics of

the Database)

• Người sử dụng cơ sở dữ liệu • Hệ quản trị cơ sở dữ liệu và hệ thống file

(DBMS vs. File-based system)

• Thuận lợi của cách tiếp cận cơ sở dữ liệu

(Advantages of using the DBMS approach)

Giới thiệu tổng quan về DBMS

• Dữ liệu và thông tin (Data and Information)

– Dữ liệu (Data) ự ể

ễ ự ậ ố ượ ế ớ ự ấ ng trong th  gi i th c c u

• S  bi u di n các s  v t, đ i t thành nh ng kh i thông tin

ữ ố

ị ơ ở ữ ệ ệ

ạ ượ ủ ả c thông tin có ích.

ự ố ỗ , …

ữ ệ ữ ệ ữ ệ ữ ệ ả ạ ầ • D  li u là thành ph n chính c a h  qu n tr  c  s  d  li u. ề • D  li u không truy n đ t đ ấ • D  li u có c u trúc: s , ngày, chu i ký t ấ • D  li u không có c u trúc: hình  nh, âm thanh, đo n phim,

– Siêu dữ liệu (Meta data) ả • Là d  li u dùng đ  mô t – Thông tin (Information):

ữ ệ ể ấ ặ ữ ệ ủ ể các tính ch t/đ c đi m c a d  li u.

• D  li u đã đ

ữ ệ ượ ề ả ử ữ c x  lý và truy n t i nh ng thông tin có ích.

Giới thiệu tổng quan về DBMS

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

– Là tập hợp các dữ liệu được quan hệ theo một cách

có nghĩa mà nó có thể được truy cập theo những trình tự logic khác nhau.

• Đặc điểm chính của dữ liệu trong cơ sở dữ liệu

là: – Có cấu trúc. – Có quan hệ – Được truy cập theo những trình tự logic khác nhau.

Giới thiệu tổng quan về DBMS

• Hệ quản trị cơ sở dữ liệu (Database

Management system-DBMS): – Là hệ thống các phần mềm hỗ trợ người dùng có thể

phân tích, thiết kế, duy trì và khai thác CSDL.

• Các DBMS thông dụng: Visual FoxPro, Microsoft

Access, SQL Server, DB2, Oracle … hầu hết các DBMS hiện nay đều dựa trên mô hình quan hệ.

Giới thiệu tổng quan về DBMS

• Chức năng của DBMS:

– Định nghĩa cơ sở dữ liệu: ể

• Xác đ nh ki u d  li u, các c u trúc d  li u và các ràng bu c

ấ ữ ệ ộ

ị ữ ệ ư ơ ở ữ ệ ữ ữ ệ d  li u l u tr  trong c  s  d  li u.

• Ti n trình l u tr  trong c  s  d  li u và đ

– Xây dựng cơ sở dữ liệu: ữ ư ị ơ ở ữ ệ

ơ ở ữ ệ ượ ề ể ở c đi u khi n b i

ế ệ ả h  qu n tr  c  s  d  li u.

Giới thiệu tổng quan về DBMS

– Thao tác cơ sở dữ liệu:

• Truy v n c  s  d  li u (querying the database) ự • C p nh t c  s  d  li u (updating the database): ph n ánh s   ự i th c.

ấ ơ ở ữ ệ ậ ơ ở ữ ệ ậ ả

th  gi

ổ ữ ệ ừ ế ớ ấ ữ ệ ế thay đ i d  li u t • K t xu t d  li u.

Giới thiệu tổng quan về DBMS

• Môi trường của hệ cơ sở dữ liệu

Giới thiệu tổng quan về DBMS

• Mô hình dữ liệu (Database Models):

– Một tập các công cụ dùng để mô tả cơ sở dữ liệu

(data, relationships, sematics, constraints) ở mức trừu tượng.

• Mức trừu tượng (Levels of abstraction)

– Mô hình dữ liệu khái niệm (Conceptual Data Model):

ả ữ ệ ở ứ m c cao

– Mô hình dữ liệu biểu diễn (Representational Data

ầ ự • S  mô t  d  li u  ể ễ • Giúp d  dàng hi u rõ các yêu c u.

ả ự ể ữ ệ ữ ệ ủ ễ

Model) • Mô t

– Mô hình dữ liệu vật lý (Physical Data Model) ậ

s  bi u di n logic c a d  li u d  li u

• Mô t

ế ả ạ ả ấ ị t các đ nh d ng b n ghi, c u trúc t p tin, … chi ti

Giới thiệu tổng quan về DBMS

• Một DBMS có những tính năng

– Ngôn ngữ giao tiếp giữa người sử dụng và CSDL

– Từ điển dữ liệu (Data Dictionary)

– Bảo mật (security)

– Cơ chế giải quyết tranh chấp dữ liệu

– Cơ chế sao lưu (backup), phục hồi (restore)

– Đảm bảo tính độc lập giữa dữ liệu và chương trình

Ngôn ngữ của DBMS

• Ngôn ngữ mô tả dữ liệu (DDL – Data Definition

Language): – Khai báo cấu trúc CSDL, các mối liên hệ của dữ liệu,

các quy định, ràng buộc dữ liệu.

• Ngôn ngữ thao tác dữ liệu (DML – Data

Manipulation Language): – Thực hiện thao tác thêm, xóa, sửa dữ liệu.

Ngôn ngữ của DBMS

• Ngôn ngữ truy vấn có cấu trúc (SQL –

Structured Query Language): – Sử dụng truy vấn để khai thác những thông tin cần

thiết.

• Ngôn ngữ quản lý dữ liệu (DCL – Data Control

Language) – Thay đổi cấu trúc bảng, khai báo bảo mật, cấp quyền

cho người sử dụng.

Ví dụ cơ sở dữ liệu UNIVERSITY

• Cơ sở dữ liệu University lưu trữ thông tin về

students, courses, grades trong một trường đại học.

Ví dụ cơ sở dữ liệu UNIVERSITY

Các đặc điểm của cơ sở dữ liệu

• Tính tự mô tả của hệ cơ sở dữ liệu

– Định nghĩa và mô tả về cấu trúc và các ràng buộc của cơ sở dữ liệu được lưu trữ trong một danh mục được gọi là meta-data.

– Đặc điểm này cho phép các phần mềm hệ quản trị cơ sở dữ liệu làm việc với các cơ sở dữ liệu khác nhau.

• Tính độc lập dữ liệu và chương trình

– Cấu trúc của các tập tin lưu trữ trong các hệ quản trị cơ sở dữ liệu là riêng biệt do đó sự thay đổi các cấu trúc lưu trữ dữ liệu không làm thay đổi các chương trình truy cập vào hệ quản trị cơ sở dữ liệu.

Các đặc điểm của cơ sở dữ liệu

• Tính trừu tượng (Data Abstraction)

– Hệ quản trị cơ sở dữ liệu chỉ cung cấp việc biểu diễn dữ liệu ở mức khái niệm và che giấu chi tiết và cách thức lưu trữ dữ liệu.

– Tính trừu tượng hóa giúp bảo đảm tính độc lập

chương trình và dữ liệu.

• Hỗ trợ nhiều cách nhìn cơ sở dữ liệu:

– Một cơ sở dữ liệu có nhiều người dùng, mỗi người đòi hỏi một cách nhìn (view) khác nhau về cơ sở dữ liệu

– View là một thành phần của cơ sở dữ liệu.

Các đặc điểm của cơ sở dữ liệu

• Chia sẽ dữ liệu và xử lý đa tiến trình

– Cho phép nhiều người dùng cùng truy cập cơ sở dữ

liệu tại cùng một thời điểm

– Điều khiển các tiến trình đồng thời bên trong DBMS,

bảo đảm rằng mỗi giao dịch được thực hiện chính xác hay hủy hoàn toàn.

Các mức trừu tượng dữ liệu

• Mức vật lý (Physical level or internal level)

– Là mức lưu trữ cấu trúc CSDL chi tiết ở mức thấp. Dành cho người quản trị và người sử dụng chuyên môn.

• Mức logic (Logical level or conceptual level)

– Mô tả dữ liệu gì được lưu trữ trong CSDL và mối quan

hệ giữa các dữ liệu này

• Mức view (View level or external level)

– Đây là mức cao nhất của trừu tượng dữ liệu, nó là

cách nhìn riêng biệt của người dùng với cơ sở dữ liệu.

Các mức trừu tượng dữ liệu

Người dùng cơ sở dữ liệu

• Các đối tượng người dùng giao tiếp với cơ sở

dữ liệu:

Người dùng cơ sở dữ liệu

• Người quản trị CSDL (Database Administrator)

– Cấp quyền truy cập – Điều hành và giám sát việc sử dụng CSDL – Yêu cầu tài nguyên phần mềm và phần cứng khi cần

• Người thiết kế CSDL (Database Designer)

– Chịu trách nhiệm về việc xác định dữ liệu lưu trữ, chọn cấu trúc thích hợp để biểu diễn và lưu trữ dữ liệu.

– Liên hệ với người dùng để nắm bắt các yêu cầu và

đưa ra các thiết kế phù hợp

– Trở thành thành viên quản trị khi thiết kế hoàn tất

Người dùng cơ sở dữ liệu

• Người dùng (Database User)

– Người lập trình ứng dụng (Application Programmer)

ỹ ư

• Các k  s  ph n m m i h  tr : thi • Nhóm ng các công c  h  tr  thi ệ cho h  CSDL

ể ườ ầ ề ườ ỗ ợ ụ ổ ợ ế ế t k  cài đ t HQT CSDL, phát tri n  ế ế ậ ng  t k , v n hành và duy trì môi tr

– Người dùng cuối (End user) ử ụ i ít s  d ng ườ i dùng th

• Ng • Ng

ườ ườ ng xuyên

Hệ tập tin (File system)

• Là tập hợp các tập tin riêng lẻ phục vụ cho một

mục đích của đơn vị sử dụng.

• Ưu điểm:

– Triển khai ứng dụng nhanh – Khả năng đáp ứng nhanh chóng, kịp thời (vì chỉ phục

vụ cho mục đích hạn hẹp)

• Khuyết điểm:

lãng phí, dữ liệu không nhất quán

– Trùng lắp dữ liệu (cid:0) – Chi phí cao – Chia sẻ dữ liệu kém

Thuận lợi của cách tiếp cận CSDL

• Quản lý dữ liệu tập trung (Centralized data

management) – Giảm dư thừa (Reducing redundancies ) – Quản lý dữ liệu hiệu quả hơn. – Cung cấp duy trì việc lưu trữ của các cấu trúc dữ liệu

và đối tượng chương trình.

– Cung cấp cơ chế sao lưu và phục hồi dữ liệu. • Tính độc lập dữ liệu (Data Independence)

– Các chương trình độc lập với sự thay đổi về cấu trúc

lưu trữ dữ liệu.

– DBMS cung cấp giao diện giữa chương trình ứng

dụng và dữ liệu.