database & database users

32
Chapter 1 Databases & Database Users

Upload: alfedds

Post on 28-Sep-2015

155 views

Category:

Documents


6 download

DESCRIPTION

Database & Database Users

TRANSCRIPT

  • Chapter 1Databases & Database Users

    Slide 1-*

    AcknowledgeThe main reference of this presentation is the textbook and PPT from : Elmasri & Navathe, Fundamental of Database Systems, 4th edition, 2004, Chapter 1Additional resources: presentation prepared by Prof Steven A. Demurjian, Sr (http://www.engr.uconn.edu/%7Esteve/Cse255/cse255.html)

    Slide 1-*

    Overview of MaterialsWhat is a database? What is a database system?What is a DBMS?When is a database system needed?Motivating database managementCharacteristic of database approachDatabase usersAdvantages of using DBMS approachA brief history of database applicationWhen not to use a DBMS

    Slide 1-*

    What is a database?Example of database application:Banks,Hospital,etcExtensions:Multimedia databasesGeographic Information SystemsData warehouseOn-line analytical processing (OLAP)Active & real-time databasesetc

    Slide 1-*

    What is a database? (cont)Basic definition:Database: A collection of related data.Data: Known facts that can be recorded and have an implicit meaning.Mini-world: Some part of the real world about which data is stored in a database. For example, student grades and transcripts at a university.Database Management System (DBMS): A software package/ system to facilitate the creation and maintenance of a computerized database.Database System: The DBMS software together with the data itself. Sometimes, the applications are also included.

    Slide 1-*

    Properties of databaseRepresents some aspect of the real world, called miniworld or Universe of DiscourseLogically coherent collection of data with some inherent meaningDesigned, built and populated for specific purpose

    Slide 1-*

    What is a database system?

    Slide 1-*

    When is a database system needed?Examples

    Typical EnvironmentCorporate EnterpriseData With Large Homogenous Parts (e.g., Formatted Data)Data Relevant Over a Long TimeData Used by Many Simultaneous Users (Batch and On-line Users) for Retrieval & Update

    Slide 1-*

    What is a DBMS?Database Management System is a general purpose software system that facilitates the process of defining, constructing and manipulating database for various applications

    Slide 1-*

    Main functions of DBMSDefining a Database: Specifying Data Types, Structures, and ConstraintsConstructing a Database: the Process of Storing the Data Itself on Some Storage MediumManipulating a Database: Function for Querying Specific Data in the Database and Updating the Database

    Slide 1-*

    Additional functions of DBMSInteraction with File ManagerSo that Details Related to Data Storage and Access are Removed From Application ProgramsIntegrity EnforcementGuarantee Correctness, Validity, ConsistencySecurity EnforcementPrevent Data From Illegal UsesConcurrency ControlControl the Interference Between Concurrent ProgramsRecovery from FailureQuery Processing and Optimization

    Slide 1-*

    Motivating database managementManual Database ManagementData are Not StoredProgrammer Defines Both Logical Data Structure and Physical Structure (Storage)

    Slide 1-*

    Motivating database managementFile ProcessingData are Stored in Files with Interface Between Programs and Files.Various Access Methods Exist (E.G., Sequential, Indexed, Random)One File Corresponds to One or Several Programs.

    Slide 1-*

    Problems with file systemsData are Still Highly RedundantSharing Limited and at the File LevelData is UnstructuredFlat FilesHigh Maintenance CostsData DependenceEnsuring Data Consistency and Controlling Access to Data (Concurrent Access Problematic)Difficult to Understand by New DevelopersDifficulties in Developing New ApplicationsAlmost Impossible to Evolve with New CapabilitiesRisk of Inefficient Applications

    Slide 1-*

    Database vs. File SystemCoordinates Both Physical and Logical Access to the DataData are Shared by All Programs Authorized to Have Access to It

    Flexible Access to Data (i.e., Queries)

    Multiple Users Accessing the Same Data at Same Time

    Coordinates Only the Physical Access to the DataData Written by One Program May Not Be Readable by Another ProgramPre-determined Access to Data (I.E., Compiled Programs)No Two Programs Can Concurrently Access the Same File

    Slide 1-*

    University database exampleHas 5 files (tables): StudentCourseSectionGrade ReportPrerequisiteSee how do they relate to each other!How do we define, construct & manipulate?

    Slide 1-*

    Slide 1-*

    Characteristic of Database ApproachSelf-describing natureInsulation between program and dataSupport of multiple views of dataSharing of data & multiuser transaction processing

    Slide 1-*

    Self-describing natureAs oppose to unstructured dataContains not only database itself, but also a complete definition of database structure (metadata)In traditional file processing, data definition is part of the application program

    Slide 1-*

    Insulation between programs & dataChanges to the data structure does not generally require changing the programFor example, adding a new field BirthdayThe data structure is not in the programWe call this program-data independenceDBMS provides conceptual representationUser or programmer does not need to know how the DBMS store the data in the disk / file.

    Slide 1-*

    Multiple ViewsMany users, different needsAccessing & printing the transcript of each studentsChecking that students have taken all the prerequisite course

    Slide 1-*

    Sharing & MultiuserDBMS provides concurrency control to ensure correct behavior when multiple users access the same databaseExample: airline seat reservationIt is called On-Line Transaction Processing (OLTP)

    Slide 1-*

    Database usersActors on the SceneDatabase administratorAuthorizing access rightsDatabase designersDefines the structure of data to be storedEnd users:Casual end userNave/parametric userSophisticated usersStand-alone usersSystem analyst and Application programmers (software engineers)

    Slide 1-*

    Database usersWorkers behind the SceneDBMS system designers and implementersTool developersOperators and maintenance personnel

    Slide 1-*

    Advantages of Using a DBMSControlling redundancyRestricting unauthorized accessProvides persistent storage for data structuresPermits inference & actions using rulesMultiple user interfacesRepresents complex relations amongst dataEnforcing integrity constraintsProvides backup & recovery

    Slide 1-*

    Additional Implications of Using the Database ApproachPotential for enforcing standards: this is very crucial for the success of database applications in large organizations Standards refer to data item names, display formats, screens, report structures, meta-data (description of data) etc.Reduced application development time: incremental time to add each new application is reduced.

    Slide 1-*

    Additional Implications of Using the Database ApproachFlexibility to change data structures: database structure may evolve as new requirements are defined. Availability of up-to-date information very important for on-line transaction systems such as airline, hotel, car reservations.Economies of scale: by consolidating data and applications across departments wasteful overlap of resources and personnel can be avoided.

    Slide 1-*

    Historical Development of Database TechnologyEarly Database Applications: The Hierarchical and Network Models were introduced in mid 1960s and dominated during the seventies. A bulk of the worldwide database processing still occurs using these models.Relational Model based Systems: The model that was originally introduced in 1970 was heavily researched and experimented with in IBM and the universities. Relational DBMS Products emerged in the 1980s.

    Slide 1-*

    Historical Development of Database TechnologyObject-oriented applications: OODBMSs were introduced in late 1980s and early 1990s to cater to the need of complex data processing in CAD and other applications. Their use has not taken off much.Data on the Web and E-commerce Applications: Web contains data in HTML (Hypertext markup language) with links among pages. This has given rise to a new set of applications and E-commerce is using new standards like XML (eXtended Markup Language).

    Slide 1-*

    Extending Database CapabilitiesNew functionality is being added to DBMSs in the following areas:Scientific ApplicationsImage Storage and ManagementAudio and Video data managementData MiningSpatial data managementTime Series and Historical Data ManagementThe above gives rise to new research and development in incorporating new data types, complex data structures, new operations and storage and indexing schemes in database systems.

    Slide 1-*

    When not to use a DBMSMain inhibitors (costs) of using a DBMS:High initial investment and possible need for additional hardware.Overhead for providing generality, security, concurrency control, recovery, and integrity functions. When a DBMS may be unnecessary:If the database and applications are simple, well defined, and not expected to change.If there are stringent real-time requirements that may not be met because of DBMS overhead.If access to data by multiple users is not required.

    Slide 1-*

    When not to use a DBMSWhen no DBMS may suffice:If the database system is not able to handle the complexity of data because of modeling limitationsIf the database users need special operations not supported by the DBMS.