+ All Categories
Home > Documents > IELM 511: Information System design

IELM 511: Information System design

Date post: 06-Jan-2016
Category:
Upload: river
View: 21 times
Download: 0 times
Share this document with a friend
Description:
IELM 511: Information System design. Introduction. Part 1. ISD for well structured data – relational and other DBMS. Info storage (modeling, normalization) Info retrieval (Relational algebra, Calculus, SQL) DB integrated API’s. Part 2. ISD for systems with non-uniformly structured data. - PowerPoint PPT Presentation
Popular Tags:
22
IELM 511: Information System design Introduction Part 1. ISD for well structured data – relational and other Part 2. ISD for systems with non-uniformly structured data Part III: (one out of) Basics of web-based IS (www, web2.0, …) Markup’s, HTML, XML Design tools for Info Sys: UML API’s for mobile apps Security, Cryptography IS product lifecycles Algorithm analysis, P, NP, NPC Info storage (modeling, normalization) Info retrieval (Relational algebra, Calculus, SQL) DB integrated API’s
Transcript
Page 1: IELM 511: Information System design

IELM 511: Information System design

Introduction

Part 1. ISD for well structured data – relational and other DBMS

Part 2. ISD for systems with non-uniformly structured data

Part III: (one out of)

Basics of web-based IS (www, web2.0, …)Markup’s, HTML, XMLDesign tools for Info Sys: UML

API’s for mobile appsSecurity, CryptographyIS product lifecyclesAlgorithm analysis, P, NP, NPC

Info storage (modeling, normalization)Info retrieval (Relational algebra, Calculus, SQL)DB integrated API’s

Page 2: IELM 511: Information System design

Agenda

Brief introduction to DBMS architecture

Some other DB types

Page 3: IELM 511: Information System design

DB architecture components

Any DB has three (or four) essential components:

1. The process (DBMS application)

2. System memory (RAM on the computer where the process is running)

3. Permanent data store (usually on a Hard disk) and, (for most DBs),

4. A computer network.

disk

cpu

RAM

client

client

client

Typical client-server DB model (e.g. the one we use in our labs)

Why do we need any other model ?

Page 4: IELM 511: Information System design

DB architectures: need for other models

Very large number of queries per minute parallel systems

disk

cpuRAM

cpu

cpu

cpu disk

disk

cpuRAM

cpu

cpu

cpu disk

RAM

RAM

RAM

cpuRAM

disk

cpuRAM

disk

cpuRAM

disk

Shared nothing Shared disk

Shared memory

Note: a parallel DB may or may not store datain different locations, or across a network.

Page 5: IELM 511: Information System design

DB architectures: need for other models..

Network is not reliable, but services are critical Distributed DB(e.g. Park-n-Shop)

Distributed DB - a single logical database that is split into fragments, each fragment is controlled by a separate DBMS

Each site can process queries that access local data as well as on other computers in the network.

cpuRAM

frag n

cpuRAM

frag 1

cpuRAM

frag 2

Data is distributed, but transparent to the user !

Page 6: IELM 511: Information System design

Distributed DBs, examples

A distributed system appears to the user as a “centralized system”

- Users do not need to worry about network details

- Users are not concerned with where the data is stored, or

redundantly stored data

- Tables may be stored in multiple fragments, but this is

transparent to the user

The DBMS must have special functions to provide this functionality !

Page 7: IELM 511: Information System design

Distributed DBs, advantages

- Increased reliability and availability

- Improved performance of local data

- Easier expansion

Page 8: IELM 511: Information System design

Distributed DBs, examples

Extra functionality embedded in distributed DBMS:

Keeping track of distributed dataDistributed query processingDistributed transaction managementMaintaining consistent copies of replicated dataDistributed database recoverySecurity - user access authorizationDistributed catalog management

Examples of fragmented data:

- Some tables are only stored at some sites

- Vertical fragmenting of tables

e.g. some columns of a table in one site, others in another site.

- Horizontal fragmenting of tables

e.g. different rows stored in different sites.

Page 9: IELM 511: Information System design

Distributed DB examples

Multiple stores belonging to same retail chain (e.g. Park-n-Shop)

Multiple branches of same bank

Domain name service (DNS) for internet

Page 10: IELM 511: Information System design

Why have Object Oriented Databases ?

- Need for more complex applications

- Need for additional data modeling features

- Increased use of object-oriented programming languages since 1990

Need for even more (other) models: Object Oriented DBs

Commercial OO Database products:Ontos, Gemstone, O2 ( Ardent), Objectivity, Objectstore ( Excelon),Versant, Poet, Jasmine (Fujitsu-GM)

Page 11: IELM 511: Information System design

Main idea in OODB:DB objects should have a direct correspondence to real-world objects

Advantage:Objects maintain their integrity and identity ease of modeling, maintenance

Object is composed of:Data (values of attributes) andBehavior (methods or operations)

Object Oriented DBs

Relational DB: simple program objects (tables), data about single object maybe spread over multiple tables (e.g. account data in our Bank DB)

OODB: program objects can be arbitrarily complex; however, all data andfunctions related to one object are stored together.

Page 12: IELM 511: Information System design

Some Key concepts of OODBs

Encapsulation

At the time when an object is defined, the user must define - All data and it type - All operations a user can apply to the object.

Contrast this with Relational DBs: Data is defined, but operatorsare system functions, not specific to objects.

Operator Polymorphism

- Each object encapsulates its own methods- Different objects may have some similar actions (e.g. subtract some amount from a ‘loan’ object, or from an ‘account’ object.)- Polymorphism allows same operator name to be used by different objects (Note: actual functions are different, although the do similar things).

Constructors, Destructors

Object instances are created (equivalent of inserting row(s) in RDB) by constructorsand deleted (equivalent of deleting row(s) in RDB) by using destructors

Page 13: IELM 511: Information System design

Some Key concepts of OODBs…

Object hierarchy and inheritance

Objects can be organized in hierarchical structure (e.g. ‘account’ objectis a super-class of ‘savings_account’ and ‘checking_account’ objects).

Objects of a sub-class inherit attributes (and values) from parent classes in thehierarchy.

Page 14: IELM 511: Information System design

Practical situation of OODBs

Commercial OO Database products:Ontos, Gemstone, O2 ( Ardent), Objectivity,Objectstore ( Excelon),Versant, Poet, Jasmine (Fujitsu-GM)

Commercial success and penetration: < 1% of total market.

Possible Reasons:OODBs were introduced in 1990s, by which time RDBs dominated mostmarkets. Switching costs too high. Operator efficiency cannot match RDB.

OODBs lack the simplicity and universality of SQL.

Oracle provides support for Object-Relational DB for special applications.

- Try to capture the best of RDB and OODB

Page 15: IELM 511: Information System design

Object-Relational DBs

Main features: - User-Defined Types, Object ID’s, Nested Tables

No standard implementation among different DB vendors.

Most common interface standard: SQL-99

User Defined Types (UDT): CREATE TYPE <typename> AS ( attribute_1 data-type_1, … );

Subsequently, a table may be defined in terms of UDT’s:

CREATE TABLE <table name> OF <typename>;

UDT and nested tables allow design of DB to appear more like real-worldobjects (internally, the DB, e,g, Oracle, may convert these into regular tables.)

Page 16: IELM 511: Information System design

Spatial and Temporal Databases

The most recent advances in Data storage field are in areas of

- Spatial Databases

- Temporal Databases

Page 17: IELM 511: Information System design

Spatial Databases

Motivating example 1: Google maps or GPS programs

- Storage: a ‘map’, possibly with different models, e.g. terrain, road,…

- Queries: Find object of type x ‘near’ point p; Find shortest route from point p to point q; Is point p in zone (e.g. district, or country) z ?

Motivating example 2: DB models for medical applications: CT scans

- Storage: CT scan of a human brain

- Queries: Find a path from point p to point q along artery A; Find cell-cluster of type tumor_x;

Page 18: IELM 511: Information System design

Spatial databases..

Provide Spatial Data Types (SDT) in model and in query language

- Point, Line, Region - Relationship(s) between them: point p is on line L

DBMS provides support for SDTs:

- Spatial indexing (for quickly locating, e.g., point in region) - Spatial joins

Page 19: IELM 511: Information System design

Spatial databases..

Example 1. (fast response with spatial indexing):

Find all electronics factories in PRD area

SELECT fname FROM factories f WHERE f.location inside PRD.area

Example 2. Spatial join: a join that compares any two joined objects based on a predicate on their spatial attribute values

For each highway passing through PRD, find all factories within < 2 Km.

SELECT h.highway, f.fnameFROM highways h, factories fWHERE h.route intersects PRD.area and distance( h.route, f.location) < 2 Km

Page 20: IELM 511: Information System design

Temporal databases

Most DBs record data; if the data is available in the DB, then it is ‘true’if not, then it is ‘not true’.

Temporal DBs record not only data, but specifically store validitytime window for all data. Thus, each data record has two time stamps: - Transaction time - Valid time

Motivating example 1: Internet games, e.g. second life

- Storage: similar to RDB, but with additional valid time for each cell.

- Queries: Was Anton in coffee_shop at same time as Dave?

Page 21: IELM 511: Information System design

Concluding remarks

Other than RDBM, several other DB types have been used successfully.

Advantages of these types depend on the usage:

When data is handled by many geographically separated, localized operations,it may be better to use Distributed DBs

When the application is space/geography related, instead of buildingspecial APIs, Spatial DBs may be used.

When data validity and time of events is important, Temporal DBs maybe useful (e.g. internet games, cyber-crime detections, …)

Page 22: IELM 511: Information System design

References and Further Reading

Chaps. 16, 18, 21Silberschatz, Korth, Sudarshan, Database Systems Concepts, McGraw Hill

Next: IS for non-structured data

Chaps. 20, 24, 25, 27Elmasri and Navathe, Fundamentals of Database Systems, Addison-Wesley


Recommended