Entity-Relationship Model/3 — Transcript
Full transcript
- 0:00[Music]
- 0:16welcome to
- 0:17module 15
- 0:18of database management systems
- 0:22we have been discussing about entity
- 0:24relationship model
- 0:27and this is the third
- 0:29and the closing module on this topic
- 0:36so in the last module we have discussed
- 0:38about er diagram and we have also seen
- 0:41how er model can be converted
- 0:44to a relational schema
- 0:48in this module we will try to
- 0:51go through
- 0:53a few extended features of er model try
- 0:57to show some of the
- 1:00more complicated situations how they can
- 1:02be modeled in the er model and along
- 1:05with that
- 1:07we will discuss a variety of design
- 1:10issues
- 1:11that will follow
- 1:13so these are the
- 1:14outline
- 1:17so we start with extended
- 1:20entity relationship features
- 1:23the first that we note is so far
- 1:26in the
- 1:27entity relationship model
- 1:30we have talked about relationships
- 1:32between two entity sets
- 1:36so we have talked about the student
- 1:38attending courses or instructors
- 1:40advising students and so on
- 1:43so such relationships are naturally
- 1:45called binary
- 1:47but it is possible that
- 1:50more than two entity sets let us say
- 1:52three entity sets could be involved in
- 1:56the same relation and we show an example
- 1:58here
- 2:00where
- 2:00we have three entity sets instructor
- 2:04student
- 2:05and project
- 2:07so the project entity set
- 2:09is a list of projects
- 2:11being done by the students or to be done
- 2:14by the students
- 2:16so the relationship project guide
- 2:20is a relationship between
- 2:23the guide who is an instructor
- 2:25the student
- 2:26who will do the project and
- 2:29the project that has to be performed so
- 2:32all three together define this
- 2:34relationship
- 2:37so
- 2:38in
- 2:39such cases
- 2:41it is
- 2:42possible
- 2:43in er model that we can represent it
- 2:46conveniently
- 2:47as a
- 2:48non-binary relationship
- 2:52now
- 2:54this is in ear diagram this is called a
- 2:56ternary relationship
- 3:00now
- 3:01we have talked about
- 3:02cardinality constraints on binary
- 3:06relationship one to one many to one
- 3:08one to many
- 3:10and many too many
- 3:11and
- 3:13we specified that
- 3:15if we have a binary relationship say
- 3:18this is one entity set and this is
- 3:20another entity set and we have a
- 3:22relationship so if we just
- 3:25connect them it means a many to many
- 3:27relation
- 3:28but if we have an arrow on
- 3:31one side
- 3:33entity set then it means on the arrow
- 3:35side is one
- 3:37so
- 3:38this is ah from
- 3:40entity set e one to e two this is one
- 3:44too many we could have arrow at both
- 3:46ends and that means one to one
- 3:49now the question is ah how will that ah
- 3:52work out what will be the meaning of
- 3:54arrow in terms of a
- 3:56ternary relationship
- 3:58now in the case of ternary relationship
- 4:02or this would generalize to
- 4:04relationships of higher degree whether
- 4:06where more than three entity sets may be
- 4:08involved
- 4:10we put a restriction that we will allow
- 4:13at most one
- 4:14arrow out
- 4:17of the ternary relationship
- 4:19so we could
- 4:20have only if we if we look at
- 4:24if we look at
- 4:26say this relationship
- 4:28then we could have an arrow only at this
- 4:31end
- 4:33but multiple arrows are not allowed and
- 4:36the reason is certainly to keep the
- 4:39semantics of the
- 4:42cardinality meaningful for example ah
- 4:46if we have
- 4:47a ternary relationship between a b and c
- 4:51lets say this is a a
- 4:54this is a b
- 4:56and this is c
- 4:58and we have a ternary relationship
- 5:00between
- 5:01them
- 5:02and let us say
- 5:04if we have
- 5:06a
- 5:08more than one arrow
- 5:10the for example ah suppose
- 5:13then
- 5:16we have say an arrow to b and an arrow
- 5:18to c the question is how should we
- 5:20interpret that should we interpret that
- 5:24an entity of entities at a
- 5:27is associated with
- 5:29unique entity from b
- 5:32and c
- 5:33together or
- 5:35should we associate should we interpret
- 5:38that the entities
- 5:41formed by the pair a b
- 5:44and
- 5:45the entity formed by the pair ac are
- 5:48uniquely related
- 5:50so there is multiplicity of
- 5:52interpretation if we allow more than one
- 5:55arrow in case of a ternary or higher
- 5:58degree relationship
- 5:59so what will follow for simplicity
- 6:02in this course and that is what is
- 6:04followed often in practice is in case of
- 6:07a ternary or higher order relationship
- 6:10only one arrow will be allowed in that
- 6:13in a
- 6:14in that relationship
- 6:18now let us talk about ah specialization
- 6:23ah those of you who have some background
- 6:26of object oriented systems would be
- 6:29familiar with
- 6:31the notion of specialization and
- 6:33generalization
- 6:35ah in object oriented systems we say
- 6:37that if we have a certain concept say we
- 6:40have a concept called person
- 6:42and then we say that
- 6:46a student is a person
- 6:48what you mean is a student is a
- 6:50specialization of person and person is a
- 6:52generalization of student and in that
- 6:54process student inherits
- 6:56all the attributes of person
- 6:59but
- 7:00in addition the student may have some
- 7:02specialized attributes
- 7:04so what it means that if you look
- 7:07from
- 7:08ah
- 7:09from the
- 7:11perspective of
- 7:13such
- 7:15specialization
- 7:17say if i draw like this this is an
- 7:20entity set a
- 7:21and this entity set b
- 7:23and
- 7:24to mark the specialization we show
- 7:28an arrow head with a blank triangle at
- 7:31that end
- 7:33so
- 7:34if we by this what we mean is b
- 7:37is a a
- 7:39so
- 7:41b inherits all the properties of a but
- 7:44can have some more properties
- 7:46so if you look at all the entities that
- 7:49a may have
- 7:51you will find that a sub group of the
- 7:53entities in the entity set a
- 7:56have some additional common properties
- 7:59so if a is set of persons
- 8:02and b is a set of students
- 8:04then a may have
- 8:06entities who which represent
- 8:09people who are not students who are
- 8:11employees
- 8:12who could be retired and so on
- 8:14but there will be a number of entities
- 8:16who have the commonality of being
- 8:18student they are
- 8:20enrolled in certain course of certain
- 8:22university and so on so
- 8:25in terms of the er diagram er model what
- 8:28we do is we try to look at
- 8:31the entity a and
- 8:34move top down
- 8:36so that whenever we find a group of
- 8:38entities which have certain commonality
- 8:41we move them into a
- 8:43lower separate specialized
- 8:46entity set and relate these two entity
- 8:49sets to the specialization relation
- 8:52so this sub groups form lower level
- 8:55entity sets
- 8:56and
- 8:58as i said that it is designated in a
- 9:01certain way
- 9:02and
- 9:03as in the object oriented system the
- 9:06lower level entity set inherits all the
- 9:09attributes
- 9:10and relationships of participation of
- 9:12the higher level entity side so here is
- 9:15an example you can see the person at the
- 9:18so called root of this hierarchy of
- 9:20specialization
- 9:22it has a set of properties id name
- 9:24street city and employee is another
- 9:27relationship another entity set which is
- 9:30a specialization of person relation
- 9:33person entity set so employee inherits
- 9:37all attributes id name street and city
- 9:40but in addition the commonality of the
- 9:43entities in the employee entity set is a
- 9:45fact that all of them have a salary
- 9:48attribute
- 9:49a similar entity set student is a
- 9:51specialization of person where
- 9:54the again all attributes are inherited
- 9:57but there is a common attribute called
- 10:00total credits
- 10:01which is common for all the students but
- 10:04is not available or common for the
- 10:07persons in general
- 10:08and as you can see that it could be
- 10:10hierarchical it could go further down
- 10:12employee could be specialized into
- 10:14instructor and secretary again by the
- 10:19rule of specialization instructor will
- 10:22inherit all attributes of employee which
- 10:24means that it will inherit attributes of
- 10:27person which employee has inherited
- 10:30plus the employee specific attribute
- 10:33salary so it will inherit all five of
- 10:35those attributes and then it adds
- 10:38another attribute which is specific for
- 10:40the instructor which says the rank which
- 10:43is is another specific attribute that
- 10:45you have
- 10:46now
- 10:47when you specialize a certain entity set
- 10:50into
- 10:50two or more entity sets like we
- 10:53specialize person in employee and
- 10:54student then there could be different
- 10:57situations that
- 10:58could exist for example certain entity
- 11:02may be a member of both employee as well
- 11:06as
- 11:06student
- 11:08if that happens then we say that they
- 11:10are overlapping entity sets
- 11:13or they could be
- 11:14disjoint
- 11:16where
- 11:17no member of instructor
- 11:20would be a member of the secretary and
- 11:24vice versa so we say that
- 11:26this disjointness
- 11:28tell us that
- 11:31no instructor can be a secretary and no
- 11:33secretary can be an instructor whereas
- 11:35overlapping
- 11:37specialized sets denote that well an
- 11:41employee may or may not be a student but
- 11:43it is possible that some employee is
- 11:45also a student and vice versa and that
- 11:48is how we will represent this
- 11:55and we will see that when we specialize
- 11:57the
- 11:59specialized entity could be total or
- 12:02they could be partial
- 12:04we will talk about that totality and
- 12:06partial little little later
- 12:08let us look at how do we represent this
- 12:10information in the relational schema
- 12:13because as we have seen that whenever we
- 12:16have a
- 12:17er diagram it is important to find out
- 12:20what is the
- 12:22relational schema that will be
- 12:24corresponding to that
- 12:26e r diagram or er model
- 12:28so
- 12:29here we could do this in two ways one
- 12:32that we are showing here is form a
- 12:34schema for the higher level entity so
- 12:36form a schema for the person as you can
- 12:39see here
- 12:40that person is described in terms of
- 12:42four attributes
- 12:44and this form is schema for each of the
- 12:46lower level entity set
- 12:48where you include the primary key of the
- 12:52higher level entity set so when you are
- 12:53forming the schema of
- 12:55person of student
- 12:57which is a specialization of person you
- 13:00include the id which is the
- 13:03key of the higher level entity set
- 13:06person
- 13:07and along with that you include the so
- 13:10called local attributes or attributes
- 13:12which are specific to this low level
- 13:14entity set in this case total credit
- 13:16similar thing happens with employee
- 13:19now this representation is in a way
- 13:21optimized because
- 13:23you
- 13:24are in representing the information only
- 13:27once when it is needed
- 13:29but the drawback is if you have to find
- 13:31out information about say employee
- 13:34then you will not only have to access
- 13:36the employee entity set or the
- 13:39corresponding
- 13:41relation in the relational schema but
- 13:43you will also have to access the parent
- 13:46or higher level entity set to get the
- 13:48attribute values which are inherited and
- 13:51if you have a multi-level hierarchy as
- 13:53we have shown this could involve
- 13:55accessing multiple relations to find
- 13:58information about a single entity in an
- 14:01entity set
- 14:03so
- 14:04this is an
- 14:06in terms of data representation this is
- 14:08an optimized representation but it has
- 14:11the overhead of having to access
- 14:13multiple
- 14:14ah entity sets to get information about
- 14:18certain entities
- 14:20an alternate scheme would be that
- 14:23based on the hierarchy of specialization
- 14:25you assume all attributes as they are
- 14:28inherited and then represent every
- 14:30entity set in full so when you the
- 14:32representation of person does not change
- 14:35but when you represent student
- 14:37now earlier you are just having id and
- 14:40total credit now in you include all
- 14:43entities that are inherited
- 14:45similarly you do the same thing so you
- 14:47have the all entities of the parent all
- 14:50attributes of the parent entity set as
- 14:52well as the local attribute of that
- 14:54specific entity set
- 14:56now this naturally makes it easy to
- 14:58extract information from a
- 15:00for a single entity set but
- 15:03at the same time you are storing the
- 15:06same ah
- 15:08data redundantly for people who are
- 15:11having overlapped representation so if
- 15:15we have
- 15:16as we know student and employer
- 15:17overlapped so the same entity will
- 15:20happen in student as well as in employee
- 15:24so it will the information of the common
- 15:26attributes name street city etcetera
- 15:29they will occur in both these tables in
- 15:32the design so these are two methods and
- 15:35now we have just ah given you the
- 15:38relative
- 15:39advantages and its advantages of the
- 15:41same and based on a particular situation
- 15:43you have to choose what is a good method
- 15:46to represent
- 15:50you can look at
- 15:51now you know from the object based
- 15:52system that if you have a specialization
- 15:55hierarchy you can think of it as a
- 15:57generalization hierarchy also
- 15:59the generalization hierarchy goes in a
- 16:01bottom up manner so instead of
- 16:04actually
- 16:06starting with an entity set and finding
- 16:08out subsets of entities which have
- 16:10greater commonality between them and
- 16:12putting them as specialized you could
- 16:14actually group them
- 16:16in
- 16:18the terms of finding out what they share
- 16:20and create a higher level entities
- 16:24for example the way i am saying is let
- 16:26us say that i have one entity set
- 16:29which say
- 16:31ug
- 16:32student
- 16:33and have another entity set in the same
- 16:35university which is a pg student
- 16:39so there are
- 16:40both of them are students naturally they
- 16:42are
- 16:43disjoint a person cannot be ug as well
- 16:45as pg student at the same time
- 16:47and once you represent that you find
- 16:49that well there are lot of information
- 16:51which are common between these two
- 16:53entity sets like the student roll number
- 16:56name
- 16:57and so on so forth so you could choose
- 17:00that well you instead of having them as
- 17:03two separate
- 17:05entity sets
- 17:07you could
- 17:08extract out the common attributes and
- 17:10put them at a higher level entity so all
- 17:12that you are doing is
- 17:14instead of going top down you are going
- 17:16bottom up in the whole approach
- 17:18so if you
- 17:20do that then ah there you can easily see
- 17:23that specialization and generalization
- 17:25is are inverse of each other
- 17:28and they are used interchangeably in
- 17:31terms of the relational
- 17:34entity relationship design
- 17:37the other constraint that you can
- 17:40identify you should identify is the
- 17:43constraint of completeness
- 17:45we say that if i have an
- 17:48entity set
- 17:51say person
- 17:53and
- 17:54then we have specializations of
- 17:57employee and student the question is
- 17:59for a higher level entity set
- 18:01is it necessarily that every entity
- 18:05will be represented in
- 18:08one of the or more than one of the lower
- 18:11level entity sets
- 18:13if that is guaranteed that an entity
- 18:16must belong to one of the lower level
- 18:18entity sets we say that it is a complete
- 18:22specialization
- 18:24but if it is that a
- 18:26higher level entity
- 18:29is may or may not be featuring in a
- 18:34entity set which is at a lower level
- 18:36then will say it is a partially
- 18:39specialized hierarchy so they both of
- 18:42these are are possible depending on
- 18:44different situation that we have
- 18:46so
- 18:47by default we assume partial
- 18:50specialization and
- 18:53so if we want to say certain
- 18:55specialization is total we will have to
- 18:58write the keyword total by the side of
- 19:00the arrow head that is representing the
- 19:03specialization hierarchy you can say
- 19:06that
- 19:06the example i talked of in uniting unite
- 19:10undergraduate and
- 19:12graduate or post graduate students into
- 19:15the entity set of students
- 19:17gives you a hierarchy which is
- 19:21total because every
- 19:23entity in the entity set student must be
- 19:26either a ug student or a pg student it
- 19:29is not possible that i have a student
- 19:31who is neither a ug student nor a pg
- 19:33student so every high entity the higher
- 19:35level entity set
- 19:37ah student must feature in one of these
- 19:39two specializations so therefore they
- 19:42are necessarily
- 19:45total in the relationship so this is the
- 19:47completeness constraint that you can
- 19:48think of
- 19:50moving on lets talk about
- 19:52another feature which is known as
- 19:53aggregation the situation is like this
- 19:56we have already talked about this part
- 19:59of the diagram
- 20:00which is a ternary relationship which
- 20:02relates project instructor and student
- 20:05now let us say once the project
- 20:07progresses you would need to add
- 20:09evaluation to that so here there is
- 20:11another entity set which represents
- 20:13evaluation i mean how you are grading or
- 20:16putting marks and so on so naturally the
- 20:18evaluation of
- 20:20a student will be dependent on the
- 20:24project the student and the supervisor
- 20:27and that will relate to the evaluation
- 20:29so evaluation
- 20:31eval for the relationship is necessarily
- 20:34a relationship between four entities
- 20:38or four entity sets so to say
- 20:41now the question is how do we represent
- 20:44this information
- 20:46the
- 20:47relationship
- 20:48sets eval for and project guide the two
- 20:51that we saw if we just want to recall
- 20:53once more the project guide involves
- 20:55three of the relation entity sets and
- 20:58the eval for
- 20:59relates to
- 21:00four of the entity sets
- 21:03now every eval for relationship
- 21:05corresponds to a
- 21:08project guide relationship that is if i
- 21:10have an entity individual for
- 21:11relationship
- 21:13i will have a corresponding entity in
- 21:15the project guide relationship which
- 21:16specifies the student project and the
- 21:18instructor
- 21:20so but
- 21:21it is other way it is possible that some
- 21:23project guide relationship may not
- 21:26correspond to any eval relationship that
- 21:28is it is possible that ah there is a
- 21:30allotted project by a student
- 21:33with a particular instructor which has
- 21:35yet not been evaluated the evaluation
- 21:37process is not complete or the time has
- 21:39not come
- 21:41so
- 21:42if we have to
- 21:43represent the information only for the
- 21:47eval for relationship we will get
- 21:49partial information because it is
- 21:52possible that some entities in eval 4
- 21:56does not have the evolve for information
- 21:58do not feature there but
- 22:00need to be preserved because i need to
- 22:03remember the project guide
- 22:06instructor the student and the project
- 22:09so we need to keep both duplicating the
- 22:12information
- 22:14so
- 22:15we can
- 22:16use aggregation to eliminate this ah
- 22:18duplication of information or redundancy
- 22:21of information
- 22:22so what we do is we treat the first
- 22:25entity first relationship the project
- 22:27gate relationship as if it is an
- 22:29abstract entity
- 22:31and then you allow relationship between
- 22:35two relationships this is something we
- 22:37did not do before relationship so far
- 22:40has always been between entity sets
- 22:42so what you can see that project guide
- 22:46relationship itself as if it is a
- 22:48virtual entity it is an abstract entity
- 22:51and then you allow the relationship
- 22:53between
- 22:54the project guide
- 22:56and the eval 4
- 22:58relationship which relates to the
- 23:01evaluation entity set
- 23:03ah this
- 23:04really this shows i mean i will just
- 23:06show you in the diagram so this is how
- 23:08it will
- 23:09now work out to be so this is the
- 23:15abstract
- 23:18project guide
- 23:20entity set which is an abstract entity
- 23:22set because it is actually relationship
- 23:25and that relates to eval for
- 23:27which on the other side has the
- 23:29evaluation so
- 23:31what will happen is a student is guided
- 23:33by a particular instructor in a
- 23:35particular project will feature in this
- 23:38abstract entity set
- 23:40which relates the three
- 23:41entity sets project student and
- 23:44instructor
- 23:45and
- 23:47if it has an evaluation then this
- 23:50through this
- 23:51relationship
- 23:52it will be represented
- 23:54and the evaluation
- 23:56value will exist so
- 23:58we know that if a project is evaluated
- 24:02then it certainly have a corresponding
- 24:04entity
- 24:05in the
- 24:06abstract entity set project guide but
- 24:09the reverse may not be true i may have
- 24:12an entity in the project guide entity
- 24:13set which does not have an evaluation so
- 24:16by using this aggregation model i can
- 24:19represent
- 24:20the information of
- 24:22this situation model this situation more
- 24:25accurately than i could do otherwise
- 24:30so this can be represented again how to
- 24:32represent this in terms of the schema so
- 24:35what we do we represent the aggregation
- 24:37we create a schema containing the
- 24:39primary key of the aggregated
- 24:42relationship
- 24:43the primary key of the associated entity
- 24:45set and all the other descriptive
- 24:48attributes and put them together
- 24:55so in our example
- 24:57the schema would be eval for and that
- 25:00schema will have
- 25:03these are
- 25:05entities these are attributes of the
- 25:08aggregated
- 25:10or abstract
- 25:12entity set which is coming from the
- 25:15student
- 25:16project and the instructor entities and
- 25:20this is for the
- 25:21evaluation id so we put this together so
- 25:25now you can see that all of these are
- 25:28related
- 25:31representing who is the guide of which
- 25:34student in what project
- 25:36and if this exists then this gives you
- 25:39the evaluation
- 25:41so naturally once this has been
- 25:42represented the project guide schema by
- 25:45itself
- 25:46becomes redundant and therefore it can
- 25:49be removed so this is a process through
- 25:51which we come to the
- 25:53the decision of actually having the
- 25:56schema to represent all the required
- 25:58information naturally if the evaluation
- 26:01is not done then the evaluation id ah
- 26:04for in eval for will not exist
- 26:08and that will be a null showing that it
- 26:11is not
- 26:12present right now
- 26:15ok now ah given
- 26:17these
- 26:18basic features as well as the extended
- 26:20features let me talk about a few design
- 26:23issues which will ah
- 26:26be
- 26:26required to see what kind of information
- 26:30that ah
- 26:32the the different challenges that we
- 26:34have seen so far
- 26:36for example we have seen the case of
- 26:38multi valued attributes
- 26:41so
- 26:42and
- 26:43the way we can represent that is
- 26:47using that multivalued attribute as a
- 26:49separate entity set like the phone
- 26:52number which also has the advantage of
- 26:54having its own
- 26:57added information for example
- 26:59once we do this then not only i can
- 27:02have against the same instructor id i
- 27:05can have multiple phone numbers but i
- 27:07can have location for each one of these
- 27:09phone numbers and i make use of
- 27:13this
- 27:14relation
- 27:15relationship that i create
- 27:17which allow me to ah represent this
- 27:21multivalued attribute so this is a
- 27:23common technique that will be used
- 27:25frequently in such cases
- 27:28you can have entities versus
- 27:30relationship for example ah if we
- 27:34have
- 27:35ah info we need to keep information
- 27:37about ah registration
- 27:40how students register to different
- 27:42sections then we could represent
- 27:44registration as an entity set and have
- 27:47different
- 27:49relationships of section registration
- 27:51which specify how registration is
- 27:53related to section
- 27:55and student dredge which specify how
- 27:58registration is related to student to
- 28:00represent that kind of information
- 28:03we can have placement of relationship
- 28:05attributes also attribute date we talked
- 28:07about as an attribute of advisor
- 28:10to designate
- 28:13as
- 28:14when that particular instructor became
- 28:17advisor of a student is a common ah
- 28:20situation that we have already seen
- 28:23there is also question of ah the choice
- 28:25being made between the binary and
- 28:27non-binary relationship ternary or
- 28:30higher degree
- 28:31now as it turns out that it is possible
- 28:34that you could represent
- 28:36ternary relationships directly or you
- 28:38can decompose that for example a ternary
- 28:40relationship can be decomposed in terms
- 28:42of two binary relationship
- 28:45for example let us say if we talk about
- 28:47ah persons then person every person has
- 28:50parents so
- 28:53he or she has a father and a mother
- 28:56now if we represent this as a ternary
- 28:59relationship
- 29:00then the one difficulty that we have
- 29:03that
- 29:04a person must have both the father and
- 29:08mother to be represented there for
- 29:10example if we can come to a situation
- 29:12where only the mother is known the
- 29:14father is not known i will not be able
- 29:16to represent that because it will always
- 29:18have to come
- 29:19as a triplet of
- 29:21three persons the the person under
- 29:23consideration
- 29:25her father and her mother but if i
- 29:27represent the person and the father in
- 29:30one relationship
- 29:32the person and the mother in another
- 29:34relationship then i can take care of the
- 29:36situation where
- 29:38when one of the parents are known i can
- 29:41still represent this
- 29:43so there are certain tradeoffs which can
- 29:45be done between the choice of binary and
- 29:47non-binary relationships but obviously
- 29:50there are certain relationships which
- 29:51are
- 29:52inherently non-binary for example the
- 29:54project guide example we have seen the
- 29:56project guide information cannot be
- 29:58decomposed
- 30:00ah without certain loss of information
- 30:02to be represented by say the instructor
- 30:04and the project and another relationship
- 30:06between the student and the project it
- 30:09really that does not represent the same
- 30:12information
- 30:13so
- 30:14ah in general you can
- 30:17convert a non-binary relationship by in
- 30:20the binary form by doing this so this is
- 30:22a ternary relationship being shown
- 30:24and for doing that these are the three
- 30:27entity sets
- 30:29involving the ternary relationship and
- 30:32to make decomposite into a ternary
- 30:34relationship what we do is into binary
- 30:37relationships we inject
- 30:40a new
- 30:41entity artificial entity set e
- 30:45and then we define three different
- 30:48relations between them so which
- 30:51individually relates to the entity sets
- 30:54a b and c so this is a standard
- 30:56decomposition and you can easily
- 30:58understand that ah
- 31:01a b and c in our earlier example could
- 31:03all be persons and
- 31:06r a
- 31:07could
- 31:08mean that father of
- 31:11r b could mean mother of and so on so i
- 31:13can do do it in decompose it in this
- 31:16manner and represent that
- 31:21now
- 31:23while we do this decomposition we will
- 31:25also have to remember in
- 31:26that we need to translate all
- 31:29constraints
- 31:30that are present for the ternary
- 31:33relationship
- 31:34and oftentimes it may become difficult
- 31:37to translate all constraints it may not
- 31:40be possible and there may be instances
- 31:42in the translated schema that cannot
- 31:44correspond to an instance of the
- 31:47original
- 31:48relationship so we will have to
- 31:51ah avoid
- 31:52we can we will have to take care of this
- 31:55situation by identifying attributes
- 31:59and making
- 32:00use of the weak entity sets which we
- 32:03have already
- 32:05seen in our earlier discussions so if we
- 32:08summarize the discussions on the year
- 32:11design decisions we see that the first
- 32:14decision that
- 32:16we need to take in case of design is the
- 32:19use of an attribute or entity set to
- 32:21represent the object so that is the
- 32:23first modeling that what is the concept
- 32:25and what is what are the attributes
- 32:28or what is the representing entity set
- 32:31for the object that we are trying to
- 32:33deal with instructor student
- 32:36project and so on
- 32:38and
- 32:39we will also have to see whether in the
- 32:41real world this actually is an entity
- 32:44set or it is a relationship set that it
- 32:47is ah not an concept by itself but is a
- 32:51concept which relates
- 32:53two or more entity sets and thereby
- 32:57becomes a set of representation
- 33:00the use of ternary relationship versus
- 33:03the pair of binary relationship this
- 33:04tradeoff will have to be weighed as a
- 33:07design consideration
- 33:08we have to look into the use of strong
- 33:11or weak entity set so we will have to
- 33:13identify the weak entity sets and see if
- 33:16they should be represented through the
- 33:18identifying relation
- 33:20ah
- 33:21as against a strong entity set
- 33:24we have to identify
- 33:26the specialization generalization
- 33:28situation where so that we can get more
- 33:31specific information
- 33:32and create
- 33:34appropriate modularity in the design
- 33:37we have to look at ah aggregation which
- 33:41where we can aggregate entity sets bound
- 33:44by a
- 33:45ah relationship
- 33:47and create an abstract single unit which
- 33:50can play a role of an independent entity
- 33:54set in the whole design
- 33:57so these are
- 33:58the basic
- 34:00so these are the basic design
- 34:03decisions that you need to make and we
- 34:06will certainly come up with lot more of
- 34:08design decisions as we go along
- 34:11and
- 34:12before i close
- 34:13in the presentation i have summarized
- 34:16the different symbols that are used in
- 34:18the er notation so i will not these have
- 34:21already been discussed in depth so i
- 34:23will not go through them one by one but
- 34:24i have put them as a list in
- 34:27the couple of slides there is a next
- 34:29slide in that which
- 34:31will be
- 34:33a quick reference for you while you are
- 34:35initially doing the er diagram so that
- 34:37you know exactly which symbol to pick up
- 34:39for what situation
- 34:41and at the end also there are few slides
- 34:44which show you that the ear notation
- 34:47itself is not a unique one there are
- 34:49multiple
- 34:50ways to represent similar things for
- 34:52example this is one which is showing you
- 34:55different composite attributes ah the
- 34:59generalization relationship is shown
- 35:01differently so there are these are all
- 35:04different styles of
- 35:05showing
- 35:07the
- 35:09constraints that that apply to a
- 35:11particular
- 35:13relationship
- 35:14and
- 35:15we will i mean we have included this ah
- 35:18not because we will use these alternate
- 35:20notations but i haven't quit them
- 35:22because
- 35:23it is possible that you come across some
- 35:25ear
- 35:27diagram where these notations are used
- 35:29and if you come across and you are not
- 35:31able to identify then please refer to
- 35:33this slides and you will be able to
- 35:35recognize what is ah what is
- 35:38corresponding symbol that you already
- 35:40know
- 35:40so in this module we have discussed the
- 35:42extended features of your model and we
- 35:44have
- 35:46deliberated on certain design issues and
- 35:49we will close our discussion on the
- 35:51entity relationship model here and move
- 35:54on to discuss the
- 35:56actual relational design
About this transcript
This page contains the full transcript of Entity-Relationship Model/3 by Data Base Management System - IITKGP, generated from the public captions YouTube serves with the video. The transcript has 4,755 words across 922 segments, with the original timestamps preserved so you can click any line to jump to that moment in the embedded player.
What you can do with it
Use the transcript to take notes, quote the speaker, build a study guide, generate a summary with ChatGPT or Claude via the YouTube Summary tool, or export it as a timed subtitle file with YouTube to SRT. You can also re-open it in the transcriber to translate the transcript into 100+ languages.
Free YouTube transcript tool
YouTube2Text is a free YouTube transcript generator — no signup, no daily limit. Paste any YouTube link and get the full transcript instantly, with timestamps, click-to-jump, translation to 100+ languages, AI prompts for ChatGPT, Claude, and Gemini, and exports to TXT, SRT, VTT, or Markdown.