Tuesday, February 12, 2019

B5-Object oriented database


Object oriented database is a database management system with data represented in the form of objects. This kind of database system is able to restore the data including classes of objects and is able to inherit properties of classes. It must have inheritance, polymorphism and encapsulation characteristics in order to store and retrieve complex data types. This type of database system is used as a complement of relational database, which dominant in the data center for server-side persistence.
Object-oriented database can handle more complex data types than relational database does. Relational database can only store simple database such as name, date of birth. However, Object oriented database is able to store complex data types, such as graphics, videos, CAD and even geographical satellite information. This makes the successful of object-oriented database much more costly than relational database. On the other hand, it increases the difficulties to transfer the database from relational database to object-oriented database. That is the reason why object-oriented database can only become a complement of relational database.
While retrieving data from the system, it is easier for object-oriented database. The object-oriented database stores the classes of objects and properties of classes. There is a great analogy about how object-oriented database stores complex database. It is simulated as parking a car in a garage. The garage is the database with OODB you can drive the entire car into the garage and leave it to be picked up next time when you want to go for a riding. In a relational database, you will need to dissemble the parts and put the parts in different shelves. When you want to pick up your car, you will have to reassemble the car with the exact parts. Therefore, it will be more difficult to retrieve a data without touching the rest of data in the database storage.


Cite: http://www.odbms.org/introduction-to-odbms/odbms-for-rdbms-users/

Comments:
Jenny,
I totally agree with you that object oriented database will help with BIM software since it stores complex data types. I really like your example showing how convenience it is as OODB in opening file and retrieving data.
Matt,
It is true that it used to be very costly to make the change from RDBMS to OODBMS since the difference of data types they store. But i believe it will be more and more popular with low-cost solutions in the future.
Lin,
I can't agree more that OODB can easily and quickly finish the task of data exchanging and determination of computing. It is also the challenge for OODB to accomplish this tasks with a lower-cost and a higher popularity.

Blog 5 - SQL

This assignment required students to read about databases with a particular topic in mind. Each group had a separate topic to explore. I will be reading and discussing about Structured Query Languages (SQL) using information found online.

First, a SQL is a means of communicating with a database and has been adopted by the American National Standards Institute (ANSI) as the standards. Various commands of SQL are present in the different database systems but the simple ones are capable of doing almost everything a user needs ("Sqlcourse - Intro" 2019).

Relational database management systems present data in tabular format. Searching, creating, populating, updating, and deleting are basic functions in SQL that most people will do with a table whether or not it is through using SQL.

Why is using SQL important? Well, most things can be represented as points of data and a large compilation of data into big data can be daunting to use and maintain. However,

SQL is able to perform functions across the entire database meaning that as long as the user has some idea of what they are looking for, they can use a combination of functions to narrow down the data until they find what they want ("Sqlcourse - Intro" 2019). This is why it is important to design a database properly. Proper management of a database using SQL prevents any hiccups in the future and provides better user experience.

After reading Nick Maloney’s post, I interpreted his idea of BIM using “massive amount of data in order to perform their intended functions” as manipulating the elements and their properties in the model and having Revit show the user what the model looks like on the front-end of the software.

It is even more important to companies who provide a service such as insurance or social media. These types of companies can have records of millions of people and they can have actuaries who can determine how much people should pay for insurance or marketers to personalize advertisements on social media.

While SQL may not be a necessary skill to have in the near future, being able to maneuver through data in a table has been a useful skill since the creation of spreadsheets.


Sources:
Maloney, Nick. 2019. "B5 - What Is SQL And Why Is It Important?". Ae-410-510-Ay18-19.Blogspot.Com. https://ae-410-510-ay18-19.blogspot.com/2019/02/b5-what-is-sql-and-why-is-it-important.html.

"Sqlcourse - Intro". 2019. Sqlcourse.Com. http://www.sqlcourse.com/intro.html.


Comments on colleagues’ posts:
Blas Andres Rodriguez Vieira
With the advent of big data being used in most companies, it is becoming more important to be able to manipulate data. When we were freshmen/sophomores, we were taught how to use MatLab and Excel but I feel like it will no longer enough in the coming years. Thankfully, the freshmen now are learning programing languages that I feel like it is incredibly useful when learning SQL.

Nana Lin Rasmussen
I think that the tabular method is very easy for beginners whereas more networks of data can be trickier to learn about. I didn’t feel like I was able to handle the database assignment in this class but I feel more confident now that I know how simple it can be.

Yicheng Li
It looks like you have experience with MySQL. What do you think of the usefulness of SQL in the job market today? I don’t have any experience with big data so if you think this is useful then I might be inclined to pick up some SQL.

Blog 5: Relational Database Theory


Relational database theory is a relatively recent development, with Edgar F. Codd originally proposing it in a 1969 paper. Simply put, a database is an organized collection of variables which are machine accessible and editable.  A relational database is one whose symbols are organized by relations. A relation scheme is a set of attribute names. There is a set of tuples (variables) which have a set of attributes assigned to them. The number of tuples is the cardinality of the relation. A relation with a cardinality of 4 is called a 4-tuple. The degree of a relationship is the number of attributes it has. Each attribute has a unique name that describes what it is. Each tuple has each of those attributes. While attribute name is constant over tuples, the attribute value is not necessarily constant. This gives relational databases their usefulness: they are relatively easy to navigate and can store a variety of unique values. An attribute can have certain constraints, or restrictions on what a certain attribute value can be. A simple example is the following table.

It is important to note that the order of columns or rows can be switched in a database; they are not necessarily constrained in an order like a physical table is. Keys are a useful attribute in a database (i.e. no repeating values) that list values. Sometimes in order to create a key, an attribute must be made with a unique value of each tuple (i.e. numbering the n tuples from 1 to n). They help navigation of a database.
A database management system allows users to view and/or edit certain parts (up to and including all) of a table. There is a set language which the user interacts with the management system in order to complete a task. Examples of tasks include updating an attribute value, removing a tuple or attribute, and a new tuple or attribute. A query is an expression that outputs a result based on information from a database. A request is a command that uses the language a database management system understands. Relational algebra is the underlying way that queries are processed by the computer.
Maier, David. The Theory of Relational Databases. Computer Science Press, Inc. 1983. http://web.cecs.pdx.edu/~maier/TheoryBook/TRD.html.
Kozubek, Agnieszka. Theory and History: Why are Relational Databases “Relational”?. Vertabelo. Posted November 27, 2013. https://www.vertabelo.com/blog/notes-from-the-lab/why-are-relational-databases-relational.
Darwen, Hugh. An Introduction to Relational Database Theory, 3rd edition. Ventus Publishing ApS. 2012. https://zodml.org/sites/default/files/An_Introduction_to_Relational_Database_Theory_0.pdf.

Aaron Goldberg,
I was not aware of how recent a development that relational database theory is and powerful it is. I had been focusing more on what they were and how they work and was under the impression that they had been used for a much longer time; I thought that this was how computers stored data now. The capabilities of computers using this theory are extremely impressive and I see how it would be relevant to learn this as someone who will be using such computers in the future.
Alkiviadis Tsitsios,
I found your post to be very useful. I had looked into how databases work and I definitely lost sight of how they relate to the AEC industry. You also provide a simple introduction to how to use a database management system should work with the end user, which again, gave me a different perspective of relational databases.
Harvin Bhandal,
You covered SQL in your post, which I did not. I’m glad that you did because it gave me a much more concrete explanation of relational databases than I got from my resources. You also compared relational databases to other types of databases, which helps to explain why they are as powerful as they are which is mentioned in Aaron Goldberg’s post.

B5 - Object Oriented Databases

Objected oriented databases are a type of management system which links information to an object. These objects contain identities, attributes, references, relationships and associations. This type of data base combines features of object-oriented systems with database systems [2]. Revit is an example of a software which uses this type of database. Information can be tied to devices which are modeled within a building [1]. With object oriented databases you are able to create hierarchies with types. An example of this would be Revit Families. Revit families are first categorized by what type of model component they are. Within a family you can also create types of that family. Although all 2x2 light fixtures would use the same family in a project, you would create different types under that family for the various manufactures and lumen packages. The data for each of the types of the fixtures varies greatly, so although they look a like on a plan view the data within each of the family types is different. This will influence the lighting levels produced for lighting calcs, lighting fixture schedules outputs, as well as the circuiting if the wattage is different.

Object oriented databases, are more complex. They not only include information, but graphics and visuals. Continuing with the example of Revit. As you draft and populate objects in the model. The database builds and information is gathered. This is because the objects themselves are tied to the properties and data pertaining to the object. From this you are able to collect the data and create schedules as a way to organize the data.

Sources:

[1] “A Brief History of BIM.” ArchDaily, VELUX, 7 Dec. 2012, www.archdaily.com/302490/a-brief-history-of-bim/.

[2] “Object-Oriented Databases (Version 2010).” ODBMS Industry Watch, www.odbms.org/2010/01/object-oriented-databases-version-2010/.

Responses:

Julie, great description. The diagram you used to explain what a relational database is was extremely helpful. Your example helped me better understand how the information is linked and relationships are formed between the data.

Use of Databases in Design Offices


Databases are typically used within design software. Information in stored in programs such as AutoCAD and Revit to be used during design – material sizes, qualities, and others information that is used constantly in the programs and also stored for future use. While these databases are used within the programs, there’s also continuous growth past what information is currently stored. Work is being put towards creating a more integrated process overall within the design process and going into the manufacturing process. While it is known that CAD is used for the design process, CAM (Computer Aided Manufacturing) is used within the manufacturing process the same way CAD is used – CAD automates design, and CAM automates the manufacturing process. To create a more integrated process, databases are made between both CAD and CAM so that the planning and management of the operations can be done by a computer, and then the database utilizes the information from a CAD program to transfer it to CAM systems. This CAD/CAM database pulls together data from the design phase (dimensions, necessary parts, etc.) in combination with data needed for manufacturing (tools necessary, timing, quantity, etc.). (1) While databases are used on within a single program, it’s important to see how they can be used to overlap different steps of a project to create a smooth-running project overall.

Even on a smaller scale, databases will become more regularly used, specifically in the technology within an office. Amazon’s Alexa devices utilizes database information to give quick responses. Currently, Alexa devices are being introduced to some university students (Georgia Tech, Arizona State, etc.) to utilize during the academic year. Utilizing these devices on this level, students can ask exam grades, upcoming assignments, etc. While this is obviously relevant to students, the same technique could be implemented in other settings as well, including design offices – “Believers say that the use of the technology will only expand” (2) and while the article specifically talks about the expansion within a school setting, it can go much further than that. In a design office, the use of products like an Echo can pull together databases to relay the information (regarding previous projects, standards, etc.) faster than going through books and other methods.


