1 / 37

Introduction to Database Concepts

Introduction to Database Concepts. Levels of System Development. Analysis - describes the problem domain: use cases, classes, object, relationships and interactions that model the Real World entities. (Business Objects) Free from technical or implementations details

Download Presentation

Introduction to Database Concepts

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction to Database Concepts

  2. Levels of System Development • Analysis - describes the problem domain: use cases, classes, object, relationships and interactions that model the Real World entities. (Business Objects) Free from technical or implementations details • Design - Technical expansion and adaptation of the analysis models. How the analysis is to be implemented and the constraints of the implementation environment are considered. Along with the objects discovered in analysis, new “technical” classes (e.g. relational database mapping classes, user interface classes etc.) are created to support the requirements defined during the analysis. • Implementation - Actual writing, testing and running of the code and implementation of the database based on the Design. Mapping the design to one or more Languages (e.g. Java, C++, Ada95) and to databases

  3. Activities in Design • Architectural Design - Analysis classes are divided into functional groups (packages) and described across the hardware. New functional groups such as user interface, database management, security etc. are defined • General Design - Reworking the analysis, adding new technical classes, addresses issues of output format, database Design and access, communication, class libraries, exceptions etc • Detailed Design - Specification of all classes, including the needed implementation attributes and operation, and physical database layout

  4. What is a Database? • A database is an integrated and structured collection of stored operational data used (shared) by application systems of an enterprise: • Manufacturing Product data • University Student data, courses • Hospital Patient data, facilities • Bank Account data

  5. What is a Database? • A database (DB) is a structured collection of data about the entities that exist in the environment that is being modeled. • The structure of the database is determined by the data model that is used. • A database management system (DBMS) is the generalized tool that facilitates the management of and access to the database.

  6. Definitions • Data: Meaningful facts, text, graphics, images, sound, video segments. • Database: An organized collection of logically related data. • Information: Data processed to be useful in decision making. • Metadata: Data that describes data.

  7. History of Database Management Systems

  8. File Processing • Data 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.

  9. Issues with File Systems • Computer file system stores data in independent, unrelated files on disk. • Data are still high redundant • Sharing limited and at the file level • Data is unstructured (“flat” files) • The sharing, security and integrity of the data can't be enforced efficiently because of data redundancy and data dependence problems. • Ensuring data consistency and controlling access to data (Sharing granularity is very coarse, difficulties in developing new applications) • High maintenance costs (data dependence; accessing data is difficult)

  10. What is Data Redundancy? • Exists when unnecessarily duplicated data are found in the database. • For example, a customer's telephone number may be found in the customer file, in the sales agent file, and in the invoice file. • Data redundancy is symptomatic of a (computer) file system, given its inability to represent and manage data relationships. • Data redundancy may also be the result of poorly-designed databases that allow the same data to be kept in different locations.

  11. Types of Data Redundancy • Data inconsistency. Data inconsistency is the lack of data integrity. • Data anomalies. Ideally, a field value • change should be made only in a single place. Data redundancy, however, fosters an abnormal condition by forcing field value changes in many different locations.

  12. What is Data independence? • Exists when changes in the data characteristics don't require changes in the programs that access those data. • File systems exhibit data dependence because file access is dependent on a file's data characteristics. • Therefore, any time the file data characteristics are changed, the programs that access the data within those files must be modified.

  13. Database Management System • A DBMS is a data storage and retrieval system which permits data to be stored non-redundantly while making it appear to the user as if the data is well-integrated.

  14. Database Management Systems • Goals of a DBMS • Provides an environment that is both convenient and efficient to store and retrieve information to and from a computer system • Help an organization to perform its mission and to achieve its goals. • Proper database system eliminates data dependence and improves data integrity by minimizing data redundancy.

  15. Advantages of the Database Approach • Data Independence/Reduced Maintenance • Improved Data Sharing • Increased Application Development Productivity • Enforcement of Standards • Improved Data Quality (Constraints) • Better Data Accessibility/ Responsiveness • Security, Backup/Recovery, Concurrency

  16. The Range ofDatabase Applications • Personal Database • Workgroup/Department Database • Enterprise Database

  17. Workgroup database with local area network

  18. An enterprise data warehouse

  19. Components of the Database Environment • CASE Tools • Repository • Database Management System (DBMS) • Database • Application Programs • User Interface

  20. Components of the database environment

  21. Database stakeholders • Database administrator (DBA) • A person who is responsible for the management of the entire database environment • System Developers • Database users • Casual users • Naive users • Application programmers

  22. What is a Database Model? • Collection of logical constructs used to represent the database's • Data structure as well as the data relationship(s) found within that structure.

  23. Steps in the Database Development Process • Enterprise Modeling • Conceptual Data Modeling • Cuts across Project Initiation and Planning & Analysis phases of SDLC • Logical Database Design • Physical Database Design and Creation • Database Implementation • Database Maintenance

  24. Functional and Database Development life-cycles

  25. Conceptual and logical database models • E-R, object oriented, and semantic database models. • Describes the data and what the relationships • Types of relationships represented include: • One-to-many relationship • Many-to-many relationship • One-to-one relationship

  26. Implementation (Physical) database models • Describes how data are actually stored in the database • Types of Implementation (physical) database models include: • Hierarchical, • Network, • Relational, and • Object oriented

  27. Hierarchical database Model • Data redundancy is avoided by using an upside-down tree structure composed of parents and their children. • Since a parent can have many children, but each (hierarchical) child can have only one parent, the parent data is identical for all of its children and need not be repeated.

  28. Network Database Model • The network model allows a record to have more than one parent. • Handles more relationship types then a Hierarchical database. • Many to Many relationships are easier to implement in the than in the hierarchical model. • Improved data access flexibility

  29. Network Model

  30. Issues with the Hierarchical and Network Models • The hierarchical and network models yield some data independence, but they still exhibit database structure dependency. • For example, changes in segments or their location require data managers and programmers to perform complex system management tasks and extensive maintenance coding.

  31. The Relational Model • A Relational Database Management System (RDBMS) is a single data repository that provides both structural and data independence while maintaining conceptual simplicity. • The manages all of the complex physical details • The relational database model is perceived by the user to be a collection of tables in which data are • stored. • Each table resembles a matrix composed of row and columns. Tables are related to each other by sharing a common value in one of their columns

  32. Some advantages of Relational Model • Structural independence. Does not use a navigational data access system, • Provides excellent ad hoc query capability. End users find it easier to visualize their data as a collection of data organized as a matrix. • Designers find it easier to deal with conceptual data representation, freeing them from the complexities associated with physical data representation.

  33. Structured query language (SQL) • Is a fourth-generation language (4GL). • allows the user to specify what must be done without specifying how it must be done. • Based on work done by IBM. • Comprise of three parts: a user interface, a set of tables within the database, and the SQL “engine.”

  34. Object-Oriented Database model • Excellent for capturing Complex data such as graphics, video, and sound • Objects contain all operations that can be performed on it, such as changing its data values, finding a specific data value, and printing data values. • Because objects include data, various types of relationships, and operational procedures, the object becomes self-contained • Ad hoc query and navigation can be a challenge compared to a relational database • Hybrid databases called Object/relational database model (O/RDM) or universal servers are starting to appear

  35. Why is database design so important? • Yields a detailed database blueprint. This blueprint • Usually in the form of an E-R or object model, is used as the basis for database implementation. • A database created without the benefit of a detailed blueprint is unlikely to be satisfactory.

  36. Points to Remember • Good applications can't overcome bad database designs • The existence of a DBMS does not guarantee good data management, nor does it • ensure that the database will be able to generate correct and timely information • Ultimately, the end user decides what data will be stored in the database

More Related