Chng 1 Gii thiu v Database H c
Chương 1: Giới thiệu về Database Hệ cơ sở dữ liệu 1
Nội dung n n n n Các định nghĩa cơ bản Hệ thống xử lý tập tin truyền thống và nhược điểm của nó Cơ sở dữ liệu và các ưu điểm Chức năng và thành phần cuả hệ quản trị CSDL (DBMS) Chu kỳ phát triển hệ thống Quá trình phát triển CSDL Kiến trúc CSDL 3 mức Kiến trúc hệ quản trị CSDL Hệ cơ sở dữ liệu 2
Các định nghĩa cơ bản n Data (dữ liệu) và information (thông tin) q Data: bao gồm sự việc (fact), văn bản(text), đồ họa (graphics), hình ảnh (images), âm thanh (sound) Information: dữ liệu đã được xử lý Phân biệt giữa data và information? ? q Hệ cơ sở dữ liệu 3
Các định nghĩa cơ bản (tt) n n n Siêu dữ liệu (metadata): mô tả các tính chất hoặc các đặc điểm của dữ liệu khác Database (CSDL) là tập các dữ liệu liên quan đến nhau Database management system(DBMS): là tập các chương trình để người sử dụng tạo và duy trì CSDL Hệ cơ sở dữ liệu 4
Hệ thống xử lý tập tin truyền thống n n Là tập hợp các chương trình ứng dụng thực hiện các dịch vụ cho nhiều người sử dụng, mỗi chương trình ứng dụng tạo và quản lý các dữ liệu riêng biệt. Nhược điểm: q q q Phụ thuộc dữ liệu – chương trình Trùng lặp dữ liệu Hạn chế việc dùng chung dữ liệu Thời gian phát triển lâu Chi phí bảo trì chương trình cao Hệ cơ sở dữ liệu 5
Database n n Database: Là một tập hợp dữ liệu có liên quan logic với nhau chứa thông tin về 1 tổ chức nào đó có tổ chức và được dùng chung đáp ứng nhu cầu khai thác thông tin của người dùng. Hệ quản trị CSDL ( Database Management System - DBMS ): là 1 bộ 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 Hệ cơ sở dữ liệu 6
Ba thuộc tính cơ bản của Database n n n Persistent (liên tục) Interrelated (quan hệ với nhau) Shared (chia sẻ) Hệ cơ sở dữ liệu 7
Ba thuộc tính cơ bản của Database n Persistent: dữ liệu được lưu trữ trong bộ nhớ ổn định như đĩa cứng. Khi dữ liệu không cần dùng nữa thì có thể xoá hay sao lưu lại. Hệ cơ sở dữ liệu 8
Ba thuộc tính cơ bản của Database n Interrelated: dữ liệu được lưu trữ như những đơn vị riêng biệt và được kết nối với nhau để tạo 1 tổng thể chung q Database vừa chứa thực thể và cả mối quan hệ giữa các thực thể Hệ cơ sở dữ liệu 9
Ba thuộc tính cơ bản của Database n Shared: database có thể có nhiều người dùng và nhiều người dùng có thể sử dụng cùng 1 database tại cùng 1 thời điểm. q Bài toán đồng thời (concurrency problem) Hệ cơ sở dữ liệu 10
Các bước phát triển của công nghệ Database n Thế hệ 1: hỗ trợ việc dò tìm ngẫu nhiên và tuần tự, người dùng phải viết chương trình để truy xuất dữ liệu. § Là hệ thống xử lý file hơn là DBMS, chỉ có thể xử lý 1 thực thể Thế hệ 2: là DBMS đầu tiên, có thể quản lý được nhiều kiểu thực thể và mối quan hệ giữa chúng Hệ cơ sở dữ liệu 11
Các bước phát triển của công nghệ Database § Thế hệ 3: xuất hiện DBMS quan hệ. § § Đã bắt đầu có ngôn ngữ phi thủ tục (nonprocedural language) SQL Thế hệ 4: DBMS có thể lưu trữ và xử lý dữ liệu không theo quy ước (unconventional data) như hình ảnh, âm thanh, bản đồ, ảnh động, . . Xuất hiện OODBMS (Object oriented DBMS) § Data warehouse ? Là 1 DB hỗ trợ việc ra quyết định bên trong 1 tổ chức. § Hệ cơ sở dữ liệu 12
Transaction n n Là 1 đơn vị công việc ( work unit) được xử lý một cách chắc chắn mà không cần có sự can thịêp từ người dùng khác và không bị mất dữ liệu do lỗi Ví dụ: dịch vụ rút tiền ATM, đặt vé máy bay trước, … n Hệ cơ sở dữ liệu 13
Phân loại DBMS n n n Enterprise DBMS: thường chạy trên server công suất lớn và chi phí cao, database mà DBMS quản lý thường phản ánh mọi chức năng của cả tổ chức. Desktop DBMS: chạy trên PC, server nhỏ, chi phí thấp và hỗ trợ có giới hạn việc xử lý các transaction Embedded DB: thường trú trong những hệ thống lớn hơn (có thể là 1 ứng dụng, 1 smart card hay 1 thiết bị …), nó hỗ trợ có giới hạn việc xử lý các transaction, bộ nhớ nhỏ. Hệ cơ sở dữ liệu 14
Cách tiếp cận Database n n Người sử dụng tương tác với CSDL thông qua chương trình ứng dụng ( application program) Người sử dụng có thể nhìn thấy dữ liệu họ cần thông qua khung nhìn (View - tiện ích của DBMS) Hệ cơ sở dữ liệu 15
Cách tiếp cận Database (tt) n Ưu điểm: q q q q q Độc lập dữ liệu – chương trình Giảm tối thiểu dư thừa dữ liệu Nâng cao tính nhất quán dữ liệu Nâng cao việc dùng chung dữ liệu Tăng hiệu suất phát triển ứng dụng Tuân thủ các tiêu chuẩn Nâng cao chất lượng của dữ liệu Nâng cao tính truy xuất và tính đáp ứng của dliệu Giảm chi phí bảo trì chương trình Hệ cơ sở dữ liệu 16
Cách tiếp cận Database (tt) n Nhược điểm: q q q q Phức tạp Tốn vùng nhớ Tốn chi phí cho DBMS Tốn thêm chi phí cho phần cứng Tốn chi phí chuyển đổi Giảm hiệu súât của ứng dụng Bị ảnh hưởng nhiều do hư hỏng Hệ cơ sở dữ liệu 17
Các thành phần của môi trường DBMS n n n Phần cứng (Hardware) Phần mềm (Software) Dữ liệu (data) Các thủ tục (procedure) Con người q q q Người quản trị CSDL ( DBA–Database administration) Người quản trị dữ liệu (DA – Data administration) Người thiết kế CSDL ( Database designer) Người phát triển ứng dụng (application developer) Người dùng cuối (end-user) Hệ cơ sở dữ liệu 18
Các chức năng của DBMS n n n n Lưu trữ, truy xuất và cập nhật dữ liệu Danh mục hệ thống Hỗ trợ giao tác (transaction) Dịch vụ điều khiển tương tranh, phục hồi, cấp quyền Hỗ trợ truyền thông dữ liệu Dịch vụ toàn vẹn, độc lập dữ liệu Dịch vụ tiện ích Hệ cơ sở dữ liệu 19
Kiến trúc database ba mức n n n Mức vật lý (lược đồ trong) được xây dựng trong giai đoạn thiết kế vật lý, mô tả dữ liệu thực sự được lưu trữ như thế nào trong CSDL. Mức ý niệm được xây dựng trong giai đoạn phân tích, mô tả dữ liệu nào được lưu trữ trong CSDL và mối quan hệ nào giữa chúng. Nó biểu diễn các thức thể, thuộc tính và mối quan hệ giữa các thực thể đó Mức ngoài ( khung nhìn của người dùng) được xây dựng trong giai đoạn phân tích và thiết kế, mô tả chỉ 1 phần dữ liệu thích hợp với 1 người dùng nhất định. Mức này bao gồm nhiều khung nhìn (view) khác nhau. Hệ cơ sở dữ liệu 20
External level (mức ngoài) User view 1 User view 2 Conceptual level (mức khái niệm) Conceptual schema Internal level (mức trong) User view 3 Internal schema Physical database organization Database Hệ cơ sở dữ liệu 21
Kiến trúc ba mức n n Mức logic nằm giữa mức khung nhìn và mức vật lý, coi như đây là cách cảm nhận của người dùng về dữ liệu. Tại mức logic tồn tại cả 2 ánh xạ đến 2 mức còn lại tạo nên sự độc lập đối với nhau của 2 mức đó. Mục đích của kiến trúc 3 mức là tách biệt quan niệm về CSDL của người dùng với chi tiết biểu diễn vật lý của CSDL tạo ra sự độc lập dữ liệu (data independence) Hệ cơ sở dữ liệu 22
Độc lập dữ liệu n Có 2 loại độc lập dữ liệu q q Độc lập dữ liệu vật lý: khả năng sửa đổi lược đồ vật lý mà không làm thay đổi lược đồ khái niệm, không phải viết lại chương trình ứng dụng. Độc lập dữ liệu logic: khả năng sửa đổi lược đồ logic mà không làm thay đổi khung nhìn Hệ cơ sở dữ liệu 23
Kiến trúc DBMS n n n Kiến trúc truyền thống Kiến trúc file – server Kiến trúc client-server Hệ cơ sở dữ liệu 24
Kiến trúc truyền thống n n Còn gọi là hệ xử lý từ xa (teleprocessing) Gồm 1 máy tính CPU và 1 số trạm đầu cuối ( terminal) q q Tất cả xử lý tập trung trên cùng 1 máy tính. Các trạm đầu cuối gửi yêu cầu về máy trung tâm Hệ cơ sở dữ liệu 25
Kiến trúc truyền thống Hệ cơ sở dữ liệu 26
Kiến trúc file – server n n Việc xử lý không tập trung vào 1 máy trung tâm mà phân tán trên mạng. File-server lưu giữ các tệp dữ liệu mà các ứng dụng và hệ QTCSDL cần đến q q q Dữ liệu truyền trên mạng nhiều Mỗi trạm phải cài đặt một bản sao đầy đủ của hệ QTCSDL Tính nhất quán dữ liệu phức tạp hơn vì có nhiều hệ QTCSDL truy cập vào cùng tệp dữ liệu Hệ cơ sở dữ liệu 27
Kiến trúc file – server Trạm 2 Trạm 3 Trạm 1 LAN Các tệp được gửi về trạm Các yêu cầu vể dữ liệu File – server Hệ cơ sở dữ liệu Cơ sở dữ liệu 28
Kiến trúc Client/Server n n Khắc phục được nhược điểm của 2 kiểu trên Các bộ phận phần mềm tương tác với nhau tạo nên 1 hệ thống: q q Tiến trình client quản trị giao diện người dùng và ứng dụng logic. Tiến trình client nhận yêu cầu người dùng, kiểm tra, gửi thông điệp về server. Tiến trình server tiếp nhận, xử lý yêu cầu, gửi trả kết quả về lại client. Hệ cơ sở dữ liệu 29
Kiến trúc client – server Máy khách 2 Máy khách 3 Máy khách 1 LAN Các yêu cầu vể dữ liệu Máy chủ (với DBMS) Hệ cơ sở dữ liệu Dữ liệu được chọn gửi về máy chủ Cơ sở dữ liệu 30
- Slides: 30