• Tidak ada hasil yang ditemukan

Konsep dan Arsitektur Basis Data. IKI20410 Basis Data Aniati Murni Fakultas Ilmu Komputer Universitas Indonesia

N/A
N/A
Protected

Academic year: 2021

Membagikan "Konsep dan Arsitektur Basis Data. IKI20410 Basis Data Aniati Murni Fakultas Ilmu Komputer Universitas Indonesia"

Copied!
43
0
0

Teks penuh

(1)

Konsep dan Arsitektur Basis Data

IKI20410 – Basis Data Aniati Murni

Fakultas Ilmu Komputer Universitas Indonesia

(2)

2

Data model, Schema and Instance

DBMS (Data Base Management System)

Architecture and Data Independence

Database Language, Interface and System

Environment

Elmasri Bab 2

(3)

3

Data model is a collection of tools for describing

– Data, data relationship, data semantics, data constraints

Data model:

Object-based logical model:: • Entity-relationship model • Object-oriented model • Semantic model

• Fungsional model:

Record-based logical model: • Relationship model

• Network model • Hierarchical model

Data Model (1)

(4)

4

Data model adalah sekumpulan konsep yang

digunakan untuk menjelaskan struktur dari basis data (database structure) dan memberikan gambaran

tingkat-tingkat abstraksi data (data abstraction).

Data model juga mencakup sekumpulan operasi (basic & user-defined) yang dapat dilakukan terhadap data

yang dihimpun dalam basis data.

Operasi dasar (basic) disediakan oleh sistem basis data: insert, delete, update, dan retrieve.

User-defined operation dibuat oleh perancang, contoh: operasi menghitung IPK mahasiswa

Data Model (2)

(5)

5

Data abstraction

adalah deskripsi mengenai

struktur basis data yang mudah dimengerti oleh

user, atau bisa juga mencakup detil dari

penyimpanan data yang biasanya perlu

diketahui oleh perancang basis data

à

jadi ada

tingkatan abstraksi.

Database structure

mencakup

data type (type

of name is string)

,

relationship (customer has

relationship with account),

dan

constraint (ada

batasan bahwa tidak bisa menjamin bahwa

-peserta MIK harus sudah mengambil KP1).

(6)

6

View of Data

(7)

7

Physical level

menggambarkan bagaimana

suatu record disimpan secara fisik.

Logical level

menggambarkan bagaimana

suatu record disimpan dalam basis data dan

menggambarkan hubungan

(relationship)

antar

data.

View level

suatu

application program,

tidak akan

memperlihatkan data type juga dapat

menyembunyikan informasi (misal: gaji) yang

mempunyai tingkat

security tertentu yang terkait

dengan otoritas user

.

(8)

8

High-level or Conceptual data model konsep yang

mudah dimengerti oleh end-user. Menggunakan konsep entities, attributes, dan relationships.

Entity representasi obyek dalam dunia nyata (misal: maha-siswa) atau obyek dalam konsep (misal: mahluk ruang angkasa).

Attribute: representasi property yang dimiliki oleh suatu entitas, misal: alamat atau gaji seorang karyawan.

Relationship: hubungan antara beberapa entitas, misal: hubungan antara entitas pegawai dengan entitas proyek adalah pelaksana proyek.

(9)

9

Contoh Entity-Relationship Model

(Sumber: Silberschatz, Korth and Sudarahan ©1997)

Entity Attribute

(10)

10

Representational or Implementation data model konsep yang dapat dimengerti oleh end user, menggambarkan organisasi

data dalam komputer, tanpa detil penyimpanan dalam komputer. Disebut juga sebagai record-based data model, karena

merepresentasi data dalam bentuk record structure.

Konsep ini digunakan untuk menjelaskan skema traditional commercial database seperti relational database, network dan hierarchical databases.

Record structure:

type customer = record

name: string; street: string; city: integer;

end;

(11)

11

(12)

12

(13)

