Instruction for properly completing the assignment:
Due Sunday of Week 6 by 11:55 PM [5% of your grade]
- Download the attached template called “INFO620-Assignment6_LastNameFirst.doc”.
- Change the file name applying your Last Name and First Name in place of the LastNameFirst.
- Then open the newly saved file and enter your name and the date due on the top of the document.
- Then enter each problem’s solution within this same file in their proper locations WITHOUT changing or erasing the questions.
- Support your responses and answers by references from the text.
- Review and complete all questions.
- Then upload to Assignment #6 area of the Assignments.
- Your grade may be reduced if these instructions are NOT followed closely.
Week 6 Assignment Grading Rubric:
|#17.28a||0.3 points||#17.31||0.7points||#18.19||0.7 points|
|#17.28b||0.3 points||#17.42a||0.3 points||#19.15||0.7 points|
|#17.28c||0.3 points||#17.42b||0.3 points||#19.21||0.7 points|
|#17.28d||0.3 points||#17.42c||0.4 points|
Here are the contents of Assignment #6 (however – please use the template attached – don’t copy and paste from here):
CH 17: DISK STORAGE, BASIC FILE STRUCTURES, AND HASHING
#17.28 – A file has r=20,000 STUDENT records of fixed-length. Each record has the following fields: NAME (30 bytes), SSN (9 bytes), ADDRESS (40 bytes), PHONE (9 bytes), BIRTHDATE (8 bytes), SEX (1 byte), MAJORDEPTCODE (4 bytes), MINORDEPTCODE (4 bytes), CLASSCODE (4 bytes, integer), and DEGREEPROGRAM (3 bytes). An additional byte is used as a deletion marker. The file is stored on the disk whose parameters are given in Exercise 17.27.
- Calculate the record size R in bytes.
- Calculate the blocking factor bfr and the number of file blocks b assuming an unspanned organization.
- Calculate the average time it takes to find a record by doing a linear search on the file if (i) the file blocks are stored contiguously and double buffering is used, and (ii) the file blocks are not stored contiguously.
- Assume the file is ordered by SSN; calculate the time it takes to search for a record given its SSN value by doing a binary search.
#17.31 – A PARTS file with Part# as hash key includes records with the following Part# values: 2369, 3760, 4692, 4871, 5659, 1821, 1074, 7115, 1620, 2428, 3943, 4750, 6975, 4981, 9208. The file uses 8 buckets, numbered 0 to 7. Each bucket is one disk block and holds two records. Load these records into the file in the given order using the hash function h(K)=K mod 8. Calculate the average number of block accesses for a random retrieval on Part#.
#17.42 – Suppose that a file initially contains r=120,000 records of R=200 bytes each in an unsorted (heap) file. The block size B=2400 bytes, the average seek time s=16 ms, the average rotational latency rd=8.3 ms and the block transfer time btt=0.8 ms. Assume that 1 record is deleted for every 2 records added until the total number of active records is 240,000.
- How many block transfers are needed to reorganize the file?
- How long does it take to find a record right before reorganization?
- How long does it take to find a record right after reorganization?
CH 18: INDEXING STRUCTURES FOR FILES
#18.19 – A PARTS file with Part# as key field includes records with the following Part# values: 23, 65, 37, 60, 46, 92, 48, 71, 56, 59, 18, 21, 10, 74, 78, 15, 16, 20, 24, 28, 39, 43, 47, 50, 69, 75, 8, 49, 33, 38. Suppose the search field values are inserted in the given order in a B + -tree of order p=4 and p leaf =3; show how the tree will expand and what the final tree looks like.
CH 19: ALGORITHMS FOR QUERY PROCESSING AND OPTIMIZATION
#19.15 – Develop cost functions for the PROJECT, UNION, INTERSECTION, SET DIFFERENCE, and CARTESIAN PRODUCT algorithms discussed in section 19.4.
#19.21 – Extend the sort-merge join algorithm to implement the LEFT OUTER JOIN operation.