References:



Responses:

To Alkiviadis Tsitsios, you bring up really good points about how important databases are. Like you said, databases are being used for more than just storing information, but as a way to share it with other parties. This creates a better communication within construction, which is something that is often difficult in the field.

To Hailey Ihlow, I’m also in the database class, and you bring up a great point about how difficult it can be to actually put together a database and manage it. Applying the knowledge is more of an advanced thing, I agree, because the effort “behind the scenes” is a lot more difficult when it’s not transferring information from tables.

To Aaron Goldberg, you explain the relational database theory well - databases in general is not something I know much about, and your post helped explain past how databases are used generally. I think it’s interesting how it looks towards the future and what can be expected and the idea that companies such as HP are potentially expanding technology even further is quite interesting.

Blog Post 5: Object-Oriented Databases

Object-oriented databases differ from relational databases in which information is shown in the form of objects. The benefit of using object-oriented database management systems (OODBMS) is that they allow you to create an object, store it, and then replicate or modify existing objects to make new ones. The object is represented the same way between the programming language and the OOBMS so that there is consistency. This is different from relational database management systems (RDBMS) where the database model is separated from the application of the database. 
  
OODBMS store data and relationships between data directly, instead of sorting through rows and columns like a RDBMS. RDBMS require intermediate tables to maintain relationships between data. Both intermediate tables and relational mapping code are not required while using OODBMS unless you are incorporating new features. This obviously saves a lot of time while developing the database. 
  
RDBMS are far more popular and more widely used compared to OODBMS which have been implemented into RDBMS via object-oriented features. It also used to be very costly to make the change from RDBMS to OODBMS even if companies saw the benefits. However, open source implementation has become popular in recent years and has now allowed for low-cost solutions to become available and more common.

Sources
1. https://database.guide/what-is-an-oodbms/ 
2. http://www.odbms.org/introduction-to-odbms/definition/ 

Comments
1. Aaron Goldberg
This is a very interesting theory that I am not familiar with. Do you know when HP integrated this theory into their products or when they expect to complete it? If the performance increases are as dramatic as they say, I look forward to the new ways that the much more powerful computers will be utilized.

2. Alkiviadis Tsitsios
I like that those of us who strictly researched databases are able to understand the benefits that they have in the construction industry. I am not familiar with the Database Manager Program and it sounds like a useful software that construction firms can integrate into their projects. It is impressive to hear that you are able to use as many attributes as you need within your database.

3. Nana Lin Rasmussen
This is a good summary of SQL and databases. I like that you list off common RDBMS that utilize SQL because it shows how common the language is. The advantages of SQL are interesting, specifically, that coding is not required in SQL. 

Object oriented database


Object oriented database

Object oriented database is a database management system which supports the modelling and creation of data as objects. And there are two necessary criteria which should be a DBMS, and it should be consistent with programming languages. In other words, object-oriented programming + relational database features = object-oriented database model. And there are many features of object-oriented database which are: 1. Objects and classes (as known as object identity), because object has state and behavior, therefore, each object is unique object. For example, a student has his own name, own student Id. 2. Encapsulation, this process is helping with hiding some important information. For example, if you bought a coke, and you know what’s in that, but you don’t know how to make a coke. 3. Inheritance, it shows the relationships between different and similar objects. Like, the vehicle includes bikes and cars, and then the bike involves motor bike and normal bike; and the car involves the Hybrid car, electrical car, and gas-use car. And all of these are belonged to vehicle. 4. Relationships, it can show the relationship between various objects. Like, the student can be related with leader, and other roles.
From the definition and features of object-oriented database, there are also some advantages of it. Firstly, object-oriented database can easily share the data, software components, information and computing things. For example, comparing with other database type, the object-oriented database can easily and quickly finish the task of data exchanging, and determination of computing Secondly, object-oriented database allows various controlling systems. like, AI, and operating systems. Therefore, engineers can use different application to do object-oriented database.

Cite pages:

Comments:
Nana Lin, Your post is very clear showing the SQL database system's definition, systems adaption, and benefits of SQL.But i think you should put some information to show how does SQL work, and the limitation of SQL systems.

Jenny, I like your post. You made a very great definition, and the process of systems working for the object-oriented database. And the example you post made very great explanation of advantages of this database system.

Yichen, the SQL can help with organizing the large database with good protection. And you said SQL is like human brains. it's interesting, and I like your post with imagining the future of SQL system.
x

Blog #5: Uses of databases in construction firms_Wenhan Fu

Database can be defined as an organized collection of data. In modern society, we usually refer it as the web-based database system. The advantages of it includes but not limited to the ability to process huge volumes of data; sharing between multiple concurrent users and lastly, minimize the human errors.

There are three most popular and widespread web-based database system in use. In the essay “A Web-Based Database System for Managing Construction Project Knowledge” from Belize Ozorhon et al, it stated that the three most commonly used systems are “the fee-based project management service, the build it yourself solutions and the web-enabled software for the construction industry” (Ozorhon, 2014). Each of them has its own advantages and disadvantages in their own prospective and are suitable for different types of company. For example, the fee-based project management services which is provided by an IT company, has advantages include low cost, need for less IT experience, however, there are also limitations regarding the volume of the data and others, this system will be more fit to the startup companies. On the contrary, the build-it yourself solutions allow the larger companies to process more heavily sets if data. It has its own limitations still including the investment requirements of the application, outsourcing and long development cycle.

