Operations on sequential files, Data Structure & Algorithms

Assignment Help:

Insertion: Records has to be inserted at the place dictated by the sequence of keys. As is obvious, direct insertions into the main data file would lead to frequent rebuilding of the file. This difficulty could be mitigated by reserving' overflow areas' in the file for insertions. However, this leads to wastage of space. The common method is to employ transaction logging. This works as follows:

  • It gathers records for insertion in a transaction file in their order of their arrival.
  • While population of the transactions file has ceased, sort the transaction file in the order of the key of the primary data file
  • Merge the two files on the basis of key to obtain a new copy of the primary sequential file.

Usually such insertions are done in a batch mode while the activity/program which populates the transaction file have ceased. The structure of the transaction files records will be identical to that of the primary file.

2. Deletion: Deletion is the reverse procedure of insertion. The space occupied by the record must be freed for use. Usually deletion (like-insertion) is not done instantly. The concerned record is written to a transaction file. During merging, the corresponding data record will be dropped from the primary data file.

3. Updation: Updation is a combination of insertion & deletions. The record with the new values is inserted and the earlier version deleted. It is also done using transaction files.

4. Retrieval: User programs will frequently retrieve data for viewing prior to making decisions. Thus, it is essential that this data reflects the latest state of the data, if the merging activity has not still taken place.

Usually, Retrieval is done for a particular value of the key field. Before return in to the user, the data record must be merged with the transaction record (if any) for that key value.

The other two operations 'creation' & 'deletion' of files are attained by simple programming language statements.


Related Discussions:- Operations on sequential files

Algorithm of binary search, Step 1: Declare array 'k' of size 'n' i.e. k(n)...

Step 1: Declare array 'k' of size 'n' i.e. k(n) is an array which stores all the keys of a file containing 'n' records Step 2: i←0 Step 3: low←0, high←n-1 Step 4: while (l

Algorithm to merge two sorted arrays with third array, Q. Write down an alg...

Q. Write down an algorithm to merge the two sorted arrays into the third array. Do  not perform the sort function in the third array.                           Ans: void m

STACK, 5. Implement a stack (write pseudo-code for STACK-EMPTY, PUSH, and P...

5. Implement a stack (write pseudo-code for STACK-EMPTY, PUSH, and POP) using a singly linked list L. The operations PUSH and POP should still take O(1) time.

Program to manipulate the data structure, Data Structure and Methods: ...

Data Structure and Methods: Build an array structure to accomodate at least 10 elements. Provide routines for the following: An initializer. A routine to populate (

Whether a binary tree is a binary search tree or not, Write an algorithm to...

Write an algorithm to test whether a Binary Tree is a Binary Search Tree. The algorithm to test whether a Binary tree is as Binary Search tree is as follows: bstree(*tree) {

How to measure the algorithm efficiency, How to measure the algorithm's eff...

How to measure the algorithm's efficiency? It is logical to examine the algorithm's efficiency as a function of some parameter n showing the algorithm's input size. Instance

Parallel implementation of the raytracer, You are supposed to do the follow...

You are supposed to do the following: Write a parallel implementation of the raytracer using pthreads. Measure and compare the execution times for (i) the sequential ver

Explain memory allocation strategies, Memory Allocation Strategies If i...

Memory Allocation Strategies If it is not desirable to move blocks of due storage from one area of memory to another, it must be possible to relocate memory blocks that have be

Determine about the unreachable code assertion, Determine about the unreach...

Determine about the unreachable code assertion An unreachable code assertion is an assertion that is placed at a point in a program that shouldn't be executed under any circum

Explain Hashing, What do you mean by hashing? Hashing gives the direct ...

What do you mean by hashing? Hashing gives the direct access of record from the file no matter where the record is in the file. This is possible with the help of a hashing func

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd