Database Systems vs File Systems

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

A number of characteristics distinguish the ______ approach from the much older approach of programming with files.

database

In a database, the names or labels of data are defined once, and used repeatedly by ______, transactions, and applications.

queries

A DBMS ______ stores the description of the database structure and constraints.

catalog

A data ______ hides storage details and presents users with a conceptual view of the database.

<p>model</p> Signup and view all the answers

[Blank] control within the DBMS guarantees that each transaction is correctly executed or aborted.

<p>Concurrency</p> Signup and view all the answers

Flashcards

What is Data Abstraction in databases?

Data Abstraction hides storage details and shows users a conceptual view of the database.

What does a DBMS catalog store?

A DBMS catalog stores descriptions of database structure and constraints, known as meta-data, which allows DBMS software to work with different database applications.

What is 'program-data independence'?

Program-data independence, enables modifications to data structures and storage without altering DBMS access programs. The data file structure is stored separately.

Who are System Analysts and Application Programmers?

These DB users determine the requirements of end users and develop specifications. Application programmers implement these specifications as programs in software.

Signup and view all the flashcards

What is Concurrency Control?

Concurrency control within the DBMS that guarantees each transaction is correctly executed or aborted when multiple users access a database simultaneously.

Signup and view all the flashcards

Study Notes

  • Key features differentiate a database approach compared to file programming

Traditional File Processing

  • Each user must individually define and implement needed files for their specific software application
  • This can lead to redundancy

Database Approach

  • Data names and labels are defined once
  • Data names and labels are used repeatedly by queries, transactions, and applications

Main Characteristics of the Database Approach

  • Self-describing nature of a database system
  • Insulation between programs and data
  • Data abstraction
  • Support of multiple views of the data
  • Sharing of data and multi-user transaction processing

Self-Describing Nature of Database System

  • A DBMS catalog stores the description of the database structure and constraints, such as data structures, types, storage format, and constraints.
  • The DBMS catalog description is called meta-data
  • This allows the DBMS software to work with different database applications
  • A simplified database catalog includes 'Relations' and 'Columns'
  • 'Relations' consists of 'Relation_name' and 'No_of_columns'
  • 'Columns' consists of 'Column_name', 'Data_type', and 'Belongs_to_relation'

Insulation Between Programs and Data

  • Insulation between programs and data is called program-data independence
  • Insulation between programs and data allows changing data structures and storage organization without changing the DBMS access programs
  • The structure of the data files is stored in the DBMS catalog separately from access programs

Data Abstraction

  • A data model is a type of Data Abstraction used to hide storage details
  • Data model presents users with a conceptual view of the database
  • The data model uses logical concepts
  • The data model uses objects, their properties, and their interrelationships
  • A data model hides storage and implementation details to provide a clear view of the database
  • E.g. Internal storage format for a STUDENT record

Support of Multiple Views of the Data

  • Each user may see a different view of the database, which describes the data
  • E.g. 'Course_name', 'Course_number', and 'Prerequisites' of COURSE_PREREQUISITES

Sharing of Data and Multi-User Transaction Processing

  • Allows a set of concurrent users to retrieve from and to update the database
  • Care is needed to avoid interferences
  • Concurrency control within the DBMS guarantees that each transaction is correctly executed or aborted

Database Users Divisions

  • Divided into those who use and control database content and those who design, develop and maintain database applications ("Actors on the Scene")
  • Divided into those who design/develop DBMS software and related tools and computer systems operators ("Workers Behind the Scene")

Database Users - Actors on the Scene

  • Database administrators are responsible for authorizing access to the database
  • Database administrators are responsible for coordinating and monitoring database use
  • Database administrators are responsible for acquiring software and hardware resources
  • Database administrators are responsible for controlling database use and monitoring efficiency of operations

Database Designers

  • They define the content, structure, constraints, and functions/transactions against the database
  • They must communicate with end-users and understand their needs
  • System analysts determine requirements of end-users and develop specifications
  • Application programmers implement specifications as programs; they must be familiar with the DBMS capabilities

End-Users

  • End-users use data for queries and reports, and some update database content.
  • End-users can be categorized into Casual end users, Naive or Parametric end users, Sophisticated end users, and Standalone end users

Categories of End-Users

  • Casual end-users access database occasionally when needed
  • Naive or Parametric end-users make up a large section of the end-user population; they use previously well-defined functions
  • Examples of Naive or Parametric end-users: bank tellers or university secretaries
  • Sophisticated end-users are business analysts, scientists, engineers, others thoroughly familiar with system capabilities
  • Sophisticated end-users use tools in the form of software packages that work closely with the stored database
  • Stand-alone end-users mostly maintain personal databases using ready-to-use packaged applications
  • Examples of Stand-alone end-users: scientists that creates database for their own experiments, or a user that maintains an address book
  • You may become sophisticated or stand-alone users

Database Users - Workers Behind the Scene

  • DBMS system designers implement the DBMS modules and interfaces as a software package.
  • Tool developers design/implement tools (software packages) that facilitate database modeling/design, system design, and improve performance
  • Operators/maintenance personnel (system administration personnel) are responsible for running and maintenance of the hardware/software environment

Advantages of Using DBMS Approach

  • Controlling redundancy in data storage and in development and maintenance efforts
  • Sharing of data among multiple users
  • Ensuring consistency of data.
  • Restricting unauthorized access to data
  • Providing Storage Structures and Search Techniques (e.g. indexes) for efficient query processing
  • Providing backup and recovery services
  • Providing multiple interfaces to different classes of users
  • Representing complex relationships among data
  • Enforcing integrity constraints on the database
  • Interacting easily with data using high-level dedicated tools

When not to use a DBMS

  • When the main inhibitors (costs) of using a DBMS are a high initial investment and a possible need for additional hardware
  • When the main inhibitors (costs) of using a DBMS is overhead for generality, security, concurrency control, recovery, and integrity functions
  • When it may be unnecessary if the database and applications are simple, well defined, and not expected to change
  • When it may be unnecessary if there are stringent real-time requirements that may not be met because of DBMS
  • When it may be unnecessary if access to data by multiple users is not required
  • When no DBMS may suffice if the database system cannot handle complexity of data because of modeling limitations
  • When no DBMS may suffice if the database users need special operations not supported by the DBMS

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

More Like This

Use Quizgecko on...
Browser
Browser