B-trees

B-trees includes B-Tree in the wild, B-Tree Library, API, Building and installing the BT Library, Make a program to manage a computer dictionary, Build two programs using the two BT library respectively. | B-trees anhtt-fit@ B tree A B-Tree of order m (the maximum number of children for each node) is a tree which satisfies the following properties : Every node has = m/2 children. The root has at least 2 children. All leaves appear in the same level A non-leaf node with k children contains k – 1 keys 1 B-Tree Generalizes 2-3-4 trees by allowing up to M links per node. Main application: file systems. Reading a page into memory from disk is expensive. Accessing info on a page in memory is free. Goal: minimize # page accesses. Node size M = page size. Space-time tradeoff. M large ! only a few levels in tree. M small ! less wasted space. Number of page accesses is logMN per op. Typical M = 1000, N < 1 trillion. Example TELSTRA: customer billing database with 51 billion rows, terabytes of data. Databases cannot be maintained entirely in memory, b-trees are often used to index the data and to provide fast access. 2 Search B-Tree in the wild Red-black trees: widely used as system symbol tables Java: , . C++ STL: map, multimap, multiset. Linux kernel: linux/. B-Trees: widely used for file systems and databases Windows: HPFS. Mac: HFS, HFS+. Linux: ReiserFS, XFS, Ext3FS, JFS. Databases: ORACLE, DB2, INGRES, SQL, PostgreSQL All nodes in B-Tree are assumed to be stored in secondary storage (disk) rather than primary storage (memory), There basic operations for accessing a page: DiskRead(), Disk-Write(), Allocate-Node() 3 B-Tree Library Software and documentation is accessed at ml Notes Initiate the library #include "“ int btinit(void); The B Tree is stored in a UNIX disk file. The file can contain many B Trees, each of which is referred to by a name assigned by the user (or application). 4 API Creating a B Tree File BTA* btcrt(char* fid, int nkeys, int shared); Opening a B Tree File BTA* btopn(char* fid, int mode, int shared); Closing a B Tree .

Không thể tạo bản xem trước, hãy bấm tải xuống
TÀI LIỆU MỚI ĐĂNG
366    62    1    28-04-2024
20    74    1    28-04-2024
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.