To sum up, database is a modern technology for construction industry as well for the future to handling the large amounts of data. It will provide huge assists in multiple prospects. However, the limitations still exist. The main obstacle for the development of the databases is the types of databases has it own focus, and some of them will abandon some of the fixture in order to stand out in other criteria. The future development of the database in construction industry will be hugely focusing on the balance of the database and less complex for the none computer specialists.


Citation: Ozorhon, B., Karatas, C. G., and Demirkesen, S. (2014). “A Web-based Database System for Managing Construction Project Knowledge.” Procedia - Social and Behavioral Sciences, 119, 377–386.


Comments:
Harvin Bhandal: Your post on the relational database theory is interesting. It is unexpected the Retional Model was created way back to 1970. Also, there organize structure is also remarkable and still helpful in nowadays database development.
Yidi Li: My post has the same topic as yours. It is interesting the construction industry is one of the field databases actually can help a lot. I think the database will connect the industry even closer and we all can be benefit from it.
Maalik Kaptue: Your post give me a better understanding on how the database can help the design specialists. Indeed, even using the Revit to develop a project contains using the database. The development of  the Revit community is also the development of the database for the design firms.



B5: Use of Databases in Design Offices

    In simplest terms “a database is a collection of information... organized in a way to be easily accessed, managed, and updated.” [1] This “information” can refer to anything from the names, positions, and other data populating a given company’s operational-level employee database all the way down to the content of a single excel sheet on a company’s intranet. Due to the flexibility and ubiquity of the term itself, databases are essential to most modern companies, and design firms are no exception to this. 
    Databases allow for massive quality of life improvements in the day-to-day operations of a design firm. The databases built into applications like Revit allow designers to apply and reference data such as material dimensions, weight, and other engineering considerations to their BIM designs. These modeled objects and their various associated properties (Tuples and Attributes, in terms of Relational Database Theory) are observed throughout a suite of software for easy cross-referencing between different engineers and designers. This creates a quantified, object-oriented approach to BIM engineering through documenting physical properties of known materials in a digital format before a structure is even designed. [2]
    The existence of a centralized cross-reference database is perhaps more important than the existence of a database for any one given application- A database is only as useful to a firm as it is accessible and legible to all relevant employees. Also integral to the usability and benefit of a database is the depth to which it is detailed; The more a tuple is described with ample, descriptive, and most of all relevant attribute data, the easier it is to find and assess for use in multiple future design scenarios. 
    I would go further to posit that a solid understanding of Relational Database Theory is useful to all professionals, engineers and otherwise. The logical reasoning and mathematical syntax behind selection of tuples and attributes in a system such as SQL is in itself an engineering challenge- one that must be explored in order to full understand the ways in which databases can be used to their maximum potential within our industry.

Sources:
https://searchsqlserver.techtarget.com/definition/database

https://www.cmu.edu/cee/projects/PMbook/14_Organization_and_Use_of_Project_Information.html#14.4%20Organizing%20Information%20in%20Databases

Comments on others:
Hanyan Chen: You wrote a very well-detailed explanation of OODB systems. I understand some rudimentary RDBT concepts from a class I previously took on SQL, but this post helped me understand a little more of the core tenants behind how RDBT is implemented.


Calvin Tang:
I agree that knowledge of SQL code fundamentals and syntax may not be necessary to all, a decent grasp on the theory behind the syntax is absolutely a great asset for any engineer or other STEM professional to have. SQL syntax is derived from discrete mathematics, after all. 


Laney Fries:
You did a good job of explaining the multiple ways that CAD can interface with CAM over a centralized database. The implication for different phases of a construction project all being able to interface so seamlessly is really exciting. 

B5 – Use of databases in design Offices

Databases can apply to different applications. For a class I am in with databases we are creating a system that connects students within classes. This concept of connecting different aspects within a database is the main thing in databases. From Almudena [1] databases can help with scheduling and cost. The database can output some x, y, and z for the engineer and estimates to see what the cost of construction might be. This does not apply to all contracts but has its perks when applicable. No one has to go through and count or number since that can get messed up very quickly by human error.  

The next article I read spoke about CAD, Mustapha [2], but I think the industry is going toward Revit. While the points made are insightful and true the CAD application seems dated. My company uses CAD very sparingly but only due to some older projects and code requirements for those projects. Databases understand it is coming up in the world of civil and architectural engineering. This article delved deep in the layers of a database and how things are sorted. Take a cube, for example, it breaks down the cube into faces then into vertices and what faces share what vertices. All that info for a database is needed to be able to duplicate and edit these objects for further manipulation.

I am currently taking a database class, for sure one of my harder classes this term. I do see the importance of the setup and use but creating such a database is a lot of work in just outputting data from tables. Now applying that knowledge to a Revit model and taking a “physical” Revit bookshelf and putting its info into a table seems master level advanced to me. So the use of databases in the office is used all the time, but I don’t think it is known that that is what Revit and other programs are doing to the average office worker.

Comments:
1.      Maalik – I think you make good statements here about the uses of databases in an office. Revit is for sure one that takes advantage of the databases by being able to populate a table with just a button.  

2.      Blas – I am currently taking a class that uses SQL language. Since I have not used a coding language since freshman/sophomore year, it’s a bit of a struggle but coming along. I agree with you that there is a higher need for understanding and using databases and SQL in the workplace. As Revit and other programs use more coding rather manual design, there will be a need for this knowledge.

