Database Management System (DBMS) - Averia Default Web Page ...

obtainablerabbiData Management

Jan 31, 2013 (4 years and 4 months ago)

117 views

THE ROBERT O. ANDERSON

SCHOOL AND GRADUATE SCHOOL

OF MANAGEMENT

The University of New Mexico

MGT 329/637


Database Management Systems
Overview

Last Revised:
3/18/2013 1:30 AM

Formal Definitions


Database (DB)



Integrated collection of data and
metadata


Metadata



Data that describes other data


Database Management System (DBMS)



Application or system software that stores and
provides access to data stored in one or more
databases

Data Integration


Modern organizations store and use petabytes (10
15

bytes) of data.


Data relates to all aspects of the organization


accounting
and financial, customers, suppliers, inventory, products,
production processes, competitors, R&D, …


Data are related to other data in many ways


for example:


An order to Dell for a laptop is based on a product catalog,
generates production and parts orders, and schedules assembly
and testing


Shipment/delivery of the laptop decreases inventory and results in
cash inflow or receivable that’s recorded in the customer account
and the financial statements


Changing an order before it enters production affects production,
inventory, ordering, future cash flow, and possibly incentives to
employees based on sales or profits

Data Integration
-

Continued


An efficient and effective information system
automatically recognizes and uses the
“connections” among data


for example:


To UNM, Stephen Burd is an employee, instructor,
faculty member, vendor, and student


Despite his multiple roles, descriptive data (e.g., name
and address) about him should be stored only once


Certain database updates are allowed for Burd that
might not be allowed for other persons


For example, it should be impossible for a student who isn’t
also an instructor to assign a grade in a course

Database Definition Revisited


Database (DB)



Integrated collection of data and
metadata.


Integration implies that
relationships among data items

such as names, addresses, course titles, and grades
are recognized and stored within the system


For example:


A particular paycheck was deposited to Burd’s bank account


Burd enrolls in a particular course during a particular semester
and receives a grade for that course


The course Burd completed satisfies one requirement of a
particular degree program


Burd teaches a particular course and assigns grades to all
students enrolled in that course

Metadata Definition Revisited


Metadata



Data that describes other data


Some types of metadata:


Single and multiple data item value constraints


for example:


Salary must be a positive number


Allowable grades are A, B, C, …


If grade is A then points earned is 4.0


If student status is “suspended” then currently enrolled credits must be zero


Data naming and organization


for example, the data item Name is part
of the Person table and is indexed alphabetically to speed alphabetic
searches.


Computation of derived values


e.g., how is grade point average
computed from grades earned


Security


What users can view, change, or delete grades and salaries?


Location


Where is a particular group of data items stored (on what disk
and machine)? If they’re stored in multiple places, which holds the
“original” or “master” and which are the copies?


Review Exercise


Pick a type of business or organization and
consider the data that it stores and uses in
ordinary operations


List 3
physical things

about which it stores data


Describe 3
relationships

among those things that
an “integrated collection of data” should store or
represent


Describe 3 instances of metadata that should be
represented within the database

DBMS Definition Revisited


Database Management System (DBMS)



Application or
system software that stores and provides access to data
stored in one or more databases


Must support storage of data items, relationships among data
items, and metadata


Must be capable of managing multiple database


for example,
one for production and another for accounting


Must be flexible enough to support many kinds of data and
databases (many different application areas).


Must provide access to the data, preferably via a variety of paths
such as:


Direct access for end users via interactive and/or Web
-
based tools


Access via report generation tools


Access from application programs written in multiple languages (e.g.,
Java, Visual Basic, and Web scripts) executing locally and remotely


Must enable concurrent access by many users and applications

Key Database and DBMS Benefits


Data are more easily shared across application
programmers, users, and parts of an organization


Data are managed as an organizational resource


Cost
-
efficiency


Security and privacy


Data as an asset


Application software is independent of many aspects of
data storage, especially physical ones


Data quality can be enforced consistently across
applications throughout the organization


Many changes to the database have no effect on existing
programs


