KEMBAR78
chapter 3Introduction to Database System.ppt
Company
LOGO
chapter3
chapter3
Introduction
Introduction to Database System
to Database System
Learning Objective
⚫Define Database Management System (DBMS) and
database
⚫ Describe the advantages and disadvantages of DBMS
to file based system.
⚫Analyses structure models in Database
Definitions
Database:
⚫A very large, integrated collection of data.
⚫Models real-world enterprise.
⚫ Entities (e.g., students, courses)
⚫ Relationships (e.g., Madonna is taking CS564)
Database Management System (DBMS)
⚫a software package designed to store and manage databases.
. Examples of Database Applications:
• Banking: all transactions
• Airlines: reservations, schedules
• Universities: registration, grades
Purpose of Database Systems
⚫ In the early days, database applications were built directly
on top of file systems
⚫ Drawbacks of using file systems to store data:
⚫ Data redundancy and inconsistency
⚫ Multiple file formats, duplication of information in
different files
⚫ Difficulty in accessing data
⚫ Need to write a new program to carry out each new
task
⚫ Data isolation — multiple files and formats
⚫ Concurrent access by multiple users
⚫ Concurrent accessed needed for performance
⚫ Uncontrolled concurrent accesses can lead to
inconsistencies
⚫ E.g. two people reading a balance and updating it
at the same time.
⚫ Security problems
⚫ Database systems offer solutions to all the above
problems
Purpose of Database Systems
⚫ Separation of the Data definition and the
Program
⚫ Abstraction into a simple model
⚫ Data independence and efficient access.
⚫ Reduced application development time – ad-hoc
queries
⚫ Data integrity and security.
⚫ Uniform data administration.
⚫ Concurrent access, recovery from crashes.
Why Use a DBMS?
Why Study Databases??
⚫ Shift from computation to information
⚫ Datasets increasing in diversity and volume.
⚫ Digital libraries, interactive video
⚫ ... need for DBMS exploding
⚫ DBMS encompasses most of CS
⚫ OS, languages, theory, AI‫و‬ ,multimedia , logic
?
Levels of Abstraction
⚫ Many views, single conceptual
(logical) schema and physical
schema.
⚫Views describe how users see the
data.
⚫Conceptual schema defines
logical structure. Sometime we
separate between conceptual level
and logical level.
⚫Physical schema describes the
files and indexes used.
* Schemas are defined using DDL (Data Definition Language)
*data is modified/queried using DML (Data Manipulation
Language).
Physical Schema
Conceptual Schema
View 1 View 2 View 3
Levels of Abstraction
⚫ Physical level: describes how a record (e.g., customer) is
stored.
⚫ Logical level: describes data stored in database, and the
relationships
among the data.
type customer = record
customer_id : string; customer_name : string; customer_street :
string; customer_city : string;
end;
⚫ View level: application programs hide details of data types.
Views can also hide information (such as an employee’s
salary) for security purposes.
Instances and Schemas
⚫ Schema – the logical structure of the database
⚫ Example: The database consists of information about a
set of
customers and accounts and the relationship between them)
⚫ Analogous to type information of a variable in a program
⚫ Physical schema: database design at the physical level
⚫ Logical schema: database design at the logical level
⚫ Instance – the actual content of the database at a particular
point in
Time.
Data Models
⚫ A collection of tools for describing
⚫ Data
⚫ Data relationships
⚫ Data semantics
⚫ Data constraints
⚫ Relational model
⚫ Entity-Relationship data model (mainly for database
design)
⚫ Object-based data models (Object-oriented and Object-
relational)
⚫ Semistructured data model (XML)
⚫ Other older models:
⚫ Network model
Data Manipulation Language (DML)
⚫ Language for accessing and manipulating the data
organized by the
appropriate data model
⚫ DML also known as query language
⚫ Two classes of languages
⚫ Procedural – user specifies what data is required and how
to get those data
⚫ Declarative (nonprocedural) – user specifies what data is
required without specifying how to get those data
⚫ SQL is the most widely used query language
Data Definition Language (DDL)
⚫ Specification notation for defining the database
schema
Example: create table ( account (
account_number char(10) branch_name char) 10
( balance integer (10).
DDL compiler generates a set of tables stored in a
data dictionary.
⚫ Data dictionary contains metadata (i.e., data about data)
⚫ Database schema
⚫ Data storage and definition language
⚫ Specifies the storage structure and access methods
used
⚫ Integrity constraints
⚫ Domain constraints
⚫ Referential integrity (e.g. branch_name must
correspond to a
valid branch in the branch table)
SQL
⚫ SQL : widely used non-procedural language
⚫ Example: Find the name of the customer with
customer-id 192-83-7465
select
from
where
customer.customer_name customer
customer.customer_
id = ‘192-83- 7465’
⚫ Application programs generally access databases
through one of :
⚫ Language extensions to allow embedded SQL
⚫ Application program interface (e.g., ODBC/JDBC)
which allow SQL queries to be sent to a database
Database Design
The process of designing the general structure of the database:
⚫Logical Design –Deciding on the database schema. Database
design requires that we find a “good” collection of relation
schemas.
⚫ Business decision – What attributes should we record in the
database?
⚫ Computer Science decision –What relation schemas
should we have and how should the attributes be distributed
among the various relation schemas?
⚫Physical Design – Deciding on the physical layout of the database
The Entity-Relationship Model
⚫ Models an enterprise as a collection of entities and
relationships
⚫ Entity: a “thing” or “object” in the enterprise that is
distinguishable from other objects
⚫ Described by a set of attributes
⚫ Relationship: an association among several entities
⚫ Represented diagrammatically by an entity-relationship
diagram:
The End
Thank you
19

chapter 3Introduction to Database System.ppt

  • 1.
  • 2.
    Learning Objective ⚫Define DatabaseManagement System (DBMS) and database ⚫ Describe the advantages and disadvantages of DBMS to file based system. ⚫Analyses structure models in Database
  • 3.
    Definitions Database: ⚫A very large,integrated collection of data. ⚫Models real-world enterprise. ⚫ Entities (e.g., students, courses) ⚫ Relationships (e.g., Madonna is taking CS564) Database Management System (DBMS) ⚫a software package designed to store and manage databases. . Examples of Database Applications: • Banking: all transactions • Airlines: reservations, schedules • Universities: registration, grades
  • 4.
    Purpose of DatabaseSystems ⚫ In the early days, database applications were built directly on top of file systems ⚫ Drawbacks of using file systems to store data: ⚫ Data redundancy and inconsistency ⚫ Multiple file formats, duplication of information in different files ⚫ Difficulty in accessing data ⚫ Need to write a new program to carry out each new task ⚫ Data isolation — multiple files and formats
  • 5.
    ⚫ Concurrent accessby multiple users ⚫ Concurrent accessed needed for performance ⚫ Uncontrolled concurrent accesses can lead to inconsistencies ⚫ E.g. two people reading a balance and updating it at the same time. ⚫ Security problems ⚫ Database systems offer solutions to all the above problems Purpose of Database Systems
  • 6.
    ⚫ Separation ofthe Data definition and the Program ⚫ Abstraction into a simple model ⚫ Data independence and efficient access. ⚫ Reduced application development time – ad-hoc queries ⚫ Data integrity and security. ⚫ Uniform data administration. ⚫ Concurrent access, recovery from crashes. Why Use a DBMS?
  • 7.
    Why Study Databases?? ⚫Shift from computation to information ⚫ Datasets increasing in diversity and volume. ⚫ Digital libraries, interactive video ⚫ ... need for DBMS exploding ⚫ DBMS encompasses most of CS ⚫ OS, languages, theory, AI‫و‬ ,multimedia , logic ?
  • 8.
    Levels of Abstraction ⚫Many views, single conceptual (logical) schema and physical schema. ⚫Views describe how users see the data. ⚫Conceptual schema defines logical structure. Sometime we separate between conceptual level and logical level. ⚫Physical schema describes the files and indexes used. * Schemas are defined using DDL (Data Definition Language) *data is modified/queried using DML (Data Manipulation Language). Physical Schema Conceptual Schema View 1 View 2 View 3
  • 9.
    Levels of Abstraction ⚫Physical level: describes how a record (e.g., customer) is stored. ⚫ Logical level: describes data stored in database, and the relationships among the data. type customer = record customer_id : string; customer_name : string; customer_street : string; customer_city : string; end; ⚫ View level: application programs hide details of data types. Views can also hide information (such as an employee’s salary) for security purposes.
  • 10.
    Instances and Schemas ⚫Schema – the logical structure of the database ⚫ Example: The database consists of information about a set of customers and accounts and the relationship between them) ⚫ Analogous to type information of a variable in a program ⚫ Physical schema: database design at the physical level ⚫ Logical schema: database design at the logical level ⚫ Instance – the actual content of the database at a particular point in Time.
  • 12.
    Data Models ⚫ Acollection of tools for describing ⚫ Data ⚫ Data relationships ⚫ Data semantics ⚫ Data constraints ⚫ Relational model ⚫ Entity-Relationship data model (mainly for database design) ⚫ Object-based data models (Object-oriented and Object- relational) ⚫ Semistructured data model (XML) ⚫ Other older models: ⚫ Network model
  • 13.
    Data Manipulation Language(DML) ⚫ Language for accessing and manipulating the data organized by the appropriate data model ⚫ DML also known as query language ⚫ Two classes of languages ⚫ Procedural – user specifies what data is required and how to get those data ⚫ Declarative (nonprocedural) – user specifies what data is required without specifying how to get those data ⚫ SQL is the most widely used query language
  • 14.
    Data Definition Language(DDL) ⚫ Specification notation for defining the database schema Example: create table ( account ( account_number char(10) branch_name char) 10 ( balance integer (10). DDL compiler generates a set of tables stored in a data dictionary.
  • 15.
    ⚫ Data dictionarycontains metadata (i.e., data about data) ⚫ Database schema ⚫ Data storage and definition language ⚫ Specifies the storage structure and access methods used ⚫ Integrity constraints ⚫ Domain constraints ⚫ Referential integrity (e.g. branch_name must correspond to a valid branch in the branch table)
  • 16.
    SQL ⚫ SQL :widely used non-procedural language ⚫ Example: Find the name of the customer with customer-id 192-83-7465 select from where customer.customer_name customer customer.customer_ id = ‘192-83- 7465’ ⚫ Application programs generally access databases through one of : ⚫ Language extensions to allow embedded SQL ⚫ Application program interface (e.g., ODBC/JDBC) which allow SQL queries to be sent to a database
  • 17.
    Database Design The processof designing the general structure of the database: ⚫Logical Design –Deciding on the database schema. Database design requires that we find a “good” collection of relation schemas. ⚫ Business decision – What attributes should we record in the database? ⚫ Computer Science decision –What relation schemas should we have and how should the attributes be distributed among the various relation schemas? ⚫Physical Design – Deciding on the physical layout of the database
  • 18.
    The Entity-Relationship Model ⚫Models an enterprise as a collection of entities and relationships ⚫ Entity: a “thing” or “object” in the enterprise that is distinguishable from other objects ⚫ Described by a set of attributes ⚫ Relationship: an association among several entities ⚫ Represented diagrammatically by an entity-relationship diagram:
  • 19.