3.      Julie – I think you had a hard topic to talk about. Relational databases are complex and can have very useful applications. I think this might also be able to be applied to the phasing of a building and help with scheduling, but I may not be understanding the concept as a whole yet. But the good overall breakdown of the topic.

References:
[1] Gomez, Almudena. Revit OmniClass, Keynote and Assembly Code type Parameters. May 19, 2015. https://www.modelical.com/en/revit-omniclass-keynote-and-assembly-code-type-parameters/.


[2] Koriba, Mustapha. Database systems: their application in CAD design. September 1983. Available online March 3, 2003. DOI: 10.1016/0010-4485(83)90016-7 https://www-sciencedirect-com.ezproxy2.library.drexel.edu/science/article/pii/0010448583900167.

The Development of Databases and Their Relevancy


A database at its fundamental level is a collection of datum, or facts and statistics. Without context or accessibility, data has no value to employees or firms. A library is the most traditional form of a database whereby people can go find a relevant book pertaining to a relevant subject. However, using computers, databases have become organized and machine readable. The implications of this are that users can look up terms and use variables to access the most relevant information. [1]

The relational data model was invented in 1970 by C. F. Codd. [2] The invention of this model has enabled researchers to understand the theory of data/relationship/ constraint. It has also allowed for many database design methods and the development of the standard database access language. In addition to these things, all commercial modern database systems are based on the 1970 model.
An example of one of the modern access language models is the eXtensible Markup Language or (XML). It has become the standard form of data exchange over the internet. The implementation of this model has led to another form of data management which is storing the XML documents. Researchers have suggested using relational data systems to satisfy this need. [3]

The use of databases has enabled users to quickly and efficiently find data. This ability allows for average people, professionals, and researchers to streamline the process of finding data and implementing it to create, learn, and teach. The advancement of the database makes humans more productive and creates less chance of misinformation. As the development of new concepts become published, databases become more robust and up to date using machine updating. Meaning that humans do not have to worry themselves with trying to keep up with the everchanging world of research articles and the like.

Sources:
[1] Roman, Steven. Access Database Design & Programming. O'Reilly, 1999.
[2] Darwen, Hugh. An Introduction to Relational Database Theory. Ventus Publishing, 2009.
[3] Tatarinov, Igor, et al. “Storing and Querying Ordered XML Using a Relational Database System.” Proceedings of the 2002 ACM SIGMOD International Conference on Management of Data - SIGMOD '02, 2002, doi:10.1145/564712.564715.

Comments:

Harvin Bhandal: I find the maintenance and updating of databases interesting. SQL seems like a very powerful tool that creates an intuitive way to access data. I’m interested to see how algorithms will change in the future to match our diction to optimize search results from person to person.

Alynne Jeanty: It’s important to eliminate the need to use separate databases to find information that could be kept under one database. The implementation of the relational database theory seems like a very important development to eliminate the need to use multiple databases.

Julie Anderson: Your explanation of how rational databases was very informative. The tables helped get your point across effectively. I’d be interested to hear more about how this applies to Building Information technology. Hopefully in the future, we will have tools that will fill out all of the information automatically!

B5: Uses of databases in construction firms



A database is simply a collection of stored information that can be used by management and applications within a certain enterprise. The construction industry is a prime example of an industry that could benefit from the use of a database. More specifically the construction industry can benefit from relational data model databases. The relational data model is a database that can be organized in a series of relations. On the left-most side, there will be a column of attribute names, with subsequent columns having descriptors of the attributes listed. According to Carnegie Mellon, some data that is important to keep track of in the construction field are: intermediate analysis results during planning and design, design documents, including drawings and specifications, construction schedules and cost estimates, quality control and assurance records, chronological files of project correspondence and memorandum, construction field activity and inspection logs, legal contracts, and regulatory documents. [1]

All this data can be incredibly useful on a construction project, but it is also important that there is a centralized database management system. This ensures that everyone on the project would have access to the data with proper authentication. This reduced redundancy because it eliminates the need for multiple databases for different areas of the project and it also reduces inconstancy because all the data is constant across the board. If one data value is changed then it changes for everyone.

The data here can then be used in certain applications used in construction. These values can be the input to perform tasks such as structural analysis, heat loss computation and material quantity calculations. Having a centralized database also make it easier on the application side of the project. If a project had multiple databases with all different layouts, then each application would have to be configured to work with every database type instead of just one. The additional programming required for that configuration would cost the firm unnecessary time and money.

Comments:
Blas Andres Rodriguez Vieira- I agree that SQL is a skill that many more people are going to need in the future. With the use of databases only increasing over the years, we are going to need more people to know how to manage them.  
Tyler Madden- I never thought about location disparities when I was looking into databases for this assignment. I think that’s a very important reason that databases are so important in the industry. A lot of the time, people that are working on a project may not be on the project site. Having a central internet connected database allows anyone to work on the project from anywhere.
Julie Hansted Anderson- Good job at explaining rational database theory. The visual really helps put into perspective how the items are related to each other.

Citation:

[1] https://www.cmu.edu/cee/projects/PMbook/14_Organization_and_Use_of_Project_Information.html#14.4%20Organizing%20Information%20in%20Databases

B5 - Relational Database Theory


