Tuesday, February 11, 2014

Object Oriented Database

There are four basic types of databases: flat file databases, relational databases, object databases, and object relational databases. Each type is characterized by the way it stores and access data. The most popular type of databases are relational databases. Relational databases organizes data in multiple related simple tables [1]. This method is easy to use and very efficient with relatively simple data, however when using BIM technologies relational databases are inadequate. That is when object oriented databases (OODB) come into play.

When relational databases store information in the form of real numbers or simple string of texts, OODB store data in the form of objects. Objects in OODB are defined by attributes which defines the characteristic of the objects and methods which specify the behavior of that object. Therefore OODB contain not only data but also code. This type of databases are ideal when complex data need to be stored, and accessed rather quickly. OODB also provides redundancy which is quite useful when storing a large quantity of complex data.


Despite the great popularity of relational databases, their limitations when it came to BIM were quite apparent. Relational databases would require a great amount of time to break down objects into simple data that could fit in tables. Because of this, navigation and access to the data could be painstakingly long. In addition, relational databases scale information “vertically” which means that the data must be stored on one super server [2]. Such a big server can be quite expensive, especially as the amount of data increases and gets more complex. That is why most BIM software is based on OODB. OODB allows for “horizontal” scaling of the data, which means that it can be stored on multiple small servers.

Researching databases and their usage in BIM helps shade light on the way this process works, as well as the role of technological advancement in the field. I had no prior knowledge about databases, and reading about the functioning of OODB helped me visualize how Revit or other similar software might work.  


Responses to other posts:

Yoon's Post: 
You and I basically took the same approach on the subject. I like the way you structured your post, it makes it easy to understand WHAT OODB are and HOW they differ from other databases type. This is the part I struggled with. I had to read a lot about databases to understand the simple concept of OODB, and they way they are used in BIM. Do you think it's possible to truly understand that without an extensive knowledge on databases? I also like that you mentioned the future of OODB. I did not felt as though I understood the concept well enough to make such projections. 

Wang's Post: I enjoyed reading your post. It was much more technical than mine and I feel you might have a better understanding than me on the subject. I like that you mentioned the set-backs of OODB because it allowed me to nuance the praises I read on the subject. It also showed me that BIM is a relatively new technology since the tool for its execution is also quite new.   


References:

[1] "Object Oriented Databases." The Computer Technology Documentation Project. N.p., n.d. Web. 11 Feb. 2014.

[2] Long, N., K. Fleming, and L. Brackney. An Object-Oriented Database for Managing Building Modeling Components and Metadata. NREL, 16 Nov. 2011. Web. 11 Feb. 2014.

1 comment:

  1. Nameita,

    Your post definitely helped me understand OODBs a bit more, even after I had written my post. As you said with Yoon, it seems like our approach to the post was similar. I did not have any prior knowledge on databases prior to this post as well, so I took it as an opportunity to research benefits and uses for object oriented databases. I really like how you describe why object oriented dbs are better that relational dbs. I didn't realize that the time it took to compile information was that long with relational dbs. Great post!

    ReplyDelete