pertemuan 1 introduction to database...database approach • arose because: —definition of data...

59
Pertemuan 1 Introduction to Database Matakuliah : Basisdata 1

Upload: others

Post on 14-Mar-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

Pertemuan 1Introduction to Database

Matakuliah : Basisdata

1

Page 2: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

Learning OutcomesPada akhir pertemuan ini, diharapkan

mahasiswa :• Memahami konsep basisdata dan sistem

basisdata serta keuntungan dan kerugiannya

• Memahami aspek dalam lingkungan basisdata

2

Page 3: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

Outline Materi

• Some common uses of database systems.

• Characteristics of file-based systems.

• Problems with file-based approach.

• Meaning of the term database.

• Meaning of the term Database Management System (DBMS).

• Typical functions of a DBMS.

• Major components of the DBMS environment.

• Personnel involved in the DBMS environment.

3

Page 4: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

Outline Materi (lanjutan…)

• History of the development of DBMSs.

• Advantages and disadvantages of DBMSs.

• Purpose of three-level database

architecture.

• Contents of external, conceptual, and internal

levels.

• Purpose of external/conceptual and

conceptual/internal mappings.

• Meaning of logical and physical data

independence.4

Page 5: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

• Distinction between DDL and DML.

• A classification of data models.

• Purpose/importance of conceptual modeling.

• Typical functions and services a DBMS should provide.

• Software components of a DBMS.

• Meaning of client–server architecture and advantages of this type of architecture for a DBMS.

• Function and uses of Transaction Processing Monitors.

• Function and importance of the system catalog.

Page 6: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

Examples of Database Applications

• Purchases from the supermarket

• Purchases using your credit card

• Booking a holiday at the travel agents

• Using the local library

• Taking out insurance

• Using the Internet

• Studying at university

6

Page 7: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

File-Based Systems

• Collection of application programs that perform services for the end users (e.g. reports).

• Each program defines and manages its own data.

7

Page 8: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

File-Based Processing

8

Page 9: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

Limitations of File-Based Approach

• Separation and isolation of data—Each program maintains its own set of

data.

—Users of one program may be unaware of potentially useful data held by other programs.

• Duplication of data—Same data is held by different programs.

—Wasted space and potentially different values and/or different formats for the same item. 9

Page 10: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

Limitations of File-Based Approach

• Data dependence—File structure is defined in the program code.

• Incompatible file formats—Programs are written in different languages,

and so cannot easily access each other’s files.

• Fixed Queries/Proliferation of application programs—Programs are written to satisfy particular

functions.

—Any new requirement needs a new program.

10

Page 11: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

Database Approach

• Arose because:—Definition of data was embedded in application

programs, rather than being stored separately and independently.

—No control over access and manipulation of data beyond that imposed by application programs.

• Result: —the database and Database Management

System (DBMS).

11

Page 12: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

Database• Shared collection of logically related data

(and a description of this data), designed to meet the information needs of an organization.

• System catalog (metadata) provides description of data to enable program–data independence.

• Logically related data comprises entities, attributes, and relationships of an organization’s information.

12

Page 13: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

Database Management System (DBMS)

• A software system that enables users to define, create, and maintain the database and that provides controlled access to this database.

13

Page 14: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

Database Management System (DBMS)

14

Page 15: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

Database Approach

• Data definition language (DDL).—Permits specification of data types, structures

and any data constraints.

—All specifications are stored in the database.

• Data manipulation language (DML).—General enquiry facility (query language) of

the data.

15

Page 16: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

Database Approach

• Controlled access to database may include:—A security system.

—An integrity system.

—A concurrency control system.

—A recovery control system.

—A user-accessible catalog.

• A view mechanism.—Provides users with only the data they want or

need to use.

16

Page 17: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

Views

• Allows each user to have his or her own view of the database.

• A view is essentially some subset of the database.

17

Page 18: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

Views

• Benefits include:—Reduce complexity;

—Provide a level of security;

—Provide a mechanism to customize the appearance of the database;

—Present a consistent, unchanging picture of the structure of the database, even if the underlying database is changed.

18

Page 19: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

Components of DBMS Environment

19

Page 20: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

Components of DBMS Environment

• Hardware—Can range from a PC to a network of

computers.

• Software—DBMS, operating system, network

software (if necessary) and also the application programs.

• Data—Used by the organization and a description of

this data called the schema.

20

Page 21: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

Components of DBMS Environment

• Procedures

—Instructions and rules that should be applied to the design and use of the database and DBMS.

• People

21

Page 22: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

Roles in the Database Environment

• Data Administrator (DA)

• Database Administrator (DBA)

• Database Designers (Logical and Physical)

• Application Programmers

• End Users (naive and sophisticated)

22

Page 23: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

History of Database Systems

• First-generation —Hierarchical and Network

• Second generation—Relational

• Third generation—Object Relational

—Object-Oriented

23

Page 24: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

Advantages of DBMSs• Control of data redundancy

• Data consistency

• More information from the same amount of data

• Sharing of data

• Improved data integrity

• Improved security

• Enforcement of standards

• Economy of scale

24

Page 25: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

Advantages of DBMSs

• Balanced conflicting requirements

• Improved data accessibility and responsiveness

• Increased productivity

• Improved maintenance through data independence

• Increased concurrency

• Improved backup and recovery services

25

Page 26: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

Disadvantages of DBMSs

• Complexity

• Size

• Cost of DBMS

• Additional hardware costs

• Cost of conversion

• Performance

• Higher impact of a failure

26

Page 27: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

