Selasa, 27 November 2012

Depedency dan Normalisasi


Pada pertemuan perkuliahan Sistem Basis Data kali ini, saya akan sedikit mengulas tentang materi yang telah diberikan dosen pengampu mengenai Depadency dan Normalisasi,, Silakan disimak ringkasan materi dibawah ini…

Functional Depedency
Functional Depedency (ketergantungan fungsional) yaitu menggambarkan hubungan, batasan, keterkaitan antaea atribut2 dalam relasi. Suatu atribut dikatakan functional dependency pada yang lain jika kita menggunakan harga tersebut untuk menentukan harga atribut lain. Functional Depedency dapat digambarkan dengan tanda panah.
Notasi dari FD yaitu: A –> B, maksudnya yaitu atribut B tergantung pada atribut A.
contoh : KodeMK –> NamaMK (artinya atribut NamaMK tergantung pada atribut KodeMK)
Macam-macam Depedency
            1.      Full Depedency
            Merupakan suatu ketergantungan dimana terdapat atribut A dan atribut B dalam satu relasi artinya B
            memiliki ketergantungan fungsional secara penuh pada A. B bukan memiliki dependency  terhadap  
            subset A.

Contoh : NIM –> Nilai (artinya yaitu Nilai tergantung pada atribut NIM)
dari contoh di atas Dapat disimpulkan bahwa 1 atribut menetukan pada 1 atribut
2.      Partially Depedency
Merupakan ketergantungan fungsional, dimana beberapa atribut dapat dihilangkan dari A dengan ketergantungan tetap diperahankan yaitu B memiliki depedensi terhadap subset A.
Contoh: NIM, nama –> idRuang (artinya idRuang tergantung pada NIM dan nama)
sehingga apabila nama dihilangkan, NIM masih terdapat ketergantungan dengan idRuang.
3.      Transitive Depedency
Merupakan tipe functional dependency yitu kondisi dimana A, B,C adalah atrubut sebuah relasi dimana A->B dan B->C, maka C dikatakan sebagai transitive dependency terhadap A melalui B.
Contoh:
Id_Pelanggan –> {Nama, Salesman, Area}
Salesman –> Area

Normalisasi
Merupakan proses untuk mendapatkan struktul table atau relasi yang efisien dan bebas dari anomaly sehingga sebagian ambiguitas dalam struktur data yang bisa dihilangkan.
Alasan melakukan normalisasi
-       Optimalisasi sruktur2 tabel
-       Mningkatkan kecepatan
-       Menghilangkan pemasukan data yang sama
-       Lebih efisien dalam penggunaan media penyinpanan
-       Mengurangi redundansi
-       Menghindari anomaly
-       Integritas data yang ditingkatkan.

Bentuk normalisasi yang bisa digunakan
-       First normal form (1NF)
-       Second normal form (2NF)
-       Third normal form (3NF)
-       Boyce-codd normal form (BCNF)
-       Four normal form (4NF)
-       Five normal form (5NF)

1.      1NF (Benuk Normal Pertama)
Merupakan suatu keadaan yang membuat setiap perpotongan baris dan kolom dalam relasi hanya berisi satu nilai.

Tidak diperbolehkan adanya :
-       Atribut yang bernilai banyak(Multivalue Attribut)
-       Attribut komposit atau kombinas keduanya.

2.      2NF (Bentuk Normal Kedua)
Merupakan sebuah relasi dalam 1NF dan setiap atribut non-primary-key bersifat fully functionally dependent pada primary key.

3.      3NF (Bentuk Normal Ketiga)
Bentuk normal ketiga terpenuhi jika telah memenuhi bentuk 2NF dan tidak atribut non primary key yang memiliki ketergantungan terhadap attribut non primary key yang lainnya (ketergantungan transitif).

Mungkin hanya tiga bentuk normalisasi yang dapat saya jelaskan. Unuk yang selanjutnya tunggu saja pada postingan yang selanjutnya.

Mungkin itulah sedikit ilmu yang dapat saya berikan, untuk yang lebih luasnya silakkan sering-sering datang mengunjungi b log ini untuk mendapatkan materi tentang perkuliahan Sistem Basis Data. Sekian dan terima kasih…..

Rabu, 14 November 2012

Query Language



Pada pertemuan kesekian kali ini, pada perkuliahan sistem basis data membahas tentang Query Language. Berikut penjelasan singkat yang dapat saya berikan tentang Query Language.

1.      Pengertian
Query Language merupakan bahasa khusu yang digunakan untuk melakukan perintah-perintah untuk mengakses data pada sistem basis data.

2.      Jenis Bahasa Query :
a. Bahasa Prosedural (Aljabar Relasional) merupakan bahasa yang identik dengan aljabar relasional. Biasanya mempunyai operasi dasar select dan operasi tambahan.
b.  Bahasa non prosedural (Kalkulus Relasional) merupakan bahasa yang identik dengan kalkulus relational yaitu mendeskripsikan informasi tanpa memberi instruksi.

3.      Operasi Bahasa Query :
a.   Operasi Unary
      Terdiri dari selection dan projection karena keduanya dapat digunakan hanya untuk satu relasi saja.
b.   Operasi Binary
      Di dalam operasi binary ini terdapat union dan cartesian-product.

Mungkin itu sedikit ulasan saya tentang Query Language. Semoga dapat membantu anda dalam segala hal yang menyangkut tentang sistem basis data. Sekian dan Terima Kasih....

Jumat, 26 Oktober 2012

Model Data Relational Lanjut


            Setelah postingan kemarin mengulas materi tentang Model Data Relational, maka kali ini saya sebagai admin tidak bosan-bosannya masih memposting tentang mata kuliah Sistem Basis Data. Sesuai dengan tujuan dibuatnya blog ini yaitu untuk memposting tugas-tugas dari Sistem Basis Data maka kali ini saya akan memposting tentang lanjutan dari postingan sebelumnya yaitu “Model Data Relational Lanjut”. Berikut materi yang dapat saya sampaikan, selamat menyimak..
Model Data Relational Lanjut
Ø  Varian Entitas
·         Entitas Kuat yaitu himpunan entitas yang dilibatkan dalam ERD dan tidak memiliki ketergantungan dengan himunan entitas lainnya.
·         Entitas Lemah yaitu suatu entity yang mana keberadaannya tergantung dari keberadaan entntity lain dan tidak memiliki atribut yang dapat berfungsi sebagai key attribute.
Contoh entitas kuat dan lemah

Ø  Agregasi
Yaitu menggambarkan sebuah himpunan relasi yang secara langsung menghubungkan sebuah himpunan entitas dengan sebuah himpunan relasi dalam ERD.

Contoh Agregasi


Tansformasi Model Data ke Basis Data Fisik

ERD direpresentasikan k basis data secara fisik. Komponen ERD ditransformasikan menjadi table yang merupakan komponen utama pembentuk basis data. Atribut yang melekat pada masing-masing himpunan entitas dan relasi akan dinyatakan sebagai field dari table yang sesuai. Setiap himpunan entitas akan diimplimentasikan sebagai sebuah table(file data).

  

Relasi dengan derajat Relasi 1-1 yang menghubungkan 2 buah himpuanan entitas yang direpresentasikan dalama bentuk penambahan atau penyrtaan atribut-atribut relasi ke table yang mewakili salah satu dari kedua himpunan entitas.



Relasi dengan derajat relasi 1-N yang menghubungkan 2 buah himpunan entitas, juga akan direpresentasikan dalam bentuk pemberian atribut key dari himpunan entitas berderajat 1 ke table yang mewakili himpunan entitas berderajat N. Atribut keydari himpunan entitas berderajat 1 menjadi atribut tambahan bagi himpunan entitas berderajat N.



Relasi dengan berderajat relasi N-N yang menghubungkan 2 buah himpuanan entitas, diwujudkan dalam bentuk table khusus yang memiliki field yang berasal dari key-key dari himpunan entitas yang dihubungkannya.



Implimentasi Himpunan Entitas Lemah dan Sub Entitas

Penggunaan himpunan entitas lemah dan sub entitas dalam diagram ER diimplementasikan dalam bentuk table sebagaimana himpunan entitas kuat. Entitas kuat dapat langsung menjadi sebuah table sempurna walaupun tanpa melihat relasinya dengan himpunan entitas lain, sedangkan entitas lemah hanya dapat ditransformasikan menjadi sebuah table dengan menyertakan pula atribut key dari hasil implimentasi himpunan entitas lemah.



            Itulah segelintir materi yang mungkin sangat berguna bagi agan-agan semua. Untuk lebih lengkapnya meteri tentang Sistem Basis Data sering-seringlah mampir ke blog yang sederhana ini. Kritik dan saran sangat dibutuhkan admin agar blog ini terus eksis memposting tentang hal-hal yang berguna bagi kita semua. Selamat bertemu di postingan selanjutnya. Salam Konservasi….

Rabu, 03 Oktober 2012

Model Data Relational


            Setelah kemarin saya sudah memposting tentang ERD, sekarang tidak bosan-bosannya juga saya akan tetap memposting masih tentang system basis data mengenai Model Data Relational. Berikut ulasan yang dapat anda simak.
            Model Data Relational yaitu kumpulan table berdimensi dua dengan masing-masing relasi tersusun atas tuple/baris dan atribut/kolom pada suatu basis data.
·         ER-Model (High Level)
·         Relational-Model (Lower Level)

v  Istilah Yang Terdapat Pada Relational Data Model Terms
Ø  Relasi ,merupakan sebuah table yang terdiri dari beberapa kolom dan beberapa baris.
Ø  Atribut yaitu kolom pad sebuah baris
Ø  Tuple yaitu baris pada sebuah relasi atau kumpulan elemen-elemen yang berkaitan mengunformasikan tentang suatu entitas secara lengkap
Ø  Domain yaitu sebuah kemungkinan nilai yang dapat diberikan ke suatu atribut
Ø  Degree yaitu jumlah atribut dalam suatu table

v  Relasi
Meenunjukkan adanya hubungan diantara sejumlah entitas yang berasal dari himunan entitas yang berbeda.
Contoh : mahasiswa = (nim : string, nama : string)
Ket : Mahasiswa adalah relasi, nim dan nama adalh nama atribut, dan string adalah tipe atribut.

v  Basis Data Relational
·         Baris disebut TUPLE,
·         Kolom disebut ATRIBUT,
·         Tabel disebut RELATION,
·         Domain= kumpulan dari harga atomic yang dapat dimiliki oleh suatu kolom/atribut.

v  Mendifinisikan Domain
·         Memberi nama domain yang sesuai dengan nilai yang akan dimilikidomain tersebut.
·         Menentukan tipe data dari nilai yang akan membentuk domain.
·         Menentukan format domain.

v  Relational Key
·         Candidate Key : Atribut yang digunakan untuk membedakan suatu baris dengan baris yang lain.
·         Primary Key : Candidate Key yang digunakan untul mengidentifikasikan suatu tuple yang unik pada suatu relasi.
·         Alternate Key : Candidate Key Yang tidak menjadi Primary Key.
·         Foreign Key : Sebuah atribut dalam suatu relasi yang merujuk ke primary key relasi yang lain.

v  Batasan-Batasan Integritas
Merupakan batasan-batasna yang diberikan terhadap suatu relasi dan ditetapkan kerika skema didefinisikan serta dicek ketika relasi-relasi dimodifikasi atau dimanipulasi(penambahan, pengubahan, penghapusan dan pencairan/menampilkan data).

v  Relaational Integrity Rules
·         Null : Nilai suatu atribut yang tidak diketahui dan tidak cocok untuk baris (tuple) tersubut. Nilai Null dapat digunakan untuk menyatakan/mengisi atribut-atribut yang nilainya memang belum ada.
·         Entity Integrity : Tidak ada satu komponen primary key yang bernilai null.
·         Referential Integrity.
·         Garis yang menghubungkan antara satu table dengan dengan table lain.

Itulah merupakan ulasan singkat yang dapat saya berikan untuk para pengunjung yang setia di blog ini. Mungkin lain kali saya akan mencoba membuat ulasan yang lebih baik lagi mengenai Sistem Basis Data. Untuk itu diperlukan saran yang mendukung dari para pengunjung blog agar blog yang sederhana ini dapat terus berkarya dan dapat memposting artikel-artikel yang bermanfaat lainnya. Salam Konservasi…

Latihan 1 :


Relation Key :

a.       Entitas Account
·         Candidate Key            : account-number, balance.
·         Alternate Key : balance
·         Primary Key    : account-number
·         Foreign Key    : -
b.      Entitas Customer
·         Candidate Key            : customer-name, customer-street, customer-city.
·         Alternate Key : customer-street, customer-city
·         Primary Key    : customer-name
·         Foreign Key    : -
c.       Entitas Ioan
·         Candidate Key            : Ioan-number, amount.
·         Alternate Key : amount
·         Primary Key    : Ioan-number
·         Foreign Key    : -
d.      Entitas Branch
·         Candidate Key            : branch-name, branch-city, assets.
·         Alternate Key : branch-city, assets
·         Primary Key    : branch-name
·         Foreign Key    : -
Latihan 2:

TABEL SISWA
NIS
Nama_siswa
Tgl_lahir
Jenis_kelamin
5302000001
 Ronaldo
01-08-1993
Pria
5302000076
Messi
17-08-1991
Pria
5302000086
Lampard
30-12-1994
Pria
5302000099
Jennifer
10-10-1992
Wanita
5302000118
Terry
09-09-1989
Wanita

TABEL MATA PELAJARAN

Kode_mapel
Nama_mapel
Guru_pengampu
MDU108
BK
Mourinho
MP106
Basis Data
Di Matteo
MP305
Metode Numerik
Guardiola
MP409
Statistika
Ancelloti
MDU214
Psikopen
Ferguson

TABEL GURU

NIP
Nama_guru
Alamat
No_HP
33000301
Mourinho
Semarang
085643998201
33450076
Di Matteo
Demak
081227768900
33900086
Guardiola
Kudus
089668328765
34067099
Ancelloti
Brebes
089667540983
32900118
Ferguson
Tegal
085776329003

TABEL NILAI

NIS
Kode_mapel
Nilai_akhir
5302000001
MDU108
87
5302000076
MP106
80
5302000086
MP305
82
5302000099
MP409
90
5302000118
MDU214
89


TABEL KETERHUBUNGAN







ATRIBUTE KEY

Atribut Kunci

Entity
Atribut
Siswa
NIS, Nama_siswa, Tgl_lahir, Jenis_Kelamin
Pelajaran
Kode_mapel, Nama_mapel, Guru_pengampu
Guru
NIP, Nama_guru, Alamat, No_HP

Primary Key

Entity
Atribut
Siswa
NIS
Pelajaran
Kode_mapel
Guru
NIP


ERD