Upload
pham-huu-truong
View
215
Download
0
Embed Size (px)
DESCRIPTION
introduction
Citation preview
Bài 1: Giới thiệu môn học
1TS. Đào Trung Kiên – ĐH Bách khoa Hà NộiEE4509, EE4253, EE6133 – HK1 2014/2015
Giới thiệu Cơ sở dữ liệu (EE4509, EE4253, EE6133) Lý thuyết + Bài tập, Bài tập lớn + Thi cuối kỳ Giảng viên:
TS. Đào Trung Kiên, Viện MICA, ĐH BKHN Email: [email protected] Web: http://mica.edu.vn/perso/kiendt/DB/
Sách tham khảo: M.V. Mannino: Database Design, Application Development and Design,
McGraw-Hill, 2007 A. Siberschatz, H. Korth, S. Sudarshan: Database System Concepts,
McGraw-Hill, 2001
Công cụ sử dụng: CSDL: SQL Server, MySQL Lập trình: MS Visual C++, C#, PHP
2TS. Đào Trung Kiên – ĐH Bách khoa Hà NộiEE4509, EE4253, EE6133 – HK1 2014/2015
Nội dung môn học
Tổng quan
Các mô hình dữ liệu
Mô hình thực thể - liên kết (ER)
Mô hình quan hệ
Ngôn ngữ SQL
Dùng CSDL trong các ứng dụng
Một số vấn đề liên quan khác
3TS. Đào Trung Kiên – ĐH Bách khoa Hà NộiEE4509, EE4253, EE6133 – HK1 2014/2015
Bài tập lớn Thực hiện theo nhóm: 3 sinh viên / nhóm Thuyết trình bằng slide 15 phút / nhóm vào các buổi
cuối. Nội dung trình bày: Thiết kế và cài đặt CSDL Thiết kế và cài đặt ứng dụng Phân công công việc trong nhóm
Đánh giá điểm dựa vào công việc của từng thành viên
Nộp báo cáo bằng giấy và email
4TS. Đào Trung Kiên – ĐH Bách khoa Hà NộiEE4509, EE4253, EE6133 – HK1 2014/2015
Tổng quan
5TS. Đào Trung Kiên – ĐH Bách khoa Hà NộiEE4509, EE4253, EE6133 – HK1 2014/2015
Đặt vấn đề Với các bài toán đơn giản, việc quản lý dữ liệu có thể
không phải là vấn đề lớn Nhưng với các bài toán phức tạp, có thể có các vấn đề
sau trong quản lý dữ liệu: Lượng dữ liệu rất lớn (hàng triệu, tỷ,… bản ghi) Truy xuất đồng thời (nhiều người dùng/chương trình truy xuất
cùng lúc) Tốc độ truy xuất (đòi hỏi quản lý một cách thông minh với lượng
dữ liệu lớn) Giao tiếp đơn giản và theo chuẩn …
CSDL (Database) và các hệ quản trị CSDL (Database Management Systems - DBMS)
6TS. Đào Trung Kiên – ĐH Bách khoa Hà NộiEE4509, EE4253, EE6133 – HK1 2014/2015
Lịch sử Bắt đầu hình thành từ đầu những năm 1960 Ngày nay đã trở thành một công nghệ nền tảng
Tham gia của nhiều hãng công nghệ lớn: Microsoft, Oracle, Sun, IBM,…
Hiện diện mọi nơi: các phần mềm quản lý, Wikipedia, Google, Facebook,…
Sơ lược: Thế hệ đầu tiên (1960): sử dụng mô hình phân tầng (hierarchical
model) và mô hình mạng (network model): IDMS (IBM) Mô hình quan hệ (relational model, 1970): nhấn mạnh khả năng tìm
kiếm dữ liệu, được sử dụng rất phổ biến hiện nay Mô hình thực thể-liên kết (entity-relationship model, 1976): giúp thiết
kế CSDL Các mô hình khác: đối tượng (object model: ObjectDB), bán cấu trúc
(semi-structural model: XML), không cấu trúc (NoSQL),…7
TS. Đào Trung Kiên – ĐH Bách khoa Hà NộiEE4509, EE4253, EE6133 – HK1 2014/2015
Khái niệm CSDL CSDL: là tập hợp các thông tin được tổ chức theo
một cấu trúc nhất định. Ví dụ: Sổ danh bạ: là một CSDL chứa danh sách tên, số điện
thoại, địa chỉ các cá nhân
8TS. Đào Trung Kiên – ĐH Bách khoa Hà NộiEE4509, EE4253, EE6133 – HK1 2014/2015
STT Tên Điện thoại Địa chỉ1 Bill Gates 0900000000 Mỹ2 Bill Clinton 09111111111 Mỹ3 Mao Trạch Đông 0922222222 Trung Quốc4 Trương Tấn Sang 0933333333 Việt Nam5 Nguyễn Tấn Dũng 0944444444 Việt Nam… … … …
Sơ đồ CSDL Là phần mô tả cấu trúc của một CSDL. Nó cho biết ý
nghĩa chung của các thông tin đuộc lưu trữ trongCSDL.
Ví dụ: Sổ danh bạ gồm các trường: tên, số điện thoại, địa chỉ
Các mức trừu tượng: Mức vật lý / mức nội tại (internal level) Mức logic / mức quan niệm (conceptual level) Mức khung nhìn (view) / mức bên ngoài (external level)
9TS. Đào Trung Kiên – ĐH Bách khoa Hà NộiEE4509, EE4253, EE6133 – HK1 2014/2015
Các mức trừu tượng
10TS. Đào Trung Kiên – ĐH Bách khoa Hà NộiEE4509, EE4253, EE6133 – HK1 2014/2015
Hệ CSDL Các thành phần cấu thành một hệ CSDL: CSDL hợp nhất Người sử dụng Phần mềm quản trị CSDL (DBMS) Phần cứng lưu trữ
Các khả năng của hệ CSDL: Quản lý dữ liệu tồn tại lâu dài Truy xuất khối lượng dữ liệu lớn một cách hiệu quả Kết nối: để người dùng có thể thao tác
11TS. Đào Trung Kiên – ĐH Bách khoa Hà NộiEE4509, EE4253, EE6133 – HK1 2014/2015
Hệ quản trị CSDL (DBMS) Là phần mềm quản lý các CSDL và điều khiển mọi
thao tác với các dữ liệu trong các CSDL đó Một số DBMS thông dụng: SQL Server, Oracle,
MySQL, PostgreSQL, SQLite,… Các đặc điểm quan trọng của một DBMS: Mô hình CSDL (quan hệ, đối tượng,…) Đảm bảo độc lập dữ liệu Ngôn ngữ truy vấn (query language) Quản lý giao dịch Quản lý truy nhập Bảo trì, khôi phục dữ liệu
12TS. Đào Trung Kiên – ĐH Bách khoa Hà NộiEE4509, EE4253, EE6133 – HK1 2014/2015
Mô hình hoạt động của DBMS
13TS. Đào Trung Kiên – ĐH Bách khoa Hà NộiEE4509, EE4253, EE6133 – HK1 2014/2015
Dữ liệu
Bộ quản lý lưu trữ
Bộ xử lý câu truy vấn
Bộ quản lý giao dịch
Các thay đổi truy vấn
Các thay đổi dữ liệu
Các thay đổi sơ đồ
Ngôn ngữ CSDL Các loại ngôn ngữ: Định nghĩa dữ liệu (Data Definition Language – DDL): Mô tả cấu trúc và tạo các CSDL Phân quyền người dùng
Thao tác dữ liệu (Data Manupulation Language –DML): Thêm/bớt thông tin Thay đổi thông tin
Truy vấn dữ liệu (Query Language) Tìm kiếm thông tin thoả mãn các yêu cầu nhất định
14TS. Đào Trung Kiên – ĐH Bách khoa Hà NộiEE4509, EE4253, EE6133 – HK1 2014/2015
Người dùng Hai loại người dùng: Người điều hành (DB operators): định nghĩa sơ đồ, phân
quyền, sao lưu, bảo trì,… Người sử dụng (DB users): thao tác với các dữ liệu
Người quản trị (DB administrators): là người thuộccả hai nhóm nêu trên
15TS. Đào Trung Kiên – ĐH Bách khoa Hà NộiEE4509, EE4253, EE6133 – HK1 2014/2015
Một số DBMS phổ biến
Tên Mô hình Ngôn ngữ Bản quyền Ra đời
Oracle Relational, object SQL Oracle 1977
SQL Server Relational SQL Microsoft 1989
Access Relational SQL Microsoft 1992
DB2 Relational SQL IBM 1983
MySQL Relational SQL Mã mở (Oracle) 1995
PostgreSQL Relational, object SQL Mã mở (PostgreSQL) 1995
SQLite Relational SQL Mã mở 2000
XML Semi-structural XQuery, XPath Mã mở 2003
Objectivity/DB Object ODL, OQL Objectivity 1990
MongoDB NoSQL Javascript Mã mở (10gen) 2007
16TS. Đào Trung Kiên – ĐH Bách khoa Hà NộiEE4509, EE4253, EE6133 – HK1 2014/2015
Cài đặt công cụ
17TS. Đào Trung Kiên – ĐH Bách khoa Hà NộiEE4509, EE4253, EE6133 – HK1 2014/2015
Các công cụ sử dụng cho môn học MS Visual C++, C# Express 2008: http://msdn.microsoft.com/en-us/express/future/bb421473
MS SQL Server Express 2008: http://www.microsoft.com/download/en/details.aspx?id=1695 Chú ý chọn Windows Authentication
MS SQL Server Management Studio Express: http://www.microsoft.com/download/en/details.aspx?id=8961
Apache + PHP + MySQL: http://www.easyphp.org/save-easyphp-539.php
18TS. Đào Trung Kiên – ĐH Bách khoa Hà NộiEE4509, EE4253, EE6133 – HK1 2014/2015