Model dan Aljabar Relasional

Slides:



Advertisements
Presentasi serupa
Aljabar Relasional Materi pertemuan.
Advertisements

ALJABAR RELATIONAL Materi Pertemuan 22,23 dan 24.
Aljabar Relasional (Relational Algebra)
BASIS DATA RELATIONAL.
Bahasa Pada Model Data Relasional
03 Model Relasional Basis Data Mata Kuliah: Basis Data
ALJABAR RELASIONAL (RELATIONAL ALGEBRA)
Pengantar Basis Data Sumber :
Bahasa Query Formal Aljabar Relasional.
Pertemuan Minggu Ke-4 Bahasa Query Formal.
MODEL DATA.
Aljabar Relasional.
2 Bab 2 Model Basis Data Relasional Basis Data
Aljabar Relasional Materi pertemuan.
BASIS DATA RELASIONAL.
Aljabar Relasional.
BASIS DATA RELASIONAL Basis Data Relasional.
Aljabar Relasional (Relational Algebra)
MODEL DATA RELASI Meta Meysawati. Model Data Relasi  Terdapat beberapa cara untuk menangani atau memodelkan data diantaranya, 1.Model Relational 2.Model.
Pertemuan Minggu Ke-3 DATABASE RELASIONAL.
Aljabar Relasional Materi pertemuan 21.
PERTEMUAN 13 Sistem Basis Data Presented by :
Karakteristik, Komponen, Primary Key
Modul 03 Relational Model
Oleh: Henry Primandari,S.Kom STMIK-MDP Palembang
Sesi V Aljabar & Kalkulus Relasional
SQL (Structured Query Language) Materi Pertemuan
Aljabar Relasional.
Pertemuan 9 BAHASA QUERY FORMAL.
BASIS DATA RELASIONAL Pertemuan ke 3 Basis Data Relasional.
ALJABAR RELATIONAL.
Pertemuan 4 – Sistem Basis Data.  Pada model relasional, basis data akan “disebar” atau dipilah-pilah ke dalam berbagai tabel dua dimensi. Setiap tabel.
ALJABAR DAN KALKULUS RELASIONAL
Operasi Union/Gabungan ()
Aljabar Relasional Materi pertemuan.
Model Basis Data Relasional
Pertemuan Ke-5 Model Basis Data Relasional
Pertemuan Ke-6 Aljabar Relasional
Model Data Relasional.
Aljabar Relasional (Relational Algebra)
ALJABAR RELASIONAL
Daniel Damaris Novarianto S. UNIV. GUNADARMA
Operasi Relasional Basis Data
IK203 Sistem Basis Data Suryo Widiantoro, ST, MMSI, M.Com(IS)
Erika Devi, Fajar Agung N Fakultas Ilmu Komputer UDINUS
Harsiti, ST Fakultas Teknologi Informasi Universitas Serang Raya 2009
Operasi Join ( ) Digunakan untuk menggabungkan dua tabel atau lebih dengan hasil berupa gabungan dari kolom-kolom yang berasal dari tabel-tabel tersebut.
ALJABAR RELASIONAL DAN KALKULUS RELASIONAL
Aljabar Relational (Relational Algebra) MEETING 6
SISTEM BASIS DATA STMIK BANI SALEH BEKASI Salim
Model Relational DATABASE
Presented by Team Basis Data
Operasi Relasional Basis Data
Fakultas Ilmu Komputer dan Teknologi Informasi, Universitas Gunadarma
Aljabar Dan Kalkulus Relasional
Aljabar Relasional.
Operasi Union/Gabungan ()
Pengantar Basis Data.
Aljabar Relational (Relational Algebra) MEETING 6
PEMROGRAMAN BASIS DATA
MODEL RELASIONAL Desain Basis Data.
MODEL DATA RELASIONAL (1)
Aljabar Relasional (Relational Algebra)
PENGERTIAN Relational Model
Model Data Relasional.
Basis Data Bahasa Kueri Basis Data
Tim Dosen Basis Data Fakultas Ilmu Komputer UDINUS
ALJABAR RELASIONAL (LANJUTAN)
Basis Data Bahasa Kueri Basis Data
Pengantar Teknologi SIM 2 (pertemuan 6)
Transcript presentasi:

Model dan Aljabar Relasional Didi Supriyadi, S.T., M.Kom Email: didisupriyadi@ittelkom-pwt@ac.id Wa: 081226769373