Relational database theory is a new concept that has the ability to revolutionize the computing industry, making computers more powerful, have higher storage, and run faster than currently available models.  This theory uses tables (called relation or base relvar) to store data in rows (called records or tuples) and columns (called attribute or field).  The system works by storing different types of data in different tables, and for each table to have a column for a relationship value to a different table.  For example, if there are two tables, and table 1 identifies each of its rows as “P-1”, “P-2”, P-3”, etc., then table 2 can have a column that has those same identifiers to relate the two tables together.  This way, data can be organized into a single, massive array where everything can be referenced quickly.  This is much faster than the existing systems in solid state drives and hard drives where there are layers to their memories, which have to be sifted through before collecting the requested data.

Relational database theory was developed based off of the relational model of data, which was developed by E. F. Codd in 1970 [1].  Since that time, the related technology has been developed to be able to handle and apply this memory storage and processing system.  Hewlett-Packard spoke in 2014 about developing this technology and integrating it into commercially available computers that “…could offer six times the performance requiring 80 times less power.  [They] expect that the first prototype that HP is working on will have 150 compute nodes with 157 petabytes of addressable memory.” [2]. This was estimated to be complete by approximately 2016.  Compared to commercially available computers today, which typically can only handle 1 terabyte of storage memory, HP’s prototype can handle 157,000 times more data, and should still be able to run faster than current computers.  As stated, this technology has the ability to revolutionize the computing industry, as well as many other industries like construction who are moving towards larger file sizes, more complex softwares, and requiring high processing speeds to handle these new advancements in construction.

Citation:
[1] “Relational Database.” Wikipedia, Wikimedia Foundation, 7 Dec. 2018, en.wikipedia.org/wiki/Relational_database.
[2] Jackson, Joab. “HP's Radical New Machine Could Start Computing by 2016.” PCWorld, PCWorld, 31 Oct. 2014, www.pcworld.com/article/2842252/hps-radical-new-machine-could-start-computing-by-2016.html.

Comment 1 Julie Handsted Anderson:
Julie, you’re explanation of relational database theory is much more condensed than mine, and I think you did a much better job of explaining it haha.  The image that you inserted in your blog post helps to understand the theory significantly, and I appreciate it.  I think the effects that this will have on the computing industry will significantly help the construction industry as computers become more powerful.  15 Years ago, we used floppy disks with about 200 megabytes of memory, and that was all that was needed.  Today, we are looking at files that are 5 gigabytes.  15 Years from now, we will probably be looking at 250 gigabyte files, which is the size of a single hard drive in computers today.  These developments in computing power are important and necessary to continue growing society.

Comment 2 Richard Kimball:
Richard, learning about normalization of tables in the relational database theory was a great learning experience that I did not come across in my research.  Getting that in depth into this research has clearly provided you an extra level of understanding on the subject matter.  If most databases aim to reach 3NF, you mentioned that some databases require a higher level of normalization.  Are there any that require to reach 6NF, as the maximum level?  I would be interested to learn which databases require this, and what their primary uses are.  Also, I am curious about the same topic, but for 1NF.  Why would a database strive for the most basic level, when the norm is 3NF?

Comment 3 Albert Hanan:
Albert, you gave a very nice synopsis of what relational database theory is, and its history.  I was unaware that Amazon Aurora uses this theory, and that there were also added security benefits to using this system as opposed to a NOSQL system.  Being 5 times faster is a huge benefit to a corporation as large as Amazon, as I would believe a processing speed that fast would be a necessity, as opposed to just being something nice to have for them.  I believe that as the world moves more towards larger databases and more storage requirements, this type of technology will become more and more necessary to continue the development of the world at the speed it is currently moving, and for each individual industry, including construction.

B5 - Relational Database Theory



The use of databases is relevant in nearly every industry. The ability to store enormous amounts of data in database is useful in many ways such as being able to find (manually or electronically) any piece of data and its associated properties in an organized manner.

One model used to create databases is the Relational Model. This model was created by E.F. Codd, an IBM programmer, in 1970 [1]. Instead of traditionally organizing data sets in a hierarchical form, Codd proposed using tables instead. The tables consists of both rows and columns. Tables are referred to as relations, whereas rows are known as tuples and columns are attributes. Each tuple represents a different element, or a unique key to represent different instances of data entries. One analogy to describe how a relational database works is to define a relation as a set with two elements; a head and body. The head then contains the different attributes such as {ID, email} and the body shows the tuples such as {1, bob@msn.com} [3].

A relational database is usually maintained by SQL ( Structured Query Language) [2]. To access data, queries use operators such as select, project and join. Select identifies tuples (rows), project is for columns (attributes) and join is a combination of both [2]. Its main advantage over traditional organizing systems is that it reduces redundant data by its ability for users to filter and queue for the exact data they need [1]. Another advantage is that new entries can be put in without having to modify the entire database. The mathematical operators within each attribute help to make the organization more practical and efficient. However, one disadvantage to using a relational database is that it may take time to set up (still faster than manually inputting a large amount of data) and is highly variable in the way its programmed.

A relational database is a great innovation that has been used almost everywhere since its inception in the 1970s. It helps companies store huge amounts of data and retrieve necessary information with the use of queries. Companies, such as Microsoft are actively working on new and improved database organization systems, such as graph databasing to make the process work through “large analytical work loads” [4].

[1] Biscobing, J. (2018, May). relational database. In TechTarget. Retrieved from https://searchdatamanagement.techtarget.com/definition/relational-database

