SlideShare a Scribd company logo
1
Ashok B P,Asst.Prof,Dept of MCA,TOCE
 Introduction
 Characteristics of The Database Approach.
 Actors on The Scene
 Workers Behind The Scene
 Advantages of Using The DBMS Approach
 Data Models, Schemas And Instances
 Three Schema Architecture And Data Independence
 Database Languages And Interfaces
 The Database Environment
 Centralized And Client/Server Architecture For DBMS
 Classification Of Database Management Systems
2
Ashok B P,Asst.Prof,Dept of MCA,TOCE
INTRODUCTION
Database:
A collection of related data.
Data:
Known facts that can be recorded and have an implicit meaning.
Miniworld:
Some part of the real world about which data is stored in a database.
For example: student grades and empno.
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.
Example of DBMS Packages…
Oracle, Sybase, Ms-Access etc
3
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Simplified database system environment
4
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Typical DBMS Functionality
 Define a particular database in terms of its data types,
structures, and constraints.
 The data base definition stored in database in the form of
database catalog or dictionary called as “META-DATA”.
 Constructing is a process of storing data on a
secondary storage medium
 Manipulating the database:
Retrieval: Querying, generating reports
Modification: Insertions, deletions and updates to its content
Accessing the database through Web applications
 Sharing by a set of concurrent users and program to access
database simultaneously.
5
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Example of a Database
Miniworld for the example:
Part of a UNIVERSITY environment.
Some miniworld
Entities :
STUDENTs
COURSEs
SECTIONs ( COURSEs)
(academic) DEPARTMENTs
INSTRUCTORs
6
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Example of a simple database
7
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Why DBMS?
• The primary goal of a DBMS is to provide a way to
store and retrieve database information that is both
convenient and efficient.
• If data are to be shared among several users, the
system must avoid possible anomalous results.
• The database system must ensure the safety of the
information stored, despite system crashes or attempts
at unauthorized access.
8
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Functions of DBMS
 Data Definition: Define and store database structure.
 Load database data.
 Data Maintenance: store and maintain data. It takes care to see that each
record has field containing information about respective data items.
 Data Manipulation: Allow user to insert, delete, update and sort database.
 Provide security features: DBMS protect the database against
unauthorized access, unintentional change that could be caused by users
and application programs.
 Provide multiple views of data and wide variety of access methods:
DBMS is capable of notifying any changes to the database to the other users
in case of multi-user system.
 Concurrency control: enforce control over concurrent operations i.e.
coordinates simultaneous access to shared data and the same time ensure
consistency of the shared data.
 Facilitate backup and recovery: of data in a database so that consistency
and integrity of data should not be affected when a transactions fails or
aborted.
9
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Database System Applications
• Banking: customer information, accounts, and loans, and banking transactions.
• Airlines: reservations and schedule information. Airlines were among the First to use
databases in a geographically distributed manner—terminals situated around the world
accessed the central database system through phone lines and other data networks.
• Universities: student information, course registrations, and grades.
• Credit card transactions: purchases on credit cards and generation of monthly
Statements.
• Telecommunication: keeping records of calls made, generating monthly bills, maintaining
balances on prepaid calling cards and storing information about the communication
networks.
• Finance: storing information about holdings, sales, and purchases of financial instruments
such as stocks and bonds.
• Sales: customer, product, and purchase information.
• Manufacturing: management of supply chain and for tracking production of items in
factories, inventories of items in warehouses/stores, and orders for items.
• Human resources: information about employees, salaries, payroll taxes and benefits, and for
generation of paychecks.
10
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Characteristics of the Database Approach
 Self-describing nature of a database system:
 A DBMS catalog stores the description of a particular database
(e.g. data structures, types, and constraints)
 The description is called meta-data.
 This allows the DBMS software to work with different database
applications.
 Insulation between programs and data:
 Called program-data independence.
 Allows changing data structures and storage organization without
having to change the DBMS access programs.
11
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Example of a simplified database catalog
12
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Main Characteristics of the Database
Approach
 Data Abstraction:
 A data model is used to hide storage details and present
the users with a conceptual view of the database.
 Programs refer to the data model constructs rather than
data storage details
 Support of multiple views of the data:
 Each user may see a different view of the database,
which describes only the data of interest to that user.
13
Ashok B P,Asst.Prof,Dept of MCA,TOCE
 Sharing of data and multi-user transaction processing:
 Allowing a set of concurrent users to retrieve from and to
update the database.
 Concurrency control within the DBMS guarantees that each
transaction is correctly executed or aborted
 Recovery subsystem ensures each completed transaction has its
effect permanently recorded in the database
 OLTP (Online Transaction Processing) is a major part of
database applications. This allows hundreds of concurrent
transactions to execute per second
14
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Database Users
Users may be divided into
Those who actually use and control the database
content, and those who design, develop and
maintain database applications (called “Actors on
the Scene”), and
Those who design and develop the DBMS
software and related tools, and the computer
systems operators (called “Workers Behind the
Scene”).
15
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Actors on the scene
Database administrators:
Responsible for authorizing access to the database, for coordinating
and monitoring its use, acquiring software and hardware resources
, controlling its use and monitoring efficiency of operations.
Managing the resources
Creation of user accounts(database access)
Providing Security and authorization
Manage poor system response time etc.
Restoration of the system after failure(system recovery)
Tuning the database depending upon the needs of the users
Database Designers:
Responsible to define the content, the structure, the
constraints, and functions or transactions against the database.
They must communicate with the end
users and understand their needs.
16
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Categories of Endusers
Actors on the scene (continued)
Endusers:
They use the data for queries, reports and some of them update the
database content.
Endusers can be categorized into:
Casual: access database occasionally when they Needed. They may
need different information each time.
Parametric: They access the database constantly with standard
types of queries and updates called canned transaction.
 Examples : Bank-tellers or reservation clerks who do
this activity for an entire shift of operations.
17
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Sophisticated:
These include business analysts, scientists, engineers,
others thoroughly familiar with the system capabilities.
Standalone:
Mostly maintains personal databases using readytous
packaged applications.
An example : a tax program user that creates its own
internal database.
Another example : a user that maintains an address book
.
18
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Workers behind the Scene
 DBMS system designers and implementers are persons
who design and implement the DBMS modules and
interfaces as a software package. A DBMS is a complex
software system that consists of many components or
modules, including modules for implementing the catalog,
query language, interface processors, data access,
concurrency control, recovery, and security .
 Tool developers include persons who design and implement
tools—the software packages that facilitate database system
design and use, and help improve performance. Tools are
optional packages that are often purchased separately .
19
Ashok B P,Asst.Prof,Dept of MCA,TOCE
 Operators and maintenance personnel are the
system administration personnel who are responsible
for the actual running and maintenance of the
hardware and software environment for the database
system
20
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Advantages of Using the Database
Approach
 Controlling redundancy
 Restricting unauthorized access to data.
 Providing Persistent Storage for program objects
 Providing Storage Structures for efficient Query Processing,
 Providing backup and recovery services.
 Providing multiple interfaces
 Representing complex relationships among data.
 Enforcing Integrity Constraints
 Permitting Inferencing and Actions using Rules
 Additional Implication of using the Database Approach
21
Ashok B P,Asst.Prof,Dept of MCA,TOCE
 Controlling redundancy
 In the file processing approach, each user defines and implements the files
needed and software applications to manipulate those files.
 Various files are likely to have different formats and programs may be written
in different languages and same information may be duplicated in several files.
 Data redundancy leads to
 wasted storage space,
 duplication of effort (when multiple copies of a datum need to be updated),
 a higher likelihood of the introduction of inconsistency.
 Database design stores each logical data item at one place to ensure consistency
and saves storage.
 But sometimes, controlled redundancy is necessary to improve the
performance.
 Database should have capability to control this redundancy & maintain
consistency by specifying the checks during database design.
22
Ashok B P,Asst.Prof,Dept of MCA,TOCE
 Restricting unauthorized access to data
 When multiple users share a database, it is likely that some users will
not be authorized to access all information in the database.
 For example, financial data is often considered confidential, and
hence only authorized persons are allowed to access such data.
 In addition, some users may be permitted only to retrieve data, whereas
others are allowed both to retrieve and to update.
 Hence, the type of access operation—retrieval or update—must also
be controlled.
 A DBMS provides a security and authorization subsystem, which is
used by DBA to create user accounts and to specify restrictions on user
accounts.
 File processing system provides password mechanism and very less
security which is not sufficient to enforce security policies like DBMS
23
Ashok B P,Asst.Prof,Dept of MCA,TOCE
 Providing Persistent Storage for program objects
 Object oriented database systems are compatible with programming
languages such as C++ and Java.
 A OODBMS software automatically performs the conversion of a complex
