Bài giảng Cơ sở dữ liệu (Database) - Chương 1: Các khái niệm cơ bản về hệ cơ sở dữ liệu cung cấp cho học viên những kiến thức về cơ sở dữ liệu là gì, tại sao cần tới các hệ cơ sở dữ liệu, kiến trúc 3 mức của một hệ cơ sở dữ liệu, lược đồ cơ sở dữ liệu (database schema), thể hiện của cơ sở dữ liệu (database instance),... Mời các bạn cùng tham khảo chi tiết nội dung bài giảng!
Trang 1CƠ SỞ DỮ LIỆU
(DATA BASE)
Phạm Thị Anh Lê Khoa CNTT - Đại học Sư Phạm Hà Nội
Trang 2NỘI DUNG
CSDL
Trang 3TÀI LIỆU THAM KHẢO
n Hồ Thuần, Hồ Cẩm Hà, Các hệ CSDL – Lý thuyết và thực
hành, Tập 1,2 – NXB Giáo dục, 2005
n H.Garcia Monila, J.D.Ullman, and J.Widom, Database
Systems: The Complete Book
n Ullman J.D., Principles of Database and Knowledge-base
n Slide bài giàng:
https://sites.google.com/view/lepta/giảng-dạy/đại-học
Trang 4n Điều kiện: 30% (Tính theo các bài kiểm tra và bài tập)
n Bài tập: SV làm và nộp đầy đủ các bài tập trên hệ thống quản lý học tập, không nộp bài đúng hạn được 0 điểm, không được sao chép
n Kiểm tra viết 50 phút (tuần 10)
n Thi cuối kỳ: 60%
n Thi trắc nghiệm 30 phút (30%)
n Báo cáo bài tập lớn (70%)
Trang 6CHƯƠNG I
CÁC KHÁI NIỆM CƠ BẢN
VỀ HỆ CƠ SỞ DỮ LIỆU
Trang 7CSDL là gì? Tại sao cần tới các hệ CSDL?
n Dữ liệu: biểu diễn được lưu trữ của các đối tượng có ý nghĩa và các sự kiện
n Có cấu trúc: số, văn bản, ngày tháng
n Phi cấu trúc: hình ảnh, video, tài liệu
n Thông tin: dữ liệu được xử lý để tăng sự hiểu biết cho người sử dụng dữ liệu
n Siêu dữ liệu: dữ liệu mô tả các thuộc tính và ngữ cảnh của dữ liệu người dùng
Trang 10CSDL là gì? Tại sao cần tới các hệ CSDL?
Mô tả các thuộc tính hoặc đặc điểm của dữ liệu, bao gồm kiểu dữ liệu, kích thước trường, giá trị cho phép và ngữ cảnh dữ liệu
Trang 11CSDL là gì? Tại sao cần tới các hệ CSDL?
Tất cả các ứng dụng đều cần đến CSDL
Trang 12CSDL là gì? Tại sao cần tới các hệ CSDL?
Nhược điểm của việc lưu trữ thông tin của một tổ chức trong một hệ xử lý tệp:
n Dư thừa dữ liệu và không nhất quán
n Khó khăn trong việc truy cập dữ liệu
n Sự cô lập của dữ liệu
n Các vấn đề toàn vẹn
n Các vấn đề về tính nguyên tố của các giao tác
n Các dị thường của truy cập tương tranh
n Các vấn đề an toàn
Trang 13I.1 CSDL là gì? Tại sao cần tới các hệ CSDL?
CSDL ra đời nhằm giải quyết các vấn đề nêu trên
n Phần mềm cho phép người dùng giao tiếp với CSDL
n Cung cấp môi trường thuận lợi và hiệu quả để tìm kiếm
và lưu trữ thông tin của CSDL
Trang 14I.1 CSDL là gì? Tại sao cần tới các hệ CSDL?
Hệ CSDL nói đến một CSDL cùng với HQTCSDL
để truy cập CSDL đó
Mục đích chính của hệ CSDL: cung cấp cho người
dùng một cách nhìn trừu tượng về dữ liệu (che dấu
những chi tiết phức tạp về cách thức dữ liệu được lưu trữ và bảo trì)
Trang 15I.2 Kiến trúc 3 mức của một hệ CSDL
Mức khung nhìn Khung nhìn 1 Khung nhìn 2 Khung nhìn n
Mức lôgic
Mức vật lý
Trang 16I.3 Lược đồ và thể hiện của CSDL
Lược đồ CSDL (database schema):
n Toàn bộ mô tả của CSDL
n Có 3 loại lược đồ: lược đồ trong, lược đồ kháiniệm, lược đồ ngoài
Thể hiện của CSDL (database instance):
n Toàn bộ dữ liệu lưu trữ trong CSDL tại một thờiđiểm nhất định
n Nhiều thể hiện của CSDL có thể tương ứng vớimột lược đồ CSDL
Trang 17I.4 Sự độc lập của dữ liệu
Lược đồ ngoài Lược đồ ngoài Lược đồ ngoài
Lược đồ khái niệm
Trang 18I.5 Những cách tiếp cận một CSDL
Mô hình CSDL là một tập hợp các khái niệm và
kí pháp dùng để mô tả DL, các mối quan hệ của DL
và các ràng buộc trên DL của một tổ chức.
Một mô hình CSDL gồm 3 thành phần:
n Phần mô tả cấu trúc của CSDL
n Phần mô tả các thao tác, định nghĩa các phép toánđược phép trên dữ liệu
n Phần mô tả các ràng buộc toàn vẹn để đảm bảo sựchính xác của dữ liệu
Trang 19I.5.1 Các mô hình logic trên cơ sở đối tượng
(Object-Based Data Models)
Mô hình thực thể - quan hệ
n Thực thể: một “vật” tồn tại, độc lập, phân biệtđược với các “vật” khác Ví dụ: một cá nhân, mộtquyển sách, một dự án, …
n Mối quan hệ: thể hiện một liên kết giữa nhiềuthực thể
n Ràng buộc: là các bản số (lực lượng) của ánh xạ,biểu thị số các thực thể được liên kết với một tậpthực thể thông qua một tập mối quan hệ
Trang 20I.5.1 Các mô hình logic trên cơ sở đối tượng
(Object-Based Data Models)
Trang 21I.5.1 Các mô hình logic trên cơ sở đối tượng
(Object-Based Data Models)
Mô hình hướng đối tượng
n Đối tượng : chứa các thuộc tính, phương thức.
n Lớp : tập các đối tượng có cùng tập thuộc tính, phương thức.
n Thông báo : một đối tượng có thể truy cập tới dữ liệu của đối tượng khác bằng cách gọi tới phương thức của đối tượng đó.
Trang 22I.5.2 Các mô hình logic trên cơ sở bản ghi
(Record-Based Data Models)
Mô hình quan hệ
n Dữ liệu được thể hiện trong các bảng Mỗi bảng gồm các dòng (bản ghi) và cột (trường| thuộc tính).
n Một liên kết giữa các bảng: nhờ vào sự xuất hiện trùng lặp của một số thuộc tính ở hơn một bảng.
Trang 23I.5.2 Các mô hình logic trên cơ sở bản ghi
(Record-Based Data Models)
Hà Nội Yên Bái
A101 A215
A101 A215 A217
5.0 7.0 6.5
Trang 24I.5.2 Các mô hình logic trên cơ sở bản ghi
(Record-Based Data Models)
Sơ đồ các bản ghi cùng các liên kết giữa chúng là tập các đồ thị.
Trang 25I.5.2 Các mô hình logic trên cơ sở bản ghi
(Record-Based Data Models)
Trang 26I.5.2 Các mô hình logic trên cơ sở bản ghi
(Record-Based Data Models)
Sơ đồ các bản ghi cùng các liên kết giữa chúng có cấu trúc như các cây.
Trang 27I.5.2 Các mô hình logic trên cơ sở bản ghi
(Record-Based Data Models)
Trang 28I.6 Hệ quản trị CSDL
Hệ quản trị CSDL (Database ManagementSystem, DBMS) là một tập hợp các chương trình chophép định nghĩa, tạo lập, bảo trì, cung cấp các truycập có điều khiển đến các CSDL
HQT CSDL cung cấp các phương tiện:
§ Ngôn ngữ định nghĩa dữ liệu (Data DefinitionLanguage, DDL)
§ Ngôn ngữ thao tác dữ liệu (Data ManipulationLanguage, DML)
§ Các kiểm soát, các điều khiển đối với việc truycập vào CSDL
Trang 29I.6.1 Các chức năng của
HQT CSDL
HQT CSDL cung cấp các chức năng:
n Lưu trữ, truy xuất và cập nhật DL
n Từ điển dữ liệu (catalog)
Trang 30Chương trình dịch ngôn ngữ khai báo DL
Mã chương
trình
Bộ quản lí CSDL
Bộ quản lí từ
điển
Bộ quản lí tệp Phương thức truy cập
Bộ đệm của hệ thống CSDL,TĐ DL
Trang 31n Duy trì các hoạt động của hệ thống.
Ø Phải hiểu biết chi tiết và kỹ năng về kĩ thuật tronglĩnh vực CSDL, HQT CSDL, môi trường hệ thống
Trang 32n Người thiết kế CSDL vật lí: Chọn mô hình
dữ liệu logic và quyết định nó được thực hiện
về mặt vật lí như thế nào.
Trang 33Người sử dụng đầu cuối
n Người sử dụng đơn giản: khai thác dữ liệu thôngqua các giao dịch có sẵn như menu, hoặc các câulệnh đơn giản
n Người sử dụng tinh tế: Khai thác dữ liệu thôngqua các truy vấn bậc cao như SQL hoặc tự viếtchương trình ứng dụng phục vụ yêu cầu của mình
Trang 34I.8 Quá trình thiết kế một CSDL
Thế giới thực Tập hợp yêu cầu, phân tích
Thiết kế khái niệm
Thiết kế logic (Ánh xạ mô hình DL)
cụ thể)