Bài giảng Cơ sở dữ liệu - Chương 7: Tổ chức dữ liệu vật lý cung cấp cho người học các kiến thức: Mô hình tổ chức bộ nhớ ngoài, tổ chức tệp đóng, tổ chức tệp băm, tổ chức tệp chỉ dẫn,.... Mời các bạn cùng tham khảo nội dung chi tiết.
1/30/2012 Nội dung • • • • • Tổ chức liệu vật lý Ng ễn Hồng Phương Nguyễn phuongnh@soict.hut.edu.vn http://is.hut.edu.vn/~phuongnh Mơ hình tổ chức nhớ Tổ chức tệp đống Tổ chức tệp băm Tổ ổc chức ức tệp c dẫ dẫn Cây cân Bộ môn Hệ thống thông tin Viện Công nghệ thông tin Truyền thông Đại học Bách Khoa Hà Nội 1 Mơ hình tổ chức nhớ ngồi Mơ hình tổ chức nhớ ngồi • Bộ nhớ ngồi (bộ nhớ thứ cấp): đĩa từ, băng từ, • Thao tác với liệu tệp thông qua địa tuyệt đối khối • Các ghi có địa chỉ: – địa tuyệt đối byte – địa khối số byte tính từ đầu khối đến vị trí đầu ghi • Đĩa chia thành khối vật lý (sector) 512 byte đến 4096 byte đánh địa khối gọi địa tuyệt đối • Mỗi tệp liệu chiếm nhiều khối • Mỗi khối chứa nhiều ghi • Địa ghi/khối lưu tệp => sử dụng trỏ (pointer) để truy cập liệu tệp Tổ chức tệp đống (Heap file) Tổ chức tệp đống (Heap file) • Tổ chức liệu – Bản ghi lưu trữ khối, không tuân theo thứ tự đặc biệt k1 k2 k3 k4 k5 k6 k7 k8 • Các thao tác – Tìm kiếm ghi: tìm kiếm ghi có giá trị khóa cho trước => qt tồn tệp – Thêm ghi: thêm ghi vào sau ghi cuối • Các thao tác (tiếp) – Xóa ghi: thao tác xóa bao hàm thao tác tìm kiếm Nếu có ghi cần xóa đánh dấu xóa => hệ thống cần tổ chức lại đĩa định kỳ – Sửa ghi: tìm ghi sửa hay nhiều trường CuuDuongThanCong.com https://fb.com/tailieudientucntt 1/30/2012 Tổ chức tệp đống (Heap file) • Ví dụ: Tổ chức tệp băm (Hashed files) • Hàm băm: h(x) nhận giá trị đoạn [0,k], ví dụ: h(x)=x mod k • Tổ chức tệp liệu Thêm ghi có g giá trịị khóa 32 – Phân chia ghi vào cụm – Mỗi cụm gồm nhiều khối khối – Mỗi khối chứa số lượng ghi cố định – Tổ chức lữu trữ liệu cụm áp dụng theo tổ chức đống Xóa ghi có giá trị khóa 64 Tổ chức tệp băm (Hashed files) • Tiêu chí chọn hàm băm: phân bố ghi tương đối đồng theo cụm Tổ chức tệp băm (Hashed files) h(x) = x mod Store hash 4 Tổ chức tệp băm (Hashed files) Store – Tìm kiếm ghi: để tìm ghi có khóa x, tính h(x) cụm chứa ghi, sau tìm kiếm theo tổ chức đống – Thêm ghi: thêm ghi có giá trị khóa x hash 10 12 18 17 Tổ chức tệp băm (Hashed files) • Các thao tác h(x) = x mod 12 10 17 18 10 • tệp có ghi có trùng khóa x =>bản ghi sai (vì khóa nhất!) • khơng có ghi trùng khóa, ghi thêm vào khối chỗ trống cụm, hết chỗ tạo khối 11 12 CuuDuongThanCong.com https://fb.com/tailieudientucntt 1/30/2012 Tổ chức tệp băm (Hashed files) – Xóa ghi: tìm kiếm ghi xóa – Sửa đổi ghi: • trường cần sửa có tham gia vào khóa việc sửa loại bỏ ghi thêm ghi (bản ghi thuộc vào cụm khác) • trường cần sửa khơng thuộc khóa: tìm kiếm sửa Nếu ghi khơng tồn xem có lỗi Tổ chức tệp dẫn(Indexed Files) • Giả sử giá trị khóa ghi xếp tăng dần • Tệp dẫn tạo cách chọn giá trị khóa ghi • Tệp dẫn bao gồm cặp (k,d), k g giá trịị khố ghi g đầu tiên,, d địa khối (hay trỏ khối) 13 Tổ chức tệp dẫn(Indexed Files) • Tìm kiếm tệp dẫn 14 Tổ chức tệp dẫn(Indexed Files) • Các thao tác – Cho giá trị khóa ki, tìm ghi (km,d) tệp dẫn cho km