13

(14)

14

Low-level or Physical data model

merupakan

konsumsi computer specialist yang mencakup

detil penyimpanan data di komputer.

Pada konsep ini data direpresentasi dalam

bentuk

record format, record ordering

, dan

access path

.

Access path

: adalah suatu struktur pencarian,

pencarian record dalam database diharapkan

bisa efisien.

(15)

15

The description of the database (suatu bentuk

konsep): adalah database schema, diperlukan dalam

merancang basis data, tidak terlalu sering diubah. Skema basis data digambarkan oleh data model

dalam bentuk diagram (database schema diagram).

The database itself (suatu bentuk riil): merupakan himpunan data yang diorganisasikan sedemikian rupa sehingga dapat digunakan dan dipelihara (dimana

datanya dapat ditambah, dihapus, dan sering diubah).

(16)

16

Similar to types and variables in

programming languages

Schema – the logical structure of the

database (e.g., set of customers and

accounts and the relationship between them)

Instance – the actual content of the database

at a particular point in time

State – the data status in the database at a

particular moment in time.

Database Schema, Instance, and State

(Modifikasi dari Silberschatz, Korth and Sudarahan ©1997)

(17)

17

Key issue: kaitan antara schema, metadata, state, empty state, initial state, instance dan valid state

(18)

18

Database schema diagram: bisa hanya menggam-barkan beberapa aspek dari suatu skema basis data. Perhatikan pada slide berikut bahwa suatu diagram skema hanya menggambarkan struktur record object, tetapi (dalam contoh) tidak ada data type setiap data item, tidak ada relationship antar files, tidak ada

penggambaran hubungan yang kompleks (constraint), juga tidak ada instan isi data yang aktual dari record (database instance).

A schema construct: merupakan sebutan bagi object

yang ada pada skema basis data, misal: STUDENT dan

COURSE.

(19)

19

Contoh Basis Data

STUDENT Name StudentNumber Class Major Smith 17 1 CS Brown 8 2 CS

COURSE CourseName CourseNumber CreditHours Department Data Structures CS3320 4 CS Discrete Math. MATH2410 3 MATH SECTION SectionID CourseNumber Semester Year Instructor

85 MATH2410 Fall 98 King 112 CS3320 Fall 98 Anderson GRADE_REPORT StudentNumber SectionIdentifier Grade

17 112 B 8 85 A PREREQUISITE CourseNumber Prereq_Number

CS3380 CS3320 CS3320 CS1310

(20)

20

Contoh Database Schema Diagram

STUDENT

Nama StudentNumber Class Major COURSE

CourseName CourseNumber CreditHours Department PREREQUISITE

CourseNumber Prereq_Number SECTION

SectionID CourseNumber Semester Year Instructor GRADE_REPORT

(21)

21

Key issue: kaitan antara data model, schema, dan database schema diagram

Untuk Disimak Kembali!

(Perhatikan juga ada term high-level / conceptual, representational / implementation, dan low-level /

physial pada data model; serta term external view, conceptual / logical, dan

internal / physical pada database schema dan architecture)

(22)

22

Adanya program-data dan program-operation independence (berbeda dengan traditional

programming and files) àà insulated data searching.

Mendukung multiple user views (a single repository

of data yang digunakan oleh banyak user) àà

defined once for all.

Deskripsi structure dan constraint basis data

(database schema) disimpan dalam katalog àà

self-describing nature.

à

à Ketiga karakteristik ini akan dijelaskan dengan

three-schema DBMS architecture berikut

Karakteristik Basis Data

(23)

23

Three-schema Architecture

(Modifikasi dari: Silberschatz, Korth and Sudarahan ©1997)

EXTERNAL LEVEL End User Conceptual Schema Internal Schema CONCEPTUAL/LOGICAL LEVEL INTERNAL/PHYSICAL LEVEL External-Conceptual Mapping Conceptual-Internal Mapping STORED DATABASE