RECORD BASED DATA MODEL Model Hierarkikal Model Jaringan Model Relasional

Struktur Hirarki

Model Jaringan

Basis Data Relational Kebanyakan model yang digunakan adalah model basis data relasional dengan menggunakan Relational Database Management System (RDBMS). RDBMS menyediakan layanan pengorganisasian data yang mudah tetapi memiliki kemampuan untuk menangani jumlah data yang sangat besar. Beberapa contoh dari RDBMS diantaranya Oracle, Ms SQL Server, MySQL, DB2, Ms Access.

Basis Data Relational (Cont) Model basis data relational memiliki struktur lojik yang disebut dengan relation (relasi). Struktur relasi merupakan struktur data 2 dimensi, pada level fisik berupa table (tabel). Attribute merepresentasikan elemen dari data yang berkaitan dengan relasi. Sebagai contoh, relasi Mahasiswa memiliki atribut-atribut seperti nim, nama, tempat lahir. tanggal_ lahir, dan alamat.

Basis Data Relational (Cont)

Pandangan Logika Data Struktur model basis data relasional dan kebebasan data memungkinkan kita untuk memandang data secara logika daripada secara fisik. Pandangan secara logika membuat konsep file tentang penyimpanan data menjadi lebih sederhana. Penggunaan tabel independen secara logik lebih mudah dipahami. Kesederhanaan logika menghasilkan me-todologi perancangan basis data lebih sederhana dan lebih efektif.

Rangkuman Sifat-sifat Tabel Relasional 1 Sebuah tabel seolah-olah merupakan struktur dua dimensi yang terdiri dari baris dan kolom. 2 Setiap baris (tupel) mewakili sebuah entitas. 3 Setiap kolom mewakili atribut dan memiliki nama yang jelas. 4 Setiap perpotongan baris dan kolom mewakili nilai sebuah data. 5 Setiap tabel harus memiliki primary key yang dikenali secara unik untuk setiap baris. 6 Semua nilai pada kolom harus sesuai format data. 7 Setiap kolom memiliki jangkauan nilai tertentu yang dikenal sebagai domain atribut. 8 Setiap baris membawa informasi yang menggambar-kan satu kejadian entitas. 9 Urut-urutan baris dan kolom bukan hal yang penting untuk DBMS.

Nilai Atribut Tabel SISWA

Contoh Sederhana Basis Data Relasional Nama tabel SISWA Primary key NOMHS Foreign key KODE_WALI Hubungan Nama tabel WALI Primary key KODE_WALI Tidak ada foreign key

Skema Basis Data Relasional : PERWALIAN

Bahasa Pada Basis data Relational Menggunakan bahasa query  pernyataan yang diajukan untuk mengambil informasi. Bahasa Query (Query Language) lebih ditekankan pada aspek pencarian data dari dalam tabel. Aspek pencarian ini sedemikian penting karena merupakan inti dari upaya untuk pengelolaan data. Bahasa query terbagi 2 : 1. Bahasa Formal Bahasa query yang diterjemahkan dengan menggunakan simbol-simbol matematis.

Bahasa Pada Basis data Relational Contoh : • Aljabar Relasional Bahasa query prosedural  pemakai menspesifikasikan data apa yang dibutuhkan dan bagaimana untuk mendapatkannya. • Kalkulus Relasional Bahasa query non-prosedural  pemakai menspesifikasikan data apa yang dibutuhkan tanpa menspesifikasikan bagaimana untuk mendapatkannya. Terbagi 2 : 1. Kalkulus Relasional Tupel 2. Kalkulus Relasional Domain

Bahasa Pada Basis data Relational 2. Bahasa Komersial Bahasa Query yang dirancang sendiri oleh programmer menjadi suatu program aplikasi agar pemakai lebih mudah menggunakannya (user friendly). Contoh : • QUEL Berbasis pada bahasa kalkulus relasional • QBE • SQL Berbasis pada bahasa kalkulus relasional dan aljabar relasional

Aljabar Relasional (Relational Algebra)

Aljabar Relasional (Bahasa Prosedural) Kumpulan operasi terhadap relasi, dimana setiap operasi menggunakan satu atau lebih relasi untuk menghasilkan satu relasi yang baru. Lebih bersifat operasional, sangat berguna untuk merepresentasikan eksekusi perencanaan. Operasi-operasi Dasar : selection projection Union intersection set difference Operasi lainnya : cross/cartesian product join division sum, average, min, max

