Sunday, July 6, 2008

Personal View #5

A.Contrast the different database models:

Hierarchical Model
-the hierarchical data model organizes data in a tree structure. There is a hierarchy of parent and child data segments. This structure implies that a record can have repeating information, generally in the child data segments. It collects all the instances of a specific record together as a record type. To create links between these record types, the hierarchical model uses Parent Child Relationships while;
Network Model
-coincided with the popularity of the hierarchical data model. That's why some data were more naturally modeled with more than one parent per child. So, the network model permitted the modeling of many-to-many relationships in data,on the other hand;
Relational Model(RDBMS - relational database management system)
-is a database based on the relational model developed by E.F. Codd. A relational database allows the definition of data structures, storage and retrieval operations and integrity constraints. In a database, the data and relations between them are organised in tables. A table is a collection of records and each record in a table contains the same fields meanwhile;
Object/Relational ModelObject/relational database management systems (ORDBMSs)
-adds new object storage capabilities to the relational systems at the core of modern information systems. These new facilities integrate management of traditional fielded data, complex objects such as time-series and geospatial data and diverse binary media such as audio, video, images, and applets. By encapsulating the methods with data structures, an ORDBMS server can execute complex analytical and data manipulation operations to search and transform multimedia and other complex objects while;
Object-Oriented Model
- which is having Object DBMSs, adds database functionality to object programming languages. Object DBMSs extend the semantics of the C++, Smalltalk and Java object programming languages to provide full-featured database programming capability, while retaining native language compatibility. One of the major benefit of this approach is, the unification of the application and database development into a seamless data model and language environment. As a result, applications require less code, use more natural data modeling, and code bases are easier to maintain on the other hand;
Semistructured Model
- is normally associated with a schema which is contained within the data,and sometimes called "self-describing''. In such database there is no clear separation between the data and the schema, and the degree to which it is structured depends on the application meanwhile;
Associative Model
-divides the real-world things about which data is to be recorded into two sorts, first is:
1.Entities are things that have discrete, independent existence. An entity’s existence does not depend on any other thing,second is:
2.Associations are things whose existence depends on one or more other things, such that if any of those things ceases to exist, then the thing itself ceases to exist or becomes meaningless while;
Entity-Attribute-Value (EAV) data model
- is the best way to understand the rationale of EAV design of which EAV is a generalized form. Let us consider a supermarket database that must manage thousands of products and brands,one stores product descriptions in a Products table:which contains purchases/sales of individual items that are recorded in other tables as separate rows with a product ID referencing the table.An EAV design involves a single table with three columns,which includes an entity (such as an olfactory receptor ID), an attribute (such as species, which is actually a pointer into the metadata table) and a value for the attribute lastly;
Context Model
-combines features of all the above models. It can be considered as a collection of object-oriented, network and semistructured models or as some kind of object database. In other words this is a flexible model, we can use any type of database structure depending on task.

B.Discuss the management activities DBMS perform upon data:

One of the management activities DBMS perform upon data is a modeling language.This is to define the schema of each database hosted in the DBMS.The most common types of organizations are the hierarchical,network,relational and object models.The optimal structure depends on the natural organization of the application's data, and on the application's requirements which include transaction rate (speed), reliability, maintainability, scalability, and cost.Another is the data structures that includes fields,records,files and objects.Which is optimized to deal with very large amounts of data that is stored on a permanent data storage device which implies relatively slow access compared to volatile main memory.Another one is the database query language and report writer to allow users to interactively interrogate the database, analyze its data and update it according to the user's privileges on data.It also controls the security of the database.Lastly is the transaction mechanism,in order to ensure data integrity,despite the concurrent user accesses and faults.It also maintains the integrity of the data in the database.


No comments: