Tổng quan bài báo• Tiến bộ của self-tuning database 1997 – 2007 • Các vấn đề trong quá trình phát triển và cách giải quyết.. • Tập trung về vấn đề tự động thiết kế CSDL vật lý... Thiết k
Trang 1Self-tuning database
systems
Master of Computer Science 2015 - Semester 1, 2015-2016
Advanced Database Systems
Trường đại học Bách khoa TP Hồ Chí Minh
Khoa khoa học và kỹ thuật máy tính
Nhóm 8 1570212-Trần Vinh Khải 7140239-Đinh Kim Quốc Khải 1570214-Nguyễn Văn Kiên
Trang 2Nội dung trình bày
• Tổng quan bài báo
• Thiết kế cơ sở dữ liệu vật lý
• Self-tuning
Trang 3Tổng quan bài báo
• Tiến bộ của self-tuning database (1997 – 2007)
• Các vấn đề trong quá trình phát triển và cách giải quyết
• Tập trung về vấn đề tự động thiết kế CSDL vật lý
Trang 4Thiết kế CSDL vật lý
• Công cụ thiết kế CSDL vật lý (bài báo 1997) hỗ trợ lựa chọn index
• Kiến trúc phân tích “What – if”
• Material view
• Partitioning
Trang 5Tiến bộ trong thiết kế CSDL vật lý
• Cải tiến kiến trúc “What – if”
• Thiết kế CSDL vật lý vẫn phụ thuộc nhiều vào DBA
cần có các phương pháp hỗ trợ DBA
Trang 6Off-line Index Advisor
Database Server
What-if Optimizer
Tuning Workload
Recommended Indexes
Create/Drop
Indexes
User
Actual Workload
+DBA controls index maintenance
- DBA must know the workload in advance
- Limited support for interactive tuning
Tiến bộ trong thiết kế CSDL vật lý
Offline Tuning
Trang 7• Khi workload thay đổi có thể ảnh hưởng đến hiệu suất
• Alerter hỗ trợ DBA quyết định khi nào sẽ gọi physical design tool thực thi
• Dựa trên cơ chế lightweight
Trang 8Thực hiện Alerter
• Cảnh báo khi:
• Có cách cơ hội thực hiện tối ưu hơn
• Ghi nhận các yêu cầu index theo kế hoạch định trước của optimizer
Trang 9Workload as a Sequence
• Giả sử workload là một tập hợp các thao tác tuần tự
có thể cải thiện được hiệu suất
• Ví dụ:
Trang 10On-line Tuning
10
On-line Index Advisor
Database Server
What-if Optimizer
Actual Workload
Create/Drop
Indexes
+Tuning is based on actual workload
- DBA is out of the loop
- Performance can become unpredictable
Trang 11Xử lý Large Workload
• Cần dùng các công cụ Tracing giúp xác định workload
• Để giảm tải Tracing:
• Workload rất lớn => Nén các workload nặng
• Chia nhỏ các workload dựa trên các đặc điểm của từng câu truy vấn
• Thực hiện tính toán chi phí và cấu trúc của câu truy vấn
• Workload sau khi nén phải có kết quả thực thi xấp xỉ workload ban đầu
Trang 12CSDL thương mại
• Điều chỉnh thiết kế vật lý trực tiếp trên Production Server gây ra
“non-trivial load”
• Sử dụng một Test Server
• Điều chỉnh thiết kế vật lý trực tiếp trên Test Server và áp dụng kết quả cho Production Server
Trang 13Tiến bộ trong self-tuning
• Statistics management
• Selection of Statistic
• Self tuning histogram
• Monitoring infrastructure
Trang 1414
Trang 15Tiến bộ trong self-tuning
• Statistics management
• Selection of Statistic
• Self tuning histogram
• Monitoring infrastructure
• Query Progress Estimation
• Ad-hoc Monitoring and Diagnostics
Trang 16Công cụ tuning trong DBMS thương mại
• SQL Server:
• Index Tuning Wizard (index view, material view, indexed index view)
• Database Tuning Advisor (+ horizontal range partitioning)
• IBM's DB2:DB2 Design Advisor ( independent advisor for each design structure)
• Oracle 10g: SQL Access Advisor + Oracle Automatic Tuning
Advisor (index view, material view – all workload)
Trang 17Câu hỏi
1) 1 số tiến bộ trong thiết kế cơ sở vật lý:
a) What-if index
b) Alerter
c) Workload as Sequence
d) Statistics management
2) 1 số tiến bộ trong self-tuning:
e) Monitor infrastructure
f) What-if index
g) Workload as Sequence
h) Statistics management
Trang 18Thank you for listening