0% found this document useful (0 votes)
2 views

Dbms Architecture

The document outlines four types of database users: naive users, application programmers, sophisticated users, and specialized users, each interacting with the system differently. It also describes the roles of a database administrator (DBA) and the storage manager, detailing their responsibilities in managing database schemas, storage, and data integrity. Additionally, the query processor's components, including the DDL interpreter, DML compiler, and query evaluation engine, are explained as essential for executing database queries efficiently.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

Dbms Architecture

The document outlines four types of database users: naive users, application programmers, sophisticated users, and specialized users, each interacting with the system differently. It also describes the roles of a database administrator (DBA) and the storage manager, detailing their responsibilities in managing database schemas, storage, and data integrity. Additionally, the query processor's components, including the DDL interpreter, DML compiler, and query evaluation engine, are explained as essential for executing database queries efficiently.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

Database Users and User Interfaces

There are four different types of database-system users, differentiated by the way they expect
to interact with the system. Different types of user interfaces have been designed for the
different types of users.
• Naive users are unsophisticated users who interact with the system by invoking one of the
application programs that have been written previously. For example, a clerk in the university
who needs to add a new instructor to department A invokes a program called new hire. This
program asks the clerk for the name of the new instructor, her new ID, the name of the
department (that is, A), and the salary. The typical user interface for naive users is a forms
interface, where the user can fill in appropriate fields of the form. Naive users may also simply
read reports generated from the database.
• Application programmers are computer professionals who write application programs.
Application programmers can choose from many tools to develop user interfaces. Rapid
application development (RAD) tools are tools that enable an application programmer to
construct forms and reports with minimal programming effort.
Sophisticated users interact with the system without writing programs. Instead, they form their
requests either using a database query language or by using tools such as data analysis software.
Analysts who submit queries to explore data in the database fall in this category.
• Specialized users are sophisticated users who write specialized database applications that do
not fit into the traditional data-processing framework. Among these applications are computer-
aided design systems, knowledgebase and expert systems, systems that store data with complex
data types (for example, graphics data and audio data), and environment-modelling systems.
Database Administrator
One of the main reasons for using DBMSs is to have central control of both the data and the
programs that access those data. A person who has such central control over the system is called
a database administrator (DBA). The functions of a DBA include:
Schema definition. The DBA creates the original database schema by executing a set of data
definition statements in the DDL.
• Storage structure and access-method definition.
• Schema and physical-organization modification. TheDBAcarries out changes to the
schema and physical organization to reflect the changing needs of the organization, or to alter
the physical organization to improve performance.
Storage Manager
The storage manager is the component of a database system that provides the interface between
the low-level data stored in the database and the application programs and queries submitted
to the system. The storage manager is responsible for the interaction with the file manager. The
raw data are stored on the disk using the file system provided by the operating system. The
storage manager translates the various DML statements into low-level file-system commands.
Thus, the storage manager is responsible for storing, retrieving, and updating data in the
database.
The storage manager components include:
• Authorization and integrity manager, which tests for the satisfaction of integrity
constraints and checks the authority of users to access data.
• Transaction manager, which ensures that the database remains in a consistent (correct) state
despite system failures, and that concurrent transaction executions proceed without conflicting.
• File manager, which manages the allocation of space on disk storage and the data structures
used to represent information stored on disk.
• Buffer manager,which is responsible for fetching data from disk storage into main memory,
and deciding what data to cache in main memory. The buffer manager is a critical part of the
database system, since it enables the database to handle data sizes that are much larger than the
size of main memory.
• Data files, which store the database itself.
• Data dictionary, which stores metadata about the structure of the database, in particular the
schema of the database.
• Indices, which can provide fast access to data items. Like the index in this textbook, a
database index provides pointers to those data items that hold a particular value. For example,
we could use an index to find the instructor record with a particular ID, or all instructor records
with a particular name. Hashing is an alternative to indexing that is faster in some but not all
cases.
The Query Processor
The query processor components include:
• DDL interpreter,which interprets DDL statements and records the definitions in the data
dictionary.
• DML compiler,which translates DML statements in a query language into an evaluation plan
consisting of low-level instructions that the query evaluation engine understands.A query can
usually be translated into any of a number of alternative evaluation plans that all give the same
result. The DMLcompiler also performs
query optimization; that is, it picks the lowest cost evaluation plan from among the
alternatives.
• Query evaluation engine, which executes low-level instructions generated by the DML
compiler.

You might also like