The document discusses advanced database management systems (ADBMS). It provides background on how databases have become essential in modern society and outlines new applications like multimedia databases, geographic information systems, and data warehouses. The document then covers the history of database applications from early hierarchical and network systems to relational databases and object-oriented databases needed for e-commerce. It also discusses how database capabilities have been extended to support new applications involving scientific data, images, videos, data mining, spatial data, and time series data.
2. Background
• Databases and database systems are an essential component of everyday life in
modern society.
• Most of us encounter several activities that involve some interactions with a
database.
• For example, if we go to the bank to deposit or withdraw funds, if we make a hotel
or airline reservation, if we access a computerized library catalog to search for a
bibliographic item, or if we purchase something online- such as a book, toy or
computer – chances are that our activities will involve someone or some computer
program accessing a database.
• These interactions are examples of what we may call traditional database
applications, in which most of the information that is stored and accessed is either
textual or numeric.
2
3. Background ...
• In the past few years, advances in technology have led to exciting new
applications of database systems.
• Multimedia databases: store images, audio clips and video streams digitally
• Geographic information Systems: stores and analyzes maps, weather data, and
satellite images
• Data warehouses and online analytical processing(OLAP): to extract and analyze
useful information from very large databases to support decision making.
• Real-time and Active database: to control industrial and manufacturing processes
• Mobile database: to allow clients to access from virtually anywhere and at any
time
3
4. Introduction
• Database technology has a major impact on the growing use of computers.
• It is fair to say that databases play a critical role in almost all areas where computers are used,
including business, electronic commerce, engineering, medicine, law, education, and library
science.
• A database is a collection of related data.
• By data, we mean known facts that can be recorded and that have implicit meaning. For example,
consider the names, telephone numbers, and addresses of the people you know.
• A database has the following implicit properties:
A database represents some aspect of the real world, sometimes called the mini world or the
universe of discourse. Changes to the miniworld are reflected in the database.
A database is logically coherent collection of data with some inherent meaning.
A database is designed, build, and populated with data for a specific purpose. It has an
intended group of users and some preconceived applications in which these users are
interested.
4
5. Introduction...
• The database has some source from which data is derived, some degree of
interaction with events in the real world, and an audience that is actively interested
in its contents.
• In order for a database to be accurate and reliable at all times, it must be a true
reflection of the mini world that it represents; therefore, changes must be reflected
in the database as soon as possible.
• A database can be of any size and complexity.
• A computerized database may be created and maintained either by a group of
application programs written specifically for that task or by a database management
system.
• A DBMS is a collection of program that enables users to create and maintain a
database.
• The DBMS is a general purpose software system that facilitates the processes of
defining, constructing, manipulating, and sharing databases among various users
and applications.
5
6. Introduction...
• Defining the database is involves specifying the data types, structures, and
constraints of the data to be stored in the database.
• The database definition or descriptive information is also stored in the database
in the form of a database catalog or dictionary; it is called metadata.
• Constructing the database is the process of storing the data on some storage
medium that is controlled by the DBMS.
• Manipulating a database includes functions such as querying the database to
retrieve specific data, updating the database to reflect changes in mini world,
and generating reports from the data.
• Sharing a database allows multiple users and programs to access the database
simultaneously.
• Application programs access the database by sending queries or requests for
data to the DBMS.
6
7. Introduction ...
• A query typically causes some data to be retrieved; a transaction may cause some
data to be read and some data to be written into the database.
• Other important functions provided by the DBMS includes protecting the
database and maintaining it over a long period of time.
• Protection includes system protection against hardware or software malfunction
(or crashes) and security protection against unauthorized or malicious access.
• A typical large database may have a life cycle of many years, so the DBMS must
be able to maintain the database system allowing the system to evolve as
requirement change over time.
• The database and DBMS software together is called a database system.
7
8. History of Database Applications
1. Early database applications using Hierarchical and Network Systems
• Database management systems first appeared on the scene in 1960 as computers
began to grow in power and speed.
• In the middle of 1960, there were several commercial applications in the market
that were capable of producing “navigational” databases.
• These navigational databases maintained records that could only be processed
sequentially, which required a lot of computer resources and time.
• One of the main problems of these databases was the intermixing of conceptual
relationships with the physical storage and placement of records on disk.
• Another shortcoming of early systems was that they provided only
programming language interfaces.
8
9. History of Database Applications
2. Providing Application flexibility with Relational Databases
• Relational databases were originally proposed to separate the physical storage of
data from its conceptual representation and to provide mathematical foundation for
content storage.
• Relational database management systems were first suggested by Edgar Codd in
the 1970s.
• Because navigational databases could not be “searched”, Edgar Codd suggested
another model that could be followed to construct a database.
• This was the relational model that allowed users to “search” it for data. It included
the integration of the navigational model, along with a tabular and hierarchical
model.
• This model also introduced high-level query languages that provided an alternative
to programming language interfaces; hence, it was a lot quicker to write new
queries.
9
10. History of Database Applications
3. Object-Oriented Applications and the Need for more complex databases
• The emergence of object-oriented programming languages in the 1980s and
the need to store and share complex-structured objects led to the development
of object-oriented databases(OODB).
• Originally, OODB were considered a competitor to relational databases, since
they provided more general data structures. They also incorporated many of
the object-oriented paradigms, such as ADT, encapsulation of operations,
inheritance, and object identity.
• However, the complexity of the model and the lack of an early standard
contributed to their limited use.
• They are now mainly used in specialized applications such as engineering
design, multimedia publishing, and manufacturing systems.
10
11. History of Database Applications
4. Interchanging data on the Web for E-Commerce
• In 1990s, electronic commerce emerged as a major application on the Web.
• It quickly became apparent that parts of the information on e-commerce.
Web pages were often dynamically extracted data from DBMSs.
• A variety of techniques were developed to allow the interchange of data on
the Web.
• Currently, eXtended Markup Language(XML) is considered to be the
primary standard for interchanging data among various types of databases
and web pages.
11
12. Extending Database Capabilities for New Applications
The success of database systems in traditional applications encouraged developers
of other types of applications to attempt to use them. Such applications traditionally
used their own specialized file and data structures. Database systems now offer
extensions to better support the specialized requirements for some of these
applications. The following are some examples of these applications:
Scientific applications that store large amounts of data resulting from scientific
experiments in areas such as high-energy physics, the mapping of the human
genome, and the discovery of protein structures.
Storage and retrieval of images, including scanned news or personal
photographs, satellite photographic images, and images from medical procedures
such as x-rays and MRIs (magnetic resonance imaging).
Storage and retrieval of videos, such as movies, and video clips from news or
personal digital cameras.
12
13. Extending Database Capabilities for New Applications
Data mining applications that analyze large amounts of data searching for the
occurrences of specific patterns or relationships, and for identifying unusual
patterns in areas such as credit card usage.
Spatial applications that store spatial locations of data, such as weather
information, maps used in geographical information systems, and in automobile
navigational systems.
Time series applications that store information such as economic data at regular
points in time, such as daily sales and monthly gross national product figures.
13
14. Extending Database Capabilities for New Applications
An area related to database technology is Information Retrieval (IR), which
deals with books, manuscripts, and various forms of library-based articles.
Data is indexed, cataloged, and annotated using keywords.
IR is concerned with searching for material based on these keywords, and with
the many problems dealing with document processing and free-form text
processing.
There has been a considerable amount of work done on searching for text based
on keywords, finding documents and ranking them based on relevance, automatic
text categorization, classification of text documents by topics, and so on.
14
15. What is the ultimate purpose of a
database management system?
15
Data Information Knowledge Action
Is to transform
16. Data vs Information
What is data?
• Data can be defined in many
ways.
• Information science defines data
as unprocessed information.
What is information?
• Information is data that have been
organized and communicated in a
coherent and meaningful manner.
• Data is converted into information, and
information is converted into
knowledge.
• Knowledge is information evaluated
and organized so that it can be used
purposefully.
16
18. Database System Architecture
• Database management systems (or DBMSs) can be divided into two categories -
- desktop databases and server databases.
Generally speaking, desktop databases are oriented toward single-user
applications and reside on standard personal computers (hence the term
desktop).
Server databases contain mechanisms to ensure the reliability and consistency
of data and are geared toward multi-user applications.
• The architecture of DBMS packages has evolved from the early monolithic
systems, where the whole DBMS software package was one tightly integrated
system, to the modern DBMS packages that are modular in design, with a
client/server system architecture.
18
19. • In a basic client/server DBMS architecture, the system functionality
is distributed
between two types of modules.
• A client module is typically designed so that it will run on a user
workstation or personal computer. Typically, application programs
and user interfaces that access the database run in the client module.
Hence, the client module handles user interaction and provides the
user-friendly interfaces such as forms- or menu-based GUIs
(graphical user interfaces).
• The other kind of module, called a server module, typically handles
data storage, access, search, and other functions.
19
Database System Architecture
20. Data Abstraction and Data Models
• One of the main characteristics of the database approach is to support data
abstraction so that different users can perceive data at their preferred level of detail.
• Data abstraction generally refers to the suppression of details of data organization
and storage, and the highlighting of the essential features for an improved
understanding of data.
• A data model—a collection of concepts that can be used to describe the structure
of a database—provides the necessary means to achieve this abstraction.
• By structure of a database we mean the data types, relationships, and constraints
that apply to the data.
• Most data models also include a set of basic operations for specifying retrievals
and updates on the database.
20
21. Categories of Data Models
• Many data models have been proposed, which we can categorize according to the
types of concepts they use to describe the database structure.
• High-level or conceptual data models provide concepts that are close to the way
many users perceive data.
• Low-level or physical data models provide concepts that describe the details of
how data is stored on the computer storage media, typically magnetic disks.
• Concepts provided by low-level data models are generally meant for
computer specialists, not for end users.
• Between these two extremes is a class of representational (or implementation)
data models, which provide concepts that may be easily understood by end users
but that are not too far removed from the way data is organized in computer
storage.
• Entity-Relationship model—a popular high-level conceptual data model.
21
22. Categories of Data Models
• Relational data model, as well as the so-called legacy data models—the network and
hierarchical models—that have been widely used in the past, are representational models.
• Representational data models represent data by using record structures and hence are
sometimes called record-based data models.
• We can regard the object data model as an example of a new family of higher-level
implementation data models that are closer to conceptual data models.
• Physical data models describe how data is stored as files in the computer by representing
information such as record formats, record orderings, and access paths.
• An access path is a structure that makes the search for particular database records efficient.
• An index is an example of an access path that allows direct access to data
using an index term or a keyword.
• It is similar to the index at the end of the book, except that it may be organized in a linear,
hierarchical (tree-structured), or some other fashion.
22
23. Database Models
• A database model
• defines the logical design of data.
• Describes the relationships between different parts of
data.
• 3 models
• Hierarchical model
• Network model
• Relational model
24. Hierarchical Model
Data are organized as an upside down tree.
Each entity has only one parent but can have several children.
24
25. Network Model
The entities are organized in a graph.
Some entities can be accessed through several paths.
25
26. Relational Model
Data are organized in two-dimensional tables called
relations.
The tables are related to each other.
The most popular model.
26
27. Database Schema
• The description of a database is called the database schema, which is specified during
database design and is not expected to change
frequently.
• Most data models have certain conventions for displaying schemas as
diagrams. The diagram displays the structure of each record type but not the actual instances of
records.
• A schema diagram displays only some aspects of a schema, such as the names of record types
and data items, and some types of constraints.
• Example: Student
27
Name Student_number Class Major
28. Database State
• The data in the database at a particular moment in time is called a database state or snapshot.
• It is also called the current set of occurrences or instances in the database.
• Every time we insert or delete a record or change the value of a data item in a record, we change one state of
the database into another state.
• When we define a new database, we specify its database schema only to the DBMS. At this point, the
corresponding database state is the empty state with no data.
• We get the initial state of the database when the database is first populated or loaded with the initial data.
• 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 and the schema must be designed
with utmost care.
• The DBMS stores the descriptions of the schema constructs and constraints—also called
the meta-data—in the DBMS catalog so that DBMS software can refer to the
schema whenever it needs to.
• The schema is sometimes called the intension, and a database state is called an extension of the schema.
28
29. Three Schema Architecture and Data Independence
• The goal of the three-schema architecture, illustrated in Figure,
is to separate the user applications from the physical database.
29
30. Three Schema Architecture
In this architecture, schemas can be defined at the following three levels:
1. The internal level has an internal schema, which describes the physical storage structure of the
database. The internal schema uses a physical data model and describes the complete details of
data storage and access paths for the database.
2. The conceptual level has a conceptual schema, which describes the structure of the whole
database for a community of users. The conceptual schema hides the details of physical storage
structures and concentrates on describing entities, data types, relationships, user operations, and
constraints. Usually, a representational data model is used to describe the conceptual schema
when a database system is implemented. This implementation conceptual schema is often based
on a conceptual schema design in a high-level data model.
3. The external or view level includes a number of external schemas or user views. Each external
schema describes the part of the database that a particular user group is interested in and hides
the rest of the database from that user group. As in the previous level, each external schema is
typically implemented using a representational data model, possibly based on an external schema
design in a high-level data model.
30
31. Data Independence
• Data independence can be defined as the capacity to change the schema at one level of
a database system without having to change the schema at the next higher level.
• We can define two types of data independence:
• Logical data independence is the capacity to change the conceptual schema
without having to change external schemas or application programs. We
may change the conceptual schema to expand the database (by adding a
record type or data item), to change constraints, or to reduce the database
(by removing a record type or data item). After the conceptual schema undergoes a
logical reorganization, application programs that reference the external schema
constructs must work as before.
• Physical data independence is the capacity to change the internal schema without
having to change the conceptual schema. Hence, the external schemas need not be
changed as well. Changes to the internal schema may be needed because some physical
files were reorganized—for example, by creating additional access structures—to
improve the performance of retrieval or update.
31
32. Data Independence
• Data independence is the type of data transparency that
matters for a centralized DBMS. It refers to the immunity of
user applications to make changes in the definition and
organization of data.
32
*Applications insulated from how data
is structured and stored.
*Logical data independence:
Protection from changes in logical
structure of data.
*Physical data independence:
Protection from changes in physical
structure of data.
Physical Schema
Conceptual Schema
View 1 View 2 View 3
DB
33. Functions of a DBMS
• Data Storage, Retrieval, and Update.
• A User-Accessible Catalogue.
• Transaction Support.
• Concurrency Control Services.
• Recovery Services.
• Authorization Services.
• Support for Data Communication.
• Integrity Services.
• Services to Promote Data Independence.
• Utility Services. 33
34. Advantages of DBMSs
• Control of data redundancy
• Data consistency
• Sharing of data
• Improved data integrity
• Improved maintenance through data
independence.
34
35. Disadvantages of DBMSs
• Complexity
• Cost of Hardware and software
• Cost of Data conversion
• impact of Database failure
• Cost of staff Training
35