There come many times in a student’s life when he/she fails to understand a class topic and must use extra time and resources to fully comprehend the class material. Such a time came for me last week when my computer class covered data models and database management systems (DBMSs). For some reason, I had a hard time grasping the concept of data models. As a result, I decided to focus this blog post on describing and comparing data models in the hopes of bettering my own understanding of this topic and hopefully yours as well. We will begin by briefly describing data models and DBMSs, and we will end by looking at the three most common data models: relational, object-oriented, and multidimensional.
According to TechTerms.com, a database management system is a software system basically used for obtaining, organizing, and allowing users the opportunity to edit data. A database can hold a massive amount of data in manageable formatting and categories. A data model, on the other hand, works as the foundation for a DBMS. Data models are the parameters that encompass how users see the data in a database. For example, while one data model may allow users to view the data in a simple two-dimensional file, another model may show the data as organized from multiple dimensions for the user. It is important to note that data models do not actually organize the data on the database disk, but instead, the model determines how the data appears to the user.
Now that we have covered DBMSs and data models, let’s move on to today’s three most popular data models. The first model we will cover is the relational data model. This model presents the data to users using tables, rows, and columns. Figure 1 illustrates how a relational data model displays data in the Microsoft Access 2007 application. The red box outlines the table within this particular document while the yellow box indicates the column and the blue box indicates the row.
Image of a Microsoft Access table created by me on 3/24/11 |
In this way, the relational database that powers Microsoft Access displays data for the users to read and modify as needed. The relational data model also allows for queries and primary keys, and in Microsoft Acces, you can also use the database to create forms and reports. Another feature of a relational database is the concept of relationships. Within a relational database you can connect the data in one table with data in another table by applying a relationship to the tables. As long as the tables you wish to relate have common columns, you can use the relational database to link your data as the simply Access model below illustrates.
Image of Microsoft Access relationship summary created by me on 3/24/11 |
Any discussion about the relational data model would not be complete without also mentioning that this model is based on the Structured Query Language (SQL). According to Prabhudev Konana Ph.D., SQL is a common standard language for defining and controlling databases around the world. SQL has many different goals such as defining the different components of the database (tables, queries, etc…) and managing the different tables within the database.
Now let us move on to the object-oriented database. With this model, the data is not organized into tables, but instead, the data appears in objects. Each object consists of the data and the related activities and processes behind the data. As stated in the ISM 3004 textbook, some of the advantages to using an object-oriented database are as follows (Shelly and Vermaat, 2010):
· More storage for different kinds of data
· Faster access time
· Object reusability
· Better capabilities with unstructured data such as photos and audio
Though object-oriented databases have several advantages over relational databases, the object database is still used as a complement versus a replacement to relational databases (ODBMS.org). Several cases have contributed to the object database’s complementary position such as the high costs associated with changing database types and the creation of object-relational mappers (ORMs), which are a combination of the object and relational databases. Thus, for now at least, relational databases are still more commonly used in the business world over object databases.
Two common ways in which object-oriented databases are used today include computer-aided design (CAD) and websites. In such instances where more data types are used and unstructured data is prevalent, object-oriented databases are a more efficient tool to work with. The CAD drawing in Figure 3 was likely created using an object-oriented database, and many web users use this data model to power their websites.
This screen capture of a CAD drawing was taken by me from http://en.wikipedia.org/wiki/File:Schneckengetriebe.png and is a file from the Wikimedia Commons, which is a freely licensed media file repository. |
The final database we will cover today is called the multidimensional database. In this database, the data can be stored in tables that exceed two dimensions. This means that the user can gather and modify more data much faster and more efficiently than if the user used a relational database. One of the key uses for multidimensional databases is in data warehousing. Data warehousing provides an excellent location for storing a large amount of data and giving users the chance to work with the data in various ways. Sometimes the data in the database is located in different places. This distributed database gives more value to data warehousing because multidimensional databases and data warehousing can consolidate the separated data easier than any other data model we’ve discussed so far. Using the example from the ISM 3004 textbook, I constructed Figure 4 as a very simply illustration of what data warehousing does with the help of multidimensional databases. The data from the different dimensions goes into the data warehouse and is viewed and used by the different users on the other end. In this way, multidimensional databases provide a great tool to businesses everywhere.
Image created by me on 3/22/11 |
For this tutorial, we covered some of the fundamentals of database management systems and data models. We looked into the relational, object-oriented, and multidimensional models and checked out a few examples of these databases. Overall, it is very clear that the different data models fill an important position in helping businesses and personal users organize and edit their data.
Acknowledgements:
Techterms - http://www.techterms.com/definition/dbms
Shelly and Vermaat. (2010). Discovering Computers 2010: Living in a Digital World. Cengage
Learning. pages 533-536.
Prabhudev Konana Ph.D. - http://misbridge.mccombs.utexas.edu/knowledge/
classes/mis373.1/pdf/ddl.pdf
ODBMS.org - http://www.odbms.org/Introduction/whenODBMS.aspx
Figure 1 & 2 – Screen captures of Microsoft Access 2007 (self-created)
Figure 3 - http://en.wikipedia.org/wiki/File:Schneckengetriebe.png
No comments:
Post a Comment