Files are essential to the storage and retrieval of information. Traditionally they are kept in some form of container and include: text, numeric, and graphical information. Computers use data stored in digitally coded files. This has resulted in a great deal of thought and experimentation with various filing concepts, structures, organization, etc. to improve storage and retrieval efficiency. Databases are carefully structured files.
A principal function of a computer operating system is to efficiently manage files of various types and sizes.
Filing systems provide a means of reliable (safe) storage and retrieval. Essentially a file is an array of information. This information is in some form of code arranged in some structure. Individual file components are identified by file keys. Some files are referred to as databases. Collections of files are often called volumes, and libraries.
Close examination of a traditional library provides insight into the kinds of organization that are useful in developing any filing system. Once a filing system is developed, and in active use, it is hard to change, so great care should be taken during the initial structuring, and implementation The disaster is the loss by one means or another of the files once they have been established.
Files need to be maintained, supplemented, cleaned, etc. during use. Any system must take the routine maintenance into account. The costs will include use and maintenance.
FLAT and INVERTED (transposed ) FILES
A flat file can be thought of as an ij array where the rows i are individual file components, and the columns j are items or variables that apply to each component. A case by variable array is an example of a flat file. The file may in fact be stored as a segmented string rather than a rectangular or multidimensional array. Examples of a file of records:
This short example shows three parts of a file component, the record identifier or key, the information in the file, the location information.
A flat file can be inverted (transposed) so that the information becomes the key, and the former key the information. e.g. a partial inverted file from the above example is:
concrete, 1001 1002 1003;
Note: the records that include 'concrete' are identified as 1001, 1002, 1003 , and those that include 'batch' are 1002. Therefore the records that include 'concrete beam' are the logical 'concrete' and 'beam' or (1001 1002 1003)^(1002), where ^ is the logical and (APL primitive), or record 1002.
A fairly extensive example of inverted files are the local university library index.
End to date, ams 980122