ISAM: Indexed-Sequential-Access-Method - PowerPoint PPT Presentation

1 / 9
About This Presentation
Title:

ISAM: Indexed-Sequential-Access-Method

Description:

Title: ISAM: Indexed-Sequential-Access-Method Author: Amol Deshpande Last modified by: Amol Deshpande Created Date: 3/17/2005 3:46:08 PM Document presentation format – PowerPoint PPT presentation

Number of Views:460
Avg rating:3.0/5.0
Slides: 10
Provided by: Amol66
Category:

less

Transcript and Presenter's Notes

Title: ISAM: Indexed-Sequential-Access-Method


1
ISAM Indexed-Sequential-Access-Method
Adapted from Prof Joe Hellersteins
notes http//db.cs.berkeley.edu/dbcourse/notes.htm
l
2
A Note of Caution
  • ISAM is an old-fashioned idea
  • B-trees are usually better, as well see
  • Though not always
  • But, its a good place to start
  • Simpler than B-tree, but many of the same ideas
  • Upshot
  • Dont brag about being an ISAM expert on your
    resume
  • Do understand how they work, and tradeoffs with
    B-trees

3
Range Searches
  • Find all students with gpa gt 3.0
  • If data is in sorted file, do binary search to
    find first such student, then scan to find
    others.
  • Cost of binary search can be quite high.
  • Simple idea Create an index file.
  • Level of indirection again!

Data File
Page N
Page 1
Page 3
Page 2
  • Can do binary search on (smaller) index file!

4
ISAM
index entry
P
K
P
K
P
P
K
m
0
1
2
1
m
2
  • Index file may still be quite large. But we can
    apply the idea repeatedly!

Non-leaf
Pages
Leaf
Pages
Primary pages
  • Leaf pages contain data entries.

5
Example ISAM Tree
  • Each node can hold 2 entries no need for
    next-leaf-page pointers. (Why?)

6
Comments on ISAM
  • File creation Leaf (data) pages allocated
    sequentially, sorted by search
    key.Then index pages allocated.Then space for
    overflow pages.
  • Index entries ltsearch key value, page idgt
    they direct search for data entries, which are
    in leaf pages.
  • Search Start at root use key comparisons to go
    to leaf. Cost log F N F entries/index
    pg, N leaf pgs
  • Insert Find leaf where data entry belongs,
    put it there.(Could be on an overflow page).
  • Delete Find and remove from leaf if empty
    overflow page, de-allocate.
  • Static tree structure inserts/deletes affect
    only leaf pages.

7
Example ISAM Tree
  • Each node can hold 2 entries no need for
    next-leaf-page pointers. (Why?)

Root
40
20
33
51
63
46
55
10
15
20
27
33
37
40
51
97
63
8
After Inserting 23, 48, 41, 42 ...
Root
40
Index
Pages
20
33
51
63
Primary
Leaf
10
15
20
27
46
55
33
37
40
51
97
63
Pages
41
48
23
Overflow
Pages
42
9
... then Deleting 42, 51, 97
Root
40
20
33
51
63
46
55
10
15
20
27
33
37
40
63
41
48
23
  • Note that 51 appears in index levels, but 51
    not in leaf!
Write a Comment
User Comments (0)
About PowerShow.com