200 likes | 390 Views
木構造 インデックス. クラスタリングインデックス 非クラスタリングインデックス Dense Index Non- dense Index. Primary Index. Non- key Clustering Index. Clustering Index with separate block cluster. Non-clustering Index. Non-key secondary Index. Multi-level. Hash構造インデックス. 静的Hash 動的Hash Liner Hash Extensible Hash.
E N D
木構造 インデックス • クラスタリングインデックス • 非クラスタリングインデックス • Dense Index • Non-dense Index
Clustering Index with separate block cluster
Hash構造インデックス • 静的Hash • 動的Hash • Liner Hash • Extensible Hash
Liner Hashing • 成長型ハッシュ構造 • Litwin 1981 • ロードファクタを維持 • 再編成を オンライン化
Hash key Bn, Bn-1,,,,,B2,B1,B0 LSBから採用 000 8 001 17, 25 010 34, 50 011 100 28 101 5 110 111 55 • 100 010 • 010 001 • 5 000 101 • 011 100 • 011 001 • 110 010 • 110 111 • 8 001 000
サーチアルゴリズム • Calculate hash function. • Pick up the last k-digits • Value K < boundary value • Then search (k+1)-st digits bucket • Value K > boundary value • Then search k-st digits bucket • Search also overflow chain
Hash key Bn, Bn-1,,,,,B2,B1,B0 LSBから採用 000 8, 16 001 17, 25 010 34, 50, 26 011 100 28 101 5, 13, 21 → 37 110 111 55 • 100 010 • 010 001 • 5 000 101 • 011 100 • 011 001 • 110 010 • 110 111 • 8 001 000 • 011 010 • 010 000 • 001 101 • 010 101 • 37 100 101
Hash key Bn, Bn-1,,,,,B2,B1,B0 LSBから採用 2レコードずつロード Load Factor 2/3 • 56 011 1000 • 67 100 0011 • 43 010 1011 • 79 100 1111 • 000 1111 • 001 1011 • 001 0011 • 100 0000 • ----- • 000 1100 • 010 0001 • 011 1001 • 100 0001 00 56, 64 01 10 11 67, 43, 79 → 15, 27, 19 overflow
Hash key Bn, Bn-1,,,,,B2,B1,B0 LSBから採用 2レコードずつロード Load Factor 2/3 • 56 011 1000 • 67 100 0011 • 43 010 1011 • 79 100 1111 • 000 1111 • 001 1011 • 001 0011 • 100 0000 • ----- • 000 1100 • 010 0001 • 011 1001 • 100 0001 12 & 33 insert 000 56, 64 01 33 10 11 67, 43, 79 → 15, 27, 19 100 12
Hash key Bn, Bn-1,,,,,B2,B1,B0 LSBから採用 2レコードずつロード Load Factor 2/3 • 56 011 1000 • 67 100 0011 • 43 010 1011 • 79 100 1111 • 000 1111 • 001 1011 • 001 0011 • 100 0000 • ----- • 000 1100 • 010 0001 • 011 1001 • 100 0001 57 & 65 insert 000 56, 64 01 33, 57, 65 10 11 67, 43, 79 → 15, 27, 19 100 12 Expansion とoverflow独立 000 56, 64 001 33, 57, 65 10 11 67, 43, 79 → 15, 27, 19 100 12 101
Excersize • 42,57,16,52,66,77,12,25,21,33,4,5,6,7入力 • バケツ 3レコード • ロードファクタ 2/3 • 2レコードずつ挿入
多次元インデクス • KD-Tree • Multi-dimensional Hash • GRID file • Superimposed Code(Signature File) • High Dimensional Index