Tuesday, February 14, 2017

B5 - Group E - Yuxiao Zhou

Nowadays, database is part of our life in anywhere. Database is a structure set of data to be stored in computer. In construction work, database can be access by architects, engineers, contractors and project managers. Database is using for cost estimating and project scheduling. People can save and load information through database easily and working with others.    
For example, architects can access to database to check previous design, engineers can check the subsurface exploration information or design conditions. Contractors can analysis the construction material’s price and compare the product list. For construction industry, cost estimating is very important. We need to reduce the cost and also meet the design standard. Database is very useful when contractor working with cost estimating. For the past time, contractor need to check every product list and compare all products one by one. But if we have a public database, contractor can compare all products by simple clicking. Product cost, product size, product property, installing period and manufacture information in single page together. The more important thing is, database will keep all the product information to the newest version which is good benefit for both contractor and manufacturer. It will save a lot of time by using database to do the cost estimating.
For project scheduling part, every team members can save their work to a team database which can let every team member to check others’ work progress. By checking those information, the schedule can be make easily and accurately.

Database is a great tool for construction industry. Before database came out, all the information work must be done by human, which will take a lot of time and money. Database can use computer’s computing power and finish the work simply, accurately and efficiency. For construction industry, database is really a part of our industry. 

Comment
Ronald Park(https://ae-410-510-ay16-17.blogspot.com/2017/02/ronald-park-group-d-b5-uses-of.html)
I totally agree with your opinion, database can share to anyone in the firm easily and keep it in a security condition.

Ng Andrew(https://ae-410-510-ay16-17.blogspot.com/2017/02/ng-andrew-assignment-b5-sql-group-b.html)
SQL is a very important computer language. It can save time by using standard command and script. It is a very efficiency language, the script is gathering information and computing to the results.

Kerianne Vogler(https://ae-410-510-ay16-17.blogspot.com/2017/02/uses-of-databases-in-construction-firms.html)
I have the same opinion with you. Database in construction industry can be used for cost estimating and project scheduling. Manufacturer can update the product information and contractor can access it very easily, it also can make team member share their work through database.   

B5 - Abdullatif Alkandari - GroupC

ODBMS


Object-Oriented Database Management Systems (or ODBMS) supports the modeling and creation of data as objects and has the characteristics of polymorphism, inheritance and encapsulation to enable the storage of complex data. It is widely used to facilitate access and retrieval relevant to the archives of a corporation, and having such database systems enables users to modify and create objects faster and more conveniently than other systems.

Other types of databases like the Relational Database Management Systems, are used to support and maintain simple forms of data such as employee name, date of birth and other pieces of information that combine to create a profile. ODBMS on the other hand, are designed to handle more complex forms of data as they have the capacity to store media such as audio, video, CAD modules and Geographical Information Systems. This is because ODBMS combines object-oriented technology to provide integrated development systems.

            Due to these capabilities, ODBMS allow access to information at the object level in a sense that the required data is already configured and assembled ready to be used once it’s summoned. This gives it a huge advantage when compared with RDBS that tends to deal with data that is broken down into individual chunks which are much more useful once compiled together. Another benefit of having an ODBMS is that it takes advantage of the processing level of the client’s servers rather than depending on the typical network that can be significantly less effective.

            OODBMS have their own disadvantages due to the lack of awareness and experience for the typical user. The comprehension of the concept behind OODBMS is crucial to understanding how to work with such databases because they have specific characteristics that enables them to carry out complex tasks and dealing with huge chunks of data. And perhaps it will become more common knowledge as it continues to be more relevant overtime and more jobs will require experience with them.



Resources:

"What Is Object-oriented Database Management System (OODBMS or ODBMS)? Object-oriented Database Management System (OODBMS or ODBMS). SearchOracle, N.d. Web. 12 Feb. 2017.


"Why Aren't OODBMS as Widespread as RDBMS?" Database - Why Aren't OODBMS as Widespread as RDBMS? - Stack Overflow. N.d. Web. 14 Feb. 2017.
<http://stackoverflow.com/questions/1350044/why-arent-oodbms-as-widespread-as-rdbms>


Comments:

Karianne Vogler: Your post on the use of databases in construction for cost estimates of materials and resources made me realize how important they can be to contractors and construction managers. It can make their job easier as they prepare to bid for a project or in adjusting the project budget if necessary in a convenient and time efficient matter. And the advantage that this type of database has as opposed to other databases is the fact that it is easier to understand and work with.

Ray Powell: I found your post about databases in design offices very informative and provided a clear understanding of how these systems work. The fact that it enables the designers to access the module which they wish to modify and add to the project makes both their and the architect’s job easier. It furthermore makes the components of the design more homogeneous since the entire team is working on the same database with their ability to adjust its details similar to the case with the Revit family feature.

Nick Pawlikowski: I enjoyed your Structured Query Language explanation because it was easy o grasp and it clearly shows the purpose behind it when IBM first developed it. Having a database that behaves as a mediator between the user and the information they’re trying to obtain is a brilliant idea that makes information gathering more convenient. Given the embedded codes, predictions and expressions in a SQL, more people can learn to deal with more complex databases like the Relational Database Management Systems due to SQL acting as a facilitator.



B5 Post - SQL - Chris Sager

Before attempting to understand what SQL is and the data behind it, its important to understand what exactly is “Data”. Simply put, data can be described as facts related to any object in consideration. For example, data specific to myself would consist of my name, age, height, weight, and more. This is not to say data has to be textual either. Other forms of data can be images, files, PDF’s, audio clips, and more. Now that we are aware of what data examples are, its important to understand what databases are as well. When collecting data without a database to store it inside of, its too random to understand. A database is simply a systematic collection of data. Its organization makes data management easy. 

Digging deeper into databases and the use of relational databases specifically [2], lets consider Blogger. A service like this needs to store manipulate, and present data related to its members, their peers, member activities, messages, advertisements, and much more. Countless other examples of those relational database management (RDBMS) include phone companies, electric companies, universities, etc. So what exactly is relational about this? The answer is arraignment. Rather than taking customer information and throwing it into a file one after the other you are arranging it into data columns. The relational database model takes advantage of this to build completely new tables out of information from existing tables. In short, it uses the relationship of similar data to increase the speed and versatility of the database. The ‘relational” part of the name comes into play actually  due to mathematical relations. Some examples of relational database software include MYSQL, Oracle, MS SQL Server, SYbase, and plenty more.

Based on information gathered from W3Schools website [1], SQL is short for, Structured Query Language and typically pronounced as “See-Quel”. It is the standard language for dealing with these relational databases. SQL language can effectively be used to insert, search, update, and delete database records. Actually though, SQL goes beyond previously listed capabilities. It can also help in the optimizing and maintenance of databases plus more. To perform these commands within a database, syntaxes are put into  use. Most software adhere to the same syntax making SQL so popular, but not everything is the same. A good example of a SQL syntax in use can be seen below. The first query is selecting all the data from a table called “table”. A logic statement is then being queried using a where clause. Generally, the where clause is used to filter records and extract only those records that fulfill a specific criterion. In this cases its where a=a. Finally in the last syntax, you are presented with. a multi statement. this means your asking not one but two things about a set of data. So not only are we being asked to select the table “table”. but we are then asked to drop “table” in the same command. 



This just goes to show you the capabilities of SQL and RDMS. You can imagine when working with vast amounts of information, how easy it is to get lost in it. With these methods of organization and the ability to perform syntax commands on it, individually are easily able to acquire and present filtered information based on end goals.



Sources

[1] “Introduction to SQL." SQL Introduction. N.p., n.d. Web. 12 Feb. 2017. <http://www.w3schools.com/sql/sql_intro.asp>.


[2] “What is RDMS" Database DLR. N.p., n.d. Web. 12 Feb. 2017. <http://www.databasedir.com/what-is-rdbms/>

Peer Responses

I enjoyed reading Taryn Francischetti’s Week 5 Blog Post (here) on the topic of relational databases. It’s such an important topic to understand, especially when I discussed the topic of SQL and how it works. In todays day and age with the vast amount of information floating around, its imperative to understand how certain pieces of information can intertwine. The problems that Taryn discusses can arise with these sorts of databases is interesting. It goes to show you how important it is to have a humans mind behind the information present and their perspective to solve issues like these.

Joe Dressel wrote a nice piece this week about Object Oriented Databases (here). The comparison between relational and object oriented databases which I did not understand is the fact relational databases are comprised of so many tables with information which scattered the information. Object oriented methods try and keep most of the information you require in a single database.


Of course all of this talk regarding databases is important in the construction industry. So much information is shared between individuals in this field to complete projects. David Sanchez makes a good point in discussing this idea (here). Even in coop a lot of the data worked with was primarily in creating proposals and takeoffs in the estimating process. Receiving data from other contractors and translating it to tables so others in the workplace could always refer to it had to be made so simple and easy to get to.

Blog Post 5 - Relational Database Theory

A relational database is a database model that stores data in tables. The rows in a relational database table are the records, and the columns are the fields, which together form the relation [1]. The table can be viewed as a matrix in which all records share the same fields [1]. Structured Query Language (SQL) is the "standard way to access data from a relational database" [1]. Relational databases are easy to create, access, and add on to; making them very useful in the engineering world [2]. 

Databases can be in three different relationship types: one to one, one to many, many to many. If we think of this like through family dynamics it becomes easier to understand. A one to one relationship is like you and your spouse; you are only paired with each other. A one to many relationship is like you and your children; they only have one mother, but you have many children. A many to many relationship is like you and your siblings; you have many siblings and your siblings have many siblings [4].


Figure one below shows an example of where and how a relational database can be used. The relational data base is used to store employe information. The employee number, name, and department for each employee are the records. The employee number, name, and department attributes are the fields. If you had a few thousand employees, having their employee number could help you find all other attributes about him or her.
Figure 1
Relational databases are more advantageous because of the following [3]:
  • Avoids data duplication
  • Avoids inconsistent records
  • Easier to change data
  • Easier to change data format
  • Data can be added and removed easily
  • Easier to maintain security
Relational databases have two main issues [5]:
  • Incomplete information
  • Updates loosing information
Works Cited:
  1. "Relational Database." Relational Database Definition. Sharpened Productions, 2017. Web. 14 Feb. 2017. <https://techterms.com/definition/relational_database>.
  2. Rouse, Margaret. "What Is Relational Database?" SearchSQLServer. TechTarget, Apr. 2006. Web. 14 Feb. 2017. <http://searchsqlserver.techtarget.com/definition/relational-database>.
  3. "Relational Database Advantage." Teach-ICT. Teach-ICT, 2017. Web. 14 Feb. 2017. <http://www.teach-ict.com/as_as_computing/ocr/H447/F453/3_3_9/database_design/miniweb/pg8.htm>.
  4. Harkins, Susan. "Relational Databases: Defining Relationships between Database Tables." Tech Republic. Tech Republic, 30 Apr. 2003. Web. 14 Feb. 2017. <http://www.techrepublic.com/article/relational-databases-defining-relationships-between-database-tables/>.
  5. Wambler, Scott. "Relational Databases 101: Looking at the Whole Picture." Relational Databases 101: Looking at the Whole Picture. Agile Data, 2013. Web. 14 Feb. 2017. <http://www.agiledata.org/essays/relationalDatabases.html>.
Responses:
  1. Prahlad Singh - I really enjoyed reading your post because you gave so many examples of reasons to have databases in our industry. I agree with you that databases cut down on cost and improve efficiency in our field. I like that you incorporated the positives to the construction management field as well. https://ae-410-510-ay16-17.blogspot.com/2017/02/b5-singh-prahlad.html
  2. Ronald Herazo - After completing my post, I was very curious about SQL. Your break down of the four different languages was very helpful. I also really enjoyed your images, they helped in understanding the process. https://ae-410-510-ay16-17.blogspot.com/2017/02/assignment-b5-group-ronald-herazo.html
  3. Elga Qori - Your post really helped me understand SQL and its importance. The use of SQL is very important in order for the user to adjust the data and learn from it. The image you provided of the operators table really helped me understand the many different ways SQL can adjust the data. https://ae-410-510-ay16-17.blogspot.com/2017/02/b5-sql-egla-qori.html

B5 - Taryn Francischetti - Relational Database Theory

Before looking at what exactly relational database theory is, it is important to understand some history and even what a database is. According to Hugh Darwen, "a database is an organize, machine-readable collection of symbols to be interpreted as a true account of some enterprise... A database is typically available to a community of users, with possibly varying requirements" [1]. Databases really started when the need to "efficiently manipulate large amounts of structured information" came into place [2]. Databases allow many users to access many files at one time. They help to keep all data from any type of program organized.

Relational databases allow files to be related by a common field. A diagram of a relation is shown below [1]:
 
This diagram shows that relations, or the tables, can be broken up into n-tuples, or rows, and attributes, or columns. Relations can be modeled using one-to-one relationships, one-to-many relationships, or many-to-many relationships. One-to-One relationships occur only if every row in the first table has at most one row in the second table. One-to-many relationships occur when every row in the first table has zero, one, or many rows in the second table, but for every row in the second table there is only one row in the first table. Many-to-many relationships occur when every row in the first table can have many rows in the second and for every row in the first table there can be many rows in the first table [3]. These examples can be seen below.


Relationships [3]
Top left: one-to-one, Top right: one-to-many, Bottom: many-to-many

These relations are then modeled by a DBSM or database management system. The commands that are written to manage DBSMs are SQL. DBSMs can create and destroy variables in the database, take note of integrity rules and authorizations, update variables, and provide results of queries [1].

As organized and helpful as relational databases are in data management, there are a few issues. The first problem is that of incomplete information. This problem arrises when there is an assumption that the model is a completely determined finite structure. Algebraic mechanisms can be used in order to model uncertainty in order to attempt to correct for null values. As many equations as have been proposed, there is still not a perfect fix. The further away from the model, the fewer analytical and algebraic tools are available to solve the problem. The second problem is that of database updates. This is a very complicated issue that has to deal with the languages of databases. A database update is either completed manually or automatically and the database could experience a view update problem where incomplete information is included in the update [2]. Although there are problems the relational database model is still extremely strong in how databases are ordered and how their information is accessed.

[1] https://dvikan.no/ntnu-studentserver/kompendier/an-introduction-to-relational-database-theory.pdf
[2] ftp://ftp.cs.brown.edu/pub/techreports/89/cs89-39.pdf
[3] https://theplatypusdatabase.files.wordpress.com/2013/04/fundamentalsofdbdesign.pdf

Comments
Brennan Connolly - Object Oriented Databases seem much simpler than those that use SQL to access data. For me, it seems that finding objects is much simpler than trying to sort through words to find information. However, both types of databases have their niches. The metaphor that was used from the youtube video really provided a great example for the differences between the databases.
URL: https://ae-410-510-ay16-17.blogspot.com/2017/02/b5-object-oriented-databases-brennan.html

Paulina Gawor - This post greatly expanded upon how information is accessed in what I wrote about, relational databases. Once the code is explained a bit more, SQL is a fairly straightforward way to access relational databases. The nice thing about it is that SQL is a standard and so it can easily be transferred to more than one database.
URL: https://ae-410-510-ay16-17.blogspot.com/2017/02/b5-sql-paulina-gawor.html

Ronald Park - Databases are a very important part of design firms and really all business firms. They are great for any structural firm where anyone would need to access templates at any point in time. Each company has a standard template for different documents and its so much easier when the standards are already stored in a database. I never really thought about databases providing security to the firms files but security in documents is one of the most important things, especially when there is so much information that could be accessed.
URL: https://ae-410-510-ay16-17.blogspot.com/2017/02/ronald-park-group-d-b5-uses-of.html

B5 - Object Oriented Databases

Object Oriented Databases

Object oriented databases is a database where information is represented as objects. Now, for someone with little to no experience with databases like me, this makes almost no sense. To try and get a better understanding of object oriented databases, one must understand relational databases. A relational database can be thought of multiple tables of data that are linked together to produce comprehensive sets of data. 

Object oriented databases were developed in the 1980s because it was thought that relational databases were not the best solution in some instances. For example, if there is an object in a relational database, the information about this object must be scattered over several tables which can be convoluted. An object oriented database can have information about very complex objects in a single table because the information can be nested within. You can think of this as folders within folders. This has advantages over relational databases in that it is better at modelling complex objects and can have better performance. 

Object oriented databases are of particular usefulness for the construction industry. Complex objects can have all of their information stored in one database and is easier to manage. For instance, you could have a database of windows. Then within that have different types, and then within each type you could have the size. Within each size you could have the manufacturers who make that window, and then within that you could have all of the data about that exact window, such as price, R-value, etc. This is much easier than having all of this information scattered in different areas. 


Sources





Comments

David Sanchez: I could definitely see how databases could be used to more accurately and more quickly be used to estimate costs in the construction industry. Also, as you pointed out, another advantage is that if there is an error, the correction that is applied will update things across the board. 

Brennan Connolly: I really liked your explanation of the difference between relational and object oriented databases, it definitely makes it easier to understand the difference. You airplane analogy also makes it easy to understand what an object oriented database is. 

Paulina Gawor: I am very new to databases and your explanation of SQL certainly helped me understand what it is a little better. You pointed out that SQL can be used to obtain information from a relational database, but that has me wondering what can be used to obtain information from an object oriented database. I will have to look into that. 

Alsaleem B5 – Object oriented databases

Object oriented databases are also known as Object Database Management Systems (ODBMS). Object databases store objects rather than data such as integers, strings or real numbers. Objects consist of Attributes or Methods.

Attributes are data which defines the characteristics of an object. This data may be as simple as integers, strings, and real numbers or it may be a reference to a more complex object. However, Methods are the behavior of an object and are what was formally called procedures or functions.
Therefore, it can be stated that object oriented databases contain both executable code and data. There are other characteristics of objects such as whether methods or data can be accessed from outside the object.

One other term used is Classes. Classes are used in object oriented programming to define the data and methods the object will contain. The class is like a template to the object. The class does not contain data or methods within itself but defines the data and methods that are contained in the object. Classes are used to represent a certain thing within the object. Classes may be used in object databases to recreate parts of the object that may not actually be stored in the database. Methods may not be stored in the database and may be recreated by using a class.

Object databases should be used when there is complex data or complex data relationships. This includes a many to many object relationships. Object databases should not be used when data is simple and relationships are simple.

Object oriented databases work well with:
  • CAS Applications (CASE-computer aided software engineering, CAD-computer aided design, CAM-computer aided manufacture)
  • Multimedia Applications
  • Object projects that change over time.
  • Trading and Commencing
Object oriented Database Advantages over RDL
  • Objects don't require assembly and disassembly saving coding time and execution time to assemble or disassemble objects.
  • Reduced paging
  • Easier navigation
  • Better concurrency control - A hierarchy of objects may be locked.
  • Data model is based on the real world.
  • Works well for distributed architectures.
  • Less code required when applications are object oriented.
Object oriented Database Disadvantages compared to RDL
  • Lower efficiency when data is simple and relationships are simple.
  • Relational tables are simpler.
  • Late binding may slow access speed.
  • More user tools exist for RDL.
  • Standards for RDL are more stable.
  • Support for RDBMS is more certain and change is less likely to be required.

Sources:
http://searchoracle.techtarget.com/definition/object-oriented-database-management-system

http://www.comptechdoc.org/independent/database/basicdb/dataobject.html


Responding to peers
Egla Qori – Your explanation for the SQL language was very clear and helpful. The operations are mostly very common, I am not very sure but I believe I have used a SQL language for a previous class therefore I agree how important it is learning SQL to enable a user to interpret data.

Ronald Herazo -  You did a great job explaining what a relational database is and introducing the background knowledge needed to understand it helped a lot. My only point that I wish you explained better was the comparison at the end, I believe if you stated some examples it would have been clearer and more interesting.


Prahlad – I enjoyed your blog about databases. Introducing the concept then giving examples, furthermore introducing where and how it is used in firms and hot people work with databases really gives the reader a great idea. Very clear post, great examples and very straight forward.