4. DATABASE
A database is any organized collection of data.
Some examples of databases you may encounter
in your daily life are:
• a telephone book
• T.V. Guide
• airline reservation system
• motor vehicle registration records
• papers in your filing cabinet
• files on your computer hard drive.
5. Database
• It is a collection of interrelated data with
minimum redundancy to serve many users
quickly and efficiently
• General theme – to handle information as an
integrated whole
• General objective – to make information
access easy, quick, inexpensive and flexible for
the user.
6. Objectives of Database
1. Controlled redundancy
2. Ease of learning and use
3. Data independence
4. More information at low cost
5. Accuracy and integrity
6. Recovery from failure
7. Privacy and security
8. Performance
7. Purpose of Database System
• In the early days, database applications were built on
top of file systems
• Drawbacks of using file systems to store data:
– Data redundancy and inconsistency
• Multiple file formats, duplication of information in different files
– Difficulty in accessing data
• Need to write a new program to carry out each new task
– Data isolation — multiple files and formats
– Integrity problems
• Integrity constraints (e.g. account balance > 0) become part of
program code
• Hard to add new constraints or change existing ones
8. – Atomicity of updates
• Failures may leave database in an inconsistent state with
partial updates carried out
• E.g. transfer of funds from one account to another should
either complete or not happen at all
– Concurrent access by multiple users
• Concurrent accessed needed for performance
• Uncontrolled concurrent accesses can lead to inconsistencies
– E.g. two people reading a balance and updating it at the same
time
– Security problems
9. Data vs. information:
What is the difference?
• 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; information evaluated and organized so that it can be
used purposefully.
10. What is the ultimate purpose of a
database management system?
Is to transform
Data Information Knowledge Action
11. Why do we need a database ?
• Keep records of our:
– Clients
– Staff
– Volunteers
• To keep a record of activities and interventions;
• Keep sales records;
• Develop reports;
• Perform research
• Longitudinal tracking
12. Terms Used in a Database
• Table, a set of columns that contain data. In the
old days, a table was called a file.
• Row, a set of columns from a table reflecting a
record.
• Index, an object that allows for fast retrieval of
table rows. Every primary key and foreign key
should have an index for retrieval speed.
• Primary key, often designated pk, is 1 or more
columns in a table that makes a record unique.
13. • Foreign key, often designated fk, is a common
column common between 2 tables that define the
relationship between those 2 tables.
• Foreign keys are either mandatory or optional.
Mandatory forces a child to have a parent by
creating a not null column at the child. Optional
allows a child to exist without a parent, allowing a
nullable column at the child table (not a common
circumstance).
• Entity Relationship Diagram or ER is a pictorial
representation of the application schema.
14. Key Terms in database design
• User’s view: profile that the user expects to
see on a specific report
• Processing: the changes made to produce the
report
• Data model: a framework of the user’s view
• Data file: the area where the actual files are
stored.
15. • DML manipulates data; it specifies what is
required. Eg: update, delete
• DDL describes how data are structured. Eg:
create, alter
• DBMS manages data according to DML
requests and DDL descriptions.
16. Views of data
• Logical view
- It is what the data look like, regardless of
how they are stored.
• Physical view
- It deals with how data are stored,
accessed, or related to other data in storage
17. Database Users
• Users are differentiated by the way they expect to interact
with the system
• Application programmers – interact with system through
DML calls
• Sophisticated users – form requests in a database query
language
• Specialized users – write specialized database applications
that do not fit into the traditional data processing
framework
• Naive users – invoke one of the permanent application
programs that have been written previously
– E.g. people accessing database over the web, bank tellers,
clerical staff
18. Types of Databases
1. Non-relational databases
Non-relational databases place information in field
categories that we create so that information is
available for sorting and disseminating the way we
need it. The data in a non-relational database,
however, is limited to that program and cannot be
extracted and applied to a number of other software
programs, or other database files within a
school or administrative system. The data can
only be "copied and pasted.“ Example: a
spread sheet
19. 2. Relational databases
In relational databases, fields can be used in a
number of ways (and can be of variable
length), provided that they are linked in
tables. It is developed based on a database
model that provides for logical connections
among files (known as tables) by including
identifying data from one table in another
table
20. Data Definition Language (DDL)
• Specification notation for defining the database schema
– E.g.
create table account (
account-number char(10),
balance integer)
• DDL compiler generates a set of tables stored in a data
dictionary
• Data dictionary contains metadata (i.e., data about data)
– database schema
– Data storage and definition language
• language in which the storage structure and access methods used by
the database system are specified
• Usually an extension of the data definition language
21. Data Manipulation Language (DML)
• Language for accessing and manipulating the
data organized by the appropriate data model
– DML also known as query language
• Two classes of languages
– Procedural – user specifies what data is required
and how to get those data
– Nonprocedural – user specifies what data is
required without specifying how to get those data
• SQL is the most widely used query language
22. SQL
• SQL: widely used non-procedural language
– E.g. find the name of the customer with customer-id 192-83-7465
select customer.customer-name
from customer
where customer.customer-id = ‘192-83-7465’
– E.g. find the balances of all accounts held by the customer with
customer-id 192-83-7465
select account.balance
from depositor, account
where depositor.customer-id = ‘192-83-7465’ and
depositor.account-number = account.account-number
• Application programs generally access databases through one of
– Language extensions to allow embedded SQL
– Application program interface (e.g. ODBC/JDBC) which allow SQL
queries to be sent to a database
23. Selecting a database system: Need
Analysis
The needs analysis process will be specific to your organization but, at
a minimum, should answer the following questions:
• How many records we will warehouse and for how long?
• Who will be using the database and what tasks will they perform?
• How often will the data be modified? Who will make these
modifications?
• Who will be providing IT support for the database?
• What hardware is available? Is there a budget for purchasing
additional hardware?
• Who will be responsible for maintaining the data?
• Will data access be offered over the Internet? If so, what level of
access should be supported?
24. Selecting a DBMS
How do I Choose?
Which database product is appropriate for my
application? You must make a requirements
assessment.
Does you database need 24x7 availability?
Is your database mission critical, and no data loss
can be tolerated?
Is your database large? (backup recovery methods)
What data types do I need? (binary, large objects?)
Do I need replication? What level of replication is
required? Read only? Read/Write? Read/Write is
very expensive, so can I justify it?
25. If your answer to any of the above is ‘yes’, I would
strongly suggest purchasing and using a
commercial database with support. Support
includes:
• 24x7 assistance with technical issues
• Patches for bugs and security
• The ability to report bugs, and get them resolved in a
timely manner.
• Priority for production issues
• Upgrades/new releases
• Assistance with and use of proven backup/recovery
methods
26. Selecting a DBMS
The Freeware Choice
Freeware is free.
Freeware is open source.
Freeware functionality is improving.
Freeware is good for smaller non-mission critical
applications.
This presentation demonstrates the new capabilities of PowerPoint and it is best viewed in Slide Show. These slides are designed to give you great ideas for the presentations you’ll create in PowerPoint 2010!For more sample templates, click the File tab, and then on the New tab, click Sample Templates.