(24)

24

Internal / Physical Schema: deskripsi secara detil dan lengkap tentang struktur penyimpanan data secara fisik dan access

paths ke database à menggunakan low-level model

Conceptual / Logical Schema: deskripsi struktur basis data yang terdiri dari entities, data types, relationship, user

operations, and constraints untuk setiap kategori user à

dapat digunakan high-level or implementation model

External View Schema: terdiri dari beberapa skema external user dengan masing-masing bagian database yang akan digunakan (lihat bahan kuliah lalu – different views of the

same database structure) à dapat digunakan high-level or

implementation model

Separation of the user application

and the physical database

(25)

25

Mapping is the process of transforming

requests and results between levels.

E.g., A request for a database retrieval

à

à

the

DBMS will transform the request to the

conceptual and physical levels, and extract

the data from the stored database and

reformatted the data to match the user/s

external view.

DBMS jarang menggunakan three-schema,

karena overhead pada interface cukup tinggi.

(26)

26

Ability / Kemampuan untuk memodifikasi definisi

skema pada suatu level tanpa berakibat pada

definisi skema pada level yang lebih tinggi

Interface antar level dan komponen harus

didefinisikan dengan baik, sehingga perubahan

pada suatu bagian tidak akan berakibat pada

bagian yang lain

Dua tipe data independence:

– Logical data independence

– Physical data independence

Data Independence

(27)

27

Conceptual / logical schema dapat diubah

tanpa perubahan external schema dan

application programs.

Perubahan hanya terjadi pada interface,

yaitu view definition dan mapping pada

DBMS.

Contoh perubahan: penambahan atau

pengurangan data item atau perubahan

constraints.

(28)

28

Perubahan logical schema tidak mengubah external schema / application programs

STUDENT Name StudentNumber Class Major Smith 17 1 CS Brown 8 2 CS

COURSE CourseName CourseNumber CreditHours Department Data Structures CS3320 4 CS Discrete Math. MATH2410 3 MATH SECTION SectionID CourseNumber Semester Year Instructor

85 MATH2410 Fall 98 King 112 CS3320 Fall 98 Anderson

GRADE_REPORT StudentNumber StudentName SectionID CourseNumber Grade 17 Smith 112 CS3320 B 8 Brown 85 MATH2410 A PREREQUISITE CourseNumber Prereq_Number

CS3380 CS3320 CS3320 CS1310

Ada penambahan data item pada record Grade_Report – dengan tanda

(29)

29

Reminder: apakah yang dimaksud dengan data consistency, dan apakah perbedaan antara controlled & uncontrolled redundancy

(30)

30

Internal / Physical schema dapat diubah tanpa perubahan pada conceptual / logical schema.

Physical files selalu perlu di-reorganized, bisa karena disk space sudah penuh atau perlu penambahan /

perubahan access structure untuk tujuan meningkatkan

kinerja pencarian/perbaikan data.

Contoh: query untuk membuat daftar kuliah menurut semester dan tahun tidak perlu berubah, sekalipun pada physical schema proses ini akan dilaksanakan

dengan direct access path menurut key semester dan

tahun.

(31)

31

Key issues: mekanisme apakah yang digunakan untuk memungkinkan adanya data independence

(32)

32

DBMS harus menyediakan language dan

interface untuk setiap kategori pemakai

Dikenal ada beberapa language:

– VDL (View Definition Language) – DDL (Data Definition Language) – SDL (Storage Definition Language) – DML (Data Manipulation Language) – Data Sub Language

– Host Language

(33)

33

Bila tidak ada pemisahan antara skema

conceptual dan internal, maka database

administrator (DBA) dan database designer

akan menggunakan bahasa DDL untuk

mendefinisikan kedua skema.

Diperlukan DDL compiler yang fungsinya

menjelaskan setiap schema constructs

(object) dan menyimpan deskripsi tersebut

di dalam DBMS catalog.

(34)

