Bài giảng Cơ sở dữ liệu phân tán - TS. Hồ Bảo Quốc
Trang 1Cơ sở dữ liệu phân tán
TS Hồ Bảo Quốc Đại học khoa học tự nhiên TP.HCM
Trang 2Nội dung
n Giới thiệu tổng quan
n Kiến trúc khách/chủ (client/server)
n Các khái niệm căn bản của DDB
n Quản trị giao tác phân tán
n Xử lý truy vấn phân tán
n An tòan và bảo mật
n Khôi phục sau sự cố
Trang 3Tài liệu tham khảo
n Nguyên lý các hệ cơ sở dữ liệu phân tán
M Tamer Özsu, Patrick Valduriez
Biên dịch: Trần Đức Quang
n Principles of Distributed Database Systems
M Tamer ozsu, Patrick Valduriez
n Database systems (Design, implementation, and management
Peter Rob, Carlos Coronel
n An introduction to Database systems
C J Date
Trang 4Giới thiệu tổng quan
Trang 5Lịch sử phát triển
n 1970 : Hệ thống quản lý dữ liệu tập trung
n 1980 : Nhu cầu phân tán
n Xã hội
n Doanh nghiệp phân tán
n Công nghệ
n Máy tính trở thành công cụ quen thuộc
n Thông tin trở thành hàng hóa (Data WareHouse, Data Mining)
n Hàng tỉ khách (clients) (cố định/di động) và hàng triệu chủ (server)
n Sự phát triển của bộ nhớ : càng lớn, càng nhanh, càng rẽ
n Sự phát triển của máy tính
n Sự phát triển của mạng
Trang 6Sự phát triển của các hệ DBMS
Mô hình
Hiệu suất
Câu truy vấn
Tính mở rộng
Mạng (70) Kém Tốt kém Không
Quan hệ (80) Tốt Kém ? Tốt Không Đối tượng (90) Tốt Tốt Tốt Có
Đối tượng –
Quan hệ (00)
Tốt Tốt Tốt có
Trang 8Tại sao cần các hệ phân tán
n Các đặc trưng chính
n Truyền thông qua mạng (hữu tuyến/vô tuyến)
Trang 9Hệ CSDL phân tán là gì ?
n CSDL phân tán là một tập hợp nhiều CSDL có
tính
n Cơ sở dữ liệu + mạng máy tính
n Nguyên lý căn bản : Đối với người dùng, một hệ
thống phân tán có vẽ giống như một hệ tập trung với
Trang 107 Xử lý câu truy vấn phân tán
8 Quản lý giao tác phân tán
Trang 11Các vấn đề cần giải quyêt
n Điều khiển dữ liệu ngữ nghĩa
(Semantic Data Control)
n Quản lý giao tác phân tán
(Distributed Transaction Management)
n Xử lý câu truy vấn phân tán
(Distributed Query Process)
n Điều khiển truy xuất đồng thời
(Concurrence Control)
n Điều khiển khôi phục sau sự cố (Recovery)
Trang 13Kiến trúc Client/Server
Trang 14Kiến trúc khách/chủ (client/server)
n Định nghĩa :
Kiến trúc tính tóan trong đó các xử lý được phân bổ
trên máy chủ (server) và các máy khách/trạm (client)
n Phân chia chức năng
n Chức năng cho « khách »
n Chức năng của « chủ »
n Mô hình hai lớp/nhiều lớp ( two level/ n-tier)
Trang 15Hệ
điều
hành
Phần mềm truyền thông Quản lý tự điển dữ liệu Tối ưu hóa câu truy vấn Quản lý giao tác Quản lý khôi phục sau sự cố
Hệ
điều
hành
Quan hệ kết quả Câu truy vấn SQL
Trang 16Phân lớp chương trình ứng dụng
n Chương trình liên quan đến giao diện (interface)
n Thể hiện và kiểm sóat Form màn hình
n Tạo báo cáo (report)
n Hội thọai người – máy
n Chương trình tính tóan chức năng
n Chương trình truy cập dữ liệu của CSDL
Trang 17Các giải pháp khách chủ
n Giải pháp 1
Giao diện
Tính tóan chức năng
Truy cập dữ liệu
SQL
KQ
Trang 18Các giải pháp khách/chủ
n Giải pháp 2
Giao diện Tính tóan
Truy cập dữ liệu SQL
KQ
Trang 19Các giải pháp khách chủ
n Giải pháp 3
Giao diện Tính tóan 1
Tính tóan 2 Truy cập dữ liệu
SQL
KQ
Trang 21Kiến trúc 3 lớp (3-tier)
URL
html
Trang 23Các thành phần của DDBMS
USER
User Processor
User Interface Handler
Semantic Data controller
Global Query Optimizer
Global Execution Monitor
External Shema
Global Conceptual Scheme
Local Query Processor
Local Conceptual Scheme Local Recovery
Manager
Runtime Support Processor Local internal Scheme
User processor
Data Processor