Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Unit 1
Dr. V. Jayanthi, PhD. Department of Computer Applications St. Josephs College of Engineering
Aug 2011
Outline
Introduction to database Basic definitions Importance Historic perspective Major DBMS today Modern DBMS architecture
DBMS Functionality
Data: raw facts : Text, Graphics, images.. Being stored and retrieved Not be processed to reveal their meaning to the user
Example
Data
Information
Processed data that could be used to increase the knowledge of the user Closely related to data but different
Informatio n
Data is converted into information, and information is converted into knowledge. Knowledge; information evaluated and organized so that it can be used purposefully.
What is a 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
Database system
Database is a collection of stored operational data used by the application systems of some particular enterprise (C.J. Date) Database system: DBMS + data + application programs
Paper Databases Still contain a large portion of the worlds knowledge File-Based Data Processing Systems Early batch processing of (primarily) business data Database Management Systems (DBMS)
DBMS
Database Management System (DBMS): software system (collect of software) help to manage the data contents
Application software
raw data (end user data) metadata (data about data, it contains data characteristics and
Aug 2010
their relationships)
12
History
50s and 60s all applications were custom built for particular needs File based Many similar/duplicative applications dealing with collections of business data Early DBMS were extensions of programming languages 1970 - E.F. Codd and the Relational Model 1979 - Ashton-Tate and first Microcomputer DBMS
The relational revolution A simple data (1970s) model: data is stored in relations
(tables) A declarative query language: SQL SELECT Account.owner FROM Account, Branch WHERE Account.balance = 0 AND Branch.location = Springfield AND Account.branch_id = Branch.branch_id; Programmer specifies what answers a query should return, but not how the query is executed DBMS picks the best execution strategy based on availability of indexes, data/workload characteristics, etc.
Problems with file processing systems Inconsistent data Inflexibility Limited data sharing Poor enforcement of standards Excessive program maintenance
First applications focused on clerical tasks Requests for information quickly followed File systems developed to address needs Data organized according to expected use Data Processing (DP) specialists computerized manual file systems
Early efforts
Factoring out data management functionalities and from applications standardizing these functionalities is an important first step
CODASYL standard (circa 1960s) Bachman got a Turing award for this in 1973
But getting the abstraction right (the API between applications and the DBMS) is still tricky
What do you want from a DBMS? queries (questions) about data Answer
Update data And keep data around (persistent) Example: a traditional banking application
Each account belongs to a branch, has a number, an owner, a balance, Each branch has a location, a manager, Query: Whats the balance in Homer Simpsons account? Modification: Homer withdraws $100 Persistency: Homer willbe pretty upset if his balance disappears after a power outage
DBMS Benefits
Minimal data redundancy Consistency of data Integration of data Sharing of data Ease of application development Uniform security, privacy, and integrity controls Data accessibility and responsiveness Data independence Reduced program maintenance
Oracle IBM DB2 (from System R, System R*, Starburst) Microsoft SQL Server NCR Teradata Sybase Informix (acquired by IBM) PostgreSQL (from UC Berkeleys Ingres, Postgres) Tandem NonStop (acquired by Compaq, now HP)
Importance of DBMS
Aug 2010
Makes data management more efficient and effective Query language allows quick answers to ad hoc queries Provides better access to more and better-managed data Promotes integrated view of organizations operations Reduces the probability of inconsistent data
MCA - First yr & first sem
28
Some Definitions
A File: A group or collection of similar records, like INST6031 Fall Student File, American History 1850-1866 file, Basic Food Group Nutrition File A record book: a "rolodex" of data records, like address lists, inventory lists, classes or thematic units, or groupings of other unique records that are combined into one list (found in AppleWorks, FileMaker Pro software). A field: one category of information, i.e., Name, Address, Semester Grade, Academic topic A record: one piece of data, i.e., one student's information, a recipe, a test question A layout: a design for a database that contains field names and possibly graphics.