Lecture 01 - Class Overview, Databases
Lecture 01 - Class Overview, Databases
Management Systems
Lecture 1: Introduction
● In principle, this should be fine: both sections are doing the same project
● I'm still considering how to handle the presentations in this case. Be aware
that I might ask your team to present in both sections.
77-82% B-
73-77% C+
69-73% C
65-69% C-
below 65% F
However, regrade requests have lower priority than grading current assignments.
● Storage abstraction
● Programmatic interfaces
○ insertion/creation, deletion, modification
○ retrieval: query language, data processing
● Large scale: millions/billions of records
● Long-term durability
● Data Integrity
● Support for multiple concurrent users
○ Authentication
○ Access control
○ Concurrency
● Transactions: ensure that data is always in a consistent state
● Access to metadata
Storage hierarchy:
● Database
● Table (class, entity, record set)
● Record (object instance, row)
● Attribute (column, field)
Examples:
● vehicle
● student in a university
● item in a product catalog
● financial transaction
Examples:
Traditionally, all records in the same table have the same schema: set of attribute
names and their types.
DBMSs generally have tools for establishing & managing these relationships
Examples:
Student has all of Person's attributes, plus some more: # credit hours, registered
courses, …
Instructor has all of Person's attributes, plus some more: department, courses
taught, committee assignments, …
Historically common:
● Flat-File
● Hierarchical
● Network
● Relational
● Graph
● Object-oriented
● Semi-Structured
Richer traversals:
Examples: IDMS
Built-in inheritance
from Wikipedia