Data can be accessed without writing programs

Review Exercise


What’s the catch? (What do all of the benefits on
the previous page “cost”?)


Trains of thought


Friedman’s free lunch rule


there is no free lunch


Fisher on genetics and adaptation


highly specialized
organisms are efficient in their environment but can’t
easily adapt to other environments


The golden rule


s/he who has the gold makes the
rules

Database/DBMS
-

Prehistory


Prehistory
-

before 1965:


Data are stored in computerized files.


Files contain records and records contain fields (numbers,
characters, and strings)


Computerized files are created for specific application
programs and groups of application programs (for
example, student grades, payroll, accounts payable)


Connections among files across application areas are
weak or nonexistent (for example, Burd has separate
student, employee, and vendor ID numbers with different
values and formats)


Redundancy among files is high (for example, Burd’s
address is stored in three different files which must all be
updated if he moves).

Database/DBMS History


First Era


First era


1965
-
1980


CODASYL Committee defines a standard
commonly called “network database”


Common data type definitions


Pointers among records represent relationships


Common access methods


Several mainframe products are matched to the
standard


IMS and IDMS become the dominant
DBMSs


Rapid computerization of business processes fuels
demand for DBMSs


Most business applications
use them by the early 1980s

Database/DBMS History


Second Era


Second era


1975
-
present


Relational database standard is developed in the
early 1970s.


Commercial relational DBMS products appear in
late 1970s, many based on experimental software
developed on UNIX running on minicomputers


Relational DBMSs gradually supplant CODASYL
DBMSs throughout the 1980s


Database explosion continues


fueled by
increasing automation levels, ever cheaper
computers and disk storage, and ever more data
-
intensive business practices

Database/DBMS History


Third Era


Third Era


1995
-
present


Databases are ubiquitous


PCs, mainframes, supercomputers, business, science,
government, …


Large organizations have hundreds to tens of thousands of
databases


integration across DBs is the big problem


Terabyte and petabyte databases become commonplace


Data is accessed globally from inside and outside the
organization (supply chain integration, direct customer
interaction, …)


ubiquitous networks, the Web, and
related standards make this possible


Relational DBMSs change little while software evolves
from structured to object
-
oriented tools and languages and
from machine
-
centered applications to distributed and
Web
-
based applications

Standing at the Precipice


Organizations are overwhelmed by the volume of data


Data has value independent of its support for “ordinary” business
processing (e.g., marketing analysis for trends and new products)


Modern software views data and software as an integrated whole (the
object
-
oriented view) but relational DBMSs treat them separately


Relational DBMSs are a poor fit to modern software and applications


limiting the kinds of data that can be stored and the types of applications
that can be feasibly built and maintained (e.g., genome analysis and
genetically
-
customized drug design and production using a relational
database?)


The sheer volume of data stored in relational databases and the
dependence of “everything” on those databases and their host DBMSs
makes fundamnetal change almost unthinkable.

What is a DBMS?


DBMSs can be small
-
scale (e.g., Microsoft
Access) or large
-
scale (e.g., Oracle).


For medium
-

and large
-
scale applications, a
DBMS is a large, complex, and expensive program


Characteristics of that program include:


Tightly bound to the operating system since both share
responsibility for accessing disk storage, network I/O,
and control of related hardware resources.


Resource
-
hungry


industrial strength DBMSs require
industrial
-
strength hardware costing thousands to tens
of millions of dollars.


Difficult to manage


requires an army of highly
-
trained
specialists.



Some DBMS Products


Desktop


Access (Jet)


FoxPro


Paradox


Enterprise


Oracle


SqlServer


Open Source: mySQL, PostgreSQL, Firebird


Embedded


SQL Server Mobile


Open Source

Who Creates/Manages Your Database?


End User


Only feasible for small databases using simple DBMSs
(e.g., a customer list with order detail on Microsoft
Access)


Analyst/Programmer


Gathers user requirements


Designs applications


Implements information systems


Database Administrator (DBA)


Database design/development


Plans, creates & maintains database