This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.
This paper will be dealing about the different kinds of Databases that includes Relational Database Management System (RDBMS), Object Relational Database Management System (ORDBMS), Object Oriented Database Management System. And what are the significance of these different Databases in different organizations. We'll be further studying the need and importance of a particular Database over other systems in a organization known as Innoventive
Innoventive is a part of AIMITA Corporation.
Innoventive provides merchandising staff and promotional staff throughout the UK with an emphasis on London. Whether you require hand distribution to the public or to doors, models to attract your public or stunt artists to engage your audience, we can provide you with a tailor made package to achieve your goals
We will be studying the type of database required for this company to keep the record of nearly 1000 employees. That contains their details, job details, shifts, wages, HR registry and keep it up dated so they can charge their client whom they are providing the staff.
This organization has the following type of the management level
Strategic Level, Management Level and Operation Level. Top level which is strategic, deals directly with clients and take the decisions of how much staffing is required and in what budget it should be done. Then this information is passed to the section of 13 managers, each of them has been assigned a part of city and controls the transactions of operations and staff with in their area. They are known as Area Managers.
To discuss the type of Database system required lets study theses three different kind of Databases first to get a better view of our need.
Types of Databases.
Relational Database Management System (RDBMS)
Object Oriented Database Management System (OODBMS)
Object Relational Database Management System (ORDBMS)
Relational Database Management System (RDBMS)
Edgar F. Codd at IBM invented the relational database in 1970. Referred to as RDBMS, the relational model extended two previous database systems, the hierarchical and the network models. After Codd's development, "prototype RDBMS were developed at IBM and UC-Berkeley, and several vendors were offering relational database products shortly thereafter."
The relational model is based on the structure of a database. A database is simply a collection of one or more relations or tables with columns and rows. The use of set theory allows for data to be structured in a series of tables that has both columns and rows. Each column corresponds to an attribute of that relation, while each row corresponds to a record that contains data values for an entity.
The three fundamentals of a relational database are that all information must be held in the form of a table, where all data are described using data values. The second fundamental is that each value found in the table columns does not repeat. The final fundamental is the use of Standard Query Language (SQL).
Benefits of RDBMS are that the system is simple, flexible, and productive. Becausethe tables are simple, data is easier to understand and communicate with others. RDBMS are flexible because users do not have to use predefined keys to input information. Also,RDBMS are more productive because SQL is easier to learn. This allows users to spend more timeinputting instead of learning. More importantly, RDBMS's biggestadvantage is the ease with which users cancreate and access data and extend it if needed. After the original database is created, new data categories can be added without the existing application being changed.
Today, the relational model is the dominant data model as well as the foundation for the leading DBMS products, which include IBM's DB2 family, Informix, Oracle, Sybase, Microsoft's Access and SQLServer, as well as FoxBase and Paradox. RDBMS represent close to a multibillion-dollar industry alone.
Object Oriented Database Management System (ORDBMS)
To combat the limitations of RDBMS and meet the challenge of the increasing rise of the Internet and the Web, programmers developed object-oriented databases in the 1980s. The main objective of Object-Oriented Database Management Systems, commonly known as OODBMS, is to provide consistent, data independent, secure, controlled and extensible data management services to support the object-oriented model. They were created tohandle big and complex data that relational databases could not.
There are important characteristics involved with object-oriented databases. The most important characteristic is the joining of object-oriented programming with database technology, which provides an integrated application development system. Object-oriented programming results in 4 main characteristics:inheritances, data encapsulation, object identity, and polymorphism. Inheritance allows one to develop solutions to complex problems incrementally by defining new objects in terms of previously defined objects.
Data encapsulation or simply encapsulation allows the hiding of the internal state of the objects. Encapsulated objects are those objects that can only be assessed by their methods instead of their internal states. There are three types of encapsulated objects users and developers should recognize. The first is full encapsulation, in which all the operations on objects are done through message sending and method execution. The second is write encapsulation, which is where the internal state of the object is visible only for reading operations. The third is partial encapsulation, which involves allowing direct access for reading and writing for only a part of the internal state.
Object identity allows objects of the database to be independent of each other. Polymorphism and dynamic binding allow one to define operations for one object and then to share the specification of the operation with other objects. This allows users and/or programmers to compose objects to provide solutions without having to write code that is specific to each object.
The language important to OODBMS is data definition and manipulation language (DDML). The use of this language allows persistent data to be created, updated, deleted, or retrieved. An OODBMS needs a computational versus a relational language because it can be used to avoid impedance mismatch. DDML allows users to define a database, including creating, altering, and dropping tables and establishing constraints. DDMLs are used to maintain and query a database, including updating, inserting, modifying, and querying data.
The OODBMS has many advantages and benefits. First, object-oriented is a more natural way of thinking. Second, the defined operations of these types of systems are not dependent on the particular database application running at a given moment. Third, the data types of object-oriented databases can be extended to support complex data such as images, digital and audio/video, along with other multi-media operations. Different benefits of OODBMS are its reusability, stability, and reliability. Another benefit of OODBMS is that relationships are represented explicitly, often supporting both navigational and associative access to information. This translates to improvement in data access performance versus the relational model.
Another important benefit is that users are allowed to define their own methods of access to data and how it will be represented or manipulated. The most significant benefit of the OODBMS is that these databases have extended into areas not known by the RDBMS. Medicine, multimedia, and high-energy physics are just a few of the new industries relying on object-oriented databases.
As with the relational database method, object-oriented databases also has disadvantages or limitations. One disadvantage of OODBMS is that it lacks a common data model. There is also no current standard, since it is still considered to be in the development stages. Object-oriented database technology is a marriage of object-oriented programming and database technologies. Figure 1 illustrates how these programming and database concepts have come together to provide what we now call object-oriented databases.
Perhaps the most significant characteristic of object-oriented database technology is that it combines object-oriented programming with database technology to provide an integrated application development system. There are many advantages to including the definition of operations with the definition of data. First, the defined operations apply ubiquitously and are not dependent on the particular database application running at the moment. Second, the data types can be extended to support complex data such as multi-media by defining new object classes that have operations to support the new kinds of information.
Other strengths of object-oriented modeling are well known. For example, inheritance allows one to develop solutions to complex problems incrementally by defining new objects in terms of previously defined objects. Polymorphism and dynamic binding allow one to define operations for one object and then to share the specification of the operation with other objects. These objects can further extend this operation to provide behaviors that are unique to those objects. Dynamic binding determines at runtime which of these operations is actually executed, depending on the class of the object requested to perform the operation. Polymorphism and dynamic binding are powerful object-oriented features that allow one to compose objects to provide solutions without having to write code that is specific to each object. All of these capabilities come together synergistically to provide significant productivity advantages to database application developers.
A significant difference between object-oriented databases and relational databases is that object-oriented databases represent relationships explicitly, supporting both navigational and associative access to information. As the complexity of interrelationships between information within the database increases, so do theadvantages of representing relationships explicitly. Another benefit of using explicit relationships is the improvement in data access performance over relational value-based relationships.
A unique characteristic of objects is that they have an identity that is independent of the state of the object. For example, if one has a car object and we remodel the car and change its appearance, the engine, the transmission, and the tires so that it looks entirely different, it would still be recognized as the same object we had originally. Within an object-oriented database, one can always ask the question, "is this the same object I had previously?", assuming one remembers the object's identity. Object-identity allows objects to be related as well as shared within a distributed computing network.
All of these advantages point to the application of object-oriented databases to information management problems that are characterized by the need to manage:
* a large number of different data types,
* a large number of relationships between the objects, and
* objects with complex behaviors.
Application areas where this kind of complexity exists includes engineering, manufacturing, simulations, office automation and large information systems.
Object Relational Database Management System (ORDBMS)
Object-Relational database (ORDBMS) is the third type of database common today. ORDBMS are systems that "attempt to extend relational database systems with the functionality necessary to support a broader class of applications and, in many ways, provide a bridge between the relational and object-oriented paradigms."
ORDBMS was created to handle new types of data such as audio, video, and image files that relational databases were not equipped to handle. In addition, its development was the result of increased usage of object-oriented programming languages, and a large mismatch between these and the DBMS software.
One advantage of ORDBMS is that it allows organizations to continue using their existing systems, without having to make major changes. A second advantage is that it allows users and programmers to start using object-oriented systems in parallel.
There are challenges in implementing an ORDBMS. The first is storage and access methods. The second is query processing, and the third is query optimization.
Since the development of RDBMS, OODBMS, and ORDBMS, many vendors have extended their systems with the ability to store new data types such as images and texts, and with the ability to ask more complex queries.
One rising technique is enterprise resource planning and management resource planning, which add another layer of application-oriented features on top of a DBMS. Included applications come fromBaan, Oracle, SAP, and Siebel. These programs each identify a set of common tasks encountered by a large number of organizations and provide a general application layer to carry out these tasks.
More importantly, DBMS have advanced into the Internet and Web Age.Stored data is widely being accessed through a Web browser. Today, queries are being generated through Web-accessible forms and answers are being formatted using a mark-up language such as HTML. In addition, many vendors and distributors are adding features to their DBMS aimed at making it better equipped for Internet usage.
In summary, relational and object-oriented database systems each have certain strengths as well as certain weaknesses. In general, the weakness of one type of system tends to be strength of the other.
Selection of a Database for Innoventive
We have chosen RDBMS for Innoventive because of the following reasons:
If you can solve the problem with an RDBMS without a lot of effort and also achieve the performance, throughput and scalability that you need then there's no compelling reason to use an ODBMS. If any of the following conditions are met then you should consider using Objectivity/DB:
* Complex Relationships
If there are a lot of many-to-many relationships, tree structures or network (graph) structures. But in this case all of our database is having simple relational structure mostly of one to many.
* Complex Data
If the data has multiple varying length components, particularly multi-dimensional arrays, arrays of structs or binary streams. Where in Innoventive data is mostly one dimensional and straight forward.
* Distributed Databases
If the databases need to be geographically distributed, used in a detached mode or are accessed from a processor grid [or "farm"]. Innoventive has only one centralized database which is quite sufficient to meet their needs.
* Multiple Languages or Platforms
If the system will use multiple languages and/or platforms. Where Innoventive's Database hold only one type of language
* Repetitive use of Large Working Sets of Objects
If your application performs many successive transactions on the same "working set" of objects. Where Innoventive's transactions deals on small one way types.
* Massive Scalability
If you have very large amounts (Terabytes or Petabytes) of data, databases at large numbers of sites or a very large numbers of clients. As innoventive has a few clients and a large number of staffing but still RDMS would be enough to deal with it as data remain under a terabyte.
* Expensive Mapping Layer
In innoventive there is no need to decompose objects to fit into rows and columns; or to give up on doing ad hoc queries by storing binary data as BLOB [Binary Large Objects]; or to construct artificial JOIN tables to express many-to-many, tree and network relationships. So that's another reason to adopt RDBMS over OBDMS.