object which can be stored in OODBMS, thus an object is said to be
persistent due to its survival after the termination of the program.
 Databases can be used to provide persistent storage for program objects
and data structures. This is one of the main reasons for the emergence of
the object-oriented database systems.
 The persistent storage of program objects and data structures is an
important function of database systems.
24
Ashok B P,Asst.Prof,Dept of MCA,TOCE
 Providing Storage Structures for efficient
Query Processing.
 The DBMS utilizes a variety of sophisticated techniques (view, indexes
etc.) (auxiliary files) to store and retrieve the data efficiently that are
utilized to improve the execution time of queries and updates.
 DBMS provides indexes and buffering for fast access of query result,
the choice of index is part of physical database design and tuning.
 The query processing and optimization module of the DBMS is
responsible for choosing an efficient query execution plan for each
query based on the existing storage structures.
25
Ashok B P,Asst.Prof,Dept of MCA,TOCE
 Providing backup and recovery services
 Data should be restored to a consistent state at the time system crash
and changes being made.
 If hardware or software fails in the middle of the update program, the
recovery subsystem of DBMS ensures that update program is resumed
at the point of failure.
 A DBMS must provide facilities for recovering from hardware or
software failures. The backup and recovery subsystem of the DBMS
is responsible for recovery.
 For example, if the computer system fails in the middle of a complex
update transaction, the recovery subsystem is responsible for making
sure that the database is restored to the state it was in before the
transaction started executing.
26
Ashok B P,Asst.Prof,Dept of MCA,TOCE
 Providing Multiple User Interfaces
 Because many types of users with varying levels of technical knowledge
use a database, a DBMS should provide a variety of user interfaces.
 These include query languages for casual users, programming language
interfaces for application programmers, forms and command codes for
parametric users, and menu-driven interfaces and natural language
interfaces for standalone users.
 Both forms-style interfaces and menu-driven interfaces are commonly
known as graphical user interfaces (GUIs)
27
Ashok B P,Asst.Prof,Dept of MCA,TOCE
 Representing Complex Relationships among Data
 A database may include numerous varieties of data that are interrelated
in many ways.
 Consider the example shown in Figure 1.2. The record for ‘Brown’ in the
STUDENT file is related to four records in the GRADE_REPORT file.
Similarly, each section record is related to one course record and to a
number of GRADE_REPORT records—one for each student who
completed that section
28
Ashok B P,Asst.Prof,Dept of MCA,TOCE
 Enforcing Integrity Constraints
 The DBMS have certain integrity constraints that hold on data.
 These constraints are derived from the meaning of the data and of the
miniworld.
 Some constraints can be specified to the DBMS at the time of defining
data definitions and automatically enforced.
 Database does not allow violation of constraints at the time of updating
the database
29
Ashok B P,Asst.Prof,Dept of MCA,TOCE
 Permitting Inferencing and Actions Using Rules
 Deductive database systems provide capabilities for defining deduction
rules for inferencing new information from the stored database facts.
 Triggers can be associated with tables.
 A trigger is a form of a rule activated by updates to the table, which results
in performing some additional operations to some other tables, sending
messages and so on.
 Stored procedure can also be used as a part of the overall database
definition and are invoked appropriately when certain conditions are met.
 Active database provides more powerful functionality by providing the
active rules that can automatically initiate actions when certain events
and conditions occur.
30
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Additional Implications of Using the Database Approach
 Potential 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.
31
Ashok B P,Asst.Prof,Dept of MCA,TOCE
 Flexibility 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.
32
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Data Models, Schemas, and Instances
 Database approach provides data abstraction.
 Database abstraction refers to the suppression of details of data organization
and storage and the highlighting of the essential features for an improved
understanding of data.
 Structure of a database includes data types, relationships, and constraints
that should hold on the data.
 The data model represents data structure and their characterstics,
relations, constraints and transformation.
 A data model is a collection of concepts that can be used to describe
the structure of a database and thus it provides the necessary means
to achieve this abstraction.
 Most data models also include a set of basic operations for specifying
retrievals and updates on the database.
 Data models also include the dynamic aspect or behavior of a database
application.
 Concepts to specify behavior are fundamental to object oriented data models
but are also being incorporated in more traditional relational data models
33
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Categories of Data Models
A number of models for data representation have been proposed.
 High level or conceptual data models
 Provide concepts that how users perceive the data, e.g. ER model
 Object data model group (ODMG): a conceptual model for object
oriented database
 Low level or physical data models
 Provide concepts that describe the details of how data is stored in the
computer e.g. Record formats, record orderings, access path, index etc.
 Representational data models
 Provide the concepts which is in between two extremes
 They hide some details of data storage but can be implemented on a
computer system directly
 Most frequently used in commercial applications is relational data model
(also called record-based data models)
 Other legacy data models are network and hierarchical models.
34
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Schemas, Instances, and Database State
 Description of structure of database & Database itself
 The description of a database is called the database schema which is
specified during database design and is not expected to change
frequently.
 Schema diagram displays structure of each record type but not the
actual instances of records.
 Each object in the schema is known as a schema construct e.g. Student
table.
 A schema diagram displays only some aspects of a schema such as
names of record types and data items, and some type of constraints;
other aspects are not specified.
 The conceptual organization of the entire database as viewed by
the database administrator is called schema.
 It is the portion of the database as viewed by the application
programs is called subschema .
35
Ashok B P,Asst.Prof,Dept of MCA,TOCE
36
Ashok B P,Asst.Prof,Dept of MCA,TOCE
 The data in the database at a particular moment is called a database state
or snapshot.
 This state is also called the current set of occurrences or instances in the
database.
 Many database states can be constructed to correspond to a particular
database.
 When a new database is defined; database state is empty state with no
data.
 When database is populated, database enters in initial state.
 The DBMS is partly responsible for ensuring that every state of the database
is a valid state - that is, a state that satisfies the structure and constraints
specified in the schema.
 Hence, specifying a correct schema to the DBMS is extremely important.
 DBMS stores the descriptions of the schema constructs and constraints in
the catalog (meta-data).
 Schema is called the intension and state is called as extension.
 Changes in application requirements result in schema evolution
37
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Three-Schema Architecture and Data
Independence
 Three-Schema Architecture
 The schema in DBMS can be described at three
levels:
 Internal level has an internal schema
 Conceptual level has a conceptual schema
 External level includes a number of external schemas or
user views
 The information about all three schemas is stored
in the system catalog.
38
Ashok B P,Asst.Prof,Dept of MCA,TOCE
39
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Internal schema
 The internal schema specifies complete details of
storage and access paths for the database.
 File organization on the disk should be decided e.g.
Hashing, indexing etc.
 The process of arriving at a good physical database
schema is called physical database design.
40
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Conceptual schema
 The conceptual schema (or logical schema) describes the structure of the
database.
 The conceptual schema hides the details of physical storage structures
and concentrates on describing entities, data types, relationships, user
operations, and constraints.
 A representational data model is used to describe the conceptual schema
when a database is implemented.
 The process of arriving at a good conceptual database schema is called
conceptual database design.
 Conceptual schema (example)
 Students (sid: string, sname: string, login: string, age: integer, gpa: real)
 Faculty (fid: string, fname: string, sal: real)
 Courses (cid: string, cname: string, credits: integer)
 Rooms (rno: string, address: string, capacity: integer)
 Enrolled (sid: string, cid: string, grade: string)
 Teaches (fid: string, cid: string)
 Meets_in (cid: string, rno: integer, time: string) 41
Ashok B P,Asst.Prof,Dept of MCA,TOCE
External schema
 The external schemas allow data access to be customized at the level of
individual users and hide rest of the details from the users.
 Any database has exactly one conceptual schema and one physical
schema but may have many external schemas in view to support
different users.
 Each external schema consists of a collection of one or more number of
views or tables.
 The external schema design is guided by end user requirements e.g.
Courseinfo (cid, fname, sid)
Important points
 Three schemas are only descriptions of data; the stored data that
actually exists is at the physical level.
 Dbms must transform a request specified on an external schema into a
request against the conceptual schema, and then into a request on the
internal schema for processing over the stored database.
 The process of transforming requests and results between levels are
called mappings. 42
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Data independence
 One of the most important benefits of using three
schema architecture is its support for data
independence.
 Applications are insulated from how data are
structured and stored.
 Data independence is the capacity to change the
schema at one level of a database without changing
the schema at the next higher level.
 Logical data independence
 Physical data independence
43
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Logical data independence
 Protection of user views from changes in logical
structure of data.
 Logical data independence is the capacity to change the
conceptual schema without having to change external
schemas or application programs.
 The logical data independence may be best understood
