Monday, February 12, 2018

Dung Tran - B5 - Relational Database Theory

Building Information Modeling also involves interacting with databases stored within the BIM software. On Week 4, our guest lecture from Whiting-Turner mentioned that properties data of all components ranged from structure to MEP that organizes the entire project were tabulated to design and modify building components better. This process can develop a massive data sets, which working with parameters are strongly required to manage. Relational databases would benefit the work by grouping these regulated parameters of building components together. But, what is the relational database in the world?

Database

Before discussing about the theory of relational database, we should summarize about the definition of database. Britannica defines database as "an organized collection of data or information for rapid search and retrieval by a computer" [1]. Database was introduced in mid-1960s to replace the tape-based storage system, at which computers could capable of processing data from direct-access storage such as floppy disks. At that moment, the information within database was stored in a tab delimited file, which is a horizontally long, and unorganized text file. In fact, it was challenging to neglect the unnecessary information in a large database while organizing reports for only a specific field. Therefore, relational database was introduced in 1970 in E.F. Codd's research paper "Relational Completeness of Data Base Sublanguages" as a standard on database construction.

Relational Database Theory

In his e-text "An Introduction to Relational Database Theory", Darwen defines relational database as a database set, which information was organized into a collection of relations in a tabular form [2]. Relation is a set of information that is associated with each other in algorithms, constraints, and more. Even though relation can be a table as stored in a tabular form, the term "table" is not completely defined relation. In fact, information stored in table can be free from any constraints or algorithms. Figure 1, on Darwen's e-text, demonstrates the comparison between tables that are either a relation or not. On the above table, raw information is organized in specific information such as Name, Student ID, and Course ID. For example, a student named "Anne", whose ID number is S1, registers for courses C1 and C2. 

Figure 1. Table depicting relational database (above), and not a relational database (below) [2]

According to Darwen, relational database theory includes the structure of a relation, relational algebra (mathematical theory that operates on relations), variables (set of parameters needed to operate the relational algebra), and constraints that regulate those associated variables [2]. A structure of a relation includes a table, whose columns represent its attribute, and rows represent tuples or the degree of the relation. Each row contains unique inputs, whose amount is respected to number of attributes (or degree). A complete dataset of the tuple is the combination of these unique inputs. A set of tuples generates a complete set of relation. Figure 2 represents the structure of a relation with their terms defined by E.F. Codd in his research paper. 

Figure 2. The anatomy of a relation [2]


Reference

[1] The Editors of Encyclopaedia Britannica. "Database" <https://www.britannica.com/technology/database>

[2] Darwen, Hugh (2010) An Introduction to Relational Database Theory, Bookboon.com.<https://dvikan.no/ntnu-studentserver/kompendier/an-introduction-to-relational-database-theory.pdf>

Comments

Milligan:

Kerry, this is a good introduction about relational database for someone who does not take INFO 210, or take a course in database management system. It looks like relational database has been a standard for constructing a data set for years, and most of our presentations involving with tabulated information uses relational database to present. Your examples are familiar about processing everyday data using relational database, which reduces the abstraction of theoretical discussion. Great work!

DiGiovanni

Brad, I am working on BIM project for this class which recreates a glass house built 80 years ago as a Revit model. It would be great if a general database is available for the building so that I do not have to skim through 20ish technical drawings to look for material components. Revit is also a great help by storing these information of a respective component. You are a right to mention about the importance of historical data of previous projects for design firms. It is essential for any design firms to be competitive by keeping records for maintenance, and case studies. In short, I believe 'Glass House' did not become a trend based on the data report about its vulnerability with outside environment / weather.

Liu:

Xiaoyu, I have struggles on my blog post about relational databases as well, and I hope we could be covered after the end of lectures on Tuesday. Your post is very informative about the definition object-oriented databases which is distinct from a tabular-based databases such as relational database. I believe an example of object-oriented databases is material properties stored in a respective BIM component, as all of its attributes is under a large umbrella. It is also great by controlling permanent and temporary data, that is how different elements in a same Revit family can be created.  

2 comments:

  1. I really like how you approach the main topic of relational databases by first defining databases in general. I did something similar in my post. I also think you did an exceptional job in explaining how the the math side of relational data, or the relational algebra, to the overall concept. I did not get the chance to check out Codd's research paper but it seems to be very helpful in understanding this broad and complicated theory.

    ReplyDelete
  2. Thanks for giving me an understanding of what a relational database is. I ready in Luciana’s post about OODMS so it was nice to read about the other side of the coin. It’s interesting that in this type of database tables can be defined with constraints or algorithms but also don’t have to be. The images you included also made your (and Darwen’s) explanation easier to understand.

    ReplyDelete

Note: Only a member of this blog may post a comment.