INDEXES

An Index is a copy of database table that has been reduced to certain fields and the copy is always in sorted form. The index also contains a pointer to the corresponding record of the actual table so that the fields not contained in the index can also be read. Index contains a value and a pointer to first record that contains data value.

A Database Index is a data structure that speeds up certain operation on a file. The Operation involves a search key which is the set of record files( in most cases a single field). The elements of an index are called data entries. Data entries can be actual data record. A given file of data records can have several indexes, each with different search keys as showed in the table below.

 

Customer ID Name Address City State Zip
001 Mr Daniel 10,Bale str. Maryland Lagos 1011
002 Mrs Okon 5, Oju-ile Ota Ogun 1021
003 Mr David 26, Dalemo str. Ikeja Lagos 1023

 

The search engine searches for a value in table or file in two ways. The table scan which is sequential and index which is random.

Indexes are special lookup tables that the database engine uses to speed up data retrieval. An index in a database is similar to an index in the back of a book.

An index table or file consists of records called index entries. It is of the form

 

Search- key Pointer

The search key field is used to sort the rows (in the index column) and the pointer field (in index column) indicates where the actual data in the table will be retrieved. When a table has an index it simply means the records in that table has been sorted in one way or the other.

Indexes are automatically created when primary key and unique constraints are defined on table columns.

 

EVALUATION

  1. What is an index?
  2. What are data entries?

 

INDEX CLASSIFICATION

Index can be classified as either clustered or uncluttered.

 

CLUSTERED

Clustered index is an index whose sorting order determines the order of how the rows/records in a table are stored. There could be only one clustered index in a table because there could always be one way of arranging the records in a table at a given time. For example, if you are asked to arrange some tables in a room, you could arrange them in a round form, row form or packed them close together, only one way at a time. Clustered index also means that related values in a table are stored close to each other according to the order of the index.

 

  1. CLUSTERED INDEX

A Clustered index is when a file is organized so that the ordering of data  records is the same as or closes to the ordering of data entries. A clustered index can take place only if the data records are sorted on the search key field. For example, suppose that students records are sorted by age; an index on age that stores data entries in sorted order by age is a clustered index.

 

Indexes that maintain data entries in sorted order by search key use a collection of index entries, organized into a tree structure to guide searches for data entries. Thus, clustered indexes are relatively expensive to maintain when the file is updated, when data entries are to be moved across pages, and if records are identified by a combination of page id and slot as is often the case, all places in the database that point to a moved record must also be updated to point to the new location.These additional updates can be time consuming.

 

The table below illustrate a clustered index file:

Student ID Name Age
00231364OJ Olu Jacob 12
00241265AF Agu Faith 13
00251057AJ Abiola Joseph 13
00211362MS Mathew Stephen 14
00251302TB TjomasBintu 15

 

  1. UNCLUSTERED INDEX

This  an index whose sorting order does not determine the order of how the rows/records in a table are stored. This means that the search keys in the index column is sorted in one order while the actual records or rows are sorted in another order or are not sorted at all.

 

This is an index that is not clustered. A data file can contain several unclustered index. For example, supposing that students records are sorted by age; and if  additional index on gpa field is included, it is called unclustered index.

 

GENERAL EVALUATION

(1)Explain a database index

(2) Explain clustered index versus unclustered index.

 

WEEKEND ASSIGNMENT

  1. ………. is a database table that has been reduced to certain fields.a) Table  b) An index c) Table model d) Network model
  2. The copy of an index is always in  …… form.  a) duplicate b) field c) sorted  d) domain
  3. The …………index can take place only if the data records are sorted on the search key field. a)unclustered b)insert c) update  d) clustered
  4. A …………….. can contain several unclusterd indexes a) data file b) primary c) check d) index
  5. Index contain a value and  ……. a)pointer b) sign c) update d) model

 

THEORY

  1. Differentiate between clustered index and unclustered index.
  1. State two reasons why clustered index is expensive to maintain.
  2. What is an index?

 

See also

SS 3 Data Processing Revision

APPLICATION SOFTWARE

ART OF INFORMATION PROCESSING

COMPUTER HARDWARE & SOFTWARE

OVERVIEW OF COMPUTER SYSTEM

Leave a Comment

Your email address will not be published. Required fields are marked *