8/25/2017<br />
<br />
Nội dung<br />
<br />
Chương 2.<br />
Cấu trúc lưu trữ và phương<br />
pháp truy xuất<br />
<br />
1.<br />
2.<br />
3.<br />
4.<br />
5.<br />
6.<br />
7.<br />
8.<br />
<br />
GV: Lê Thị Minh Nguyện<br />
Email: nguyenltm@huflit.edu.vn<br />
<br />
Tổ chức dữ liệu<br />
Các bộ phận của tổ chức tổ chức dữ liệu<br />
Mẫu tin (record)<br />
Sắp xếp các mẫu tin vào block<br />
Tổ chức mẫu tin trên tập tin<br />
Tổ chức băm<br />
Tổ chức B cây<br />
Chỉ mục (index)<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
1. Tổ chức dữ liệu<br />
<br />
1.1. Khái niệm<br />
<br />
1.1. Khái niệm<br />
<br />
• Tổ chức dữ liệu là tiến trình phân tích và cấu trúc lại dữ<br />
liệu (đôi khi chỉ là các giá trị dữ liệu, phức tạp hơn là cơ<br />
sở dữ liệu) của hệ thống<br />
• Kết quả của việc tổ chức dữ liệu là có được hệ thống<br />
tổ chức và quản lý dữ liệu tốt hơn, có thể có một cơ sở<br />
dữ liệu chuẩn với các mô hình dữ liệu được cài đặt<br />
<br />
1.2. Sự cần thiết của tổ chức dữ liệu<br />
1.3. Các thuận lợi và khó khăn khi tổ chức dữ liệu<br />
<br />
1.4. Các giải pháp tổ chức dữ liệu<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
3<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
2<br />
<br />
4<br />
<br />
1<br />
<br />
8/25/2017<br />
<br />
1.1. Khái niệm (tt)<br />
<br />
1.2. Sự cần thiết của tổ chức dữ liệu<br />
<br />
• Các hoạt động khi tổ chức dữ liệu thường gặp:<br />
• Tổ chức dưới dạng tập tin đơn giản trong hệ thống<br />
• Tổ chức thành cơ sở dữ liệu được quản lý bởi DBMS<br />
• Chuyển hệ thống dùng một DBMS này sang hệ thống dùng một<br />
DBMS khác<br />
• Chuyển đổi dữ liệu toàn cục dùng chung cho toàn bộ hệ thống<br />
thành các đối tượng hay các dạng dữ liệu với cấu trúc trừu tượng<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
5<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
6<br />
<br />
1.2. Sự cần thiết của tổ chức dữ liệu (tt)<br />
<br />
1.3. Các thuận lợi và khó khăn khi tổ chức dữ liệu<br />
<br />
• Đối với các hệ thống cũ, những khó khan bao gồm:<br />
<br />
• Thuận lợi<br />
<br />
• Những người tham gia tổ chức dữ liệu không còn làm việc<br />
<br />
trong công ty.<br />
• Một số hệ thống hoạt động trên máy tính lớn, dữ liệu lưu trữ ở<br />
một nơi, khó khan cho việc khai thác phân bố ở nhiều nơi<br />
khác nhau.<br />
• Một số hệ thống sử dụng các cơ sở dữ liệu cũ hay các tập tin<br />
đã lỗi thời có sự gia tang lớn về sự trùng lắp dữ liệu.<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
7<br />
<br />
• Tăng tính hiệu quả khi khai thác dữ liệu<br />
• Giảm thiểu rủi ro trong tương lai<br />
• Tận dụng các tri thức đã tích lũy trong hệ thống cũ,…<br />
<br />
• Khó khăn<br />
• Vấn đề chi phí<br />
• Đối với các hệ thống cũ, nếu thay đổi cách tiếp cận khi phân<br />
tích, thiết kế nhằm phục vụ cho việc tổ chức dữ liệu thì gần<br />
như xây dựng lại từ đầu<br />
• Đào tạo nhân sự tiếp cận công nghệ mới,…<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
8<br />
<br />
2<br />
<br />
8/25/2017<br />
<br />
1.4. Các giải pháp tổ chức dữ liệu<br />
<br />
2. Các bộ phận của tổ chức tổ chức dữ liệu<br />
<br />
• Tổ chức Dữ liệu theo tập tin<br />
• Tổ chức dữ liệu theo cơ sở dữ liệu<br />
<br />
2.1. Bộ phận quản lý tập tin (File Manager)<br />
2.2. Bộ phận quản lý đĩa (magnetic disk)<br />
2.3. Tổ chức vật lý Tổ chức vật lý<br />
<br />
• Nêu ứng dụng, ưu và khuyết điểm của 2<br />
<br />
chức dữ liệu?????<br />
<br />
loại tổ<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
9<br />
<br />
Bộ phận quản lý tập tin (File Manager)<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
10<br />
<br />
2.1. Bộ phận quản lý đĩa (magnetic disk)<br />
<br />
• Lưu trữ thông tin trên đĩa từ dưới dạng các file. Các file<br />
sẽ có con trỏ xác định điểm vào các sector đầu tiên<br />
chứa thông tin. Các file được quản lý dưới dạng cây gọi<br />
là cây thư mục<br />
<br />
CPU<br />
Registers<br />
<br />
C<br />
A<br />
C<br />
H<br />
E<br />
<br />
Memory Bus<br />
<br />
I/O Bus<br />
I/O Devices<br />
<br />
Memory<br />
<br />
Size<br />
<br />
Speed<br />
<br />
Virtural<br />
Memory<br />
Disk<br />
<br />
File<br />
System<br />
<br />
Second<br />
storage<br />
<br />
Tertiary storage<br />
<br />
11<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
12<br />
<br />
3<br />
<br />
8/25/2017<br />
<br />
2.1. Bộ phận quản lý đĩa (magnetic disk) (tt)<br />
<br />
2.1. Bộ phận quản lý đĩa (magnetic disk) (tt)<br />
<br />
• Dung lượng lớn<br />
• Dữ liệu không bị mất khi hệ thống mất điện<br />
hay gặp sự cố (non-volatile)<br />
• Tốc độ truy xuất<br />
<br />
• Làm sao bố trí dữ liệu trên đĩa?????<br />
• Muốn lưu trữ dữ liệu<br />
•<br />
•<br />
•<br />
•<br />
<br />
• Thời gian định vị track (seek time): ? ms<br />
• Thời gian định vị sector (rotational delay): ? ms<br />
• Thời gian chuyển dữ liệu (transfer time): ? kb<br />
<br />
• Dữ liệu được biểu diễn bằng chuỗi các bytes<br />
<br />
• Truy xuất dữ liệu<br />
• Đọc trực tiếp dữ liệu ở 1 vị trí bất kỳ trên đĩa<br />
• Theo đơn vị lưu trữ - block hay page<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
Mã tài khoản<br />
Tên chi nhánh<br />
Số dư<br />
Ngày rút tiền<br />
<br />
8<br />
bits<br />
13<br />
<br />
2.3. Tổ chức vật lý<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
14<br />
<br />
Tổ chức trên SQL Server<br />
<br />
• Hai cách tổ chức lưu trữ dữ liệu cơ bản của hệ thống là lưu trữ<br />
ở dạng văn bản (text) và nhị phân (binary).<br />
• Thường tổ chức ở dạng nhị phân<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
15<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
16<br />
<br />
4<br />
<br />
8/25/2017<br />
<br />
Tổ chức trên Oralce<br />
<br />
3. Mẫu tin (record)<br />
• Tập hợp các dữ liệu có liên quan với nhau tạo thành một mẫu<br />
tin<br />
• Ví dụ<br />
• Mẫu tin account có những thông tin<br />
• Account-number<br />
• Branch-name<br />
• Balance<br />
<br />
• Có 2 loại mẫu tin<br />
• Mẫu tin có chiều dài cố định (Fixed-Length Record)<br />
• Mẫu tin có chiều dài động (Variable-Length Record)<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
17<br />
<br />
3.1. Mẫu tin có chiều dài cố định<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
18<br />
<br />
3.1. Mẫu tin có chiều dài cố định(tt)<br />
• Ví dụ<br />
• Mỗi mẫu tin có thêm 1 bit (tương tự .dbf)<br />
• =0: Xóa<br />
• =1: Đang dùng<br />
<br />
type deposit = record<br />
account-number: char(10);<br />
branch-name: char(22);<br />
balance: real;<br />
end<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
• Danh sách các mẫu tin trống (free list)<br />
0 1<br />
1011<br />
3233 40<br />
1 A-102 Perryridge<br />
400<br />
1 A-215<br />
Mianus<br />
700<br />
1 A-222<br />
Redwood<br />
700<br />
1 A-217<br />
Brighton<br />
750<br />
1 A-218 Perryridge<br />
700<br />
0<br />
19<br />
<br />
Hệ quản trị Cơ sở dữ liệu<br />
<br />
41<br />
1<br />
1<br />
1<br />
1<br />
0<br />
0<br />
<br />
A-305<br />
A-101<br />
A-201<br />
A-110<br />
<br />
Round Hill<br />
Downtown<br />
Perryridge<br />
Downtown<br />
<br />
350<br />
500<br />
900<br />
600<br />
<br />
20<br />
<br />
5<br />
<br />