by first considering the data dependent property. This
means that one should be aware of how the data is stored
in the physical storage and how to access them.
 In logical data independence if the conceptual schema is
changed then there is no need to change the external
level schema.
44
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Physical data independence
 Protection of logical structure from changes in
physical structure of data.
 Physical data independence is the capacity to change
the internal schema without having to change
conceptual schemas.
Important points
 Physical data independence exists in most databases.
 But logical data independence is hard to achieve.
 Data independence occurs because when the schema is changed at
some level, the schema at higher level remains unchanged; only the
mapping between the two levels is changed.
 Two levels of mappings create an overhead during compilation or
execution of a query or program, leading to inefficiencies in the DBMS.
45
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Database Languages and Interfaces
 Data Definition Language (DDL)
 Storage Definition Language (SDL)
 View Definition Language (VDL)
 Data Manipulation Language (DML)
 A high level or nonprocedural DML
 A low level or procedural DML
46
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Data Definition Language (DDL)
 In most of the DBMS, there is no separate language for
internal and conceptual schema, DDL is used by DBA
and Designers.
 The DBMS will have a DDL compiler which process
the DDL statements.
Storage Definition Language (SDL)
 If distinct languages are used, DDL is used to specify
conceptual schema and SDL is used to specify internal
schema.
 The mapping between the two schemas may be
specified in either of the language.
47
Ashok B P,Asst.Prof,Dept of MCA,TOCE
View Definition Language (VDL)
 For true three-schema architecture, VDL is required for external schema and
its mapping with conceptual schema.
 In relational dbms, SQL is used in the role of VDL to define views as results of
predefined queries.
Data Manipulation Language (DML)
 DBMS provides a set of operations like insertion, modification and deletion
through DML
High level or nonprocedural DML
 It can be used on its own to specify complex database operations.
 These statements can be entered interactively from a display monitor or
terminal.
 These can be embedded in a general purpose programming language where
they can be extracted by a precompiler and processed by the DBMS.
 This can specify and retrieve many records in a single DML statement, thus
known as set-at-a-time or set-oriented dbms (eg. SQL)
 Also known as declarative language
48
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Low level or procedural DML
 It must be embedded in a general purpose programming language.
 This retrieves individual records from the database and processes each
separately.
 Thus it needs programming language constructs like loops.
 This is also known as record-at-a-time (eg. DL/1)
Important points
 Whenever a DML is embedded in a general purpose language, that
language is called host language and DML is data sublanguage.
 A high level DML used in a standalone interactive manner is called a
query language.
 Naïve and parametric users generally interact with database through
user friendly interfaces.
49
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Database Interfaces
 Menu-based Interfaces for Web Clients or Browsing
 Form-based Interfaces
 Graphical Interfaces
 Natural Language Interfaces
 Speech Input and Output
 Interfaces for parametric Users
 Interfaces for DBA
50
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Menu-based Interfaces for Web Clients or Browsing
 These interfaces present the users with lists of options
(called menus) that help the user in formulation of
query request.
 The query is composed step by step by picking options
from a menu that is displayed by the system.
 Pull-down menu is a popular technique in Web-based
user interfaces.
 They are used in browsing interfaces, which allow a
user to browse the content of a database in an
exploratory and unstructured manner.
51
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Form-based Interfaces
 Forms are designed and programmed for naïve users.
 User can fill up the form for new entries in database.
 User can also fill up few entries and rest of the
matching entries are retrieved from the database.
 Many dbms have specification languages, which help
programmers specify such forms.
 Oracle Forms, a component of Oracle Developer suite,
provides an extensive set of features to design and
build applications using forms.
52
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Graphical Interfaces
 A GUI displays a schema to the user in diagrammatic
form.
 Users can specify a query by manipulating the
diagram.
 GUI utilizes both menus and forms.
 A pointing device, mouse, can be used
53
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Natural Language Interfaces
 A natural language interface has its own schema and a dictionary of
important words.
 The natural language interface refers to the words in its schema and to the
set of standard words in dictionary.
 If the interpretation is successful, the interface generates a high level query
corresponding to the natural language request and submits it to DBMS for
further processing.
 If interpretation is not successful, a dialogue is started with the user to
clarify the request.
Speech Input and Output
 It provides limited use of speech as an input query and speech as an answer
to a question or result of a request e.g. Telephone directory, Flight arrival
/departure, and Bank account information etc.
 The speech input is detected using a library of predetermined words and
used to set up the parameters that are supplied to the queries.
 For output, similar conversion from text or numbers into speech takes
place 54
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Interfaces for parametric Users
 A special interface is implemented for each known class
of naive users e.g. Bank tellers
 Special functions keys can be programmed to do repeated
work fast.
Interfaces for DBA
 DBA Staff can use privileged commands for creating
accounts, setting system parameters, granting account
authorization, changing a schema and reorganizing the
storage structure of the database.
55
Ashok B P,Asst.Prof,Dept of MCA,TOCE
The Database System Environment
56
Ashok B P,Asst.Prof,Dept of MCA,TOCE
DBMS Component Modules
 The database and dbms catalog are stored on disk.
 A stored data manager (module of dbms) controls access to
dbms information that is stored on disk whether it is part of
the database or catalog.
 Various users such as
 DBA staff & casual users work with interactive interfaces to
formulate queries.
 Application programmers write programs using host
language.
 Parametric users make data entry to database through
predefined forms.
 DBA staff works on defining the database and tuning it using
DDL and other privileged commands
57
Ashok B P,Asst.Prof,Dept of MCA,TOCE
 DDL compiler processes schema definitions, specified in the DDL, and stores
description of the schema in the dbms catalog.
 Queries are parsed, analyzed for correctness of the operations and names of
data elements by query compiler that compiles them into an internal form.
 Internal query is subjected to query optimization by query optimizer.
 The precompiler extracts DML commands from an application program and
sends to dml compiler for compilation.
 Rest of the program is sent to host language compiler.
 The object codes for the DML commands and rest of the program are linked,
forming a canned transaction whose executable code includes calls to runtime
database processor.
 Parametric users supply the parameters to these canned transactions directly
so they can run transactions repeatedly.
 Runtime database processor executes
 Privileged commands
 Executable query plans
 Canned transactions with runtime parameters.
58
Ashok B P,Asst.Prof,Dept of MCA,TOCE
 It works with the system dictionary, stored data manager
which in turn uses basic os services for carrying out low
level input/output operations between disk and memory.
 It also handles some aspects of management of buffers in
main memory; some dbms have their own buffer
management.
 Concurrency control, backup and recovery manager are
integrated into the working of the runtime database
processor for purposes of transaction management
59
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Database System Utilities
 Loading
 Backup
 Database storage reorganization
 Performance monitoring
Few other utilities:
 Sorting files
 Handling data compression
 Monitoring access by users
 Interfacing with networks
60
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Loading
 It is used to load existing data files (text files or sequential files) into the
database.
 Format of source data file and target data file are specified to the utility.
 Utility reformats the data and stores it in the database
 Some vendors offer the tools, conversion tools, with loading programs,
formats of source data file and target database.
 e.g. IMS (IBM), IDMS (Computer Associates), SUPRA (CINCOM),
IMAGE (HP)
Backup
 It creates backup copy of the database, usually dumping the entire
database onto the tape.
 Back up copy can be used to restore the database in case of catastrophic
failure.
 Incremental backups can also be used, where only changes since previous
backup are recorded.
 Incremental backup is more complex but saves memory. 61
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Database storage reorganization
 It can be used to reorganize a set of database files into a
different file organization to improve performance.
Performance monitoring
 It monitors database usage and provides statistics to DBA
in making decisions such as whether or not to reorganize
files or whether to add or drop indexes to improve
performance
62
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Tools, Application Environments, and Communications
Facilities
Tools
 CASE tools are used in design phase of database systems.
 Expanded Data dictionary (data repository) is used to store
catalog information about schema & constraints, and also
design decision, usage standards, application program
descriptions, and user information, thus known as
information repository.
 This information can be accessed directly by users and DBA.
Application Environments
 These system provide an environment for developing database
applications and includes facilities that help in many facets of
database systems
63
Ashok B P,Asst.Prof,Dept of MCA,TOCE
 These include database design, GUI development,
querying and updating and application program
development.
e.g. PowerBuilder (Sybase), JBuilder (Borland)
Communications software
 This software allows the users to access remotely
located database through computer terminals,
workstations or other personal computers.
 These users are connected to the database site through
data communications hardware such as phone lines,
local networks, or satellite.
 The integrated DBMS and data communications
system is called a DB/DC system.
64
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Centralized and Client/Server
Architectures for DBMSs
Centralized DBMSs Architecture
65
Ashok B P,Asst.Prof,Dept of MCA,TOCE
 Earlier architectures used mainframe computers to
