Tổ chức tệp: sắp xếp các bản ghi trên thiết bị nhớ ngoài – RID (record id): xác định địa chỉ vật lý của các bản ghi – Chỉ số: cấu trúc dữ liệu xác định sự tương ứng giữa RID của bản ghi và giá trị của trường (khoá) • Vùng nhớ đệm: trung gian giữa thiết bị nhớ ngoài và bộ nhớ trong Bộ xử lý câu hỏi Bộ quản lý Giao dịch Bộ quản lý lưu trữ Data index Quản lý buffer Quản lý tệp Quản lý giao dịch Bộ quản lý lưu trữ Metadata Data dictionary 3 Lưu trữ dữ liệu trong cơ sở dữ liệu quan hệ • Dữ liệu lớn hơn kích thước bộ nhớ RAM • Tính lưu trữ lâu dài của dữ liệu – Disk – Memory • Giá của đơn vị lưu trữ 4 Các thiết bị nhớ ngoài • Đĩa từ, băng từ, trống từ, ... • Đĩa từ: được tổ chức thành từng trang – Chí phí truy nhập đến các trang bất k
Tổ chức liệu vật lý Trần Việt Trung trungtv@soict.hust.edu.vn Bộ môn Hệ thống thông tin, Viện CNTT&TT Đại học Bách Khoa Hà Nội Hệ CSDL Ứng dụng Hệ QTCSDL CSDL CSDL Bộ xử lý câu hỏi Quản lý lưu trữ • Tổ chức tệp: xếp ghi thiết bị nhớ – RID (record id): xác định địa vật lý ghi – Chỉ số: cấu trúc liệu xác định tương ứng RID ghi giá trị trường (khoá) • Vùng nhớ đệm: trung gian thiết bị nhớ nhớ Bộ quản lý Giao dịch Bộ quản lý lưu trữ Bộ quản lý lưu trữ Quản lý buffer Quản lý tệp Metadata & Data dictionary Quản lý giao dịch Data & index Lưu trữ liệu sở liệu quan hệ • Dữ liệu lớn kích thước nhớ RAM • Tính lưu trữ lâu dài liệu – Disk – Memory • Giá đơn vị lưu trữ Các thiết bị nhớ • Đĩa từ, băng từ, trống từ, • Đĩa từ: tổ chức thành trang – Chí phí truy nhập đến trang tương đương – Chí phí đọc nhiều trang liền < chí phí đọc trang theo thứ tự • Băng từ: – đọc trang liền – rẻ đĩa từ chi phí truy nhập thương lớn • Đĩa từ vs nhớ • Tốc độ truy nhập ms vs ns (~1000 lần) • Kích thước TB vs GB (~ 100 lần với chi phí) • Lưu trữ ổn định (kể điện) vs tạm thời • Phân chia block 4KB vs 1Byte Tổ chức nhớ • Mục đích: giảm thiểu truy xuất đến liệu không cần thiết thiết bị nhớ • Các vấn đề cần quan tâm – Cấu trúc lưu trữ – Các phép toán (thêm, xoá, sửa, tìm kiếm) Auxiliary access structure • A secondary organization or auxiliary access structure allows efficient access to file records based on alternate fields – Indexes Heap files • Simplest and most basic type of organization • Records are placed in the file in the order they are inserted • Insert? • Delete? Ordered files • Physically order the records of a file on disk based on the values of one of their fields (the ordering field) • Binary search • Scan? 10 25 Các điểm cần lưu ý 26 B+ Tree Index With B+ tree, a full index is maintained, allowing the ordering of the records in the file to be independent of the index This allows multiple B+ tree indices to be kept for the same set of data records n the lowest level in the index has one entry for each data record n the index is created dynamically as data is added to the file n as data is added the index is expanded such that each record requires the same number of index levels to reach it (thus the tree stays ‘balanced’) n the records can be accessed via an index or in insertion order 27 B+ Tree Example 60 30 55 10 30 55 90 60 69 70 60 55 65 69 70 65 70 30 90 10 69 28 B+ Tree Build Example 60 90 60 90 Add 90 Add 60 55 60 60 90 55 60 Add 55 70 90 Add 70 60 60 70 55 55 60 65 70 90 30 55 Add 65 70 60 65 70 90 Add 30 29 B+ Tree Build Example Cont… 60 30 55 10 30 55 70 60 65 70 90 Add 10 60 10 30 55 30 55 69 70 60 65 69 70 90 Add 69 30 Tổ chức tệp đống (Heap File) • Lưu trữ ghi trang không tuân theo thứ tự đặc biệt • Để thực phép toán, cần: – – – Ghi nhớ số trang tệp Ghi nhớ không gian trống trang Ghi nhớ ghi trang Ø Có trỏ trỏ tới tất trang tệp trỏ lưu trữ nhớ 31 Cài đặt tệp đống danh sách Data Page Data Page Data Page Data Page Data Page Data Page Full Pages Header Page Pages with Free Space • Cần lưu trữ HeaderPage tên tệp • Mỗi trang gồm liệu trỏ 32 Các phép toán • Tìm kiếm ghi • Thêm ghi • Xoá ghi • Sửa đổi ghi 33 Sử dụng trang danh bạ Data Page Header Page Data Page DIRECTORY Data Page N • Lưu thông tin số byte trống trang • Danh bạ tập trang 34 Tìm kiếm ghi • Tìm kiếm – Duyệt tệp dẫn từ ghi đến tìm thấy ghi có khoá k cần tìm – Nhận xét • chậm tệp dẫn nói chung • Thích hợp với tệp dẫn nhỏ đủ để lưu nhớ • Tìm kiếm nhị phân – Chia đôi tệp dẫn xếp để hạn chế số ghi cần duyệt – Tại lần chia hạn chế ½ số ghi cần xem xét 35 Buffering of blocks • To speed up I/O transfer – Reading – Writing • Cache consistency? 36 Records serialized into a file • struct employee{ – char name[30]; – char ssn[9]; – int salary; – int job_code; – char department[20]; • } ; 37 Records serialized into a file 38 Primary file organizations • Refer to how the file records are physically placed on the disk, and how the records can be accessed • Heap file (unordered file) • Sorted file • Hashed file • B-tree 39 [...]... thường liên quan đến một phần nhỏ các bản ghi trong một tệp dữ liệu hay một vài trường (đặc biệt là các trường khoá) của các bản ghi dữ liệu Ø Xác định các yêu cầu này cho phép thiết kế dữ liệu vật lý hiệu quả thông qua việc sử dụng các tổ chức lưu trữ đặc biệt • Tệp chỉ dẫn được tạo lập trên khoá tìm kiếm để tăng hiệu quả của lưu trữ dữ liệu Ø Hiệu quả của các cấu trúc chỉ dẫn khác nhau phụ thuộc... trong 31 Cài đặt tệp đống bằng danh sách Data Page Data Page Data Page Data Page Data Page Data Page Full Pages Header Page Pages with Free Space • Cần lưu trữ HeaderPage và tên của tệp • Mỗi trang gồm dữ liệu và 2 con trỏ 32 Các phép toán • Tìm kiếm 1 bản ghi • Thêm 1 bản ghi • Xoá 1 bản ghi • Sửa đổi một bản ghi 33 Sử dụng trang danh bạ Data Page 1 Header Page Data Page 2 DIRECTORY Data Page N •