Jenis Operasi Operasi Unary terdiri dari selection, projection. Disebut operasi unary, karena dapat digunakan hanya pada satu relasi. Operasi Binary terdiri dari union, intersection, set difference, cartesian product, join dan division. Disebut operasi binary, karena memerlukan sepasang relasi.

kelompokfilm jenis harga_sewa action 3000 drama 3500 horor film kode_film jenis judul jml_keping jml_film A01 action Spiderman 2 3 A02 Spiderman 2 5 D01 drama Love Story H01 horor Evil Death

Operasi Selection (σ) Operasi yang digunakan untuk memilih subset dari tuple-tuple pada suatu relasi. Notasi : σp(r) p disebut selection predicate (yang menentukan pemilihan) p merupakan formula dari kalkulus perbandingan (proportional calculus) yang berisi terms yang dihubungkan oleh : ^ (and), v (or), ~ (not) setiap term salah satu dari : <atribut> op <atribut> or <konstanta> atau <atribut> op <atribut> dengan op salah satu dari : =, ≠, >, ≥, <, ≤

Operasi Selection (lanj) Contoh : dilakukan operasi σjenis=“action”(film) pada relasi film sebagai berikut : Hasilnya : suatu relasi dengan tuple-tuple yang memiliki jenis sama dengan action. kode_film jenis judul jml_keping jml_film A01 action Spiderman 2 3 A02 Spiderman 2 5 D01 drama Love Story H01 horor Evil Death kode_film jenis judul jml_keping jml_film A01 action Spiderman 2 3 A02 Spiderman 2 5

Operasi Projection (p) Operasi yang digunakan untuk memilih subset dari kolom-kolom pada suatu tabel Notasi : pA1,A2,…,Ak(r), dimana A1, A2, …, Ak adalah daftar nama atribut dan r adalah nama suatu relasi. Hasilnya : suatu relasi dengan atribut yang tercantum pada daftar nama atribut pada operasi.

Operasi Projection (lanj) Contoh : dilakukan operasi pkode_film, jenis, judul(film) pada relasi film sebagai berikut : Hasilnya : kode_film jenis judul jml_keping jml_film A01 action Spiderman 2 3 A02 Spiderman 2 5 D01 drama Love Story H01 horor Evil Death kode_film jenis judul A01 action Spiderman A02 Spiderman 2 D01 drama Love Story H01 horor Evil Death

Operasi Union/Gabungan () Operasi yang digunakan untuk menggabungkan hasil dari beberapa query. Notasi : r  s, menghasilkan suatu relasi baru yang elemen barisnya merupakan elemen dari r dan s, tidak ada duplikasi data. Untuk r  s harus valid : r, s harus memiliki jumlah atribut yang sama.

Operasi Union/Gabungan (lanj) Relasi r pA(r)  pA(s) Relasi s A B C aa 1 7 bb 5 12 dd 23 10 A B C aa 5 7 cc 4 dd 10 6 A aa bb dd cc

Operasi Intersection/Irisan () Notasi : r  s, menghasilkan suatu relasi baru dengan elemen barisnya merupakan elemen yang terdapat pada relasi r dan elemen tersebut juga terdapat pada relasi s, tidak ada duplikasi data. r dan s harus memiliki jumlah atribut yang sama. Relasi r Relasi s r  s A B a 1 2 b A B a 2 b 3 A B a 2

Operasi Set Difference (–) Relasi s Notasi r – s, hasilnya relasi yang elemen barisnya terdapat pada r tetapi tidak terdapat di s. r dan s harus memiliki jumlah atribut yang sama. Relasi r pA(r) - pA(s) A B C aa 1 7 bb 5 12 dd 23 10 A B C aa 1 7 cc 5 dd 12 23 10 A bb

Operasi Cross/Cartesian-Product Notasi r x s, menghasilkan semua kombinasi baris/tuple dari 2 buah relasi, yaitu relasi r dan s. Jumlah atribut tidak harus sama. Contoh : Relasi r : maka r x s : Relasi s : A B a 1 b 3 A B C D a 1 6 b 5 c 12 3 C D a 6 b 5 c 12

Komposisi Operasi-Operasi Relasional Operasi-operasi aljabar relasional dapat digabungkan dengan ekspresi aljabar relasional lainnya. Contoh : terdapat relasi film sebagai berikut : kode_film jenis judul jml_keping jml_film A01 action Spiderman 2 3 A02 Spiderman 2 5 D01 drama Love Story H01 horor Evil Death