provide the main processing for all system functions,
user application programs, user interface programs, and
also all DBMSs functionality.
 User accessed such systems via computer terminals that
did not have processing power and only provided display
capabilities.
 These computer terminals are connected to the central
computer via various types of communication network.
66
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Basic Client/Server Architectures
67
Ashok B P,Asst.Prof,Dept of MCA,TOCE
 Specialized servers are responsible for specific
functionalities e.g. print server, file server, web server,
e-mail servers etc.
 The client machines provide the user with the
appropriate interfaces to utilize these services, as well
as with local processing power to run local
applications.
 Some clients may be diskless workstations, some may
be dedicated server, and some may work both as client
and server.
68
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Two-Tier Client/Server Architectures for DBMSs
In RDBMSs
 Client had user interface and application programs
 Server provided query and transaction functionalities related to SQL
 Server is called a query server or transaction server or SQL server.
 When DBMS access is required, the program establishes a connection to
DBMS
 Once connection is established, client program can communicate with
DBMS.
 A standard called Open Database Connectivity (ODBC) provides an
application programming interface (API), which allows client-side
programs to call DBMS.
 Any query results are sent back to the client program and can be
displayed or used for further process.
 Most DBMS vendors provide ODBC drivers for their systems.
 JDBC is a standard that allows Java client programs to access the DBMS.
69
Ashok B P,Asst.Prof,Dept of MCA,TOCE
In object oriented DBMSs,
 Software modules of the DBMS are divided between client and server
in a more integrated way.
 Server may include the part of the DBMS software responsible for
handling data storage on disk pages, local concurrency control and
recovery, buffering and caching of disk pages etc.
 Client may handle the user interface, data dictionary functions, DBMS
interactions with programming language compilers, structuring of
complex objects from the buffers etc.
 In this approach the client and server interaction is more tightly
coupled.
 The exact division of the functionality varies from system to system.
 In this case server is called data server.
70
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Three-Tier Architectures for Web Applications
71
Ashok B P,Asst.Prof,Dept of MCA,TOCE
 Web applications use an architecture called the three-tier architecture,
which adds an intermediate layer between client and the database
server.
 Thus, three tiers provide the following:
 User interface
 Application rules
 Data access
 Clients contain GUI (user interface) and some additional application
specific business rules.
 Database server includes database services.
 The intermediate layer or middle tier is also known as application
server or Web server depending on the application.
 Middle layer stores business logic (procedures, constraints) that are
used to access data from the database server.
 Middle layer also improve database security by checking a client’s
details before forwarding a request to the database server
72
Ashok B P,Asst.Prof,Dept of MCA,TOCE
N-Tier Architectures for Web Applications
 Bottom layer in three-tier architecture includes all data
management services.
 If the bottom layer is split into two layers (a web server
and a database server), then this becomes a four tier
architecture.
 Layers between user and the stored data can be
defined into finer components, thus gives n-tier
architecture
73
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Classification of Database Management Systems
Based on number of users:
 Single User Systems: with PCs
 Multiuser Systems: majority of DBMS
Based on number of sites over which database is distributed:
 Centralized DBMS: Data is stored at a single computer site
 Distributed DBMS: Database and DBMS software are distributed over
many sites connected by a computer network.
 Homogeneous: Same DBMS software at multiple sites
 Heterogeneous: Participating DBMS have a degree of local autonomy.
This leads to federated (multi-database system) Database in which
participating DBMSs are loosely coupled.
74
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Based on cost:
 Open Source DBMS: (MySQL, PostgresSQL)
 Main RDBMS products are available as 30 days versions, Many
vendors support with additional facilities and sell.
 Giant systems are sold in modular form according the configuration
required. (e.g. components to handle distribution, replication,
parallel processing)
 License based
 Site license allow unlimited use of database system with any number
of copies running at customer site.
 License limits the number of concurrent users at a location.
 Standalone single user versions are sold per copy or included in
desktop or laptop configuration e.g. ACCESS
75
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Based on data model:
 Hierarchical data model
 Network data model
 Object data model
 Relational data model
 Object-Relational data model
76
Ashok B P,Asst.Prof,Dept of MCA,TOCE
 Network model
 Network data model contains many links among various items of the data.
This model organizes data using two fundamental constructs, called
records and sets. Records contain fields, and sets define one-to-many
relationships between records.
 Example: IDMS (Cullinet – now Computer Associates), DMS 1100 (Univac –
now Unisys), IMAGE (Hewlett-Packard), VAX-DBMS (Digital – now
Compaq), SUPRA (Cincom)
 In 1969, the Conference on Data Systems Languages on Database Task
Group (CODASYL DBTG) established the first specification of the network
database model and its language.
 Network model is also known as CODASYL DBTG model.
 Network model represents data as record types and also represents a
limited type of 1:N relationship, called a set type.
 A 1:N relationship relates one instance of a record to many record instances
using some pointer linking mechanism in these model.
77
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Hierarchical data model
 Hierarchical data model is constructed using a tree model, with one root and
several levels of subtrees.
 Example: IMS (IBM) is used at governmental and industrial installations,
hospitals and banks
 Each parent can have many children but each child has only one parent.
 All attributes of a specific record are listed under an entity type.
 In a database, an entity type is the equivalent of a table; each individual
record is represented as a row and an attribute as a column.
 Entity types are related to each other using 1: N mapping, also known as one-
to-many relationships.
 There is no standard language for hierarchical model.
 A popular hierarchical DML is DL/1 of the IMS system which dominated
market for 20 years (1965-1985).
 DL/1 has commands to locate a record e.g.
 GET {UNIQUE, NEXT} <record-type> WHERE <condition> 78
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Object Data Model
 Object data model is based on object oriented
approach i.e. objects, classes with their attributes and
operations. ODMG object model provides standards
for commercial object data model.
 Example: Some object-oriented databases are designed
to work well with object-oriented programming
languages such as Python, Java, C#, Visual Basic .NET,
C++, Objective-C and Smalltalk; others have their own
programming languages
79
Ashok B P,Asst.Prof,Dept of MCA,TOCE
 Relational data model
 Relational data model represents the database as a
collection of relations.
 Example: MySQL, Oracle, SQL Server etc.
80
Ashok B P,Asst.Prof,Dept of MCA,TOCE
Object-Relational data model
 Object-Relational data model is relational model having the
capabilities of object database.
 Objects, classes and inheritance are directly supported in database
schemas and in the query language
 Example: Informix Universal Server, Oracle (due to enhanced features),
Data blades (Informix), Cartridges (Oracle)
Based on purpose of use:
 General Purpose: These DBMS systems can be used for variety of
applications.
 Special Purpose: A DBMS system is designed for a special application
e.g. Online transaction processing (OLTP) (online reservation systems)
81
Ashok B P,Asst.Prof,Dept of MCA,TOCE

More Related Content

Similar to 20MCA21_Module1.ppt (20)

PDF
IMPORTANT QUESTIONS OF Data Base Management System MGU
aljufmuhammad
 
PPT
Unit-1-Introduction.ppt for the gigachad
sanketkashyap6
 
DOCX
DATABASE MANAGEMENT SYSTEM UNIT-I Chapter-1
Raj vardhan
 
PDF
dbms Lesson for the Engineering students.pdf
hpndegreecollegesklm
 
PDF
Unit 2 rdbms study_material
gayaramesh
 
PPTX
Relational database management system and their application
tpriyadharsiniit
 
PPT
Chapter 1 - testing
jlope438
 
PPTX
Introduction DBMS.pptx
ShivareddyGangam
 
PPT
En ch01
anibapi
 
PPT
Mca ii-dbms- u-i-introductory concepts of dbms
Rai University
 
PPT
Dbms models
devgocool
 
PPT
DataMgt - UNIT-I .PPT
BhaskarPatil24
 
PPTX
DBMS Part1.pptx
Prof. Dr. K. Adisesha
 
PPTX
DBMS.pptx
Prof. Dr. K. Adisesha
 
PPTX
DBMS and its Models
AhmadShah Sultani
 
PPTX
Introduction to Data Base Management System.pptx
SandeepY10
 
PPT
Bsc cs ii-dbms- u-i-database systems
Rai University
 
PPTX
DBMS_Chapter1_Introduction_to_database.pptx
shruthis866876
 
PPTX
Dbms Useful PPT
Krishna Bashyal
 
PPT
Database, Lecture-1.ppt
MatshushimaSumaya
 
IMPORTANT QUESTIONS OF Data Base Management System MGU
aljufmuhammad
 
Unit-1-Introduction.ppt for the gigachad
sanketkashyap6
 
DATABASE MANAGEMENT SYSTEM UNIT-I Chapter-1
Raj vardhan
 
