DB Inc. Memo ID: R04 Name of R&D group: KKS

advertisement
DB Inc.
Memo ID: R04
Name of R&D group: KKS
Attended members: Ki-Hwan Kim, Dong-Shin Kim, Dong-Man Shin
Unattended members:
Name of the person to prepare the memo: Ki-Hwan Kim
Summary
Index structure
We decided on using linear hashing index.
1. Read catalog file and find column name, which we want to make index. If index
column doesn’t exist produce error message, otherwise get column type and
column position.
2. If a column type is integer, we can use that number as key values in hash table
and if column type is char40, we need to change this string into positive integer
for using as a key value. We call this job as folding.
3. Column position is important to find offset position and to get that value in a heap
file(original file)
4. Go to header file and check first full page. If there is no full page then go to first
not full page otherwise go to first full page.
5. Get page number, slot number and values in a data page. We can get these values
in a data page.
Page number
Value
Fist slot offset
6. Get a key value in the record. If column type is Char40, we use folding function.
7. Make a hash table (Implementation hash).
a. At first, global depth is 1, number of bucket is 2, and number of record is
0.
b. Find proper position by using global depth.
c. Inset key value into that position with key value, page number and slot
number.
d. Check over flow. If over flow is checked, make re-hashing. (increasing
global depth or increasing bucket number so on)
8. Repeat from 5 to 7 until end of heap file.
Download