At the heart of database modeling is the idea of designing a database structure that defines how stored information can be accessed, categorized and manipulated. It’s the very foundation of a database design effort, and the specific data model employed drives the database diagram and overall development endeavors. Read on to learn why modeling is an engineering imperative as well as some of the more popular data model techniques.
Database Modeling 101
Fundamentally a database should be easy to use and must maintain the integrity of the data in a secure fashion. A strong database model will also enable various ways to manage, control, and organize the stored information to effectively execute multiple key tasks. In the design phase, database diagrams will provide needed documentation of the data links that facilitate database functionality.
Types of Database Modeling Techniques
Below is a list of the most common database modeling methods. Do note that, depending on the type of data and end user needs when accessing the database, it’s possible to employ multiple models to create a more sophisticated database design. Of course, in either scenario, the production of database diagrams would be required to establish and maintain high operational standards. Luckily turn-key diagramming and design tools like Creately can make this effort a breeze.
From the below mentioned models the relational model is the most commonly used model for most database designs. But in some special cases other models can be more beneficial. Fortunately Creately support all the models 🙂 .
- Relational Model: Founded on mathematical theory, this database model takes information storage and retrieval to a new level because it offers a way to find and understand different relationships between the data. By looking at how different variables can change the relationship between the data, new perspectives can be gained as the information’s presentation is altered by focusing on different attributes or domains. These models can often be found within airline reservation systems or bank databases.
- Graph Model: Graph model is another model that is gaining popularity. These databases are created based on the Graph theory and used nodes and edges to represent data. The structure is somewhat similar to object oriented applications. Graph databases are generally easier to scale and usually perform faster for associative data sets.
- Hierarchical Model: Much like the common organizational chart used to organize companies, this database model has the same tree-like appearance and is often used to structure XML documents. In looking at data efficiency, this is an ideal model where the data contains nested and sorted information, but it can be inefficient when the data does not have an upward link to a main data point or subject. This model works well for an employee information management system in a company that seeks to restrict or assign equipment usage to certain individuals and/or departments.
- Network Model: Using records and sets, this model uses a one-to-many relationship approach for the data records. Multiple branches are allocated for lower-level structures and branches that are then connected by multiple nodes, which represent higher-level structures within the information. This database modeling method provides an efficient way to retrieve information and organize the data so that it can be looked at multiple ways, providing a means of increasing business performance and reaction time. This is a viable model for planning road, train, or utility networks.
- Dimensional Model: This is an adaptation of the relational model and is often used in conjunction with it by adding the “dimension” of fact to the data points. Those facts can be used as measuring sticks for the other data to determine how a size of a group or the timing of a group impacted upon certain results. This can help a business make more effective strategic decisions and help them get to know their target audience. These models can be useful to organizations with sales and profit analysis.
- Object Relational Model: These models have created an entirely new type of database, which combines database design with application program to solve specific technical problems while leveraging the best of both worlds. To date, object databases still need to be refined to achieve greater standardization. Real world applications of this model often include technical or scientific fields, such as engineering and molecular biology.
Database Diagrams and Model Selection
No matter which database modeling method you choose, it’s imperative to develop related diagrams to visualize the desired flow and functionality to ensure the database is designed in the most efficient and effective way possible. The right diagram will reduce revisions and rework because you can test the proposed design before putting in the time and expense of actually creating it. Diagrams are also a highly effective communication tool, particular for large teams, as they facilitate clear and quick communication.
Whether you prefer a desktop software, Google App, or Web-based application, Creately has what you need to make collaborative diagramming easy, including free database diagram templates and examples of any diagram type like flowcharts, mindmaps, wireframes and UML. Creately also provides plug-ins to popular platforms, including Confluence, JIRA and FogBugz, to expand their capabilities to support the development of database diagrams.
Sources:
- http://docs.oracle.com/cd/B13789_01/appdev.101/b10828/sdo_net_concepts.htm
- http://infolab.stanford.edu/~ullman/focs/ch08.pdf
- http://docs.oracle.com/cd/B28359_01/olap.111/b28124/overview.htm
please there is something wrong with the relational model diagram. it might have been an oversight. in the medication relation, dedication id is the PK and patient id is the FK. the same applies to the diagnosis relation. Thank you. NIA, GHANA