Software for Storing and Retrieving
|
|
Hardware to Software Interface
The storage and retrieval process used by software applications involves numerous other sub-processes each performed by different programs. Despite this, all throughout the storage or retrieval process, the operating system remains in full control.
The storage and retrieval process used by software applications involves numerous other sub-processes each performed by different programs. Despite this, all throughout the storage or retrieval process, the operating system remains in full control.
- A typical save process starts when the user initiates the save process in an application. This consists of the user first selecting a save location, file name and a storage format.
- The application then informs the operating system of the save request and passes on the file name and location to be saved at.
- The operating system then uses the correct device driver associated with the appropriate storage device to begin the storage process.
- The storage device then prepares its self for storage and then informs the operating system when it is ready. Once the device is ready the operating system instructs the application software to start sending data to the device driver.
- The application software processes the data so it is in the correct file format before sending it to the device driver. Once received by the device driver the data is then passed on to the storage device.
- Once the data arrives at the storage device it is held in an internal buffer before it is processed further by software contained inside the hardware device called firmware.
- The firmware controls the operation of the mechanics inside the storage device to store the data it receives. The data is organised into chunks, corresponding to the size of each sector in the storage device, and then stores it.
File Formats for Different Data Types
Each file format is organised differently to suit many different types of data and properties. However, different organisations of data can also affect the size of the resulting file and the method used to retrieve this data. An example of this is an image file stored as a bitmap (.BMP), which takes more space and time to retrieve, or a JPEG, which uses compression to save space and therefore save time when loading. |
File Management Software
File management software is designed to logically organise files stored in secondary storage mediums so the user can easily navigate through the data contained. This software is usually included with the operating system, e.g. windows explorer with windows operating systems. The way the files are logically arranged is based on a hierarchical structure, sorting files into folders while displaying them to the user in the same way regardless of the way data was physically stored on the device. This hides the physical details of the files and how they are manipulated when the user performs any actions on them. From the users perspective, identical actions are used when manipulating or viewing files on storage devices. |
Database Management Software (DBMS)
Database management systems are designed to organise the storage and retrieval of data by users within a database. This is important as databases could be accessed by more than one user simultaneously. The DBMS must manage the storage and retrieval of data in such a way that all users have access to the database in a logical and efficient manner.
The DBMS also manages the retrieval of search results by the user. It allows users to search through entire databases for individual records instead of opening the whole database file before searching, like typical file searching retrieval operations, using a massive amount of resources. By searching through the each record in a database individually, it allows the system to more efficiently find the required data while limiting the amount of resources needed on the server to perform this task.
In the event that more than one user accesses and changes the same record in a database at the same time, the DBMS must implement a method of determining which version of the record to keep. The DBMS does this by implementing one of two strategies, pessimistic locking or optimistic locking.
Pessimistic locking locks the record so that only the first person who accessed it can modify the record; the lock disables when the first person closes the record. This locking is usually represented by a visual aid to the user. This type of locking requires the DBMS to be informed that a user is using a record so it can be locked, significantly increasing the processing required by the DBMS.
Optimistic locking instead allows any user to access and edit a record at any time. The only time when the locking comes into effect is when a user wants to save their changes. When a user saves a record the DBMS first checks to see if the record has been changed by another user. If it has, then the user is given the option to either overwrite the other user’s changes or discard their own changes.
The restriction of access to records can also be accomplished by the DBMS by assigning each user a set of permissions. Each user is given a unique account that is used for binding the permissions to so only authorised users can perform certain tasks. An example of this is an order entry clerk given permissions to read but not edit customer details while an administrator has access to everything.
Database management systems are designed to organise the storage and retrieval of data by users within a database. This is important as databases could be accessed by more than one user simultaneously. The DBMS must manage the storage and retrieval of data in such a way that all users have access to the database in a logical and efficient manner.
The DBMS also manages the retrieval of search results by the user. It allows users to search through entire databases for individual records instead of opening the whole database file before searching, like typical file searching retrieval operations, using a massive amount of resources. By searching through the each record in a database individually, it allows the system to more efficiently find the required data while limiting the amount of resources needed on the server to perform this task.
In the event that more than one user accesses and changes the same record in a database at the same time, the DBMS must implement a method of determining which version of the record to keep. The DBMS does this by implementing one of two strategies, pessimistic locking or optimistic locking.
Pessimistic locking locks the record so that only the first person who accessed it can modify the record; the lock disables when the first person closes the record. This locking is usually represented by a visual aid to the user. This type of locking requires the DBMS to be informed that a user is using a record so it can be locked, significantly increasing the processing required by the DBMS.
Optimistic locking instead allows any user to access and edit a record at any time. The only time when the locking comes into effect is when a user wants to save their changes. When a user saves a record the DBMS first checks to see if the record has been changed by another user. If it has, then the user is given the option to either overwrite the other user’s changes or discard their own changes.
The restriction of access to records can also be accomplished by the DBMS by assigning each user a set of permissions. Each user is given a unique account that is used for binding the permissions to so only authorised users can perform certain tasks. An example of this is an order entry clerk given permissions to read but not edit customer details while an administrator has access to everything.
Internet or Web Browsers
Web browsers are a tool for the storage and retrieval of data over the internet available on almost every computer. Browsers provide a way for users to access the vast amount of information contained on the internet with little or no regard to the complicated processes occurring in the background. Web browsers in essence work the same as file management systems, retrieving files from a specified location.
Web browsers are a tool for the storage and retrieval of data over the internet available on almost every computer. Browsers provide a way for users to access the vast amount of information contained on the internet with little or no regard to the complicated processes occurring in the background. Web browsers in essence work the same as file management systems, retrieving files from a specified location.
Securing Stored Data
When sensitive or personal data needs to be stored is a good idea to secure it using methods such as passwords or encryption.
When sensitive or personal data needs to be stored is a good idea to secure it using methods such as passwords or encryption.
Passwords
Password protection is a method of securing data against unauthorised access by only displaying data to the user if they have the correct credentials to bypass the security. Unfortunately, password security can be bypassed by opening the file in a different program to view the raw data. The password system can also be rendered redundant if the password is not kept a secret and distributed to unauthorised personnel. |
Encryption
Encryption is another method of securing data where the original data is scrambled to produce encrypted data. The resulting data from encryption is virtually impossible to read and can only be understood if decrypted. Both the encryption and decryption processes use a key that determines how the data is encrypted or decrypted. Two methods for data encryption are a single key or two key encryption. |
Single key encryption, or symmetrical encryption, involves using the same key to encrypt and decrypt data. This method is commonly used to encrypt data stored on secondary storage mediums as the key does not need to be shared.
Two key encryption systems, or asymmetrical encryption, use unique keys for encryption and decryption. This allows for added security as you can freely distribute your encryption key (public key) to anyone, while not compromising the security of encrypted data. This is because the only key that can decrypt the data once encrypted is the decryption key (private key) which is kept a secret. This system is a practical method for encrypting data over a public domain such as the internet.
Two key encryption systems, or asymmetrical encryption, use unique keys for encryption and decryption. This allows for added security as you can freely distribute your encryption key (public key) to anyone, while not compromising the security of encrypted data. This is because the only key that can decrypt the data once encrypted is the decryption key (private key) which is kept a secret. This system is a practical method for encrypting data over a public domain such as the internet.