Relational Data Model
In this model, data is organised in two-dimensional tables and the relationship is maintained by storing a common field.
This model was introduced by E.F Codd in 1970, and since then it has been the most widely used database model, infact, we can say the only database model used around the world.
The basic structure of data in the relational model is tables. All the information related to a particular type is stored in rows of that table.
Hence, tables are also known as relations in relational model.
In the coming tutorials we will learn how to design tables, normalize them to reduce data redundancy and how to use Structured Query language to access data from tables.
Semantic Data Model
The semantic data model is a method of structuring data in order to represent it in a specific logical way. It is a conceptual data model that includes semantic information that adds a basic meaning to the data and the relationships that lie between them. This approach to data modeling and data organization allows for the easy development of application programs and also for the easy maintenance of data consistency when data is updated.
The semantic data model is a relatively new approach that is based on semantic principles that result in a data set with inherently specified data structures. Usually, singular data or a word does not convey any meaning to humans, but paired with a context this word inherits more meaning.
In a database environment, the context of data is often defined mainly by its structure, such as its properties and relationships with other objects. So, in a relational approach, the vertical structure of the data is defined by explicit referential constraints, but in semantic modeling this structure is defined in an inherent way, which is to say that a property of the data itself may coincide with a reference to another object.
A semantic data model may be illustrated graphically through an abstraction hierarchy diagram, which shows data types as boxes and their relationships as lines. This is done hierarchically so that types that reference other types are always listed above the types that they are referencing, which makes it easier to read and understand.
Abstractions used in a semantic data model:
- Classification – “instance_of” relations
- Aggregation – “has_a” relations
- Generalization – “is_a” relations