27

Objectives of Three-Level Architecture

• All users should be able to access same data.

• A user’s view is immune to changes made in other views.

• Users should not need to know physical database storage details.

Page 28: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

28

Objectives of Three-Level Architecture

• DBA should be able to change database storage structures without affecting the users’ views.

• Internal structure of database should be unaffected by changes to physical aspects of storage.

• DBA should be able to change conceptual structure of database without affecting all users.

Page 29: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

29

ANSI-SPARC Three-Level Architecture

Page 30: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

30

ANSI-SPARC Three-Level Architecture

• External Level—Users’ view of the database.

—Describes that part of database that is relevant to a particular user.

• Conceptual Level—Community view of the database.

—Describes what data is stored in database and relationships among the data.

Page 31: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

31

ANSI-SPARC Three-Level Architecture

• Internal Level—Physical representation of the database on the

computer.

—Describes how the data is stored in the database.

Page 32: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

32

Differences between Three Levels of ANSI-SPARC Architecture

Page 33: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

33

Data Independence

• Logical Data Independence—Refers to immunity of external schemas to

changes in conceptual schema.

—Conceptual schema changes (e.g. addition/removal of entities).

—Should not require changes to external schema or rewrites of application programs.

Page 34: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

34

Data Independence

• Physical Data Independence—Refers to immunity of conceptual schema to

changes in the internal schema.

—Internal schema changes (e.g. using different file organizations, storage structures/devices).

—Should not require change to conceptual or external schemas.

Page 35: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

35

Data Independence and the ANSI-SPARC Three-Level Architecture

Page 36: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

36

Database Languages

• Data Definition Language (DDL)—Allows the DBA or user to describe and name

entities, attributes, and relationships required for the application

—plus any associated integrity and security constraints.

Page 37: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

37

Database Languages

• Data Manipulation Language (DML)—Provides basic data manipulation operations on

data held in the database.

• Procedural DML —allows user to tell system exactly how to

manipulate data.

• Non-Procedural DML —allows user to state what data is needed rather

than how it is to be retrieved.

Page 38: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

38

Database Languages

• Fourth Generation Language (4GL)—Query Languages

—Forms Generators

—Report Generators

—Graphics Generators

—Application Generators.

Page 39: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

39

Data Model

Integrated collection of concepts for describing data, relationships between data, and constraints on the data in an organization.

• Data Model comprises:—a structural part;

—a manipulative part;

—possibly a set of integrity rules.

Page 40: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

40

Data Model

• Purpose—To represent data in an understandable way.

• Categories of data models include:—Object-based

—Record-based

—Physical.

Page 41: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

41

Data Models

• Object-Based Data Models—Entity-Relationship

—Semantic

—Functional

—Object-Oriented.

• Record-Based Data Models—Relational Data Model

—Network Data Model

—Hierarchical Data Model.

• Physical Data Models

Page 42: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

42

Conceptual Modeling• Conceptual schema is the core of a system

supporting all user views.

• Should be complete and accurate representation of an organization’s data requirements.

• Conceptual modeling is process of developing a model of information use that is independent of implementation details.

• Result is a conceptual data model.

Page 43: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

43

Functions of a DBMS

• Data Storage, Retrieval, and Update.

• A User-Accessible Catalog.

• Transaction Support.

• Concurrency Control Services.

• Recovery Services.

Page 44: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

44

Functions of a DBMS

• Authorization Services.

• Support for Data Communication.

• Integrity Services.

• Services to Promote Data Independence.

• Utility Services.

Page 45: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

45

Components of a DBMS

Page 46: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

46

Components of Database Manager (DM)

Page 47: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

47

Multi-User DBMS Architectures

• Teleprocessing

• File-server

• Client-server

Page 48: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

48

Teleprocessing

• Traditional architecture.

• Single mainframe with a number ofterminals attached.

• Trend is now towards downsizing.

Page 49: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

49

Teleprocessing Topology

Page 50: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

50

File-Server• File-server is connected to several

workstations across a network.

• Database resides on file-server.

• DBMS and applications run on each workstation.

• Disadvantages include:—Significant network traffic.

—Copy of DBMS on each workstation.

—Concurrency, recovery and integrity control more complex.

Page 51: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

51

File-Server Architecture

Page 52: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

52

Client-Server

• Server holds the database and the DBMS.

• Client manages user interface and runs applications.

• Advantages include:—wider access to existing databases;

—increased performance;

—possible reduction in hardware costs;

—reduction in communication costs;

—increased consistency.

Page 53: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

53

Client-Server Architecture

Page 54: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

54

Alternative Client-Server Topologies

Page 55: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

55

Transaction Processing Monitors

• Program that controls data transfer between clients and servers in order to provide a consistent environment, particularly for Online Transaction Processing (OLTP).

Page 56: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

56

Transaction Processing Monitor as middle tier of a three-tier client-server architecture

Page 57: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

57

System Catalog

• Repository of information (metadata) describing the data in the database.

• Typically stores:—names of authorized users;

—names of data items in the database;

—constraints on each data item;

—data items accessible by a user and the type of access.

• Used by modules such as Authorization Control and Integrity Checker.

Page 58: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

58

Information Resource Dictionary System (IRDS)

• Response to an attempt to standardize data dictionary interfaces.

• Objectives:—extensibility of data;

—integrity of data;

—controlled access to data.

Page 59: Pertemuan 1 Introduction to Database...Database Approach • Arose because: —Definition of data was embedded in application programs, rather than being stored separately and independently

59

IRDS services interface