An essential aspect of a company is to incorporate a database management system or DBMS into the framework of their security systems. Database management systems are programs that control the organization and retrieval of data in a database. It is special in that it is programmed to know which data each user is authorized to access. When a user requests data, the database management system authorizes the request if the user is valid. When DBMS is used, it is easier for information systems to change to the change in information requirements.
The main features of DBMS include program development, backup and recovery, database usage reporting, and database access. Software within the DBMS allows the user to create new programs that allow access to the database. Also, backup points of the databases are constantly generated in case of any form of system error like loss of data or a malicious attack on the system. If this happens, the DBMS could recover the database by restoring it to an earlier backup point.
Database usage reporting allows the system to record figures on what the ccommonlyused data are and who uses them. This information is used to assign authorization and preserve the order of the database. Through the use of data definition language, manipulation language, and query language, authorization to access the database is determined.
Database management systems could be separated into three different conceptual models. They are the hierarchical, network, or thlationarelational model. The hierarchal and network models are some of the earlier database models.
It forces the user to navigate data through predefined paths rather than in relational models; one is freer to create paths within the database to solve problems.
IBM was known for using theiittabase management system known as Information Management System or IMS. IMS was a hierarchical model that was used to store data by using blocks of data called segments. Each segment would branch off into several smaller sections or pieces of data called fields. This whole structure in a way represents a tree-like structure consisting of parent/children relationships. For example, a hierarchical model representing improvement to construction could have pavement improvement as a root segment. Child segments or fields such as reconstruction, maintenance, and rehabilitation are added underneath. Each parent segment can have many fields but each field can only have one parent segment.
Although some companies still use the hierarchical system, many are switching over to using relational database management systems. It is believed that relational systems like Oracle, UDB, Sybase, or DB2 are more effective compared to the limited capabilities of their legacy system counterparts. Companies are relying on that the future of database management systeisare in the relational systems. Relational DBMS is based oonthe relational model created by Edgar Codd. This model explains that within each database, there is a collection of several relations or tables of columns and rows. Columns would represent an attribute of the relation and each row is associated with a record that contains data values for an attribute. Relational DBMS follows this rule and another that states that each data value found in the table does not repeat. Within the tables lie various keys that link data together. There are primary keys that are the values that are unique to each attribute. A foreign key connects related tables by relating the primary key of one table to that of a similar table. The point of the relational method is to provide a straightforward method of locating information and queries. With a relational DBMS, databases could be analyzed on exactly what they contain and what data we could obtain from them. At the same time, the software could process the data structurein s the information is stored and constantly retrieve any procedures needed for other problems.
Many products branch off from the original concept by Codd such as DB2, Oracle, Sybase, and others. A lot of these systems are based on SQL data definition and query language. IBM was one of the first to make the transition to relational databases and implemented the system known as DB2. IBM was highly reputed as a leading manufacturer of mainframes thus DB2 was designed to operate efficiently on large mainframe computers. Known as Database 2, DB2 offers a public or open database environment that is supported on a variety of computing platforms. Also, DB2 databases can expand from a single user application to a complex multiuser network system. By using a structured query language, data can be simultaneously transmitted and obtained from the DB2 database and other databases. There are various minor setbacks with DB2 because indexes must be kept up to date manually. Another type of relational database, Oracle improves on several areas that DB2doesn’tt provide and also provides its benefits as well.
Oracle is more proficient in a distributed system where multiple computers communicate in a network. Oracle targets high-end workstations and mini computers as the server platforms to run its database systems. For these reasons, oracle is best used for large and medium-scale businesses. Oracle constantly enhances its products and provides support to many different operating system vendors. Also, many features allow simplified learning of administering the system such as grid control, ASM, and tuning. Each database provides its method of usefulness depending on the type of system being run. Programmers look to these relational databases to build a stable and efficient system.
Companies are now converting to relational databases because they believe that it is the right direction for the company regarding keeping it technologically updated. However, one has to look at the many factors that decide which type of database is more effective. Hierarchical databases were once the leading database system. Reasons for that being were because of its efficient performance and simple structure that allowed ease of understanding.
Navigation within the records in the hierarchical database is very fast. The simple parent-child connections between data are implemented with pointers from one value of data to another therefore it’s significantly quick to search and locate information. Also,o this holds the same regarding the sideway child-to-child relationships or the parent-to-parent relationships. After finding the first record, the program within the database does not have to do a table scan or perform a complicated analysis on the index to find the next record because the information is so closely connected. The application only needs to follow a single one of the multiple child pointers within the tree structure of data. It can choose from any of the child record pointers or the single sibling record pointers, or the single parent record pointers to access the next record.
Another advantage to using a hierarchical database is the ease of understanding the program. A hierarchical database possesses the function of formulating information into the setup of a corporate organization chart or a tree-like structure. Because of this reason, it’s simple to comprehend for both programmers and non-programmers. For example, one could take a glance at the database and could depict the relationships in which data A is associated with data B. As a user goes up or down the tree, they could seek out which item was coupled to a related item.
Performance and an easily understandable system are the main advantages of the hierarchical database but it’s not limited to just those. This database is efficient if a representation of a hierarchical structure is needed. Also, it possesses an effective single key search and access time if the structure corresponds to application views of the data. It’s effective for one to many relationships fixed over time. Also,o it is capable of swift update performances when the locality of reference exists. If the processing is close to the data being processed, performance is enhanced.
Hierarchical databases do possess their share of disadvantages as well which is one of the reasons why it is not considered the obsolete choice by many. A major weakness of the hierarchical database is its inflexible structure. This creates problems for the user if he or she wants to add a new field to the table. If a new field needs to be added, the database management system must generate a new table to accommodate the larger records and the new information. Unlike a database that uses an SQL method of editing the fields, a hierarchical database does not have the competence to edit tables because it fails to have an alter table command. If a new relationship between fields needs to be added, you will have to build a new and perhaps unnecessary database structure.
Another problem with the hierarchical model lies in the potential in creating problems regarding parent/child restrictions. Every child must have a parent but sometimes, child entities require more than one parent entity but this database prevents that. Therefore, it’s impossible to add new fields if they do not match with the parent. Also because of this connection, management difficulties arise when a parent segment gets deleted. Once a parent segment gets erased, all the associated child segments must also be deleted. This also causes problems when there is a change in the relationship between parent and child segments that result in a whole physical reorganization of data.
Programmers look into more modern and technically advance database management systems to compensate for the aspects hierarchical databases lack. Because of this, companies look to various types of relational DBMS to manage their data. The benefits of relational database management systems include that the system is simple, productive, and flexible to use. Due to the simplicity of the tables, data is easier to comprehend and spread to others throughout the business. The revision of any information could be done right on the information tables. Also, it is simple to edit because of the organized structure of rows and columns.
Relational DBMS uses SQL or standard query language which is a simple and human-friendly language because humans could read it as well. SQL commands are in the form of plain instructions which are used in the database for implementation. Whenever there needs to be a revision of the data within the tables, simple SQL commands are inputted to make the necessary change without altering the table as a whole. Relational databases provide programmers with the operating capability to manipulate data and retrieve it on order. Because of the use of a standard query language, the system is easier to learn and input commands.
Another advantage to relational databases is theirof strong system of security. Through the use of access permissions, administrators of the database can set perimeters to apply for new-based permission to access the data in the tables. Privileges are set up to determine who is allowed to access the number t data by using various commands such as create privilege, grant privilege, and delete privilege. These different commands allow a system to decide which sections are prohibited and which are accessible to only a specific amount of individuals.
Relational databases are flexible because they are not limited to predefined keys in which information is stored. The system of using various tables to organize data allows easy manipulation. Since the tables are connected through foreign keys, it is simple to edit the data within by operators to give information in the desired form.
Precision is also a unique trait for relational databases. When dealing with complicated network bnetwork-baseds, the margin of error is significantly large. Relational databases use a method of relational algebra and calculus in the database to influence the relationships between the tables to make certain that there is little chance of uncertainty. Owing to their advantages and application in the operations of data storage, relational databases have modernized database management systems.
The disadvantages to using a relational database involve its performance and physical storage consumption. A major restriction in the use of a relational database is its limitations in machine performance. A large anumberof relationships between tables could affect the response time of the program and the tables themselves could affect the performance in responding to the SQL commands. Physical storage could also affect the performance of the database. When dealing with an interactive system, it is required that the databases be altered to have enough storage to accommodate for the massive amount of information provthe severaltheeveral operations being run. Even though the tables are well organized, users might have problems interpreting the meaning of the data. Unlike the simple pointer approach by hierarchical databases that gives a quick connection, there is much more analysis in relational databases to find the relations and formulate them in their real-world representations.
It’s important to balance out the pros and cons for each form of a database management system when selecting which one is the right one to manage the information of your company. After all, it’s these applications thacontrolls how to organize the company in retrieving or protecting their data. The performance of the company depends on these factors therefore the correct DBMS has to be chosen based on what type of company you run. Many managers have been making the transition from hierarchical databases to relational databases. Relational databases provide flexibility to gather more information and easier access to modify the contents of the database therefore it’s essential when dealing with large networks and amounts of data. However, hierarchical databases do provide a straightforward interpretation of data so it’s useful in a smaller setting. When working with a large company, a relational database provides a more efficient form of data management because of the vast amount of capacity and resources.