dbms Lesson for the Engineering students.pdf
hpndegreecollegesklm
 
Unit 2 rdbms study_material
gayaramesh
 
Relational database management system and their application
tpriyadharsiniit
 
Chapter 1 - testing
jlope438
 
Introduction DBMS.pptx
ShivareddyGangam
 
En ch01
anibapi
 
Mca ii-dbms- u-i-introductory concepts of dbms
Rai University
 
Dbms models
devgocool
 
DataMgt - UNIT-I .PPT
BhaskarPatil24
 
DBMS Part1.pptx
Prof. Dr. K. Adisesha
 
DBMS and its Models
AhmadShah Sultani
 
Introduction to Data Base Management System.pptx
SandeepY10
 
Bsc cs ii-dbms- u-i-database systems
Rai University
 
DBMS_Chapter1_Introduction_to_database.pptx
shruthis866876
 
Dbms Useful PPT
Krishna Bashyal
 
Database, Lecture-1.ppt
MatshushimaSumaya
 

Recently uploaded (20)

DOCX
ANNOTATION on objective 10 on pmes 2022-2025
joviejanesegundo1
 
PPTX
Peer Teaching Observations During School Internship
AjayaMohanty7
 
PDF
Lesson 1 : Science and the Art of Geography Ecosystem
marvinnbustamante1
 
PPTX
Iván Bornacelly - Presentation of the report - Empowering the workforce in th...
EduSkills OECD
 
PPT
M&A5 Q1 1 differentiate evolving early Philippine conventional and contempora...
ErlizaRosete
 
PDF
Public Health For The 21st Century 1st Edition Judy Orme Jane Powell
trjnesjnqg7801
 
PDF
DIGESTION OF CARBOHYDRATES ,PROTEINS AND LIPIDS
raviralanaresh2
 
PPTX
ESP 10 Edukasyon sa Pagpapakatao PowerPoint Lessons Quarter 1.pptx
Sir J.
 
PPTX
Elo the HeroTHIS IS A STORY ABOUT A BOY WHO SAVED A LITTLE GOAT .pptx
JoyIPanos
 
PPTX
Urban Hierarchy and Service Provisions.pptx
Islamic University of Bangladesh
 
PPTX
How to Create & Manage Stages in Odoo 18 Helpdesk
Celine George
 
PDF
Supply Chain Security A Comprehensive Approach 1st Edition Arthur G. Arway
rxgnika452
 
PDF
Free eBook ~100 Common English Proverbs (ebook) pdf.pdf
OH TEIK BIN
 
