• Tidak ada hasil yang ditemukan

Slide IST 102 6 Relational Algebra

N/A
N/A
Protected

Academic year: 2017

Membagikan "Slide IST 102 6 Relational Algebra"

Copied!
22
0
0

Teks penuh

(1)

Sistem Basis Data

Pertemuan 6

Relational Algebra

(2)

Tujuan Pertemuan

Mahasiswa memahami prinsip dasar

relational algebra.

Mahasiswa mampu menggunakan operator

selection, projection.

Mahasiswa mampu menggunakan operator

product, theta-join, natural join & renaming.

Mahasiswa mampu membuat complex

expressions pada relational algebra.

Mahasiswa akan mampu membuat bahasa

query formal berupa relational algebra.

(3)

Algebra

AER – 2011/2012 Universitas Pembangunan Jaya – SIF_TIF SIF1213 - 3

Algebra adalah sistem

matematika yang terdiri dari:

Operands

 variabel atau nilai

dimana nilai baru akan terbentuk

darinya.

Operators

 Simbol yang

menyatakan prosedur

pembentukan nilai baru dari

nilai-nilai yang diberikan (pada

(4)

Relational Algebra

Relational Algebra adalah:

Suatu algebra dimana

operands

–nya

adalah relasi-relasi atau variabel-variabel

yang merepresentasikan relasi-relasi.

Menggunakan

operators

yang didisain untuk

melakukan hal-hal yang paling umum yang

perlu kita lakukan terhadap relasi-relasi

pada suatu database.

Hasilnya adalah suatu algebra yang dapat

digunakan sebagai bahasa query (

query

language

) pada relasi-relasi.

(5)

Core (Inti) Relational

Algebra

Union

,

intersection

, dan

difference

.

Set operasi biasa, tapi dua operand yang

digunakan harus memiliki skema relasi yang

sama.

Selection

: Pemilihan baris (tuples) data

tertentu.

Projection

: Pemilihan kolom (attributes)

data tertentu.

Products

dan

joins

: Komposisi relasi.

Renaming

terhadap relasi dan attributes.

(6)

Selection (σ / theta)

C

adalah kondisi (seperti dalam

statement

if

”) yang

me-

refer

pada

atributes

-nya

R2

.

R1

adalah tuples dari

R2

yang memenuhi kondisi

yang ditetapkan di

C

.

Contoh:

Relasi Sells:

JoeMenu :=

σ

bar=“Joe’s”

(Sells):

AER – 2011/2012 Universitas Pembangunan Jaya – SIF_TIF SIF1213 - 6

R1 :=

σ

C

(R2)

bar

bee

r

pric

e

Joe’

s

Joe’

s

Sue’

s

Sue’

s

Bud

Mille

r

Bud

Mille

r

2.5

0

2.7

5

2,5

0

3.0

0

bar

bee

r

pric

e

Joe’s

Joe’s

Bud

Mille

r

(7)

Projection (π / Pi)

L

adalah daftar attributes dari skema relasi

R2

.

R1

dibentuk dengan melihat setiap tuple pada

R2

,

ekstraksi atribut pada daftar

L

(sesuai urutan pada daftar),

dan dibuat tuple untuk

R1

dari komponen tersebut.

Eliminasi

tuples yang duplikat, jika ada.

Contoh:

Relasi

Sells

:

Prices :=

π

beer,price

(Sells)

:

AER – 2011/2012 Universitas Pembangunan Jaya – SIF_TIF SIF1213 - 7

R1 :=

π

L

(R2)

(8)

Projection Lanjutan

Dengan menggunakan operator

π

L

yang sama,

dimungkinkan untuk daftar

L

berisi ekspresi yang

melibatkan attributes:

Arithmetic terhadap attributes,

Contoh; A+B->C.

Melakukan duplikasi kemunculan attribute yang sama,

A+B->C,A,A

AER – 2011/2012 Universitas Pembangunan Jaya – SIF_TIF SIF1213 - 8

A

B

1

3

2

4

R = ( )πA+B->C,A,A (R) =

C A1 A2

3

(9)

Product (X)

Pasangkan tiap tuple t1 (dari R1) dengan tiap tuple t2 (dari R2)

Rentetan/Penggabungan t1t2 tersebut merupakan tuple dari R3

Skema dari R3 merupakan atribute2 dari R1 dan kemudian R2, secara

berurutan.

Hati2 dengan attribute yang memiliki nama sama di R1 dan R2; misal

attribute A terdapat di R1 maupun R2, maka gunakan: R1.A dan R2.A

Contoh: R3 := R1 X R2

.

AER – 2011/2012 Universitas Pembangunan Jaya – SIF_TIF SIF1213 - 9

R3 := R1 Χ R2

A

B

1

3

2

4

R1 = ( )

A R1.

B

R2.

B

C

1

1

1

3

3

3

2

2

2

4

4

4

5

7

9

5

7

9

6

8

10

6

8

10

B

C

5

7

9

6

8

10

R2 = ( )

(10)

Theta–join (⋈

C

)

Lakukan product

R1 Χ R2

,

Kemudian aplikasikan

σ

C

untuk mendapatkan hasil.

C

adalah kondisi yang memiliki nilai boolean.

Operator yang boleh digunakan A

B, dimana

is =, <, dst.;

karenanya operasi ini dinamakan “theta-join.”

Contoh:

.

AER – 2011/2012 Universitas Pembangunan Jaya – SIF_TIF SIF1213 - 10

R3 := R1

C

R2

Bar,

Beer

,

pric

e

Joe’s

Joe’s

Sue’

s

Sue’

s

Bud

Miller

Bud

Miller

2.50

2.75

2,50

3.00

bar

beer

price Name

Addr

Joe’

s

Joe’

s

Sue’

s

Sue’

s

Bud

Miller

Bud

Miller

2.50

2.75

2,50

3.00

Joe’s

Joe’s

Sue’s

Sue’s

Maple

St.

Maple

St.

River

Rd.

River

Rd.

Sells ( )

Nam

e,

Addr

Joe’s

Sue’s

Maple

St.

River

Rd.

Bars ( )

BarInfo := Sells ⋈

Sells.bar = Bars.name

Bars

(11)

Natural join (⋈)

Natural join menggabungkan dua relasi dengan cara:

Menyamakan attribute yang memiliki nama sama, dan

Memproyeksikan satu attribute untuk tiap pasang attribute

yang sama

Contoh:

.

AER – 2011/2012 Universitas Pembangunan Jaya – SIF_TIF SIF1213 - 11

R3 := R1

R2

Bar,

Beer

,

Pric

e

Joe’s

Joe’s

Sue’

s

Sue’

s

Bud

Miller

Bud

Miller

2.50

2.75

2,50

3.00

Bar

Beer

Pric

e

Addr

Joe’

s

Joe’

s

Sue’

s

Sue’

s

Bud

Miller

Bud

Miller

2.50

2.75

2,50

3.00

Maple

St.

Maple

St.

River

Rd.

River

Rd.

Sells ( )

Bar,

Addr

Joe’s

Sue’s

Maple

St.

River

Rd.

Bars ( )

BarInfo := Sells ⋈

Bars

(12)

Renaming (ρ)

operator

ρ

menghasilkan skema baru pada suatu relasi.

R1 :=

ρ

R1(A1,…,An)(R2)

, membuat R1 menjadi relasi dengan

attributes A1,…,An dan memiliki tuples yang sama dengan R2.

AER – 2011/2012 Universitas Pembangunan Jaya – SIF_TIF SIF1213 - 12

Simplified notation:

R1(A1,…,A

n

)

:= R2

Nam

e,

Addr

Joe’s

Sue’s

Maple

St.

River

Rd.

Bars ( )

Contoh:

R(bar, addr)

:=

Bars

bar,

addr

Joe’s

Sue’s

Maple

St.

River

Rd.

(13)

Building Complex

Expressions

Kombinasikan operator dengan tanda

kurung dan sesuai aturannya

Tiga notasi, seperti dalam aritmatika:

1. Sequences of assignment statements.

Urutan dari instruksi tugas

2. Expressions with several operators.

Ekspresi dengan beberapa operator

3. Expression trees.

Pohon ekspresi

(14)

Sequences of Assignments

Buat nama relasi sementara.

Renaming dapat dilakukan dengan

menyertakan attributes pada relasi

Contoh:

R3 := R1

C

R2 , Dapat ditulis

menjadi:

R4 := R1

Χ

R2

R3 :=

σ

C

(R4)

(15)

Expressions with several operators

(

Expressions in a Single Assignment

)

Contoh:

theta-join R3 := R1

C

R2 can be written:

R3 :=

σ

C

(R1

Χ

R2)

Urutan prioritas operator-operator

relational:

1. [

σ

,

π

,

ρ

] (

prioritas tertinggi

).

2. [

Χ

,

].

3.

.

4. [

,

]

(16)

Expression trees

Leaves (daun) adalah operands ---

termasuk variables untuk relasi atau

konstanta relasi tertentu.

Interior nodes (titik yang bukan

leaves) adalah operators, yang

diaplikasikan kepada child atau

children–nya (titik dibawahnya).

(17)

Expression trees

Contoh: Tree untuk Query

Gunakan relasi

Bars(name, addr)

dan

Sells(bar,

beer, price)

, cari nama-nama dari semua bar

yang terletak di Maple St. atau yang menjual Bud

dengan harga kurang dari $3.

AER – 2011/2012 Universitas Pembangunan Jaya – SIF_TIF SIF1213 - 17

Bars

Sells

σ

addr = “Maple St.”

σ

price<3 AND beer=“Bud”

π

name

ρ

R(name)

π

bar
(18)

Expression trees

Contoh: Self-Join

Gunakan

Sells(bar, beer, price)

, Cari bar yang

menjual dua beer yang berbeda tapi harganya sama.

AER – 2011/2012 Universitas Pembangunan Jaya – SIF_TIF SIF1213 - 18

Strategy

:

Lakukan

copy

sells

dengan nama

S

dan

rename

attribute

beer  beer1 sehingga

menjadi

S(bar, beer1, price)

.

Lakukan

natural join

Sells

dan

S

sehingga

menjadi

quadruples (bar, beer,

beer1, price)

hingga

bisa diketauhi Bar

yang menjual dua

beer berbeda dengan

harga yang sama

Sells

Sells

ρ

S(bar, beer1, price)

π

bar
(19)

Skema dari hasil operasi

Union

,

intersection

, dan

difference

:

Skema dari dua operands harus sama, jadi skema relasi dari hasil

operasi tersebut sama dengan skema operand.

Selection

:

Skema relasi dari hasil operasi sama dengan skema

operands.

Projection

:

Daftar atribut menentukan skema relasi hasil

operasi.

Product

:

Skema hasil relasi adalah berupa atribut gabungan

dari atribut-atribut dua operands.

(Gunakan penulisan R.A, untuk mengatasi attribute yang memiliki

nama sama)

Theta-join

:

sama dengan operasi product.

Natural join

:

Gabungan dari atribut-atribut dua relasi.

Renaming

:

Operator yang menentukan skema relasi hasil.

(20)

Quiz

AER – 2011/2012 Universitas Pembangunan Jaya – SIF_TIF SIF1213 - 20

Mhs

Mhs

Jur

Jur

Fak

Fak

Kasus

1. Mhs_Ik := σ

jurusan=“IK”

(Mhs)

2. Mhs_Jur := π

nama,jurusan

(Mhs)

3. Mhs_lengkap := Mhs X Jur

4. InfoMhs := Mhs ⋈

Mhs.jurusan = Jur.kd_jur

Jur

5. InfoMhs := Mhs ⋈ Jur

6. Berdasarkan relational algebra

pada no 4

a. Buat sequence of

assignment-nya

(21)

tugas

1.

σ

A+B < 5

(R) = …

2.

π

A

(R) = …

AER – 2011/2012 Universitas Pembangunan Jaya – SIF_TIF SIF1213 - 21

B

C

5

7

9

6

8

10

R2 = ( )

A

B

1

5

1

2

6

2

R = ( )

B

C

3

7

4

8

S = ( )

3. R

Χ

S = …

(22)

See You Next Session

Thank’s

Referensi

Dokumen terkait

Dalam rangka tahapan Klarifikasi dan Pembuktian Kualifikasi, maka dengan ini diundang kepada Saudara untuk hadir dengan membawa berkas asli sesuai yang

RKA - SKPD 2.1 Rincian Anggaran Belanja Tidak Langsung Satuan Kerja Perangkat Daerah. RKA - SKPD 2.2 Rekapitulasi Anggaran Belanja Langsung Menurut Program dan

Demikian Berita Acara ini Sebagaimana tersebut diatas, dan untuk dipergunakan sebagaimana mestinya.. PANITIA PENGADAAN BARANG/JASA DINAS PENDIDIKAN

Analyses of both the transcribed protocols and post-writing questionnaires substantiated previous researchers’ findings that all of the participants followed

Semua staf pengajar pada Program Doktor pada Program Studi Ilmu Kedokteran Jenjang Doktor Fakultas Kedokteran Universitas Airlangga yang telah memberikan ilmu

toxoplasmosis sehingga penulis memberi judul “ IDENTIFIKASI Toxoplasma gondii PADA KOPI LUWAK Di DESA KAYUMAS, KECAMATAN ARJASA,..

4 Perbandingan Rasio PAD terhadap Penduduk Kabupaten Garut dan Kabupaten/ Kota di Jawa Barat Tahun 2009- 2013.... .Perbandingan Kontribusi Lain-lain Pendapatan Daerah Yang Sah

Selain faktor motivasi, faktor lain yang mempengaruhi kinerja karyawan adalah budaya organisasi, salah satu tujuan perusahaan membuat budaya organisasi adalah untuk