0% found this document useful (0 votes)
28 views39 pages

CSDL 1 1

CSDL UET
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views39 pages

CSDL 1 1

CSDL UET
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 39

Cơ sở dữ liệu

BÀI 1: GIỚI THIỆU MÔN HỌC, TỔNG QUAN VỀ


HỆ CSDL

Nguyễn Thị Hậu


Đại học Công nghệ - Đại học Quốc Gia Hà Nội
[email protected]
GIỚI THIỆU MÔN HỌC

Cơ sở dữ liệu 2
Nội dung
• Lý thuyết:
1. Các khái niệm cơ bản về CSDL
2. Mô hình thực thể liên kết
3. Mô hình quan hệ, các ràng buộc quan hệ, đại số quan
hệ
4. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ, các
thuật toán thiết kế lược đồ CSDL quan hệ

• Thực hành:
1. Thực hành sử dụng Mysql
2. Tuần 2 - 15

Cơ sở dữ liệu 3
Chuẩn đầu ra học phần
Kiến Thức
• Vận dụng được các kiến thức về mô hình thực thể - liên kết
• Vận dụng được các kiến thức về mô hình quan hệ và đại số
quan hệ
• Vận dụng được các kiến thức về phụ thuộc hàm và các dạng
chuẩn
• Vận dụng được các thuật toán thiết kế CSDL quan hệ
Kỹ năng
• Cài đặt được một hệ quản trị CSDL, chẳng hạn MySQL,
PostgreSQL, MS SQL
• Sử dụng thành thạo ngôn ngữ truy vấn SQL để thực hiện các
yêu cầu truy xuất dữ liệu
4
Tài liệu tham khảo
• Ramez Elmasri & Shamkant
B. Navathe, Fundamentals of
Database Systems, 7th
Edition, Pearson 2016.

• CORONEL, C., and


MORRIS, S. 2017, Database
Systems: Design,
Implementation, and
th
Management. 13 Ed.,
Thomson Course Technology

5 Nguyen Thi Hau - DBMS


Kiểm tra, đánh giá
• Nhiệm vụ của sinh viên:
– Có tài khoản truy cập vào website môn học:
https://portal.uet.vnu.edu.vn/
– Tham gia các bài giảng, thực hành trên lớp
– Tự học và nghiên cứu
• Kiểm tra, đánh giá:
– Thực hành: 30% (Bài tập hàng tuần, kiểm tra giữa kỳ, cuối kỳ)
– Lý thuyết: 70% (Điểm danh: 10%, Bài tập hàng tuần: 10%, kiểm
tra lần 1 tuần 6-7: 15%, kiểm tra lần 2 theo lịch của nhà trường:
35%)
– Điểm cộng: chữa bài trên lớp (tối đa 15%)

– Sinh viên vắng quá 20% số buổi học sẽ không có điểm tổng kết

– Điểm bài tập bằng 0 nếu thiếu/gian lận 3 bài tập bất kỳ
Cơ sở dữ liệu 6
Database Career Opportunities

7 Nguyen Thi Hau - DBMS


Top 10 Hệ quản trị CSDL 2024

8
https://db-engines.com/en/ranking
Các HQT CSDL dùng bởi
Google, Facebook, Twitter… [stackshare.io]

9
Chương 1. Tổng quan về Hệ
CSDL
▪ Một số khái niệm
▪ 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ột số khái niệm: Mô hình, Lược đồ, Thể hiện
▪ Ngôn ngữ CSDL

Cơ sở dữ liệu 10
1.1 MỘT SỐ KHÁI NIỆM

Cơ sở dữ liệu 11
Thông tin và dữ liệu
Dữ liệu Thông tin

- Là các số liệu, sự kiện thô - Dữ liệu có ngữ cảnh


- Là ký tự, chuỗi ký tự, số, hình ảnh, âm - Dữ liệu được xử lý
thanh, video… - Là kết quả của việc tóm tắt, tổ chức,
- Không có ngữ cảnh phân tích dữ liệu
- VD: 50117 - VD
- Ngày kiểm tra cuối kỳ môn
CSDL:05/01/2017
- 50 117 VNĐ giá của một cuốn lịch
để bàn năm 2018
- 50117 Mã một sản phẩm trong
siêu thị

