this presentation describe basic database programming
1 of 40
Downloaded 60 times
More Related Content
Presentasi basis data
1. UNIVERSITAS NASIONAL PASIM
2014
BASIS DATA
Dipresentasikan Oleh :
Achmad Khaerudin
Ahsan Asy ari
Faisal Fahruroji
Dikdik Kurniawan
Fernanda Firdaus
2. POKOK BAHASAN
Relasi entitas dan derajat kardinalitas
Contoh-contoh bentuk entitas
Varian-varian ERD
Denormalisasi tabel
Denormalisasi ERD
Teknik-teknik searching dalam Basis Data
3. Pengertian Entitas
Entitas adalah suatu objek yang dapat diidentifikasi dalam
lingkungan pemakai, sesuatu yang penting bagi pemakai dalam
konteks sistem yang akan dibuat. Sebagai contoh pelanggan,
pekerja, mahasiswa, dll.
Contoh : Seandainya A adalah seorang pekerja maka A
adalah isi dari pekerja, sedangkan jika B adalah seorang
pelanggan maka B adalah isi dari pelanggan.
Karena itu harus dibedakan antara entitas sebagai
bentuk umum dari deskripsi tertentu dan isi entitas seperti
A dan B dalam contoh diatas.
4. Himpunan entitas : merupakan sekelompok entitas sejenis
dan berada dalam lingkup yang sama. Misalnya Mobil
merupakan himpunan entitas; sedangkan suzuki, toyota,
honda merupakan entitas.
Entitas digambarkan dalam bentuk persegi panjang.
Pekerja
5. Pengertian Atribut
Atribut : Entitas mempunyai elemen yang disebut atribut, dan
berfungsi mendeskripsikan karakter entitas. Misalnya atribut nama
pekerja dari entitas pekerja.
Setiap ERD bisa terdapat lebih dari satu atribut
Atribut Entitas digambarkan dalam bentuk elips
Pekerja
Nama
Pekerja
Alamat
Telepon
6. Relasi Entitas
Relasi Entitas menunjukkan adanya hubungan / relasi diantara
sejumlah entitas yang berasal dari himpunan entitas yang berbeda
sebagaimana halnya entitas maka hubunganpun harus
dibedakan antara hubungan atau bentuk hubungan antar
entitas dengan isi dari hubungan itu sendiri.
Misalnya dalam kasus hubungan antara entitas siswa dan
entitas mata_kuliah adalah mengikuti, sedangkan isi
hubungannya dapat berupa nilai_ujian.
Hubungan digambarkan dalam bentuk diamond atau jajaran
genjang
7. Derajat Kardinalitas
Kardinalitas relasi menunjukkan jumlah maksimum entitas
yang dapat berelasi dengan entitas pada himpunan
entitas yang lain
Contoh : entitas-entitas pada himpunan entitas Mahasiswa
dapat berelasi dengan satu entitas, banyak entitas, atau
bahkan tidak satupun entitas dari himpunan entitas Kuliah
8. Contoh Bentuk Entitas
a. Satu ke satu (One to one)
setiap entitas pada himpunan entitas A berhubungan
dengan paling banyak satu entitas pada himpunan
entitas B, dan begitu sebaliknya setiap entitas pada
himpunan entitas B berhubungan dengan paling
banyak satu entitas pada himpunan entitas A
9. Contoh Bentuk Entitas
b. Satu ke banyak (One to many)
setiap entitas pada himpunan entitas A dapat
berhubungan dengan banyak entitas pada himpunan
entitas B, dan tidak sebaliknya dimana setiap entitas
pada himpunan entitas B berhubungan dengan paling
banyak satu entitas pada himpunan entitas A
10. Contoh Bentuk Entitas
c. Banyak ke satu (Many to one)
setiap entitas pada himpunan entitas A berhubungan
dengan paling banyak satu entitas pada himpunan
entitas B, dan tidak sebaliknya dimana setiap entitas
pada himpunan entitas B dapat berhubungan dengan
banyak entitas pada himpunan entitas A
11. Contoh Bentuk Entitas
d. Banyak ke banyak (Many to many)
Setiap entitas pada himpunan entitas A dapat
berhubungan dengan banyak entitas pada himpunan
entitas B, dan sebaliknya dimana setiap entitas pada
himpunan entitas B dapat berhubungan dengan
banyak entitas pada himpunan entitas A
12. 1. Himpunan Entitas Kuat (Strong Entity Sets)
Varian Entitas
Merupakan himpunan entitas kuat/bebas
Kemunculan entitas-entitas didalamnya tidak
tergantung pada keberadaan entitas pada
himpunan entitas lain.
Bukan merupakan bagian (sub) dari himpunan
entitas lain.
Contoh : Himp. entitas Mahasiswa,
Mata_Kuliah, Dosen, Jurusan, Pegawai, dsb.
13. 2. Himpunan Entitas Lemah (Weak Entity Sets)
Varian Entitas
Nilai entitasnya tergantung pada eksistensinya
dalam sebuah relasi terhadap entitas lain.
Biasanya tidak memiliki atribut yang berfungsi
sebagai Kunci (Key).
Contoh : Himpunan entitas Hobi (yang
keberadaannya bisa ada atau tidak, tergantung
hubungan (relasi) mahasiswa yang memiliki
hobi.)
14. Varian Entitas
3. Sub Entitas (Subtype Entities)
Himpunan entitas yang merupakan bagian dari himpunan
entitas yang lebih superior/utama.
Contoh : Himp. Entitas dosen dapat dipecah
menjadi sub entitas; Dosen Tetap dan Dosen
Tidak Tetap. (entitas dosen merupakan entitas
superior/utama)
15. Varian Relasi
1. Relasi Tunggal (Unary Relation)
Merupakan relasi yang terjadi dari sebuah himpunan
entitas ke himpunan entitas yang sama.
Entitas1 R1
16. Varian Relasi
2. Relasi Biner (Binary Relation)
Merupakan relasi yang terjadi dari sebuah himpunan
entitas ke himpunan entitas lain yang berbeda.
Entitas1 R1 Entitas 2
17. 3. Relasi Multi Entitas (N-Ary Relation)
Varian Relasi
Merupakan relasi dari 3 himpunan relasi atau lebih.
Relasi seperti ini sebaiknya dihindari, karena dapat
mengaburkan derajat relasi yang ada dalam relasi
tersebut.
Entitas1 R1 Entitas 2
Entitas 3
18. Varian Relasi
4. Relasi Ganda (Redundant Relation)
Relasi ganda yaitu relasi yang terjadi antara dua himp.
Entitas yang memiliki lebih dari satu relasi.
Entitas1 R1 Entitas2
R2
19. Denormalisasi Tabel
Denormalisasi database adalah pelanggaran aturan normalisasi atau
menjabarkan suatu tataan database yang telah normal untuk
meningkatkan performa pengaksesan data pada database. Database
yang telah normal disini dimaksudkan database yang redundansi
datanya minim sehingga data yang disimpan tidak mengalami
kerancuan dalam proses pengaksesan.
Denormalisasi dapat menggunakan dua cara yaitu :
Dengan pembuatan kolom baru pada tabel / mengabungkan
kolom pada tabel satu dengan yang lain. Apabila data yang
didenormalisasi hanya kecil dan digunakan untuk
mempermudah pengaksesan data apabila diakses dalam satu
tabel.
Dengan pembuatan tabel baru. Dilakukan apabila data yang
terdapat dalam tabel tersebut merupakan rangkuman /
rekapitulasi dari satu atau beberapa tabel yang
pengaksesannya terpisah dari tabel yang ada.
20. Denormalisasi Tabel
Kegunaan Denormalisasi
Apabila kita menilik lebih lanjut tentang proses pengaksesan
yang dilakukan database sewaktu data yang berada dalam
suatu tabel ada 1000 baris dengan 100 juta baris. Hal itu akan
terasa sangat beda proses kita menunggu untuk dapat melihat
data. Itupun apabila kita mengaksesnya dari beberapa tabel
yang setiap tabel berisikan jutaan data dan kita hanya
menginginkan sebagian saja. Dari situ denormalisasi diperlukan,
untuk menjaga kestabilan performa suatu sistem.
21. Denormalisasi Tabel
Bentuk-bentuk Denormalisasi
a. Atribut yang terderivasi (atribut turunan)
Atribut turunan adalah atribut yang nilai-nilainya diperoleh dari
pegolahan atau dapat diturunkan dari atribut atau tabel lain yang
berhubungan. Atribut yang demikian sebenarnya dapat ditiadakan dari
sebuah tabel, karena nilai-nilainya bergantung pada nilai yang ada
pada atribut lainnya. hal inilah yang disebut sebagai denormalisasi.
Yang keberadaan atributnya bersifat redundan. Atribut semacam ini
digunakan untuk menghindari proses perhitungan yang berulang dan
memakan banyak waktu.
22. Denormalisasi Tabel
Contoh :
Tampilkan berapa banyak matakuliah yang sudah diambil oleh
mahasiswa tertentu!
Select count (*) from mengambil where NIM = 09.51.0062;
23. Denormalisasi Tabel
Untuk menampilkan banyak mata kuliah; di lakukan denormalisasi yaitu
dengan menambahkan beberapa atribut baru agar tidak memakan
banyak waktu dalam pemrosesannya.
24. Denormalisasi Tabel
b. Atribut yang berlebihan
Atribut yang berlebihan atribut yang menyatakan lebih dari satu fakta.
Atribut berlebihan terbagi atas beberapa bagian yaitu :
Atribut Terkodekan. Atribut terkodekan adalah atribut yang
memiliki kode tambahan yang menunjukkan beberapa kondisi
lainnya.
Contoh :
id_mk di tabelkuliah yang didalamnya sudah terkandung data
program studi. Data program studi ini sebenarnya tidak diperlukan
lagi karena sudah ada atribut prog_studi di tabel kuliah.
25. Denormalisasi Tabel
Tapi akan menjadi aneh jika kode matakuliah tidak mengikuti
format aturan penulisan yang ada. Untuk itu kita bisa lakukan
denormalisasi dengan tetap menuliskan kode matakuliah seperti di
bawah.
26. Denormalisasi Tabel
Atribut Gabungan. Atribut gabungan adalah atribut yang terdiri
dari atribut yang lain.
Contoh :
Atribut nim di tabel mahasiswa merupakan gabungan dari tahun
masuk/angkatan dengan program studi dan no urut mahasiswa.
Dengan demikian atribut ini sebenarnya tidak atomik (bagian
terkecil) karena masih bisa dibagi lagi.
Misalnya : NIM : 09.51.0062 (Ket: angkatan.jurusan.no urut).
Sama halnya dengan atribut terkodekan,akan menjadi aneh jika
nomor mahasiswa tersebut hanyalah nomor urut.Tentu hal ini akan
membutuhkan informasi lebih tentang angkatan dan terdaftar
dijurusan mana mahasiswa tersebut.
27. Denormalisasi Tabel
Atribut Tumpang Tindih. Atribut tumpang tindih adalah atribut
dengan nilai yang tidak sepenuhnya ekslusif (bersifat khusus).
Contoh :
Atribut semester di tabel kuliah berisikan:
1 : matakuliah ganjil
2 : matakuliah genap
3 : matakuliah ganjil & genap
Nilai 3 mencakup semester genap dan ganjil sekaligus(jadi tidak
ekslusif).
Jadi sebaiknya matakuliah dimasukkan dua kali, jika itu di
laksanakan di semester ganjil dan genap.
Tentu saja hal ini melanggar aturan normalisasi (redundansi), tapi
untuk performansi hal ini dapat dilanggar.
28. Denormalisasi Tabel
Atribut Bermakna Ganda. Atribut bermakna ganda adalah atribut
yang memiliki arti berbeda tergantung kelompok entitasnya.
Contoh :
Di tabel dosen terdapat atribut gaji. Bagi dosen tetap atribut ini
berisi gaji tetap perbulan, sedangkan bagi dosen tidak tetap gaji
ini berisi insentif (gaji tambahan) mengajar tiap sks.
Jika gaji dosen harus dibedakan, maka harus disediakan 2 buah
atribut yakni gaji_tetap dan gaji_tidak_tetap.Walaupun sama-sama
berisi tentang jumlah gaji yang diterima dosen, hal ini tentu
sajamelanggar aturan normalisasi karena ada blok data yang
kosong. Tetapi sekali lagi, denormalisasi dalam hal ini boleh
dilakukan.
30. Denormalisasi Tabel
c. Tabel Rekapitulasi (Summary Table)
Laporan hasil rekapitulasi akan selalu merupakan hasil
pengolahan dari semua tabel yang ada.Pengolahan
tersebut melibatkan banyak tabel sehingga akan
membutuhkan waktu yang lama.
Jika hal tersebut sering diakses dan diperlukan, maka perlu
dibuat tabel khusus untuk menyimpan data hasil rekapitulasi
tersebut.
Hal ini tentu saja akan menimbulkan redundansi, tapi
dengan mempertimbangkan performansi, Denormalisasi
pada kasus ini perlu dilakukan.
31. Denormalisasi ERD
Mengubah relasi-relasi ternormalisasi ke menjadi tak
ternormalisasi untuk mengurangi jumlah tabel yang harus
dilibatkan dalam operasi join.
Keuntungan:
Dapat meningkatkan kinerja (kecepatan) proses dengan
mengurangi jumlah tabel yang dilibatkan dalam operasi
join.
Kerugian (karena duplikasi data):
Pemborosan ruang penyimpanan.
Resiko pelanggaran integritas/konsistensi data.
35. 1. Boolean Searching
Teknik Searching dalam Basis Data
Salah satu metode pencarian yang paling umum adalah
Pencarian Boolean, juga disebut pencarian kata kunci.
Jenis pencarian ini memberitahu database untuk mengambil
semua catatan dalam database yang berisi kata atau
mengatur kata-kata. Anda dapat mengubah hasil dengan
menggunakan Boolean Operator yang merupakan kata-kata
AND, OR dan NOT.
contoh : MataKuliah=Agama AND Dosen=Agus
akan mencari data yang berisi Mata Kuliah agama
Dan dosen bernama Agus dari BasisData
36. contoh : MataKuliah=Agama OR Dosen=Agus
akan mencari data yang berisi Mata Kuliah agama atau dosen
bernama Agus dari Basis Data, Operator ini digunakan untuk
memperluas jumlah record diambil.
MataKuliah=Agama NOT Dosen=Agus
akan mencari data yang hanya berisi Mata Kuliah agama dan
tidak dosen bernama Agus dari Basis Data, Operator ini
digunakan untuk membatasi jumlah record diambil.
37. 2. Teknik Truncation (Wildcards)
Digunakan untuk menemukan berbagai variasi bentuk kata
yang berbeda dari pencarian Boolean atau pencarian kata
kunci. Beberapa database menggunakan asterisk dan ada
pula yang menggunakan tanda tanya. Teknik ini bisa
dikombinasikan dengan Boolean Searching.
contoh : Dosen=Ag*
akan mencari data yang berisi nama dosen bernama Agus,
Agatha, Agung dll dari BasisData
38. 3. Teknik Kurung
Digunakan untuk menjaga proses logika dari Boolean
Searching, caranya dengan menambahkan kurung kedalam
set pencarian yang yang dibuat. Nesting sering digunakan
ketika data yang dicari memiliki arti yang sama atau apabila
menggunakan Operator Boolean lebih dari satu.
contoh : Dosen=Agus AND (MataKuliah=Agama OR
Matematika)
akan mencari data yang berisi nama dosen bernama Agus,
dan mata kuliah agama atau matematika.
39. Daftar Pustaka
1. Sistem Manajemen Basis Data Ebook, Adi Dewanto, Ratna
Wardani, PTI FT UNY.
2. Sistem Basis Data Varian Entitas dan Relasi e-paper, Henry
Primandary S,Kom, STMIK MDP Palembang
3. http://lib.mdp.ac.id/ebook/Karya%20Umum/Diktat_Sistem_Basi
s_Data.pdf
4. Basis Data (Database) e-paper, Haidar Dzacko. 2007.
5. http://mr_jock.mywapblog.com/denormalisasi.xhtml
6. http://imamgunawan.wordpress.com/category/sistem-basis-data/
sistem-basis-data-ii/teori/perancangan_fisik_basis_data
7. http://informatika.web.id/organisasi-file-basis-data.htm
8. http://www.indiana.edu/~libhper/database_searching.pdf
9. https://www.library.uq.edu.au/how-to-guides/database-searching