Introduction to Introduction to Database SystemsRole CallIntroductionsCourse OverviewWhat databases do you interact with in a typical week?Types of DatabasesDatabase: A Collection of Data with Three PropertiesSome Other TermsDBMS Must AllowDatabase System ArchitectureRunning Example: University DBSample University DataViewsWhy use databases at all?Database StakeholdersWorkers Behind the ScenesWorkers on the SceneEnd Users (1/2)End Users (2/2)Database AdvantagesOther Database AdvantagesDatabase DisadvantagesDon’t Use a Database When System…Introduction to Introduction to Database SystemsRose-Hulman Institute of TechnologyCurt CliftonRole CallPlease…Correct my mispronunciationsLet me know your preferred nameIntroductionsNameMajorHometownAn interesting fact about you that others at Rose probably don’t knowCourse OverviewMaterials on AngelMost also on web and AFS: www.rose-hulman.edu/Class/csse/csse333Test-first teachingSyllabusScheduleWhat databases do you interact with in a typical week?Types of DatabasesTraditional (numeric, textual)MultimediaGeographic Information SystemsData WarehousesActive DatabasesDatabase: A Collection of Data with Three PropertiesAbstraction of “real world”Logically coherentDesigned to fulfill a purposeSome Other TermsDataKnown facts with implicit meaningMini-worldPart of “real” world about which data is storedDBMS or Database Management SystemSoftware system for creating/maintaining a computerized databaseDatabase SystemDBMS + data + applicationsDBMS Must AllowDefinition of data types, structures, constraintsConstruction of database on physical mediaManipulation to answer queries and add, delete, or modify dataConcurrent access for multiple usersSecure access to sensitive dataActive processing in response to data changesDatabase System ArchitectureRunning Example: University DBEntitiesThe things that the database tracksRelationshipsHow the entities go togetherSample University DataTypically a table for each kind of entityRows represent entitiesColumns represent attributesExample…STUDENT Name Number Class MajorSmith 6152 2006 CSJones 8941 2007 CSViewsWays of looking at dataNot necessarily stored in actual tablesWhy use databases at all?Database StakeholdersWorkers behind the scenesWorkers on the sceneEnd UsersOther stakeholdersWorkers Behind the ScenesDBMS designersTool developersWorkers on the SceneDBAs—Database AdministratorsControl accessMonitor useAcquire resourcesMonitor efficiencyDatabase DesignersCommunicate with end usersDefine content, structure, and constraints on dataEnd Users (1/2)Casual end usersOccasional access as neededNaïve (or parametric) end usersUse “canned transactions”E.g, bank teller, airline desk agentTypically majority of database use is by naïve end usersEnd Users (2/2)Sophisticated End UsersWrite custom queries against databaseE.g., business analysts, scientists, engineersStand-alone End UsersMaintain personal databases using COTS packagesE.g., iTunes, TurboTaxDatabase AdvantagesAre Self-describingProvide Program-Data IndependenceRequire Data AbstractionShow Multiple ViewsAllow Multi-user Data SharingOther Database AdvantagesControl of redundancySecurity enforcementPersistenceEfficient data retrievalRobustnessRepresentation of complex relationshipsData integrityReferential integrityDeductive capabilityStandards enforcementFast application developmentFlexibilityConcurrency managementEconomies of scaleDatabase DisadvantagesSignificant initial financial investmentCan increase system overheadLimit rapid prototypingDon’t handle rapid changes in data collectedRequire support resourcesDon’t Use a Database When System…Has no need for persistenceIs computationally, not data, intensiveHas a single user and simple dataUses very static
View Full Document