Cơ sở dữ liệu 12
Cơ sở dữ liệu
❖ Cơ sở dữ liệu (Database): Một tập hợp những dữ
liệu có liên quan với nhau được lưu trữ trong máy
tính đáp ứng nhu cầu khai thác của nhóm người sử
dụng với các mục đích xác định nào đó.
❖ Các tính chất:
o Một CSDL biểu diễn một phần của thế giới thực (thế giới nhỏ -
miniworld), được cập nhật phản ánh sự thay đổi của thế giới nó biểu
diễn.
o Một cơ sở dữ liệu là một tập hợp dữ liệu liên kết với nhau một cách
logic và mang một nghĩa nào đó.
o Một cơ sở dữ liệu được thiết kế và được phổ biến cho một mục
đích riêng, có nhóm người sử dụng.

Cơ sở dữ liệu 13
Ví dụ Một ứng dụng sử dụng CSDL
truyền thống
• Giả sử cần xây dựng một hệ thống quản lý
các thông tin sau:
– Sinh viên
– Môn học
– Giáo viên
– Mỗi sinh viên đang học một số môn học, mỗi
giảng viên đang dạy một số lớp môn học

Cơ sở dữ liệu 14
Không sử dụng HQT CSDL ?
Lưu trữ dữ liệu ở các tập tin:

sinhvien.txt Monhoc.txt Giaovien.txt

Viết chương trình (C++, Java…) thực hiện các


nhiệm vụ

Cơ sở dữ liệu 15
Không sử dụng HQT CSDL
• Thêm sinh viên “Nguyễn Văn Minh” vào lớp
môn học “INT2207-1”:
Viết chương trình C++ thực hiện các nhiệm vụ:

Đọc ‘sinhvien.txt’
Đọc ‘Monhoc.txt’
Tìm và cập nhật bản ghi “Nguyễn Văn
Minh”
Tìm và cập nhật bản ghi “INT2207-1”
Viết “sinhvien.txt”
Viết “Monhoc.txt”

Cơ sở dữ liệu 16
Không sử dụng HQT CSDL
CRASH !
• Hệ thống bị treo: Đọc ‘sinhvien.txt’
Đọc ‘Monhoc.txt’
Tìm và cập nhật bản ghi “Nguyễn Văn Minh”
Tìm và cập nhật bản ghi “INT2207-1”
Viết “sinhvien.txt”
Viết “Monhoc.txt”

– Vấn đề gì xảy ra ?
• Bộ dữ liệu lớn (giả sử 50GB)
– Vấn đề gì xảy ra ?
• Nhiều người dùng truy cập đồng thời

Cơ sở dữ liệu 17
Giải quyết vấn đề với HQT CSDL

Kết nối
(ODBC, JDBC)

Máy chủ CSDL

Tập tin dữ liệu Ứng dụng


Cơ sở dữ liệu 18
Hệ quản trị CSDL
❑ 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, bảo trì và khai thác CSDL; tức là phần mềm cho
phép định nghĩa, xây dựng và thao tác với dữ liệu.
o Định nghĩa CSDL: đặc tả các kiểu dữ liệu, cấu trúc
mô tả chi tiết về dữ liệu, các ràng buộc của dữ liệu
trong CSDL.
o Xây dựng CSDL: lưu trữ dữ liệu trên thiết bị bộ nhớ
o Thao tác: truy vấn, cập nhật và sinh báo cáo.

Cơ sở dữ liệu 19
Cấu trúc Hệ CSDL, Hệ quản trị
CSDL

Hệ CSDL
Cơ sở dữ liệu 20
Ví dụ CSDL Quản lý Đào tạo

o Các đối tượng: Sinh viên, Môn học, Học phần, Ngành..
o Mối quan hệ:
• Mỗi sinh viên có thể học một số học phần trong mỗi kỳ
• Mỗi môn học được dạy trong một hoặc nhiều học phần xác định
• Mỗi môn học có thể có các môn điều kiện
• Mỗi học phần do một giáo viên giảng
• Mỗi môn học do một khoa quản lý
• Mỗi sinh viên thuộc một ngành nào đó
• Mỗi ngành do một khoa quản lý.

Cơ sở dữ liệu 21
Ví dụ CSDL Quản lý Đào tạo

SINHVIEN
MaSv Hoten Lop MaNganh

MONHOC MONDK
MaMH TenMH SoTC MaKhoa MaMH MaMonDK

HOCPHAN NGANH
MaHP MaMH Hocky Giaovien MaNg TenNg

KHOA
MaKhoa TenKhoa MaNganh

DIEM
MaSv MaHP Diem
Cơ sở dữ liệu 22
Ví dụ CSDL Quản lý Đào tạo

