ISOM
Structure of this semester
Database Fundamentals
Relational Model
Normalization
ConceptualModeling Query
Languages
AdvancedSQL
Transaction Management
Java DB Applications –JDBC
DataMining
0. Intro 1. Design 3. Applications 4. AdvancedTopics
Newbie Users ProfessionalsDesigners
MIS710
2. Querying
Developers
ISOM
Today’s buzzwords
• Organizational data cycle• Database• Database Management Systems• Data Independence• Centralized Database Systems• Client-Server Database Systems• Distributed Database Systems
ISOM
Objectives of today’s lecture
• Know common database terminology• Understand requirements and uses of data• Know the differences between databases
and flat files• Realize the importance and need for
databases in problem-solving• Understand the different types of
databases and their differences
ISOM
Data: A Resource
• The Success of an organization depends on efficient use of its resources:Buildings, factories, equipmentTechnical know-howHuman resourcesData
• Data: An important organizational resource
ISOM
Electronic Data
• Why?Large volume in a small spaceEase of sharingEase of useData analysis
• How?File-based system versus databases
ISOM
Legacy (File-based) Systems
• Uncontrolled data redundancy, • Data inconsistency• Poor data sharing• Difficult to keep up with changes• Record format Vs. user requirements• Programs Vs. record format• Low productivity• High maintenance cost
ISOM
So what is a database?
• According to Oxford English Dictionary:“A structured collection of data held in
computer storage; esp. one that incorporates software to make it accessible in a variety of ways”
• So does it make pretty much every collection of data a “database”?
ISOM
The Database
• The data itself PLUS The data definitions (metadata), applications, queries and visualizations
ISOM
Database Approach
• Non-redundant collection of logically related facts representing some aspect of the real world the data itself plus the data definitions
• Permits sharing• Consistent representation for each piece of data• Avoids (minimizes) redundancy• Allows different user views• Users are isolated from most changes
ISOM
Why Databases?
• Independence from representation formats
• Control redundancy and consistency• Ensure integrity/security• Better scalability• Allow ad hoc access• Better maintenance• Better concurrency
ISOM
Data Independence
• Does data have to be part of programs?
• Do we need to change one if the other changes?
• Three-tier architecture of databasesWhat the users see
How we model data
How data is stored
View
Conceptual
Physical
ISOM
Access Flexibility
• Easy to ask ad-hoc questions
• No need for separate codes
• User-friendly interface
• Command-based (e.g., SQL)
• Graphical (e.g., QBE)
ISOM
Data Integrity
• Ensures that the stored data are consistent and correct
• Easy to define global rulescustomer_age > 21 yearsnumber_of_credits < 18
• Can allow multiple users to access data without compromising on data integrity
ISOM
Data Redundancy
• Data need not be replicated
• Less wastage of storage space
• Less data anomaly
• Reduced and controlled redundancy
• Tighter control of replicated data
ISOM
Standardization
• Everybody talks the same talk.Less chance of misunderstandingEasier to interpret other’s data
• Easier to mergeUseful when several organizations
combine to form one.
ISOM
Productivity and Maintenance
• Increase in productivity User-friendly interface Independence from specific data structure
• Easier maintenance Less code to maintain
• The DBMS is the bulk of the code.• Ad-hoc queries make it possible to make do with
much less code. The vendor makes revisions of the DBMS.
• Economy of scale
ISOM
Productivity vs. Maintenance
0102030405060708090
100
Start 1st week 2nd week 3rd week 4th week
Prod-DB
Prod-FL
Mnt-DB
Mnt-FL
ISOM
Disadvantages of Databases
• Software complexity
• Processing inefficiency
• Need for co-ordination
• Organizational impact
• Risk
ISOM
DBMS
• A Specialized piece of software that sits between the data and its users.
DatabaseManagement
System
DataIntension + Extension
ISOM
DBMS Functions and Users
• Four major uses of a DBMS package Database Development, Interrogation, Maintenance,
and
Application Development
• Automated tools for design, query, and application development
• Database users Database administrators ( DBAs )
Database designer
End Users