During the design phase of your application, there are a number of fundamental decisions that you should consider concerning
file handling, as these can have a big effect on performance.
You should give some consideration to the following:
- The location of the data files
- If possible, you should store your files locally, as this will give you the fastest access times.
- If the files are required to be on a network - for example, so multiple users can them - you should use Fileshare. Fileshare
is also a potential solution if you store your files locally, as it provides extra functionality, such as transaction processing.
For full details of Fileshare, see
Fileshare Guide.
- If you are using Fileshare, which protocol to use?
- Fileshare is capable of using more than one type of network protocol when accessing files. If you have clients that are using
different types of protocol to access the same file, swapping between these protocols affects performance; if possible, use
the same protocol for all clients.
- For Fileshare systems running locally (that is, server and client on the same machine), on Windows, the CCISMEM protocol is
faster than CCITCP.
- The choice of file organization
- The choice of file organization has an influence on the performance, and so it is important that you choose the right organization
for the tasks required to be carried out.
- Sequential files can only be read in the order in which they were written, so do not suit situations where large files are
required to be read frequently; however, they are a good option for creating print output files.
- Relative files can be read sequentially, but random access also gives fast access to records using a key relative to the start
of the file. A drawback is that deleted records still occupy disk space.
- Indexed files can also provide sequential and random access. The use of primary and alternate keys allow more direct access
to records.
- For full details of each file organization, refer to
File Organizations in the
File Handling Guide section.