[2 ]Wikipedia contributors. (2018, December 7). Relational database. In Wikipedia, The Free Encyclopedia. Retrieved 15:16, February 12, 2019, from https://en.wikipedia.org/w/index.php?title=Relational_database&oldid=872459713

[3] Relational Database Theory (2014). In O'Reilly Media. Retrieved from http://archive.oreilly.com/oreillyschool/courses/phpsql2/phpsql203.html

[4] Martin, A. J. (2017, February 20). Love lambda, love Microsoft's Graph Engine. But you fly alone. In The Register. Retrieved from https://www.theregister.co.uk/2017/02/20/microsoft_graph_database_the_big_difference/


Comments on Others

Weiyi, I really like that you inputted a picture in your post. Databases are somewhat of an abstract concept - and it can get cumbersome to describe through text alone. Use of images really puts what you are trying to convey in a concise and understandable manner. I originally thought of databases as mainly useful for housing information such that you’d find in a phone book. However, your post shows its capabilities in office buildings, with the capability to estimate energy saving potentials.

Jenny, you did a great job in explaining what an object oriented database is and what its used for. I think the use of object oriented databases could speed up the manner that engineering drawing files are transferred from person to person. From experience, I know that takes a while. Also, with its emphasis on using a visual aid, I think it would be more intuitive to utilize over other types of databases.

Tyler, I can totally see the importance of databases in construction industry. As one of my coops was in a construction consulting firm, there is truly a lot of information that needs to be kept track of. Businesses that have a database system that is carefully curated and maintained tend to be more organized.

Week 6 - Relational Database Theory

The relational model was developed by E.F. Codd around 1968 as a mathematical principle to visualize large data, make it more scalable, enhance its performance, and make it portable. In simple terms, a relational database uses relations between values and symbols to organize data. The theory behind a relational database consists of rules and terminology that dictate how the relational database is represented and interpreted. 

One representation of a relation can be shown as a table independent of the order in which its given (i.e. rows and columns). However not every table displays a relation therefore the terminology used to describe the anatomy of a relation is different than that of a table (i.e. the word table is substituted for relationtuple for row, and attribute for column). A set of attributes is also referred to as the head, and the degree refers to the number of attributes. A set of tuples is also referred to as the bodyand the cardinality refers to the number of tuples. Attributes correspond to names and types, while tuples correspond to the values that are defined by the attributes. 

The relational database theory is different from structured query language (SQL) which is another communicative method for databases that stems from the relational database theory. For example, SQL automatically orders the data whereas for a relational database the order of the data is arbitrary, and SQL allows the data inputted into rows to be duplicated unlike relational databases which cannot have duplicate tuples.

Why do we use the relational database theory? One reason is that it will save time from having to arbitrarily guess which database design to use. The objective of a good database is to reduce the redundancy of data to save storage space and avoid inconsistencies, and to ensure that the data is secure, accurately represented, and maintains its integrity. The emergence of inconsistencies due to abstraction or “accurate data extraction” is avoidable by using the relational database theory, and many of these inconsistencies include deletion errors, incorrect or multiples of results, and comparison of unrelated variables. Relational databases can be customized for particular applications; in smart buildings these applications include energy efficiency measures and building automation systems. These databases are well known and accepted as an industry standard as opposed to NoSQL which tends to pose fewer benefits in most situations.

References:
[1] http://archive.oreilly.com/oreillyschool/courses/phpsql2/phpsql203.html
[2] https://dvikan.no/ntnu-studentserver/kompendier/an-introduction-to-relational-database-theory.pdf
[4] https://www.ntu.edu.sg/home/ehchua/programming/sql/relational_database_design.html

Comments:

Richard Kimball – You mentioned normalization of databases which is not a concept that I came across in my research and will be sure to review. It is important that as the amount of data increases with the emergence of new technologies, that databases are able to be enlarged to accommodate growing needs. With the increase in size of databases it will likely become more difficult to track the accidental changes or potential losses in data. I think security of this information especially when being transferred will bring about new ideas to this field.

YIDI LI – The Database Manager Program sounds like it would be beneficial not only in construction firms presently but for future construction practices under the assumption that artificial intelligence technologies would be programed to assist in construction design. While this could be far beyond the realm of possibility, I think these databases could interact with technologies, even dictate or send data, which would allow for projects to be monitored by machines instead of humans. 


Nick Maloney – I discussed relational databases and the use of SQL lead me to inquire about why SQL and other databases employ different languages. From a proprietary business standpoint it makes sense however I think that the transition between using one database or another could be made easier if the languages were similar. Perhaps the two databases could even work together and do so very efficiently if they were the same language.

Blog 5 - Uses of Databases in Construction Firms - Alkiviadis Tsitsios

There are numerous methods and organizational tactics for the gathering of information in project management and construction. Databases are useful because they provide a computer based system that helps manage information for the users. Warehouses are used by many construction firms to store equipment and provide an inventory of the materials that are used for projects. Written records have always been used, but now databases can be used to store that information forever, while having the ability to share it with other parties. Computer based database systems also have the significant advantage in the ability to rapidly retrieve the information for immediate use while lowering costs. The database requires a great amount of attention to guarantee that the program can accomplish all tasks.

