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.
Nameita,
ReplyDeleteYour 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!