is 4424: developing the entreprise database frederic adam

16
IS 4424: Developing the Entreprise Database Frederic Adam

Upload: coleen-townsend

Post on 29-Jan-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: IS 4424: Developing the Entreprise Database Frederic Adam

IS 4424: Developing the Entreprise Database

Frederic Adam

Page 2: IS 4424: Developing the Entreprise Database Frederic Adam

Course Content

• Data Modelling

• Analysing requirements

• Sizing

• Developing large DBs

• Administering the DB

• Other key issues (e.g. KM, DW etc…)

• Chosen Platform ORACLE

Page 3: IS 4424: Developing the Entreprise Database Frederic Adam

Oracle

• Industry standard• #1 pb: rate of change and upgrade• Complexity: manuals = 20,000 pages

– (error message manual = 1700 pages)

• DBs are at the core of most business applications– Knowledge of ORACLE is key for

developersORACLE is not a bucket in which you throw your data

Page 4: IS 4424: Developing the Entreprise Database Frederic Adam

Characteristics of DBs…

…which ORACLE features:

• High concurrency (high performance under load)

• Multi-user (read does not interfere with write)• Data consistency – changes to data don’t affect

running queries + no phantom data changes• High degree of recoverability (pull the plug test)

Page 5: IS 4424: Developing the Entreprise Database Frederic Adam

ACID test

• Atomicity

• Consistency

• Isolation

• Durability

Page 6: IS 4424: Developing the Entreprise Database Frederic Adam

ACID test

• Atomicity

• Consistency

• Isolation

• Durability

All or nothing

Preserve consistency of database

Transactions are independent

Once committed data is preserved

Page 7: IS 4424: Developing the Entreprise Database Frederic Adam

Why DB projects fail?

• Ignoring the technology (HW / SW)

• Estimating performance wrong

• Getting the sizing wrong

• Fudging the testing (Pareto principle)

• Confuse the responsibilities for DB

= ANALYSIS of pb

Page 8: IS 4424: Developing the Entreprise Database Frederic Adam

Analysis of Problem

• Data model

• Technical decisions (sizing / hardware…)

• Functionalities

• Interface

• ReportsTypes of decisions:NormalisationData access – indexesSecurity options (level; roles…)

Page 9: IS 4424: Developing the Entreprise Database Frederic Adam

Entity Relationship Model

• Entity

• Attributes

• Instance(s)

• Domain

• Key (candidate primary and foreign)

Page 10: IS 4424: Developing the Entreprise Database Frederic Adam

definitions

• Entity

• Attributes

• Instance(s)

• Domain

• Key (candidate primary and foreign)

Object in real world distinguishable from others

Description of entity – shared attributes

Range of possible values for attribute

Attribute that uniquely identified an entitySelected keyAttribute of one entity that is primary keyin another one

(Number of) occurrences of an entity

Page 11: IS 4424: Developing the Entreprise Database Frederic Adam

Relationship sets

• Relationship

• Ordinality

• Cardinality

• Associative Entity

Page 12: IS 4424: Developing the Entreprise Database Frederic Adam

Definitions (2)

Association of two or more entities

Entity whose attributes describean association between 2 entities

• Relationship

• Ordinality

• Cardinality

• Associative Entity

Minimum number of occurrence ofone entity relative another one –optionality or dependency

Maximum number…

Page 13: IS 4424: Developing the Entreprise Database Frederic Adam

Some test questions

• Is it a bird is it a plane?

• Is it an entity or an attribute?

Page 14: IS 4424: Developing the Entreprise Database Frederic Adam

Some test questions

• Is it a bird is it a plane?

• Is it an entity or an attribute?

No, it’s Superman

e.g. address[more than one per emp.?]Matter of analysis of thebusiness problem

Page 15: IS 4424: Developing the Entreprise Database Frederic Adam

From data modelling to DB design

• Ideally, one data structure = one schema

• But DBs not always developed in one go

• Organisations merge…

• Need to integrate schemas

• Difficult to anticipate and resolve conflicts (eg names…) = ERP projects

Page 16: IS 4424: Developing the Entreprise Database Frederic Adam

I/O Trap

• Reading existing data• Changing existing data

– Update existing records– Adding new records– Deleting records

• All these involve going to disk => slowest device by considerable margin

• Minimise / reschedule physical I/O