How many block accesses average saved on using primary index, Database Management System

Example 1: An ordered student file (ordering field is enrolment number) has 20,000 records stored on a disk having the Block size as 1 K. Assume that each student record is of 100 bytes, the ordering field is of 8 bytes, and block pointer is also of 8 bytes, find how many block accesses on average may be saved on using primary index.

Answer:

Number of accesses without using Primary Index:

Number of records in the file = 20000

Block size = 1024 bytes

Record size = 100 bytes

Number of records per block = integer value of [1024 / 100] = 10

Number of disk blocks acquired by the file = [Number of records / records per block]

= [20000/10] = 2000

Suppose a block level binary search, it would require log22000 = about11 block accesses.

Number of accesses with Primary Index:

Size of an index entry = 8+8 = 16 bytes

Number of index entries that can be stored per block

= integer value of [1024 / 16] = 64

Number of index entries = number of disk blocks = 2000

Number of index blocks = ceiling of [2000/ 64] = 32

Number of index block transfers to find the value in index blocks = log232 = 5

One block transfer will be needed to get the data records using the index pointer after the needed index value has been located. So total number of block transmits with primary index = 5 + 1 = 6.

Therefore, the Primary index would save about 5 block transmits for the given case.

Are there any drawbacks of using primary index? Yes, a primary index needs the data file to be ordered, this causes troubles during deletion and insertion of records in the file. This difficulty can be taken care of by selecting a suitable file organisation that permits logical ordering only. 

Posted Date: 3/7/2013 6:25:58 AM | Location : United States







Related Discussions:- How many block accesses average saved on using primary index, Assignment Help, Ask Question on How many block accesses average saved on using primary index, Get Answer, Expert's Help, How many block accesses average saved on using primary index Discussions

Write discussion on How many block accesses average saved on using primary index
Your posts are moderated
Related Questions
Create a view emp_dep containing e_name and number of dependents from the tables employee and dependent of (i) CREATE VIEW emp_dept AS SELECT ename, COUNT(*) FROM employee, dep

What are ways of finding out either an update is required or not for derived attributes? The ways to find out an update is required or, not are as: Explicit update

Project Description: We have purchased facebook style chat software which we are using with our site. It is prepared in PHP but the rest of the site is developed asp.net. Iss

Define a view and a trigger. Construct a view for the above relations that have the information about suppliers and the elements they supply. The view holds the S#, SNAME, P# , PNA

Surgeons identified by doctor ID (DOCID) operate on patients identified by patient ID (PATID) in operating theaters identified by room numbers (ROOMNO). Each surgeon can operate on

For the relations R and S given below: R                      S A B C 1 4 7 2 5 8 3 6 9

How can i turn a conceptual entity relationship diagram into a logical entity relationship diagram? what do i have to do with "mandetory or" and "optional or" relationships?

examples of fields in a database

What is a relationship called when it is maintained between two entities? A relationship is called Binary relationship when it is maintained between two entities.

define normalisation and functional dependency