Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz.

21
Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz

Transcript of Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz.

Page 1: Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz.

Data Modeling

Bayu Adhi Tama, ST., MTI.

Thanks to Poniah, Elamasri, and Silberkatz

Page 2: Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz.

LOGOReview

DDL is usually used by database administrator (DBA) to retrieve or to update data in a DBMS. [T/F]

In a “two-tier architecture”, in order to increase transaction processing, an application Server is used beside a database server. [T/F]

If the database system is not able to handle the complexity of data because of modeling limitations, it’s enough when no DBMS will use. [T/F]

Page 3: Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz.

LOGO

A model serves two primary purposes: As a true representation of some aspects of the real world, a model

enables clearer communication about those aspects of the real world. A model serves as a blueprint to shape and construct the proposed

structures in the real world. Data modeling is an integral part of the process of designing and

developing a data system. A data model is a device that : [Poniah]

helps the users or stakeholders understand clearly the database system that is being implemented based on the information requirements of an organization, and

enables the database practitioners to implement the database system exactly conforming to the information requirements.

Data models [Silberkatz] A collection of tools for describing : data, data relationships, data

semantics, and data constraints

Page 4: Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz.

LOGO

Data model: communication tool and database blueprint.

Page 5: Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz.

LOGO

Classification of Information Levels: Conceptual Level. The highest level consisting of general ideas about

the information content External Level. The data model represents the information requirements

for the entire set of user groups in the organization

Page 6: Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz.

LOGO

Process creating data model: Identify business objects Identify relationships Add attributes Assign identifiers Incorporate business rules Validate the data model

Significance of data model quality Data model completeness Data model correctness

Page 7: Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz.

LOGO

Data models characteristic Involves users Covers the proper enterprise segments Uses Accepted Standard Rules and Conventions. Produces High-Quality Design.

Data system development lifecycle (DDLC) Starting the process

• Data-Oriented Approach

• Development Framework.

• Initiation Report.

• Planning

• Feasibility study

Requirements definition• Study overall business operations

• Observes business processes

• Understand business units

• Interview users

• Determine information requirements

• Identify data to be collected and stored

• Establish data access pattern and estimate data volume

Page 8: Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz.

LOGO

Design Implementation

Page 9: Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz.

LOGO

Slide 2- 9

History of Data Models

Network ModelHierarchical ModelRelational ModelObject-oriented Data ModelsObject-Relational Models

Page 10: Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz.

LOGO

Slide 2- 10

History of Data Models

Network Model: The first network DBMS was implemented by

Honeywell in 1964-65 (IDS System). Adopted heavily due to the support by

CODASYL (Conference on Data Systems Languages) (CODASYL - DBTG report of 1971).

Later implemented in a large variety of systems - IDMS (Cullinet - now Computer Associates), DMS 1100 (Unisys), IMAGE (H.P. (Hewlett-Packard)), VAX -DBMS (Digital Equipment Corp., next COMPAQ, now H.P.).

Page 11: Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz.

LOGO

Slide 2- 11

Example of Network Model Schema

Page 12: Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz.

LOGONetwork Model: Basic Concepts

Data are represented by collections of records. Records and their fields are represented as record

type Relationships among data are represented by

links restrictions on links depend on whether the

relationship is many-many, many-to-one, or one-to-one.

Page 13: Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz.

LOGO

Slide 2- 13

Network Model

Advantages: Network Model is able to model complex

relationships and represents semantics of add/delete on the relationships.

Can handle most situations for modeling using record types and relationship types.

Language is navigational; uses constructs like FIND, FIND member, FIND owner, FIND NEXT within set, GET, etc.

• Programmers can do optimal navigation through the database.

Page 14: Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz.

LOGO

Slide 2- 14

Network Model

Disadvantages: Navigational and procedural nature of

processing Database contains a complex array of

pointers that thread through a set of records.• Little scope for automated “query optimization”

Page 15: Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz.

LOGO

Slide 2- 15

History of Data Models

Hierarchical Data Model: Initially implemented in a joint effort by IBM

and North American Rockwell around 1965. Resulted in the IMS family of systems.

IBM’s IMS product had (and still has) a very large customer base worldwide

Hierarchical model was formalized based on the IMS system

Other systems based on this model: System 2k (SAS inc.)

Page 16: Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz.

LOGO

Slide 2- 16

Hierarchical Model

Advantages: Simple to construct and operate Corresponds to a number of natural hierarchically

organized domains, e.g., organization (“org”) chart Language is simple:

• Uses constructs like GET, GET UNIQUE, GET NEXT, GET NEXT WITHIN PARENT, etc.

Disadvantages: Navigational and procedural nature of processing Database is visualized as a linear arrangement of records Little scope for "query optimization"

Page 17: Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz.

LOGO

Slide 2- 17

History of Data Models

Relational Model: Proposed in 1970 by E.F. Codd (IBM), first commercial

system in 1981-82. Now in several commercial products (e.g. DB2, ORACLE,

MS SQL Server, SYBASE, INFORMIX). Several free open source implementations, e.g. MySQL,

PostgreSQL Currently most dominant for developing database

applications. SQL relational standards: SQL-89 (SQL1), SQL-92

(SQL2), SQL-99, SQL3, …

Page 18: Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz.

LOGO

Slide 2- 18

History of Data Models

Object-oriented Data Models: Several models have been proposed for implementing in a

database system. One set comprises models of persistent O-O Programming

Languages such as C++ (e.g., in OBJECTSTORE or VERSANT), and Smalltalk (e.g., in GEMSTONE).

Additionally, systems like O2, ORION (at MCC - then ITASCA), IRIS (at H.P.- used in Open OODB).

Object Database Standard: ODMG-93, ODMG-version 2.0, ODMG-version 3.0.

Page 19: Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz.

LOGOObject Oriented Data Model

An object corresponds to an entity The object-oriented paradigm is based on encapsulating

code and data related to an object into single unit. The object-oriented data model is a logical data model Object structure:

A set of variables that contain the data for the object. The value of each variable is itself an object.

A set of messages to which the object responds; each message may have zero, one, or more parameters.

A set of methods, each of which is a body of code to implement a message; a method returns a value as the response to the message

Page 20: Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz.

LOGO

Slide 2- 20

History of Data Models

Object-Relational Models: Most Recent Trend. Started with Informix

Universal Server. Relational systems incorporate concepts from

object databases leading to object-relational. Exemplified in the latest versions of Oracle-

10i, DB2, and SQL Server and other DBMSs. Standards included in SQL-99 and expected

to be enhanced in future SQL standards.

Page 21: Data Modeling Bayu Adhi Tama, ST., MTI. Thanks to Poniah, Elamasri, and Silberkatz.

LOGOExercise

Match the column entries