▪ Định nghĩa CSDL: Xác định cấu trúc các bảng, Các kiểu
dữ liệu của các trường,..
▪ Xây dựng CSDL: Dữ liệu được ghi trong các tệp như thế
nào, các quan hệ giữa các bản ghi,
▪ Thao tác CSDL: Cập nhật và khai thác dữ liệu.

Cơ sở dữ liệu 23
Meta data

24 Nguyen Thi Hau - DBMS


1.2 QUÁ TRÌNH PHÁT TRIỂN

Cơ sở dữ liệu 25
Tập tin (trước 1960)

Chương trình ứng dụng 1


Quản lý dữ liệu
Tập
Hệ tin
Thống
Chương trình ứng dụng 2
Quản
Tập
Quản lý dữ liệu Lý
tin
Tập
Tin
Chương trình ứng dụng 3
Tập Dữ liệu
Quản lý dữ liệu tin

Cơ sở dữ liệu 26
Tập tin (trước 1960)

▪ Hạn chế
▪ Dữ liệu bị trùng lặp và dư thừa
▪ Thiếu tính nhất quán giữa các dữ liệu
▪ Khó khăn trong việc truy xuất
▪ Việc chia sẻ dữ liệu bị hạn chế
▪ Khó khôi phục

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

Chương trình ứng dụng 1


Quản lý dữ liệu

Hệ
Chương trình ứng dụng 2
Quản
Quản lý dữ liệu Trị CSDL
CSDL

Chương trình ứng dụng 3


Quản lý dữ liệu

Cơ sở dữ liệu 28
Contrasting Database and File Systems

29 Nguyen Thi Hau - DBMS


The Database System Environment

30 Nguyen Thi Hau - DBMS


Quá trình phát triển
▪ Những năm 1960s: HQT CSDL đầu tiên ra đời
▪ IMS (Information Management System) của IBM dựa trên mô hình phân
cấp,
▪ IDS (Integated Data Store) do Charles Bachmann phát triển dựa trên mô
hình mạng, sau này dùng cho CODASYL
▪ 1970-1972: Edgar Codd giới thiệu mô hình quan hệ của dữ liệu
▪ 1974-1977: HQT CSDL theo mô hình quan hệ đầu tiên xuất hiện
▪ Ingres của UBC
▪ System R của IBM
▪ 1976: P. Chen giới thiệu mô hình thực thể liên kết (Entity
Relationship model)
▪ Từ 1980:
▪ SQL trở thành ngôn ngữ truy vấn chuẩn.
▪ Nhiều HQT CSDL mới ra đời: Oracle, DB2, Access, Foxpro, Paradox
▪ Từ 1990 Xuất hiện HQT CSDL hướng đối tượng
▪ 1998: Hệ quản trị CSDL theo mô hình NoSQL (phổ biến 2009)
▪ ~2000: Semi structured, XML (XQuery)
Cơ sở dữ liệu 31
Nguyen Thi Hau - DBMS 32
Types of Databases
• Single-user database: Supports one user at a
time
– Desktop database: Runs on PC
• Multi-user database: Supports multiple users
at the same time
– Workgroup databases: Supports a small number
of users or a specific department
– Enterprise database: Supports many users
across many departments

33 Nguyen Thi Hau - DBMS


Types of Databases
• Centralized database:
Data is located at a
single site
• Distributed database:
Data is distributed across
different sites
• Cloud database:
Created and maintained
using cloud data services
that provide defined
performance measures
for the database

34 Nguyen Thi Hau - DBMS


Types of Databases
• General-purpose databases: Contains a wide
variety of data used in multiple disciplines
• Discipline-specific databases: Contains data
focused on specific subject areas

35 Nguyen Thi Hau - DBMS


Types of Databases
• Operational database:
Designed to support a
company’s day-to-day
operations

• Analytical database:
Stores historical data
and business metrics
used exclusively for
tactical or strategic
decision making
– Data warehouse:
Stores data in a format
optimized for decision
support

36 Nguyen Thi Hau - DBMS


Types of Databases
• Business intelligence: Captures and processes
business data to generate information that
support decision making

• Online analytical processing (OLAP)


– Enable retrieving, processing, and modeling data
from the data warehouse

37 Nguyen Thi Hau - DBMS


Types of Databases
• Unstructured data: It
exists in their original state
• Structured data: It results
from formatting
– Structure is applied based
on type of processing to be
performed
• Semi-structured data:
Processed to some extent
• Extensible Markup
Language (XML)
– Represents data elements in
textual format

38 Nguyen Thi Hau - DBMS

You might also like