The Database Manager Program is a software that directs the storage, maintenance, manipulation, and retrieval of data. By issuing specific requests to the DBM, users have the ability to retrieve and store data. The DBM helps free the user from the detail of HOW data is stored. A wide range of users with different needs can use the same database by utilizing DBM. For example, the DBM can be used to report on all project tasks which have been scheduled to be underway at a particular date or time. Using a query language, the DBM will be available to the user in this way. A conceptual data model exists which shows the user an abstract representation of the data. The overall configuration of the information is called the conceptual schema. Within a record of a datafile, a piece of data may hold value. In this case, the datafile may consist of a series of records that contain predefined variables. These variables may be text characters or numbers. There is also the relational data model, where the database is organized in relations, or tables of data which are arranged in ways detailed inthe data dictionary. Tables can illustrate “DESCRIPTION”, “ITEM_CODE”, OUTPUT, TIME_UNIT, and other inputs. The data recorded in each row can be obtained during bid preparations, whether taken from past projects, or commercial services. The number of attributes in a relation can be expanded however much desired as well. There are many uses for databases in construction.

Formative vs Summative Assessment - Eberly Center - Carnegie Mellon University, www.cmu.edu/cee/projects/PMbook/14_Organization_and_Use_of_Project_Information.html.


JULIE HANSTED ANDERSEN
Well thought out descripton on rational database theories, which I was uninformed about prior to reading your post. Its use in managing databases. Using links to relate tables between one another is a useful tool that can be used in engineering and construction.

MAALIK KAPTUE
Because I wrote about database management in construction firms, learning about its impact in design offices is helpful. Having the ability to view material schedules, and observe components of architecture is very beneficial in the design of a project.

BLAS ANDRES RODRIGUEZ VIEIRA
Thank you for informing about SQL, as it is the standard language for relational database management. Having a language that can be understood universally is very useful. Because it is the standard language, it can be used to perform tasks and update data.








BP#5 - SQL


Data is information about anything that could be related to an object. For e.g. it could be your height, name, weight, gender etc. A picture or a pdf file could also be considered data. A database is systematic collection of data. An online phone directory keeps systematic data about phone numbers, names and other contact information. A database could also contain data about properties of different window types or structural beams. Databases supports manipulation and storage of data and it makes management of data easy.
Programs that allows users to access database, manipulate data and report data are called Database Management System (DBMS). There are four major types of DBMS, where Rational DBMS is one of them. A rational DBMS is the most popular. It defines the relationships in database in form of tables (relations). This kind of DBMS does not support many relationships. An example of a relational DBMS is Microsoft SQL Server database (Structured Query language). When using SQL programming, database records can easily be deleted, updates, inserted or searched. SQL is in other words used to communicate with databases. 
Some of the most common relational database management systems that uses SQL are:
  • Access
  • Microsoft SQL Server
  • Oracle
  • Sybase
  • Ingres 
Some advantages for SQL are:
  • No coding is required in SQL. When using standard SQL it is easy to manage database systems. No extra coding is needed.
  • SQL is portable. The data from SQL is supported by PCs, laptops, tablets and servers, which means, that the database can easily be moved from one device to another by using SQL.
  • SQL databases uses a well defined standard, which is used by ANSI and ISO.
  • SQL makes it possible to have multiple data views of the structure for different users.

Sources:



Comments on others:
Julie Hansted Andersen: I like your description of how a relational database is put together. It gives a nice overview and the picture is a good illustration.

M Kaptue: I like how you link the databases to Revit, since this is the program we have just been working with!

YIDI LI: For construction firms it is very important to keep track of many projects at the same time and planning and the right information is key to not get delayed and loose money. I like how you incorporate the DBM in the use in construction firms. 

Blog post 5: Rational databases theory


Rational databases are relationships between data which is represented in tables. It is a way to structure and organize data. This theory was developed by E.F Codd in 1970 and have been used since then to manage databases.  A table characterizes one entity type where the rows represent each types and the columns represent the value for the type. The row has its own unique key which is called a primary key. By linking the key with other keys from other tables it is possible for the data to be related with other types. This creates a relationship between other tables and creates specific data. It could be a useful information in a building project where you would like to get information about e.g. the different door which are used in different rooms. A table would then describe the doors with an ID number, name of the door, and material. An other table would describe the rooms in the building also with an ID number, name of the room and size of the room.  Each table could have information about all the doors in the project where many of them has the same name and material but the ID is the unique key. The same is for the rooms where the ID for the room is the unique key. A new table with only the ID numbers of the doors and the rooms can then show the connection between the doors and the rooms. It can then tell how many of a specific door is in a specific room.


https://www.youtube.com/watch?v=NvrpuBAMddw
https://aws.amazon.com/relational-database/
https://en.wikipedia.org/wiki/Relational_database

Blas Andres Rodriguez Vieira: Your post made it easy for my to understand what SLQ is and why it is important. It is interesting how you in the end of your post describes how important it is for almost all business to be able to understand the language of the databases because almost very thing becomes digital and we therefore store more and more data.

Tyler Madden: Interesting how the databases can be used in the construction business to improve effectivity and thereby save more. In the company where I work we sometime makes databases of tables when we are doing inspections of a lot of buildings where we have a specific ID for each building and then we can put in data for the roof, walls, foundation etc. It is a very easy way to get collect all the information we have for each building. And a easy way to get the information further to the owner of the building to tell them how the conditions is of all the e.gs roofs at all the buildings.

Weiyi Tang: Well described how the data in the design phase. It made think of how the simulation programs for energy and indoor climate actually works with the different input data we use.