Download Data Modeling - Hiram College

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Microsoft Jet Database Engine wikipedia , lookup

Big data wikipedia , lookup

Extensible Storage Engine wikipedia , lookup

Entity–attribute–value model wikipedia , lookup

Database wikipedia , lookup

Clusterpoint wikipedia , lookup

Relational model wikipedia , lookup

Database model wikipedia , lookup

Transcript
Database Environment
CPSC 356 Database
Ellen Walker
Hiram College
Three Levels of Abstraction
• External level
– How users perceive the data
– Multiple views
• Conceptual level
– Description of data and relationships
• Internal (Physical) level
– How the data is physically stored
Data Independence
• Logical Data Independence
– External views do not change when conceptual
schema changes
– Existing applications do not need to be
rewritten to accommodate new ones
• Physical Data Independence
– Conceptual schema does not change when
internal schema changes (e.g. new server)
Describing the Data
• DDL (Data Definition Language)
– Detailed definition of database schema
(metadata)
– Too low-level (and database-specific) for good
modeling!
• Object-based model (entity-relationship)
• Record-based model (relational)
Data Manipulation Languages
• Commands to access and update databases
• Procedural describes how to retrieve the data
– Example: relational algebra
– Analogy: Fortran
• Non-procedural describes what data to retrieve
– Example: SQL
– Analogy: Prolog
Data Models
• Structural part
– How the database is constructed
• Manipulative part
– What operations on data are allowed
• Integrity constraints
– Ensuring the data remains accurate
Object-Based Data Models
•
•
•
•
Entity-Relationship
Semantic
Functional
Object-Oriented
Record-Based Data Models
• Relational
• Network
• Hierarchical
What Should a Database
Provide?
•
•
•
•
•
•
Ability to store, retrieve and update data
Access to metadata (e.g. names & types)
Transaction processing (all or none)
Concurrency control
Recovery from damage
Authentication & related security
What Should a Database
Provide? (cont’d)
•
•
•
•
Support for networking & communications
Integrity assurance
Independence of programs from data
Utility services
– Import, export, monitoring, usage analysis,
garbage collection, etc.