PDF
The Power of Compound Interest (Stanford Initiative for Financial Decision-Ma...
Stanford IFDM
 
PPTX
Aerobic and Anaerobic respiration and CPR.pptx
Olivier Rochester
 
PDF
Romanticism in Love and Sacrifice An Analysis of Oscar Wilde’s The Nightingal...
KaryanaTantri21
 
PPTX
Tanja Vujicic - PISA for Schools contact Info
EduSkills OECD
 
PDF
VCE Literature Section A Exam Response Guide
jpinnuck
 
PDF
Learning Styles Inventory for Senior High School Students
Thelma Villaflores
 
DOCX
MUSIC AND ARTS 5 DLL MATATAG LESSON EXEMPLAR QUARTER 1_Q1_W1.docx
DianaValiente5
 
ANNOTATION on objective 10 on pmes 2022-2025
joviejanesegundo1
 
Peer Teaching Observations During School Internship
AjayaMohanty7
 
Lesson 1 : Science and the Art of Geography Ecosystem
marvinnbustamante1
 
Iván Bornacelly - Presentation of the report - Empowering the workforce in th...
EduSkills OECD
 
M&A5 Q1 1 differentiate evolving early Philippine conventional and contempora...
ErlizaRosete
 
Public Health For The 21st Century 1st Edition Judy Orme Jane Powell
trjnesjnqg7801
 
DIGESTION OF CARBOHYDRATES ,PROTEINS AND LIPIDS
raviralanaresh2
 
ESP 10 Edukasyon sa Pagpapakatao PowerPoint Lessons Quarter 1.pptx
Sir J.
 
Elo the HeroTHIS IS A STORY ABOUT A BOY WHO SAVED A LITTLE GOAT .pptx
JoyIPanos
 
Urban Hierarchy and Service Provisions.pptx
Islamic University of Bangladesh
 
How to Create & Manage Stages in Odoo 18 Helpdesk
Celine George
 
Supply Chain Security A Comprehensive Approach 1st Edition Arthur G. Arway
rxgnika452
 
Free eBook ~100 Common English Proverbs (ebook) pdf.pdf
OH TEIK BIN
 
The Power of Compound Interest (Stanford Initiative for Financial Decision-Ma...
Stanford IFDM
 
Aerobic and Anaerobic respiration and CPR.pptx
Olivier Rochester
 
Romanticism in Love and Sacrifice An Analysis of Oscar Wilde’s The Nightingal...
KaryanaTantri21
 
Tanja Vujicic - PISA for Schools contact Info
EduSkills OECD
 
VCE Literature Section A Exam Response Guide
jpinnuck
 
Learning Styles Inventory for Senior High School Students
Thelma Villaflores
 
MUSIC AND ARTS 5 DLL MATATAG LESSON EXEMPLAR QUARTER 1_Q1_W1.docx
DianaValiente5
 
Ad

20MCA21_Module1.ppt

  • 2.  Introduction  Characteristics of The Database Approach.  Actors on The Scene  Workers Behind The Scene  Advantages of Using The DBMS Approach  Data Models, Schemas And Instances  Three Schema Architecture And Data Independence  Database Languages And Interfaces  The Database Environment  Centralized And Client/Server Architecture For DBMS  Classification Of Database Management Systems 2 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 3. INTRODUCTION Database: A collection of related data. Data: Known facts that can be recorded and have an implicit meaning. Miniworld: Some part of the real world about which data is stored in a database. For example: student grades and empno. 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. Example of DBMS Packages… Oracle, Sybase, Ms-Access etc 3 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 4. Simplified database system environment 4 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 5. Typical DBMS Functionality  Define a particular database in terms of its data types, structures, and constraints.  The data base definition stored in database in the form of database catalog or dictionary called as “META-DATA”.  Constructing is a process of storing data on a secondary storage medium  Manipulating the database: Retrieval: Querying, generating reports Modification: Insertions, deletions and updates to its content Accessing the database through Web applications  Sharing by a set of concurrent users and program to access database simultaneously. 5 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 6. Example of a Database Miniworld for the example: Part of a UNIVERSITY environment. Some miniworld Entities : STUDENTs COURSEs SECTIONs ( COURSEs) (academic) DEPARTMENTs INSTRUCTORs 6 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 7. Example of a simple database 7 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 8. Why DBMS? • The primary goal of a DBMS is to provide a way to store and retrieve database information that is both convenient and efficient. • If data are to be shared among several users, the system must avoid possible anomalous results. • The database system must ensure the safety of the information stored, despite system crashes or attempts at unauthorized access. 8 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 9. Functions of DBMS  Data Definition: Define and store database structure.  Load database data.  Data Maintenance: store and maintain data. It takes care to see that each record has field containing information about respective data items.  Data Manipulation: Allow user to insert, delete, update and sort database.  Provide security features: DBMS protect the database against unauthorized access, unintentional change that could be caused by users and application programs.  Provide multiple views of data and wide variety of access methods: DBMS is capable of notifying any changes to the database to the other users in case of multi-user system.  Concurrency control: enforce control over concurrent operations i.e. coordinates simultaneous access to shared data and the same time ensure consistency of the shared data.  Facilitate backup and recovery: of data in a database so that consistency and integrity of data should not be affected when a transactions fails or aborted. 9 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 10. Database System Applications • Banking: customer information, accounts, and loans, and banking transactions. • Airlines: reservations and schedule information. Airlines were among the First to use databases in a geographically distributed manner—terminals situated around the world accessed the central database system through phone lines and other data networks. • Universities: student information, course registrations, and grades. • Credit card transactions: purchases on credit cards and generation of monthly Statements. • Telecommunication: keeping records of calls made, generating monthly bills, maintaining balances on prepaid calling cards and storing information about the communication networks. • Finance: storing information about holdings, sales, and purchases of financial instruments such as stocks and bonds. • Sales: customer, product, and purchase information. • Manufacturing: management of supply chain and for tracking production of items in factories, inventories of items in warehouses/stores, and orders for items. • Human resources: information about employees, salaries, payroll taxes and benefits, and for generation of paychecks. 10 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 11. Characteristics of the Database Approach  Self-describing nature of a database system:  A DBMS catalog stores the description of a particular database (e.g. data structures, types, and constraints)  The description is called meta-data.  This allows the DBMS software to work with different database applications.  Insulation between programs and data:  Called program-data independence.  Allows changing data structures and storage organization without having to change the DBMS access programs. 11 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 12. Example of a simplified database catalog 12 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 13. Main Characteristics of the Database Approach  Data Abstraction:  A data model is used to hide storage details and present the users with a conceptual view of the database.  Programs refer to the data model constructs rather than data storage details  Support of multiple views of the data:  Each user may see a different view of the database, which describes only the data of interest to that user. 13 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 14.  Sharing of data and multi-user transaction processing:  Allowing a set of concurrent users to retrieve from and to update the database.  Concurrency control within the DBMS guarantees that each transaction is correctly executed or aborted  Recovery subsystem ensures each completed transaction has its effect permanently recorded in the database  OLTP (Online Transaction Processing) is a major part of database applications. This allows hundreds of concurrent transactions to execute per second 14 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 15. Database Users Users may be divided into Those who actually use and control the database content, and those who design, develop and maintain database applications (called “Actors on the Scene”), and Those who design and develop the DBMS software and related tools, and the computer systems operators (called “Workers Behind the Scene”). 15 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 16. Actors on the scene Database administrators: Responsible for authorizing access to the database, for coordinating and monitoring its use, acquiring software and hardware resources , controlling its use and monitoring efficiency of operations. Managing the resources Creation of user accounts(database access) Providing Security and authorization Manage poor system response time etc. Restoration of the system after failure(system recovery) Tuning the database depending upon the needs of the users Database Designers: Responsible to define the content, the structure, the constraints, and functions or transactions against the database. They must communicate with the end users and understand their needs. 16 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 17. Categories of Endusers Actors on the scene (continued) Endusers: They use the data for queries, reports and some of them update the database content. Endusers can be categorized into: Casual: access database occasionally when they Needed. They may need different information each time. Parametric: They access the database constantly with standard types of queries and updates called canned transaction.  Examples : Bank-tellers or reservation clerks who do this activity for an entire shift of operations. 17 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 18. Sophisticated: These include business analysts, scientists, engineers, others thoroughly familiar with the system capabilities. Standalone: Mostly maintains personal databases using readytous packaged applications. An example : a tax program user that creates its own internal database. Another example : a user that maintains an address book . 18 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 19. Workers behind the Scene  DBMS system designers and implementers are persons who design and implement the DBMS modules and interfaces as a software package. A DBMS is a complex software system that consists of many components or modules, including modules for implementing the catalog, query language, interface processors, data access, concurrency control, recovery, and security .  Tool developers include persons who design and implement tools—the software packages that facilitate database system design and use, and help improve performance. Tools are optional packages that are often purchased separately . 19 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 20.  Operators and maintenance personnel are the system administration personnel who are responsible for the actual running and maintenance of the hardware and software environment for the database system 20 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 21. Advantages of Using the Database Approach  Controlling redundancy  Restricting unauthorized access to data.  Providing Persistent Storage for program objects  Providing Storage Structures for efficient Query Processing,  Providing backup and recovery services.  Providing multiple interfaces  Representing complex relationships among data.  Enforcing Integrity Constraints  Permitting Inferencing and Actions using Rules  Additional Implication of using the Database Approach 21 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 22.  Controlling redundancy  In the file processing approach, each user defines and implements the files needed and software applications to manipulate those files.  Various files are likely to have different formats and programs may be written in different languages and same information may be duplicated in several files.  Data redundancy leads to  wasted storage space,  duplication of effort (when multiple copies of a datum need to be updated),  a higher likelihood of the introduction of inconsistency.  Database design stores each logical data item at one place to ensure consistency and saves storage.  But sometimes, controlled redundancy is necessary to improve the performance.  Database should have capability to control this redundancy & maintain consistency by specifying the checks during database design. 22 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 23.  Restricting unauthorized access to data  When multiple users share a database, it is likely that some users will not be authorized to access all information in the database.  For example, financial data is often considered confidential, and hence only authorized persons are allowed to access such data.  In addition, some users may be permitted only to retrieve data, whereas others are allowed both to retrieve and to update.  Hence, the type of access operation—retrieval or update—must also be controlled.  A DBMS provides a security and authorization subsystem, which is used by DBA to create user accounts and to specify restrictions on user accounts.  File processing system provides password mechanism and very less security which is not sufficient to enforce security policies like DBMS 23 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 24.  Providing Persistent Storage for program objects  Object oriented database systems are compatible with programming languages such as C++ and Java.  A OODBMS software automatically performs the conversion of a complex object which can be stored in OODBMS, thus an object is said to be persistent due to its survival after the termination of the program.  Databases can be used to provide persistent storage for program objects and data structures. This is one of the main reasons for the emergence of the object-oriented database systems.  The persistent storage of program objects and data structures is an important function of database systems. 24 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 25.  Providing Storage Structures for efficient Query Processing.  The DBMS utilizes a variety of sophisticated techniques (view, indexes etc.) (auxiliary files) to store and retrieve the data efficiently that are utilized to improve the execution time of queries and updates.  DBMS provides indexes and buffering for fast access of query result, the choice of index is part of physical database design and tuning.  The query processing and optimization module of the DBMS is responsible for choosing an efficient query execution plan for each query based on the existing storage structures. 25 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 26.  Providing backup and recovery services  Data should be restored to a consistent state at the time system crash and changes being made.  If hardware or software fails in the middle of the update program, the recovery subsystem of DBMS ensures that update program is resumed at the point of failure.  A DBMS must provide facilities for recovering from hardware or software failures. The backup and recovery subsystem of the DBMS is responsible for recovery.  For example, if the computer system fails in the middle of a complex update transaction, the recovery subsystem is responsible for making sure that the database is restored to the state it was in before the transaction started executing. 26 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 27.  Providing Multiple User Interfaces  Because many types of users with varying levels of technical knowledge use a database, a DBMS should provide a variety of user interfaces.  These include query languages for casual users, programming language interfaces for application programmers, forms and command codes for parametric users, and menu-driven interfaces and natural language interfaces for standalone users.  Both forms-style interfaces and menu-driven interfaces are commonly known as graphical user interfaces (GUIs) 27 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 28.  Representing Complex Relationships among Data  A database may include numerous varieties of data that are interrelated in many ways.  Consider the example shown in Figure 1.2. The record for ‘Brown’ in the STUDENT file is related to four records in the GRADE_REPORT file. Similarly, each section record is related to one course record and to a number of GRADE_REPORT records—one for each student who completed that section 28 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 29.  Enforcing Integrity Constraints  The DBMS have certain integrity constraints that hold on data.  These constraints are derived from the meaning of the data and of the miniworld.  Some constraints can be specified to the DBMS at the time of defining data definitions and automatically enforced.  Database does not allow violation of constraints at the time of updating the database 29 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 30.  Permitting Inferencing and Actions Using Rules  Deductive database systems provide capabilities for defining deduction rules for inferencing new information from the stored database facts.  Triggers can be associated with tables.  A trigger is a form of a rule activated by updates to the table, which results in performing some additional operations to some other tables, sending messages and so on.  Stored procedure can also be used as a part of the overall database definition and are invoked appropriately when certain conditions are met.  Active database provides more powerful functionality by providing the active rules that can automatically initiate actions when certain events and conditions occur. 30 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 31. Additional Implications of Using the Database Approach  Potential 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. 31 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 32.  Flexibility 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. 32 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 33. Data Models, Schemas, and Instances  Database approach provides data abstraction.  Database abstraction refers to the suppression of details of data organization and storage and the highlighting of the essential features for an improved understanding of data.  Structure of a database includes data types, relationships, and constraints that should hold on the data.  The data model represents data structure and their characterstics, relations, constraints and transformation.  A data model is a collection of concepts that can be used to describe the structure of a database and thus it provides the necessary means to achieve this abstraction.  Most data models also include a set of basic operations for specifying retrievals and updates on the database.  Data models also include the dynamic aspect or behavior of a database application.  Concepts to specify behavior are fundamental to object oriented data models but are also being incorporated in more traditional relational data models 33 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 34. Categories of Data Models A number of models for data representation have been proposed.  High level or conceptual data models  Provide concepts that how users perceive the data, e.g. ER model  Object data model group (ODMG): a conceptual model for object oriented database  Low level or physical data models  Provide concepts that describe the details of how data is stored in the computer e.g. Record formats, record orderings, access path, index etc.  Representational data models  Provide the concepts which is in between two extremes  They hide some details of data storage but can be implemented on a computer system directly  Most frequently used in commercial applications is relational data model (also called record-based data models)  Other legacy data models are network and hierarchical models. 34 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 35. Schemas, Instances, and Database State  Description of structure of database & Database itself  The description of a database is called the database schema which is specified during database design and is not expected to change frequently.  Schema diagram displays structure of each record type but not the actual instances of records.  Each object in the schema is known as a schema construct e.g. Student table.  A schema diagram displays only some aspects of a schema such as names of record types and data items, and some type of constraints; other aspects are not specified.  The conceptual organization of the entire database as viewed by the database administrator is called schema.  It is the portion of the database as viewed by the application programs is called subschema . 35 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 37.  The data in the database at a particular moment is called a database state or snapshot.  This state is also called the current set of occurrences or instances in the database.  Many database states can be constructed to correspond to a particular database.  When a new database is defined; database state is empty state with no data.  When database is populated, database enters in initial state.  The DBMS is partly responsible for ensuring that every state of the database is a valid state - that is, a state that satisfies the structure and constraints specified in the schema.  Hence, specifying a correct schema to the DBMS is extremely important.  DBMS stores the descriptions of the schema constructs and constraints in the catalog (meta-data).  Schema is called the intension and state is called as extension.  Changes in application requirements result in schema evolution 37 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 38. Three-Schema Architecture and Data Independence  Three-Schema Architecture  The schema in DBMS can be described at three levels:  Internal level has an internal schema  Conceptual level has a conceptual schema  External level includes a number of external schemas or user views  The information about all three schemas is stored in the system catalog. 38 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 40. Internal schema  The internal schema specifies complete details of storage and access paths for the database.  File organization on the disk should be decided e.g. Hashing, indexing etc.  The process of arriving at a good physical database schema is called physical database design. 40 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 41. Conceptual schema  The conceptual schema (or logical schema) describes the structure of the database.  The conceptual schema hides the details of physical storage structures and concentrates on describing entities, data types, relationships, user operations, and constraints.  A representational data model is used to describe the conceptual schema when a database is implemented.  The process of arriving at a good conceptual database schema is called conceptual database design.  Conceptual schema (example)  Students (sid: string, sname: string, login: string, age: integer, gpa: real)  Faculty (fid: string, fname: string, sal: real)  Courses (cid: string, cname: string, credits: integer)  Rooms (rno: string, address: string, capacity: integer)  Enrolled (sid: string, cid: string, grade: string)  Teaches (fid: string, cid: string)  Meets_in (cid: string, rno: integer, time: string) 41 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 42. External schema  The external schemas allow data access to be customized at the level of individual users and hide rest of the details from the users.  Any database has exactly one conceptual schema and one physical schema but may have many external schemas in view to support different users.  Each external schema consists of a collection of one or more number of views or tables.  The external schema design is guided by end user requirements e.g. Courseinfo (cid, fname, sid) Important points  Three schemas are only descriptions of data; the stored data that actually exists is at the physical level.  Dbms must transform a request specified on an external schema into a request against the conceptual schema, and then into a request on the internal schema for processing over the stored database.  The process of transforming requests and results between levels are called mappings. 42 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 43. Data independence  One of the most important benefits of using three schema architecture is its support for data independence.  Applications are insulated from how data are structured and stored.  Data independence is the capacity to change the schema at one level of a database without changing the schema at the next higher level.  Logical data independence  Physical data independence 43 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 44. Logical data independence  Protection of user views from changes in logical structure of data.  Logical data independence is the capacity to change the conceptual schema without having to change external schemas or application programs.  The logical data independence may be best understood by first considering the data dependent property. This means that one should be aware of how the data is stored in the physical storage and how to access them.  In logical data independence if the conceptual schema is changed then there is no need to change the external level schema. 44 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 45. Physical data independence  Protection of logical structure from changes in physical structure of data.  Physical data independence is the capacity to change the internal schema without having to change conceptual schemas. Important points  Physical data independence exists in most databases.  But logical data independence is hard to achieve.  Data independence occurs because when the schema is changed at some level, the schema at higher level remains unchanged; only the mapping between the two levels is changed.  Two levels of mappings create an overhead during compilation or execution of a query or program, leading to inefficiencies in the DBMS. 45 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 46. Database Languages and Interfaces  Data Definition Language (DDL)  Storage Definition Language (SDL)  View Definition Language (VDL)  Data Manipulation Language (DML)  A high level or nonprocedural DML  A low level or procedural DML 46 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 47. Data Definition Language (DDL)  In most of the DBMS, there is no separate language for internal and conceptual schema, DDL is used by DBA and Designers.  The DBMS will have a DDL compiler which process the DDL statements. Storage Definition Language (SDL)  If distinct languages are used, DDL is used to specify conceptual schema and SDL is used to specify internal schema.  The mapping between the two schemas may be specified in either of the language. 47 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 48. View Definition Language (VDL)  For true three-schema architecture, VDL is required for external schema and its mapping with conceptual schema.  In relational dbms, SQL is used in the role of VDL to define views as results of predefined queries. Data Manipulation Language (DML)  DBMS provides a set of operations like insertion, modification and deletion through DML High level or nonprocedural DML  It can be used on its own to specify complex database operations.  These statements can be entered interactively from a display monitor or terminal.  These can be embedded in a general purpose programming language where they can be extracted by a precompiler and processed by the DBMS.  This can specify and retrieve many records in a single DML statement, thus known as set-at-a-time or set-oriented dbms (eg. SQL)  Also known as declarative language 48 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 49. Low level or procedural DML  It must be embedded in a general purpose programming language.  This retrieves individual records from the database and processes each separately.  Thus it needs programming language constructs like loops.  This is also known as record-at-a-time (eg. DL/1) Important points  Whenever a DML is embedded in a general purpose language, that language is called host language and DML is data sublanguage.  A high level DML used in a standalone interactive manner is called a query language.  Naïve and parametric users generally interact with database through user friendly interfaces. 49 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 50. Database Interfaces  Menu-based Interfaces for Web Clients or Browsing  Form-based Interfaces  Graphical Interfaces  Natural Language Interfaces  Speech Input and Output  Interfaces for parametric Users  Interfaces for DBA 50 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 51. Menu-based Interfaces for Web Clients or Browsing  These interfaces present the users with lists of options (called menus) that help the user in formulation of query request.  The query is composed step by step by picking options from a menu that is displayed by the system.  Pull-down menu is a popular technique in Web-based user interfaces.  They are used in browsing interfaces, which allow a user to browse the content of a database in an exploratory and unstructured manner. 51 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 52. Form-based Interfaces  Forms are designed and programmed for naïve users.  User can fill up the form for new entries in database.  User can also fill up few entries and rest of the matching entries are retrieved from the database.  Many dbms have specification languages, which help programmers specify such forms.  Oracle Forms, a component of Oracle Developer suite, provides an extensive set of features to design and build applications using forms. 52 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 53. Graphical Interfaces  A GUI displays a schema to the user in diagrammatic form.  Users can specify a query by manipulating the diagram.  GUI utilizes both menus and forms.  A pointing device, mouse, can be used 53 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 54. Natural Language Interfaces  A natural language interface has its own schema and a dictionary of important words.  The natural language interface refers to the words in its schema and to the set of standard words in dictionary.  If the interpretation is successful, the interface generates a high level query corresponding to the natural language request and submits it to DBMS for further processing.  If interpretation is not successful, a dialogue is started with the user to clarify the request. Speech Input and Output  It provides limited use of speech as an input query and speech as an answer to a question or result of a request e.g. Telephone directory, Flight arrival /departure, and Bank account information etc.  The speech input is detected using a library of predetermined words and used to set up the parameters that are supplied to the queries.  For output, similar conversion from text or numbers into speech takes place 54 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 55. Interfaces for parametric Users  A special interface is implemented for each known class of naive users e.g. Bank tellers  Special functions keys can be programmed to do repeated work fast. Interfaces for DBA  DBA Staff can use privileged commands for creating accounts, setting system parameters, granting account authorization, changing a schema and reorganizing the storage structure of the database. 55 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 56. The Database System Environment 56 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 57. DBMS Component Modules  The database and dbms catalog are stored on disk.  A stored data manager (module of dbms) controls access to dbms information that is stored on disk whether it is part of the database or catalog.  Various users such as  DBA staff & casual users work with interactive interfaces to formulate queries.  Application programmers write programs using host language.  Parametric users make data entry to database through predefined forms.  DBA staff works on defining the database and tuning it using DDL and other privileged commands 57 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 58.  DDL compiler processes schema definitions, specified in the DDL, and stores description of the schema in the dbms catalog.  Queries are parsed, analyzed for correctness of the operations and names of data elements by query compiler that compiles them into an internal form.  Internal query is subjected to query optimization by query optimizer.  The precompiler extracts DML commands from an application program and sends to dml compiler for compilation.  Rest of the program is sent to host language compiler.  The object codes for the DML commands and rest of the program are linked, forming a canned transaction whose executable code includes calls to runtime database processor.  Parametric users supply the parameters to these canned transactions directly so they can run transactions repeatedly.  Runtime database processor executes  Privileged commands  Executable query plans  Canned transactions with runtime parameters. 58 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 59.  It works with the system dictionary, stored data manager which in turn uses basic os services for carrying out low level input/output operations between disk and memory.  It also handles some aspects of management of buffers in main memory; some dbms have their own buffer management.  Concurrency control, backup and recovery manager are integrated into the working of the runtime database processor for purposes of transaction management 59 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 60. Database System Utilities  Loading  Backup  Database storage reorganization  Performance monitoring Few other utilities:  Sorting files  Handling data compression  Monitoring access by users  Interfacing with networks 60 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 61. Loading  It is used to load existing data files (text files or sequential files) into the database.  Format of source data file and target data file are specified to the utility.  Utility reformats the data and stores it in the database  Some vendors offer the tools, conversion tools, with loading programs, formats of source data file and target database.  e.g. IMS (IBM), IDMS (Computer Associates), SUPRA (CINCOM), IMAGE (HP) Backup  It creates backup copy of the database, usually dumping the entire database onto the tape.  Back up copy can be used to restore the database in case of catastrophic failure.  Incremental backups can also be used, where only changes since previous backup are recorded.  Incremental backup is more complex but saves memory. 61 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 62. Database storage reorganization  It can be used to reorganize a set of database files into a different file organization to improve performance. Performance monitoring  It monitors database usage and provides statistics to DBA in making decisions such as whether or not to reorganize files or whether to add or drop indexes to improve performance 62 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 63. Tools, Application Environments, and Communications Facilities Tools  CASE tools are used in design phase of database systems.  Expanded Data dictionary (data repository) is used to store catalog information about schema & constraints, and also design decision, usage standards, application program descriptions, and user information, thus known as information repository.  This information can be accessed directly by users and DBA. Application Environments  These system provide an environment for developing database applications and includes facilities that help in many facets of database systems 63 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 64.  These include database design, GUI development, querying and updating and application program development. e.g. PowerBuilder (Sybase), JBuilder (Borland) Communications software  This software allows the users to access remotely located database through computer terminals, workstations or other personal computers.  These users are connected to the database site through data communications hardware such as phone lines, local networks, or satellite.  The integrated DBMS and data communications system is called a DB/DC system. 64 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 65. Centralized and Client/Server Architectures for DBMSs Centralized DBMSs Architecture 65 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 66.  Earlier architectures used mainframe computers to provide the main processing for all system functions, user application programs, user interface programs, and also all DBMSs functionality.  User accessed such systems via computer terminals that did not have processing power and only provided display capabilities.  These computer terminals are connected to the central computer via various types of communication network. 66 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 67. Basic Client/Server Architectures 67 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 68.  Specialized servers are responsible for specific functionalities e.g. print server, file server, web server, e-mail servers etc.  The client machines provide the user with the appropriate interfaces to utilize these services, as well as with local processing power to run local applications.  Some clients may be diskless workstations, some may be dedicated server, and some may work both as client and server. 68 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 69. Two-Tier Client/Server Architectures for DBMSs In RDBMSs  Client had user interface and application programs  Server provided query and transaction functionalities related to SQL  Server is called a query server or transaction server or SQL server.  When DBMS access is required, the program establishes a connection to DBMS  Once connection is established, client program can communicate with DBMS.  A standard called Open Database Connectivity (ODBC) provides an application programming interface (API), which allows client-side programs to call DBMS.  Any query results are sent back to the client program and can be displayed or used for further process.  Most DBMS vendors provide ODBC drivers for their systems.  JDBC is a standard that allows Java client programs to access the DBMS. 69 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 70. In object oriented DBMSs,  Software modules of the DBMS are divided between client and server in a more integrated way.  Server may include the part of the DBMS software responsible for handling data storage on disk pages, local concurrency control and recovery, buffering and caching of disk pages etc.  Client may handle the user interface, data dictionary functions, DBMS interactions with programming language compilers, structuring of complex objects from the buffers etc.  In this approach the client and server interaction is more tightly coupled.  The exact division of the functionality varies from system to system.  In this case server is called data server. 70 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 71. Three-Tier Architectures for Web Applications 71 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 72.  Web applications use an architecture called the three-tier architecture, which adds an intermediate layer between client and the database server.  Thus, three tiers provide the following:  User interface  Application rules  Data access  Clients contain GUI (user interface) and some additional application specific business rules.  Database server includes database services.  The intermediate layer or middle tier is also known as application server or Web server depending on the application.  Middle layer stores business logic (procedures, constraints) that are used to access data from the database server.  Middle layer also improve database security by checking a client’s details before forwarding a request to the database server 72 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 73. N-Tier Architectures for Web Applications  Bottom layer in three-tier architecture includes all data management services.  If the bottom layer is split into two layers (a web server and a database server), then this becomes a four tier architecture.  Layers between user and the stored data can be defined into finer components, thus gives n-tier architecture 73 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 74. Classification of Database Management Systems Based on number of users:  Single User Systems: with PCs  Multiuser Systems: majority of DBMS Based on number of sites over which database is distributed:  Centralized DBMS: Data is stored at a single computer site  Distributed DBMS: Database and DBMS software are distributed over many sites connected by a computer network.  Homogeneous: Same DBMS software at multiple sites  Heterogeneous: Participating DBMS have a degree of local autonomy. This leads to federated (multi-database system) Database in which participating DBMSs are loosely coupled. 74 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 75. Based on cost:  Open Source DBMS: (MySQL, PostgresSQL)  Main RDBMS products are available as 30 days versions, Many vendors support with additional facilities and sell.  Giant systems are sold in modular form according the configuration required. (e.g. components to handle distribution, replication, parallel processing)  License based  Site license allow unlimited use of database system with any number of copies running at customer site.  License limits the number of concurrent users at a location.  Standalone single user versions are sold per copy or included in desktop or laptop configuration e.g. ACCESS 75 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 76. Based on data model:  Hierarchical data model  Network data model  Object data model  Relational data model  Object-Relational data model 76 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 77.  Network model  Network data model contains many links among various items of the data. This model organizes data using two fundamental constructs, called records and sets. Records contain fields, and sets define one-to-many relationships between records.  Example: IDMS (Cullinet – now Computer Associates), DMS 1100 (Univac – now Unisys), IMAGE (Hewlett-Packard), VAX-DBMS (Digital – now Compaq), SUPRA (Cincom)  In 1969, the Conference on Data Systems Languages on Database Task Group (CODASYL DBTG) established the first specification of the network database model and its language.  Network model is also known as CODASYL DBTG model.  Network model represents data as record types and also represents a limited type of 1:N relationship, called a set type.  A 1:N relationship relates one instance of a record to many record instances using some pointer linking mechanism in these model. 77 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 78. Hierarchical data model  Hierarchical data model is constructed using a tree model, with one root and several levels of subtrees.  Example: IMS (IBM) is used at governmental and industrial installations, hospitals and banks  Each parent can have many children but each child has only one parent.  All attributes of a specific record are listed under an entity type.  In a database, an entity type is the equivalent of a table; each individual record is represented as a row and an attribute as a column.  Entity types are related to each other using 1: N mapping, also known as one- to-many relationships.  There is no standard language for hierarchical model.  A popular hierarchical DML is DL/1 of the IMS system which dominated market for 20 years (1965-1985).  DL/1 has commands to locate a record e.g.  GET {UNIQUE, NEXT} <record-type> WHERE <condition> 78 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 79. Object Data Model  Object data model is based on object oriented approach i.e. objects, classes with their attributes and operations. ODMG object model provides standards for commercial object data model.  Example: Some object-oriented databases are designed to work well with object-oriented programming languages such as Python, Java, C#, Visual Basic .NET, C++, Objective-C and Smalltalk; others have their own programming languages 79 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 80.  Relational data model  Relational data model represents the database as a collection of relations.  Example: MySQL, Oracle, SQL Server etc. 80 Ashok B P,Asst.Prof,Dept of MCA,TOCE
  • 81. Object-Relational data model  Object-Relational data model is relational model having the capabilities of object database.  Objects, classes and inheritance are directly supported in database schemas and in the query language  Example: Informix Universal Server, Oracle (due to enhanced features), Data blades (Informix), Cartridges (Oracle) Based on purpose of use:  General Purpose: These DBMS systems can be used for variety of applications.  Special Purpose: A DBMS system is designed for a special application e.g. Online transaction processing (OLTP) (online reservation systems) 81 Ashok B P,Asst.Prof,Dept of MCA,TOCE