Rose-Hulman CSSE 333 - System Concepts and Architecture

Unformatted text preview:

System Concepts and ArchitectureData ModelCategories of Data ModelsDatabase SchemaDatabase StateThree-Schema ArchitectureThe Three SchemasData IndependenceDatabase System ArchitecturesTwo Tier Client-ServerThree Tier Client-ServerEntity-Relationship ModelSlide 13Entity SetsEntity Set NotationRelationshipsValuesMulti-way RelationshipsRelationship ConstraintsSlide 20Slide 21Slide 22Attributes on RelationshipsRecursive RelationshipsSubclassesKeysShowing KeysWeak Entity SetsExample Weak Entity SetPractice with E-R DiagramsSystem Concepts and ArchitectureRose-Hulman Institute of TechnologyCurt CliftonData ModelA set of concepts to describeDatabase structureBasic operations on the dataCategories of Data ModelsConceptualClosest to users’ viewsImplementationIntermediate level for programmersPhysicalActual hardware levelDatabase SchemaA description of the databaseNot the actual data in itTends to change seldomShown with a Schema DiagramDatabase StateActual content at an instant in timeEvery change results in a new stateDBMS tries to ensure only valid states occurThree-Schema ArchitectureGoals:Support program-data independenceRepresent multiple views of dataThe Three SchemasInternal schemaDescribes storage with physical data modelConceptual schemaDescribes entire database structurewith conceptual or implementation data modelExternal schemasDescribe user viewstypically with same data modelData IndependenceTwo kinds:Logical: change conceptual schema without changing external schemasPhysical: change internal schema without changing conceptualJust update mappingsDatabase System ArchitecturesCentralized All processing on one machineMainframe + dumb terminalsClient-ServerSpecialized server machines for each functionSmart client machines provide interfacesConnected via some sort of networkTwo Tier Client-ServerClient runs UI and application programsUses API to connect directly to DBMSPerhaps multiple DBMSThree Tier Client-ServerIntermediate layerApplication Server or Web ServerAdvantagesSecurityScalabilityDisadvantageComplexityEntity-Relationship ModelRose-Hulman Institute of TechnologyCurt CliftonEntity-Relationship ModelLets us sketch database designsSketches called ER DiagramsSimple enough share with customersCan convert sketches into implementationsConversion is easy (with practice)Entity SetsEntity: a “thing” that database tracksEntity set: a collection of similar entitiesAttribute: property of an entitySimple values, like integers or stringsAll entities in set have same properties(though different values)Entity Set NotationEntity Set NameAttribute 1Attribute 2Attribute 3Entity set names areusually singular, i.e. “Employee”not “Employees”RelationshipsConnect two (or more) entity setsNotation:Try to make verbs read left-to-right, top-to-bottomEntity Set 1 Entity Set 2VerbsValuesEntity set value:The set of entities in itRelationship value:A set of pairs (or triples, …) withone element from each related entity setMulti-way RelationshipsConnect more than two entity setsUseful for more complex relationshipsRelationship ConstraintsOne-One:Entity of first set can connect to just one entity in second set, and vice versaEntity Set 1 Entity Set 2Verbs11Relationship ConstraintsOne-Many:Entity of first set can connect to just one entity in second setEntity of second set can connect to many in firstUse N for arbitrary number greater than 1,or put specific numberEntity Set 1 Entity Set 2VerbsN1Relationship ConstraintsMany-Many:An entity of either set can connect to many entities in the other setUse N and M for arbitrary number greater than 1,or put specific number (or omit)Entity Set 1 Entity Set 2VerbsNMRelationship ConstraintsNumbers on lines indicate maximumsCan also show that every entity must participateEvery entity of first set must be related to at least one entity of the second setEntity Set 1 Entity Set 2VerbsMNAttributes on RelationshipsSometimes attribute is property of relationship instead of either entityEntity Set 1 Entity Set 2VerbsAttributeRecursive RelationshipsWhen an entity set is related to itselfLabel edges with rolesConsider “Cousin Of”SymmetricalNo clear role namesPersonMarrieswifehusbandSubclassesSubclass = fewer entitiesHave more propertiesEntity of subclass set is alsoin superclass setHas all attributes of both setsSuperclassEntity SetSubclassEntity SetisaKeysLet us tell entities apartThe key for an entity set is a subset of the attributes for that entity set, such that no two entities agree on all the attributesShowing KeysEach entity must have a keyShown by underlining names of key attributesFor subclass hierarchies:Only the root entity set has a keyAll entities in hierarchy use that keyWeak Entity SetsWhen even all the attributes aren’t enough for a key…Use a many-one relationship to “borrow” an additional attribute for the keyExample Weak Entity SetConsider football players in a fantasy leagueIs Name a key?Is Number a key?Need Number + Team Played OnPlayer TeamPlaysonname namenumber1Practice with E-R DiagramsIn groups of 2–3 work on HW Problem 3.21On back of


View Full Document

Rose-Hulman CSSE 333 - System Concepts and Architecture

Download System Concepts and Architecture
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view System Concepts and Architecture and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view System Concepts and Architecture 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?