34

Bila digunakan 2 skema (conceptual dan

internal), maka DDL hanya

menspesifikasikan skema conceptual dan

diperlukan bahasa SDL untuk

menspesifikasikan internal skema

Mapping antar kedua skema dapat

dilakukan oleh salah satu dari kedua

bahasa.

(35)

35

Bila digunakan 3 skema (view, conceptual

dan internal), maka diperlukan bahasa

ketiga (VDL) untuk menspesifikasikan user

views dan memetakan (mapping) ke skema

conceptual.

Pada umumnya DBMS menggunakan DDL

untuk mendefinisikan external dan

conceptual skema.

(36)

36

DML merupakan bahasa yang digunakan

untuk manipulasi data: retrieval, insertion,

deletion, dan modification.

DBMS yang baru biasanya menggunakan

integrated language (untuk external,

conceptual, dan data manipulation).

Hanya SDL yang terpisah yang biasanya

digunakan oleh DBA.

(37)

37

SQL merupakan kombinasi dari VDL, DDL,

dan DML.

2 type DML:

– High-level / non-procedural DML

– Low-level / procedural DML

(38)

38

Disebut juga Data Sub Language

– bisa dimasukkan melalui terminal atau

– dijadikan satu dengan general purpose

language (Host Language)

Dapat mengambil banyak record dengan

spesifikasi tertentu dalam satu DML

statement (set-at-a-time DML)

Bisa merupakan query language dimana data

retrieval dan update dapat dilakukan secara

interactive pada stand-alone system.

(39)

39

Statement dimasukkan atau dijadikan

satu dengan general purpose

language (Host Language)

Hanya dapat mengambil satu record dan

memprosesnya (record-at-a-time),

karena itu memerlukan host language

agar bisa dibuat suatu loop untuk ambil

record dan proses.

(40)

40

Perlu user-friendly interface

– Menu-based interface for browsing

– Forms-based Interface

– Graphical user interface

– Natural language interface

– Interface for parametric user

– Interface for the DBA

(41)

41

(42)

42

Fungsi setiap modul komponen DBMS

(43)

43

Loading:

sequential file to database, data

transfer dari satu DBMS ke DBMS lain

Backup:

copy ke disk lain atau ke tape

File reorganization:

reorganize

database ke file organization lain

Performance monitoring:

database

usage, number of record access

failure, etc.

Referensi

Dokumen terkait

Oalam sistem penyelenggaraan pendidikan yang merupakan tanggungjawab bersama antara keluarga, masyarakat dan pemerintah ini, disebutkan bahwa biaya pada satuan

Tujuan penelitian ini adalah untuk mengetahui efektifitas sumur resapan dalam membantu proses infiltrasi pada kondisi tanah tertentu dengan kondisi permeabilitas yang telah

Tekanan yang diberikan dari pemutusan hubungan kerja yang terjadi pada pekerja atau karyawan yang sudah berkeluarga dapat membuat orang tersebut kehilangan

48 Pemberian kemasan yang lebih baik pada produk sabun Madu Mutiara penting untuk diperhatikan oleh produsen karena selain memberikan manfaat fungsional seperti

dan konfirmasi penemuan untuk regu berbeda Pengujian integrasi pengiriman informasi tersesat dan konfirmasi penemuan dari node ke server akan didapatkan nilai delay

Meningkatkan hubungan kerjasama dari berbagai lembaga yang berkaitan dengan upaya pemasaran produk kerajinan tenun ikat Dayak, Strategi ini bermanfaat untuk

Keuntungan dari bakteri ini adalah memiliki protein yang dapat bekerja pada kondisi lingkungan dengan suhu tinggi dimana protein/ enzim lain dapat mengalami denaturasi.. Salah

SRT akan mencakup enam fungsi kerja sebagai berikut: (i) penyebaran informasi terkait program yang ada, dan terutama pada program jaminan sosial yang baru saja diluncurkan,