What is the Database Model and types of Database Model?
- DatabaseProgramming Books
- June 19, 2022
- No Comment
- 398
What is the Database Model?
A particular kind of database model called a database model describes the logical organization of a database. It defines the methods for manipulating, organizing, and storing data. The relational model, which employs a table-based architecture, is the most widely used database design.
Depending on the database management system, one or more models could be accessible. The demands of the application, which include transaction rate (speed), reliability, maintainability, scalability, and cost, determine the ideal structure. Although multiple data models can be used to produce solutions, most database models build around one. Although solutions can handle several data models using a database model, the majority of database management systems are built using just one data model.
Numerous physical data structures can be used to implement any logical paradigm. The majority of database model software will provide the user some control over the physical implementation since the decisions made have a significant influence on performance. A database model describes a set of actions that may be performed on it, making it more than just a tool for organizing data.
The relational model, for instance, specifies operations like join and select (project). Even if a query language doesn’t expressly mention these operations, they provides the foundation for its creation.
What are the types of database models?
Hierarchical model:
It is one of IBM’s earliest information management system database models. In the hierarchical model, the data is kept in a tree-like structure with a root node where it initially deposits. When storing data in the hierarchical model, the sort field is used to maintain order for the sibling record. The hierarchical database concept generally used when an information management system needs. In this database model, there is a one-to-many relationship between the data. Data retrieval in the hierarchical model takes a unique tack.
Advantages:
- The model makes it easier to add and remove new data.
- It is possible to swiftly access data towards the top of the hierarchy.
- With cassettes and other linear data storage mediums, it performed well.
- Everything that depends on one-to-many connections may use it. For instance, a president could have a large number of managers reporting to them, and those managers might report to a large number of employees, but each employee only has one management.
Disadvantages:
- It regularly requires the storing of data in a range of entities.
- For instance, tapes are no longer a common linear data storage media.
- The DBMS must explore the entire model while looking for data, from top to bottom, to get the required information, which might take a while.
- This paradigm only supports one-to-many relationships; many-to-many partnerships are not supported.
Relational model:
A relational database was developed by E. F. Codd in 1970. The many software programmes needed to maintain relational databases are referred to as relational database management systems (RDBMS). To remove reliance on database management systems, the relational database model was developed. For microcomputer systems, the relational database model is predominantly being developed. The three keys used in relational database models are domains, attributes, and relations. The connection is defined using a table with rows and columns. The columns of the table are referred to as attributes in the relational database paradigm. The domain is described in the database model as a group of addable variables.
Advantages:
- The relational model is one of the most used database models.
- The relational model’s data access is unaffected by modifications to the database’s structure.
- To make any information easier to grasp, it may be reorganized into tables with rows and columns.
- Because it provides both data and structural independence, the relational database model makes database construction, maintenance, administration, and use simpler than with other models.
- This might be used to create complex queries that access or modify database data.
- It is simple to maintain security compared to other types.
Disadvantages:
- In a relational database, item mapping is challenging.
- The object-oriented paradigm is absent from the relation model.
- Data integrity is difficult to preserve with relational databases.
- For small databases, the Relational Model is acceptable, but not for big databases.
- It costs money because of hardware overheads.
- Designing for simplicity might produce subpar outcomes.
- A relational database system conceals from users its technological complexity and physical data storage components.
Network model:
The network structure database model has a similar structure to the hierarchical model. This paradigm provides a many-to-many relationship in the tree-like structural architecture. It suggests that there might be several parents. The network model employs sets and records. The records comprise sets that explain the many-to-many relationship between the records and files that can be organized hierarchically.
Advantages:
- The network model is easy to construct and has a basic concept.
- In comparison to the hierarchical method, the network model may more accurately reflect data redundancy.
- It is incredibly helpful for modeling real-world circumstances because the network model can handle one-to-many and many-to-many relationships.
- Compared to a hierarchical architecture, data access is easier and more flexible.
- The network method performs better than the hierarchical paradigm in decoupling programs from complex physical storage details.
Disadvantages:
- The database structure grows very complex since pointers are used to keep track of every record.
- The operations of inserting, deleting, or updating any record necessitate several pointer alterations.
- The structure of the database cannot change easily.
Object-oriented model:
A system is known as an object database stores data as objects, much like object-oriented programming does. Table-oriented databases are relational databases; object-oriented databases are not. The widely utilized concept of object-oriented programming languages serves as the foundation for the object-oriented data model. When considering inheritance, the concepts of polymorphism and overloading all spring to mind. Object identity, encapsulation, and information hiding with methods to provide an interface to objects are the core concepts of object-oriented programming that have found applications in data modeling. The object-oriented data model supports a complete type system that includes collection and structured types.
Advantages:
- A relational database can only hold one type of data, but an object database can store a range of data types. Object-oriented databases, as opposed to conventional databases like hierarchical, network, and relational databases, may manage a variety of data types, including pictures, audio, video, text, and numbers.
- Reusing code, simulating real-world circumstances, and increasing reliability and flexibility are all made possible by object-oriented databases.
- Since the majority of system operations encapsulate and can be reused and incorporated into new jobs, object-oriented databases require less maintenance than other models.
Disadvantages:
- An OODBMS lacks a commonly agreed-upon data model, and the majority of models lack a theoretical underpinning.
- The use of OODBMSs is still very limited when compared to RDBMSs.
- Lack of security support exists in OODBMSs that do not offer suitable security mechanisms.
- Compared to typical database management systems, the system is more complex.
Entity-relationship model:
A conceptual model called the entity-relationship model (ERM) employs entities and relationships to represent the information structure of a problem domain. A graphic depiction of the results of modeling using the ERM is an entity-relationship diagram (ERD). The conceptual organization of a depicted problem domain, therefore, is reflected in an ERD.
ERDs frequently used to document systems or issue domain requirements in database design and systems analysis. When a database is used for data modeling, the ERD, in particular, helps the database designer identify the data and the rules that represent and use in the database. ERDs may quickly turn into relational database schemas.
Components of Entity-relationship model:
Entity:
A client, employee, course, or other internal “thing” that we wish to keep information on is referred to as an entity in the context of enterprise resource management (ERM). In an ERM, an entity is a reference to a table, and each entity occurrence is a row in the table.
Entities are shown as rectangles with the name of the entity written on them. Entity names must only be one word long and capitalized.
Each thing contains traits, or qualities, that define it. Attributes will be represented in the tables as columns. The possible range of values for each attribute is indicated by its domain. A collection of integer numbers between 4000 and 4999, for instance, may be used to indicate the range of values for a telephone extension. The domain of an attribute is not displayed in ER diagrams but preserved in the data dictionary.
Attributes represent ovals connected to the entity by lines.
Attributes:
There are many different sizes and forms of attributes. It is possible to separate a composite property into its parts. For instance, the attribute name may be divided into First Name and Last Name. Simple features are characteristics that cannot be divided. First and last names have been condensed into one of the primary attributes.
The majority of characteristics just have one value, hence they are known as single-valued attributes. For instance, a topic can only have one subject code and a teacher can only have one last name. Multivalued attributes can have many values given to them. For instance, a student could have a lot of certificates, and a department might have a lot of extensions.
Relationship:
A relationship is a connection between two entities or entity occurrences. For instance, a Teacher instructs Subjects, and a Subject has Offerings. Relationships will be covered in more detail in the section that follows, “ER Model Relationships.”
Relationships are represented by diamonds joined by straight lines.
Document Object Model:
An XML (Extensible Markup Language) and HTML programming interface called the Document Object Model (DOM). The logical structure of documents specifies by the Document Object Model, along with how they can access and altered.
Since the DOM doesn’t define any object relationships, it referres to as a logical structure.
To make it easier for programmers and users to browse the text, the Document Object Model (DOM) is a technique for expressing a webpage in a hierarchically ordered manner. Using the commands and methods of the Document object, we can easily access and modify tags, IDs, classes, properties, and elements.
The conceptual design and structure of a database, as well as how data will be stored, accessed, and updated, are all described by a database model in a database management system.
The Database Model gives us a preview of the complete implementation of the system’s ultimate design. The data components and their connections are described by the database model. Database models use in database management systems to display how data stored, connected, accessed, and modifies.
Structure of DOM:
DOM is comparable to a tree or a forest (more than one tree). A structural model is another name for a diagram that resembles a tree of a document. A key feature of DOM structure models is a structural isomorphism, which ensures that the same objects and connections will appear in the same structure model when two different DOM implementations are used to create a representation of the same page.
Entity-attribute-value model:
The Entity Attribute Value Model (EAVM) is a data model for defining entities where the total number of attributes (properties and parameters) that may be used to describe them is high but the total number of attributes that would apply to a given entity is minimal.
In mathematics, this kind is referred to as a sparse matrix. EAV is referred to by the names object–attribute–value model, vertical database model, and open schema.
An EAV diagram is sometimes the best technique to model data for a specific problem area. An EAV-based method, however, is often an anti-pattern that can lead to longer development times, worse database resource efficiency, and more challenging searches as compares to a relationally-modeled data architecture if data can characterize statically relationally.
The object-relational model:
An object-relational model combines an object-oriented database model with a relational database paradigm. As a result, it supports both data types, tabular structures, and other characteristics found in relational data models in addition to objects, classes, inheritance, and other elements found in object-oriented models.
Close the gap between relational databases and also object-oriented programming techniques used in languages like C++, C#, and Java is one of the main objectives of the object-relational data model.
History of the object-relational model:
The advantages of relational and object-oriented data structures consider. It discovers that they both lack specific characteristics, thus working on developing a model that merges the two started. The object-relational data model was created as a result of research done in the 1990s.
Advantages of the object-relational model:
Inheritance:
To increase their capabilities, Object Relational also data model users can inherit objects, tables, and other data. Objects that have been passed down through inheritance also have new traits.
Complex Data Types:
Complex data types can develop by combining already existing data types. Because complex data types enable more efficient data processing, this is helpful in the Object Relational Data Model.
Extendibility:
The system’s functionality may increase using the object-relational data paradigm. Complex data types and sophisticated object-oriented ideas like inheritance can use to achieve this.