a. The Happy Nights motel chain system would be a two-tiered system. The local motel franchise reservation systems would act as clients that connect to a centralized DBMS server located at the central office.
b. The Sticky Wicket Company system would be a three-tiered system. Each branch office acts as a client with its own local DBMS (tier 1). The central Detroit office acts as the middleware tier to connect the branch office DBMS systems. And the centralized inventory database in Detroit acts as the shared database resource (tier 3).
1. Database System
Lecturer: Mr. Prum Chan Samedy,
MScIT
Tel: 012 456-896
E-mail: chan_samedy@yahoo.com
Bachelor of Science in Information Technology
2. Objectives
After finished this course students able to design to
manage large bodies of information. Management of
data involves both designing structure for storage of
information and providing mechanisms for the
manipulation of information.
Data Management
– Build an Entity-Relationship model for a relational DBMS
– Implement the database in MS Access/SQL Server
– Normalize tables
– Produce SQL coding to manage data
Application Development
– Plan and design an application system
– Implement an application in MS Access
Database system 2
3. Class References
Fundamental of
Database systems,
Elmasri & Navatthe
Database system 3
4. Database System
Chapter 1:
Introduction Databases and
Database users
Database system 4
5. Outline
Basic Definitions
Typical DBMS Functionality
Example of a Database (UNIVERSITY)
Advantages of Using the Database Approach
Database Users
Database system 5
6. Basic Definitions- Data VS Information
DATA: Facts concerning people, objects, vents or other
entities. Databases store data.
INFORMATION: Data presented in a form suitable for
interpretation.
Data is converted into information by programs and queries.
Database system Figure 1.1 Input-process-output
6
8. Why every employees in company need information?
Shopping in supermarket
Database system
9. Basic Definitions – Database VS DBMS
DATABASE:
DATABASE MANAGEMENT
SYSTEM (DBMS) :
A software system that enables users
to define, create, and maintain
the database and that provides
controlled access to this
database.
Database system 9
10. Basic Definitions – Database System
DATABASE SYSTEM:
Database System =DBMS+Database
The DBMS software together with the data itself.
Sometimes, the applications are also included.
Oracle, SQL Server,DB2, MySQL, Infomix,…
Database system
11. Basic Definitions – Metadata
Metadata
“Data about data”
Description of fields Display and format instructions
Structure of files and tables Security and access rules
Triggers and operational rules
Example of Metadata
Database system 11
14. Database application program
A software program
that interacts with
the database by
issuing an
appropriate request
(typically an SQL
statement) to the
DBMS.
Database system
15. Database Overview- Why Use a DBMS?
Using a DBMS to manage data has many
advantages:
– Data independence
– Sharing of data among multiple applications
– Data integrity and security
– Concurrent access and crash recovery
– Data administration
– Reduced application development time
Database system
16. Database Users-1
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”).
Database system 16
17. Database Users-2
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.
– Database Designers/Ananyst:
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.
Database system 17
18. Database Users-3
Application programmer/Application Developer
They access the data from programs written in
high-level language such as Visual basic or C+
+,C#, Java. The application programmers design
systems such as payroll, Inventory, and billing.
End user
They use the data for queries, reports and some of
them update the database content.
Database system 18
19. Exercise 1.1
Indicate which type of user would perform the
following functions for a payroll system in a
large company:
A. Write an application program to generate and print
the checks.
B. Change the address in the database for an
employee who has moved.
C. Create a new user account for a newly hired
payroll clerk
Database system 19
20. RDBMS
Relational Database Management System (RDBMS)
– Relational Database is a collection of relations
(table) Oracle, SQL Server,
DB2, My SQL,…
User tables Data
dictionary
Database system 20
21. Sample of Relational Database
Index
199011913 19959999
19860001 19901913 19911123 19959999
[EMPLOYEE table] colum Index
n
Hire_ Serial_ [DEPARTMENT table]
Emp_Name Salary Dept_No
Year No
Dept_No Department Area
1990 1913 Pich Oudam 180000 5648 Row
5648 Systems P.P
Prum Chan Dara 4327 Personnel KD
1987 0042 200000 4327 2271 General affairs KP
1992 7699 Keo Rithy 190000 2271 0381 Sales KK
. . . . . . . .
. . . . . . . .
. . . . . . .
.
Field
Database system 21
22. Database Architecture
Single tier Architecture
Two-tier Architecture
Three-tier Architecture
Database system 22
23. Single tier
a. Single tier:
DBMS All on one machine
Software
Access by terminals
Database
Database system 23
24. Client/Server (Two tier )
Front-End/Client
b. Two-Tier:
Application
#1 Server with many clients
Application
#2
DBMS Database
Server containing
Software centralized
shared data
Application
#3
DBMS manages data resources
like an operating system
manages hardware resources
Database system 24
25. Three-tier architecture
Front-End/Client
Front-End/Client
Application
Application #3
#1
DBMS I DBMS II
Server Server
Software Software
Middleware
Applicatio4
Application #3
#2 Database
Database
c. Three-tier:
Two kings of DBMS
Connected by Middleware
Database system 25
26. Three-tier architecture
Also call Distributed Systems
Solutions are distributed between client PC’s and one or more
servers.
Database system
27. Exercise 1.2
Specify whether each system would be single-tiered, two-
tiered, or three-tiered.
a. The Happy Nights motel chain allows local managers to
purchase a franchise. They can install and use the
DBMS of their choice for their reservation system. The
only requirement is that they be able to connect and
communicate with the central office’s system.
b. The Sticky Wicket Company has home offices in Detroit
and branches in Chicago and Baltimore. The inventory
and parts database is distributed with each branch
keeping its own inventory. One central DBMS located in
Detroit allows instant ordering of supplies through the
central office.
Database system 27
Lecture by Mr. Prum Chan Samedy Let us consider the case of a retail store that is trying to increase sales. Some of the data available includes sales levels for the last 36 months, advertising expenses, and customer comments from surveys. By itself, this data may be interesting, but it must be organized and analyzed to be useful in making a decision. For example, a manager might use economic and marketing models to forecast patterns and determine relationships among various advertising expenses and sales. The resulting information (presented in equations, charts, and tables) would clarify relationships among the data and would be used to decide how to proceed It requires knowledge to determine how to analyze data and make decisions.
Lecture by Mr. Prum Chan Samedy
Lecture by Mr. Prum Chan Samedy A database management system (DBMS) is a collection of programs that enables users to create and maintain a database. The DBMS is hence a general-purpose software system that facilitates the processes of defining, constructing, and manipulating databases for various applications. Defining a database involves specifying the data types, structures, and constraints for the data to be stored in the database. Constructing the database is the process of storing the data itself on some storage medium that is controlled by the DBMS. Manipulating a database includes such functions as querying the database to retrieve specific data, updating the database to reflect changes in the miniworld, and generating reports from the data It is not necessary to use general-purpose DBMS software to implement a computerized database. We could write our own set of programs to create and maintain the database, in effect creating our own special-purpose DBMS software. In either case—whether we use a general-purpose DBMS or not—we usually have to employ a considerable amount of software to manipulate the database. We will call the database and DBMS software together a database system.
Lecture by Mr. Prum Chan Samedy Metadata is used to facilitate the understanding, characteristics, and management usage of data. The metadata required for effective data management varies with the type of data and context of use. In a library, where the data is the content of the titles stocked, metadata about a title would typically include a description of the content, the author, the publication date and the physical location. Examples of Metadata Camera In the context of a camera, where the data is the photographic image, metadata would typically include the date the photograph was taken and details of the camera settings (lens, focal length, aperture, shutter timing, white balance, etc.). Digital Music Player On a digital portable music player, the album names, song titles and album art embedded in the music files are used to generate the artist and song listings, and are considered the metadata. Information system In the context of an information system, where the data is the content of the computer files, metadata about an individual data item would typically include the name of the field and its length. Metadata about a collection of data items, a computer file, might typically include the name of the file, the type of file and the name of the data administrator.
Lecture by Mr. Prum Chan Samedy
Lecture by Mr. Prum Chan Samedy
Lecture by Mr. Prum Chan Samedy For a small personal database, one person typically defines, constructs, and manipulates the database. However, many persons are involved in the design, use, and maintenance of a large database with a few hundred users.
Lecture by Mr. Prum Chan Samedy In this section we identify the people whose jobs involve the day-to-day use of a large database; we call them the "actors on the scene. Database Administrator: In any organization where many persons use the same resources, there is a need for a chief administrator to oversee and manage these resources. In a database environment, the primary resource is the database itself and the secondary resource is the DBMS and related software. Administering these resources is the responsibility of the database administrator (DBA). The DBA is responsible for authorizing access to the database, for coordinating and monitoring its use, and for acquiring software and hardware resources as needed. The DBA is accountable for problems such as breach of security or poor system response time. In large organizations, the DBA is assisted by a staff that helps carry out these functions. Database Designer: Database designers are responsible for identifying the data to be stored in the database and for choosing appropriate structures to represent and store this data. These tasks are mostly undertaken before the database is actually implemented and populated with data. It is the responsibility of database designers to communicate with all prospective database users, in order to understand their requirements, and to come up with a design that meets these requirements. In many cases, the designers are on the staff of the DBA and may be assigned other staff responsibilities after the database design is completed.
Lecture by Mr. Prum Chan Samedy Database designers typically interact with each potential group of users and develop a view of the database that meets the data and processing requirements of this group. These views are then analyzed and integrated with the views of other user groups. The final database design must be capable of supporting the requirements of all user groups. End user: The person that use the database for querying, updating, generating information, etc. System Analysts and Application Programmers (Software Engineers) System analysts determine the requirements of end users, especially naive and parametric end users, and develop specifications for canned transactions that meet these requirements. Application programmers implement these specifications as programs; then they test, debug, document, and maintain these canned transactions. Such analysts and programmers (nowadays called software engineers ) should be familiar with the full range of capabilities provided by the DBMS to accomplish their tasks.
Lecture by Mr. Prum Chan Samedy
Lecture by Mr. Prum Chan Samedy
Lecture by Mr. Prum Chan Samedy
Lecture by Mr. Prum Chan Samedy
Lecture by Mr. Prum Chan Samedy
Lecture by Mr. Prum Chan Samedy
Lecture by Mr. Prum Chan Samedy The three-tier system adds middleware, which provide a way for clients of one DBMS to access data from another DBM. Figure in slide 48,49 and this slide illustrates the difference between single-tier, two-tier and three-tier software system
Lecture by Mr. Prum Chan Samedy
Lecture by Mr. Prum Chan Samedy Then we presented a list of capabilities that should be provided by the DBMS software to the DBA, database designers, and users to help them design, administer, and use a database: • Controlling redundancy. • Restricting unauthorized access. • Providing persistent storage for program objects and data structures. • Permitting inferencing and actions by using rules. • Providing multiple user interfaces. • Representing complex relationships among data. • Enforcing integrity constraints. • Providing backup and recovery.