Komposisi Operasi-Operasi Relasional Jika ingin memperoleh relasi baru dengan atribut kode_film, judul dan jml_film dengan jml_film > 3, maka operasi komposisinya sebagai berikut : pkode_film, judul, jml_film(σjml_film > 3(film)) hasilnya : kode_film judul jml_film A02 Spiderman 2 5

Operasi Join ( ) Digunakan untuk menggabungkan dua relasi atau lebih dengan hasil berupa gabungan dari kolom-kolom yang berasal dari relasi-relasi tersebut. Relasi R Relasi S sid sname rating age 22 dustin 7 45.0 31 lubber 8 55.5 58 rusty 10 35.0 sid bid day 22 101 10/10/96 58 103 11/12/96

Operasi Join (lanj) Operasinya : R S sama dengan operasi σ(RxS), disebut juga Full Join. Hasilnya : sid sname rating age bid day 22 dustin 7 45.0 101 10/10/96 58 103 11/12/96 31 lubber 8 55.5 rusty 10 35.0

Condition Join/Theta Join Menghasilkan suatu relasi gabungan yang memiliki tupel-tupel sesuai dengan kondisi kondisi yang telah ditentukan. R cS sama dengan operasi σc(RxS), dengan c=condition. Kondisi join : =, >, <, <>, >=, <= Relasi R Relasi S sid sname rating age 22 dustin 7 45.0 31 lubber 8 55.5 58 rusty 10 35.0 sid bid day 22 101 10/10/96 58 103 11/12/96

Condition Join/Theta Join (lanj) Operasinya : R R.sid<S.sidS Hasilnya : Kondisi join untuk operator = disebut juga Equi Join. sid sname rating age bid day 22 dustin 7 45.0 58 103 11/12/96 31 lubber 8 55.5

Left Join Menghasilkan relasi dengan atribut terdiri dari gabungan atribut dari dua relasi (misalnya relasi A dan B) yang meliputi semua tupel yang ada pada relasi A dan juga hanya tupel-tupel pada relasi B yang sesuai dengan tupel-tupel pada relasi A.

Right Join Menghasilkan relasi dengan atribut terdiri dari gabungan atribut dari dua relasi (misalnya relasi A dan B) yang meliputi semua tupel yang ada pada relasi B dan juga hanya tupel-tupel pada relasi A yang sesuai dengan tupel-tupel pada relasi B.

Natural Join merupakan Equi Join dengan menghilangkan duplikasi atribut. Natural join dapat dibagi lagi menjadi natural left join dan natural right join.

Natural Left Join Menghasilkan relasi dengan atribut terdiri dari gabungan atribut dari dua relasi (misalnya relasi A dan B) yang meliputi semua tupel yang ada pada relasi A dan juga hanya tupel-tupel pada relasi B yang sesuai dengan tupel-tupel pada relasi A serta menghilangkan duplikasi atribut.

Natural Right Join Menghasilkan relasi dengan atribut terdiri dari gabungan atribut dari dua relasi (misalnya relasi A dan B) yang meliputi semua tupel yang ada pada relasi B dan juga hanya tupel-tupel pada relasi A yang sesuai dengan tupel-tupel pada relasi B serta menghilangkan duplikasi atribut.

Operasi Division (/) Notasi : R/S. Menghasilkan suatu relasi dari dua buah relasi yang terdiri dari atribut/kolom dari relasi R yang tidak terdapat pada relasi S dengan tupel-tupel dari relasi R yang memiliki kesamaan dengan tupel-tupel yang ada pada relasi A secara keseluruhan dan tidak terdapat duplikasi data.

Operasi Division (lanj) Relasi R Relasi S1 Relasi S2 R/S1 R/S2 sno pno s1 p1 p2 p3 p4 s2 s3 s4 pno p2 pno p2 p4 sno s1 s2 s3 s4 sno s1 s4

Operasi SUM, AVERAGE, MIN, MAX, COUNT SUM – digunakan untuk menghitung jumlah nilai pada suatu kolom. AVERAGE – digunakan untuk menghitung rata-rata dari suatu kolom. MIN – digunakan untuk mencari nilai minimal pada suatu kolom. MAX – digunakan untuk mencari nilai maksimal pada suatu kolom. COUNT – digunakan untuk menghitung jumlah baris pada suatu kolom.