Multi-list file Organisation
Multi-list file organisation is a multi-index linked file organisation. A linked file organisation is a logical organisation where physical ordering of records is not of concern. In linked organisation the series of records is governed by the links that verify the next record in series. Linking of records can be unordered but such a linking is very costly for searching of information from a file. Thus, it may be a good idea to link records in the order of increasing primary key. This will facilitate deletion and insertion algorithms. Also this really helps the search performance. In addition to making order during linking, search by a file can be further facilitated by producing primary and secondary indexes. All these ideas are supported in the multi-list file organisation. Let us describe these concepts further with the help of an example.
Consider the employee data as given in Figure. The record numbers are given as alphabets for better explanation. Suppose that the Empid is the key field of the data records. Let us describe the Multi-list file organisation for the data file.
Record
Number
|
Empid
|
Name
|
Job
|
Qualification
|
Gender
|
City
|
Married/
Single
|
Salary
|
A
|
800
|
Jain
|
Software
Engineer
|
B. Tech.
|
Male
|
New Delhi
|
Single
|
15,000/-
|
B
|
500
|
Inder
|
Software
Manager
|
B. Tech.
|
Female
|
New Delhi
|
Married
|
18,000/-
|
C
|
900
|
Rashi
|
Software
Manager
|
MCA
|
Female
|
Mumbai
|
Single
|
16,000/-
|
D
|
700
|
Gurpreet
|
Software
Engineer
|
B. Tech.
|
Male
|
Mumbai
|
Married
|
12,000/-
|
E
|
600
|
Meena
|
Software
Manager
|
MCA
|
Female
|
Mumbai
|
Single
|
13,000/-
|
Figure: Sample data for Employee file
Since, the primary key of the file is Empid, thus the linked order of records should be defined as B (500), E(600), D(700), A(800), C(900). Though, as the file size will grow the search performance of the file would deteriorate. Therefore, we can make a primary index on the file (please note that in this file the records are in the logical series and tied together using links and not physical placement, thus, the primary index will be a linked index file rather than block indexes).