Download presentation
Presentation is loading. Please wait.
Published byCalvin O’Brien’ Modified over 9 years ago
1
Object Persistence Design Chapter 13
2
Key Definitions Object persistence involves the selection of a storage format and optimization for performance. Four basic formats used for object persistence are: files, OO databases, object-relational, and relational databases.
3
OBJECT PERSISTENCE FORMATS
4
Files Sequential Access Data stored in order based on a particular attribute Typically efficient for reports using all or most of the file’s data Random Access Data stored in unordered fashion Typically efficient for finding individual records
5
Other files Master files Transaction files Audit History Look-up
6
Customer Order File Figure 13-1 Goes Here
7
Relational Databases Primary key Foreign key Referential integrity Structured Query Language (SQL) Tables Joining tables Objects must be converted so they can be stored in a table
8
Object-Relational Databases Relational databases extended to handle the storage of objects Use of user-defined data types Extended SQL Inheritance tends to be language dependent
9
Relational Database Example Figure 13-3 Goes Here
10
Object-Oriented Databases Two approaches Adding persistence extensions to OO languages Separate database management systems Extents Object ID assigned Some inheritance Repeating groups or multivalued attributes Mainly support multimedia applications Sharp learning curve
11
Selecting an Object Persistence Format
12
MAPPING PROBLEM DOMAIN OBJECTS TO OBJECT PERSISTENCE FORMATS
13
Initial Points to Consider Adding primary and foreign keys Unless they add too much overhead Data management functionality only in classes at data management layer May add overhead, but aids in portability and reuse
14
Appointment System Problem Domain and Data Management Layers
15
Factoring Out Multiple Inheritance Effect
16
Mapping Problem Domain Objects to ORDBMS Schema -- Rules
17
Mapping Problem Domain Objects to ORDBMS Schema -- Example
18
Maintain a Clean Problem Domain Layer Modifying the problem domain layer can create problems between the system architecture and human computer interface layer The development and production costs of OODBMS may offset the production cost of having the data management layer implemented in ORDBMS
19
Mapping Problem Domain Objects to RDBMS Schema -- Rules
20
OPTIMIZING RDBMS-BASED OBJECT STORAGE
21
Dimensions of Data Storage Optimization Storage efficiency (minimizing storage space) Speed of access (minimizing time to retrieve desired information)
22
Optimizing Storage Efficiency Reduce redundant data Limit null values Multiple possible interpretations can lead to mistakes A well-formed logical data model does not contain redundancy or many null values
23
The Steps of Normalization
24
First Normal Form (1NF)
25
Second Normal Form (2NF)
26
Third Normal Form (3NF)
27
Optimizing Access Speed Denormalization Clustering Intra-file Inter-file Indexing
28
Payment Type Index
29
Guidelines for Creating Indexes Use indexes sparingly for transaction systems Use many indexes to increase response times in decision support systems For each table Create a unique index based on the primary key Create an index based on the foreign key Create an index for fields used frequently for grouping, sorting, or criteria
30
Estimating Data Storage Size FieldAverage Size (Characters) Order number 8 Date 7 Cust ID 4 Last name13 First name 9 State 2 Amount 4 Tax rate 2 Record Size49 Overhead (30%)14.7 Total Record Size63.7 Initial Table Size50,000 Initial Table Volume 3,185,000 Growth/Month 1,000 Table volume @ 3 years 5,478,200
31
Summary There are four basic types of object persistence formats: files (sequential and random access), object-oriented databases, object-relational databases, and relational databases. Tradeoffs between the formats make it necessary to consider which to apply in each environment Once the format has been selected, data storage needs to be optimized for efficiency and speed of access.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.