ist 210 1 databases and dbmss todd s. bacastow january 2005
TRANSCRIPT
IST 210 Ways of storing data
Files (1960) (ancient times) Databases
Hierarchical (1970) Network (1970) Relational (1980) Object (1990)
IST 210 File terms Record
data items related to a single logical entity (e.g. a student’s information) or row in a table
Field a place for a data item in a record (first name
field in a student record) or a column in a table
File a sequence of records of the same type (the
table)
IST 210 File structures
3 Smith Jane A
1 Wood Bob C
2 Kent Chuck B
4 Boone Dan B
ID Last First Grade
record
fieldA file: “STUDENT”
IST 210 File organization
Serial new records appended
Sequential records ordered in file, usually
according to a numeric key
IST 210 File structures
Serial list of entries in
which the order of entry into the list determines the order of the list
3 Smith Jane A
1 Wood Bob C
2 Kent Chuck B
4 Boone Dan B
ID Last First Grade
IST 210 File structures
Search of a simple list entails going through each record until the query is satisfied (linear search), which is inefficient
3 Smith Jane A
1 Wood Bob C
2 Kent Chuck B
4 Boone Dan B
ID Last First Grade
IST 210 File structures
Sequential list of entries
ordered in some way (e.g. numerically or alphabetically)
1 Wood Bob C
2 Kent Chuck B
3 Smith Jane A
4 Boone Dan B
ID Last First Grade
IST 210 File structures
Search of an ordered sequential list can use a search method
1 Wood Bob C
2 Kent Chuck B
3 Smith Jane A
4 Boone Dan B
ID Last First Grade
IST 210 File structures
Indexes provide a reference to records based on an index field, which is ordered
Boone *
Kent *
Smith *
Wood *
1 Wood Bob C
2 Kent Chuck B
3 Smith Jane A
4 Boone Dan B
ID Last First GradeLast Pointer
IST 210 Problems with files
Redundancy number of files grows with
applications, and data is duplicated
Inconsistency data is updated in one
application’s files, but not in another’s
Maintenance problems changes to data
structures mean changes to many programs
Difficulty combining data business needs may
mean users want data from different applications
IST 210 Other ways to organize Data model
A data model is a particular way of conceptually organizing multiple data files in a database
Other common models Hierarchical Network Relational Object
IST 210 Network data model
Relationships:• one-to-one• one-to-many• many-to-one• many-to-many
Class
Student
Grade
Instructor
ID Department
IST 210 Network data model
Advantages flexible, fast, efficient
Disadvantages Complex Restructuring can be difficult because
of changing all the pointers
IST 210 Hierarchical data model
Parent-child relationship: one-to-one one-to-many
Class
Student
Grade
Instructor
ID Department
IST 210 Hierarchical data model
Advantages easy to search add new branches easily
Disadvantages Must establish the types of search
prior to development of the hierarchical structure
IST 210 Summary
Hierarchical and network data models have generally been replaced by the relational data model
Relational databases dominate the database market Oracle Informix SQL Server DB2 ……..
IST 210 Relational database model
Stores both Data about
real world objects (entities) in tables
Relationships between the tables
IST 210 Relational database Fields (columns) in
the table store attributes.
Each attribute has a specific domain.
Tuples (or records or rows) in the table store information.
Each tuple is a unique instance of an object.
Tables are composed of a set of tuples.
A table is also called a relation.
IST 210 Terms
Table A collection of relevant data relating to one type of
real world objects. Column
A specific place for one type of data relating to one type of real world objects.
Domain Set of all possible values for a specific column.
Row Collection of data describing one real world object.
Primary Key Columns, which are part of the row and uniquely
identify any one row.
IST 210 Records
Each record represents a logical entity (e.g. a student)
Each field represents an attribute of the logical entity
1 Wood Bob C IST357
2 Kent Chuck B IST115
3 Smith Jane A IST357
4 Boone Dan B IST357
ID Last First Grade Class
Student
IST 210 Keys
Each table has a primary key, one field (or a combination of fields) that has a unique value for each and every record in the table
ID is the primary key in this table (two students may share either a last or first name)
1 Wood Bob C IST357
2 Kent Chuck B IST115
3 Smith Jane A IST357
4 Boone Dan B IST357
ID Last First Grade Class
Student
IST 210 Relating tables Tables can be related (joined) together based on their keys The idea is to decompose into separate tables with no
redundancy and to provide a capability to reassemble with no information loss
1 Wood Bob C IST357
2 Kent Chuck B IST115
3 Smith Jane A IST357
4 Boone Dan B IST357
ID Last First Grade Class
Student
IST357 48 Jones
IST115 120 Brower
IST20 120 Fountain
Class
Name #Stud Instructor
IST 210 Relating tables
1 Wood Bob C IST357
2 Kent Chuck B IST115
3 Smith Jane A IST357
4 Boone Dan B IST357
ID Last First Grade Class
Student
IST357 48 Jones
IST115 120 Brower
IST20 120 Mennis
Class
Name #Stud Instructor
Primary key Primary keyForeign key
IST 210 Relating tables
1 Wood Bob C IST357
2 Kent Chuck B IST115
3 Smith Jane A IST357
4 Boone Dan B IST357
ID Last First Grade ClassStudent
IST20 120 Brower
IST115 120 Jones
IST357 48 Jones
Class Name #Stud Instructor
Jones 332
Brower 517
Instructor Name Office
IST 210 DBMS Schema Ultimately data in databases is
stored in files, but their structure is hidden
Conceptual Schema
External Schema
Internal Schema
The view on data used by application programs.
The logical model of data that is separate from how it is used.
The physical storage of data in files and indexes.
IST 210 RDBMS Features
Data Definition Language (DDL)
Data Manipulation Language (DML)
Integrity Constraints Transaction Management Concurrency Security Tuning of Storage
IST 210 Relationships
Link between entities.
A relationship may define constraints. E.G, a person can
only have one SSN.
IST 210 Advantages of RDBMS Eliminate unnecessary duplication of data Enforce data integrity through constraints Changes to conceptual schema need not
affect external schema Changes to internal schema need not
affect the conceptual schema Many tools are available to manage the
database
IST 210 Disadvantages of RDBMS To store objects (e.g., drawings) in a
relational database, the objects have to be ‘flattened’ into tables e.g., a digital representation of a parcel must
be separated from the behaviour of other parcels
Complex objects have to be taken apart and the parts stored in different tables
When retrieved from the database, the object has to be reassembled from the parts in different tables
IST 210 Other Types of DBMS Object DBMS
store objects as objects designed to handle complex nested
objects for graphical and multimedia applications
Object-relational DBMS hybrid databases that can store data in
tables but can also store objects in tables
IST 210 Object DBMS
ODBMS have the advantage that objects can be stored directly
Object databases are closely linked to programming languages with ways of navigating through the database
IST 210 Summary
Common word
Textbook word
Alternate word
Object word
Table Relation File or Data set (old)
Object class
Column Attribute Field Object field
Domain Domain Range of possible values
Datatype, subtype
Row Tuple Record Object instance
Primary key Primary key Key of the record
Object identifier