Introduction to Database
Learning Objectives
• Definition of database
• How modern database evolve from file systems
• Database approach
• The main function of a database management
  system
• Components of database
• Level of data abstraction
• Database architecture
                Introduction
• Today the success of an organisation depends
  on its ability to acquire accurate and timely
  data about its operations,to manage this data
  effectively, and to use it to analyse and guide
  it activities.
               Introduction
What is a database?
• A database is a collection of information
  organized to provide efficient retrieval. The
  collected information could be in any number
  of formats (text, graphic, audio, video,
  statistical, combinations).
                Class Quiz
• Discuss/mention any database system that
  you interact with since last week?
           WhatIntroduction
                is a database ??
• A database is a collection of information that is
  organized so that it can be easily accessed,
  managed and updated.
• Data is organized into rows, columns and tables,
  and it is indexed to make it easier to find relevant
  information. Data gets updated, expanded and
  deleted as new information is added. Databases
  process workloads to create and update
  themselves, querying the data they contain and
  running applications against it.
                        Introduction
                        a database ??
• Computer databases typically
  contain aggregations of data
  records or files, such as sales
  transactions, product catalogs
  and inventories, and
  customer profiles.
• Typically, a database manager
  provides users with the ability
  to control read/write access,
  specify report generation and
  analyze usage.
      Database: Historical roots
• Understanding what database is, will help in
  classify what its is not.
• History will help in understanding data access
  limitations that databases attempt to
  overcome.
• A brief explanation of the evolution of file
  system data processing can be helpful in
  understanding the data access limitations that
  databases attempt to overcome.
             Manual file system
• Keep track of data
• Used tagged file folders in a
  filling cabinet
• Organized according to expected
  use
       e.g. file per customer
• Easy to create, but hard to
        locate data
        aggregate/ summarize data
       Disadvantage/Drawbacks
Here are some disadvantages of manual document
filing processes.
• Takes Up a Lot of Space. The biggest downfall
   to manual document filing is the amount of space
   it can take up
• Prone to Damage and Being Misplaced
• Hard to Make Changes
• Access Time
• Lack of Security
• Higher Cost
 Traditional file processing systems
• This was an early attempt to computerize the
  manual filing system that we are all familiar
  with.
• A file system is a method for storing and
  organizing computer files and the data they
  contain to make it easy to find and access
  them.
Traditional file processing systems vs
         Database approach
    Disadvantages of file processing systems
•   Duplication of data
•   Limited data sharing
•   Lengthy development time
•   Excessive program maintenance
•   Program-data dependence
          Database approach
• The database approach emphasize the
  integration and sharing of data through-out
  the organisation
• Organisations expect to gain certain
  advantages through the use of this approach
  which is primarily bases of relational model
  and data warehouses.
Advantages of Database approach
• Improve data consistancy
• Improve data sharing
• Increased productivity of application
  development
• Reduce program maintence
• Improve decision support
• Improve data accessibility and responsiveness
    Cost and Risk of Database approach
• New, specialized personnel-need to hire or train individuals to design
   and maintain
• Installation and Management cost and
  complexity- initial cost is high
• Conversion cost
• Need for explicit backup and recovery
• Organisation conflict
                     DBMS
• A DBMS makes it possible for end users to create,
  read, update and delete data in a database. The
  DBMS essentially serves as an interface between
  the database and end users or application
  programs , ensuring that data is consistently
  organized and remains easily accessible.
• Database Management System is a software
  system that is used to create, maintain and
  provide controlled access to user databases.
Component of Database System
 Component of a Database Includes
• User: – Users are the one who really uses the
  database. Users can be administrator, developer or
  the end users.
• DBMS: – This is the software helps the user to
  interact with the database. It allows the users to
  insert, delete, update or retrieve the data. All these
  operations are handled by query languages like
  MySQL, Oracle etc.
• Database Application: – It the application program
  which helps the users to interact with the database
  by means of query languages. Database application
  will not have any idea about the underlying DBMS.
                 Database Applications:
•   Banking: all transactions
•   Airlines: reservation, grades
•   Sales: customers, products, purchases
•   Human resources: employee records, salaries,
    tax deductions
Database Applications:
    MTC now has 2 million active subscribers,.
    Collection and analysis of customer
    purchasing for shop floor optimization (data
    warehouse)
    Storage and retrieval of multimedia data
    (pictures, video, sound
       Use to store student records
IUM ITS iEnabler
               Data Abstraction in DBMS
• Database systems are made-up of complex
  data structures.
• To ease the user interaction with database,
  the developers hide internal irrelevant details
  from users.
• This process of hiding irrelevant details from
  user is called data abstraction.
Data Abstraction in DBMS
  We have three levels of abstraction:
1. Physical level:
• This is the lowest level of data abstraction.
• It describes how data is actually stored in
  database.
• You can get the complex data structure details
  at this level.
  We have three levels of abstraction
2. Logical level
• This is the middle level of 3-level data
  abstraction architecture. It describes what data
  is stored in database.
3. View level
• Highest level of data abstraction. This level
  describes the user interaction with database
  system.
  We have three levels of abstraction
Example: Let’s say we are storing customer
information in a customer table.
At physical level these records can be described
as blocks of storage (bytes, gigabytes, terabytes
etc.) in memory. These details are often hidden
from the programmers.
  We have three levels of abstraction
• At the logical level these records can be
  described as fields and attributes along with
  their data types, their relationship among
  each other can be logically implemented.
• The programmers generally work at this level
  because they are aware of such things about
  database systems.
  We have three levels of abstraction
• At view level, user just interact with system
  with the help of GUI and enter the details at
  the screen, they are not aware of how the
  data is stored and what data is stored; such
  details are hidden from them.
            Goal of 3 level/schema of Database
Here, are some Objectives of using Three schema
Architecture:
• Every user should be able to access the same data but
  able to see a customized view of the data.
• The user need not to deal directly with physical
  database storage detail.
• The DBA should be able to change the database storage
  structure without disturbing the user's views
• The internal structure of the database should remain
  unaffected when changes made to the physical aspects
  of storage.
            What is Database Architecture?
• DBMS architecture helps in design,
  development, implementation, and
  maintenance of a database.
• A database stores critical information for a
  business. Selecting the correct Database
  Architecture helps in quick and secure access
  to this data.
                     1 tier Architecture
• The simplest of Database
  Architecture are 1 tier where the
  Client, Server, and Database all
  reside on the same machine.
• Anytime you install a DB in your
  system and access it to practise SQL
  queries it is 1 tier architecture. But
  such architecture is rarely used in
  production.
                           2 tier Architecture
• A two-tier architecture is a database
  architecture where
• Presentation layer runs on a client (PC, Mobile,
  Tablet, etc)
• Data is stored on a Server.
• An application interface which is called ODBC
  (Open Database Connectivity) an API which
  allows the client-side program to call the
  DBMS. Today most of the DBMS offers ODBC
  drivers for their DBMS. 2 tier architecture
  provides added security to the DBMS as it is
  not exposed to the end user directly.
• Example of Two-tier Architecture is a Contact
  Management System created using MS-
  Access.
                    3-tier Architecture
• 3-tier schema is an extension
  of the 2-tier architecture. 3-
  tier architecture has
  following layers
• Presentation layer (your PC,
  Tablet, Mobile, etc.)
• Application layer (server)
• Database Server
 This DBMS architecture contains an Application layer
 between the user and the DBMS, which is responsible for
 communicating the user's request to the DBMS system and
 send the response from the DBMS to the user.
 The goal of Three-teir architecture is:
• To separate the user applications and physical
  database
• Proposed to support DBMS characteristics
• Program-data independence
• Support of multiple views of the data
     VARIOUS COMMON OF DBMS
•   Oracle
•   Microsoft Access
•   SQL Server
•   Sybase
•   FoxPro
•   MySQL