Pages

Jumat, 23 November 2012

Dependency Normalisasi

A. Functional Dependency (Ketergantungan Fungsional)
FD menggambarkan relasional atau hubungan batasan, keterikatan antara atribut-atribut dalam relasi. SUatu atribut dikatakan functionally dependent pada yang lain jika kita menggunakan harga atribut tersebut untuk menentukan harga atribut yang lain. Simbol yang digunakan untuk mewakili FD adalah tanda panah (->) dibaca secara fungsional "menentukan".
Contoh :
A->B berarti secara fungsionalnya A menentukan B atau B tergnatung pada A, jika dan hanya jika ada 2 baris data dengan nilai A yang sama, maka nilai B juga sama.

B. Macam-Macam Dependency
Functional Dependency terbagi menjadi 3 jenis yaitu Full Functional Dependency, Partially Dependency, dan Transitive Dependency.
1. Full Dependency
Menunjukkan jika terdapat atribut A dan B dalam suatu relasi dimana B memiliki ketergantungan fungsional secara penuh pada A dan B bukan memiliki dependency terhadap subset A.
2. Partially Dependency
MErupakan ketergantungan fungsional, dimana beberapa atribut dapat dihilangkan dari A dengan ketergantungan tetap dipertahankan. (B memiliki dependency terhadap subset A)
3. Transitive Dependency
Merupakan tipe functional dependency dimana A,B,C adalah atribut sebuah relasi dimana A->B dan B->C. Maka C dikatakan sebagai transitive dependency terhadap A melalui B.

C. Normalisasi
Pengertian :
Normalisasi merupakan suatu proses untuk mendapatkan struktur tabel atau relasi yang efisien dan bebas dari anomali, dan mengacu pada cara data item dikelompokkan ke dalam struktur record. Atau dapat dikatakan bahwa normalisasi adalah proses pembentukan struktur basis data sehingga sebagian besar ambiguity bisa dihilangkan.

Alasan Mengapa Menggunakan Normalisasi :
- optimalisasi struktur-struktur tabel
- meningkatkan kecepatan
- menghilangkan pemasukan data yang sama
- lebih efisien dalam penggunaan media penyimpanan
- mengurangi redudansi
- menghindari anomali (insertion anomalies, deletion anomalies, update anomalies)
- integritas data yang ditingkatkan

Bentuk-Bentuk Normalisasi :
- 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)

Langkah-Langkah Normalisasi :
Dapat dilihat dalam gambar berikut :



1NF = Suatu keadaan yang membuat setiap perpotongan baris dan kolom dalam relasi hanya berisi satu nilai. Tidak diperbolehkan adanya atribut yang bernilai banyak (multivalued) dan atribut komposit atau kombinasi keduanya.

2NF = Bentuk normal ini dapat terpenuhi apabila sebuah tabel jika telah memenuhi 1NF, dan semua atribut selain primary key, secara utuh memiliki Functional Dependency pada primary key. Sebuah tabel tidak memenuhi 2NF jika ada atribut yang ketergantungan (functional dependency) hanya bersifat parsial saja (hanya tergantung pada sebagian dari primary key). Jika terdapat atribut yang tidak memiliki ketergantungan terhadap primary key, maka atribut tersebut harus dipindah atau dihilangkan.

3NF = BEntuk ini terpenuhi jika telah memenuhi bentuk 2NF dan tidak ada non primary key yang memiliki ketergantungan terhadap atribut non primary key yang lainnya (ketrgantungan transitif).

Minggu, 18 November 2012

Transformasi Model Data


A.      Model data Relasional Lanjut
Terdiri dari Varietas Entitas dan Agregasi. Varietas Entitas sendiri terdiri dari Entitas Kuat dan Entitas Lemah.
1.       Varietas Entitas
a.       Entitas Kuat yaitu himpunan entitas yang dilibatkan dalam ERD dan tidak memiliki ketrgantungan dengan himpunan entitas lainyya.
b.      Entitas Lemah yaitu suatu entitas dimana keberdaannya bergantung pada keberadaan entitas yang lain, entitas lemah tidak memiliki atribut yang dapat berfungsi sabagai key atribut.
2.       Agregasi
Menggambarkan sebuah himpunan relasi yang secara langsung menghubungkan sebuah himpunan entitas dengan sebuah himpunan relasi dalam ERD. Relasi terbentuk tidak hanya dari entitas tapi juga mengandung unsure relasi lain dan secara kronologis mensyaratkan telah adanya relasi lain.
B.      Transformasi Model Data ke Basis Data Fisik
ERD digambarkan menjadi sebuah basis data secara fisik, dimana 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.
Transformasi Dasar adalah dimana setiap himpunan entita akan diimplementasikan menjadi sebuah table ( field data ).
Contoh :
1.       Relasi dengan derajat relasi 1-1 yang menghubungkan 2 buah himpunan entitas yang dipresentasikan dalam bentuk penambahan ataupun penyertaan atribut relasi ke table mewakili salah satu dari kedua himpunan entitas.
2.       Relasi dengan derajat relasi 1-N yang menghubungkan 2 buah himpunan entitas, juga akan dipresentasikan dalam bentuk pemberian atau pencantuman atribut key dari himpunan entitas berderajat 1 ke table yang mewakili himpunan entitas berderajat N. Atribut key dari himpunan entitas berderajat 1 menjadi atribut tambahan untuk himpunan entitas berderajat N.
3.       Relasi dengan derajat N-N yang menghubungkan 2 buah himpunan entitas diwujudkan dalam bentuk table khusus yang memiliki field yang asalnya dari key-key dari himpunan entitas yang dihubungkannya.
C.      Implementasi Himpunan Entitas Lemah dan Sub Entitas
Penggunaan himpunan entitas lemah dan dub entitas dalam diagram ER diimplementasikan dalam bentuk table sebagaimana himpunan entitas kuat. Bedanya jika himpunan entitas kuat sudah dapat langsung menjadi sebuah table utuh atau sempurna walupun tanpa melihat relasinya dengan himpunan entitas lain maka himpunan entitas lemah hanya dapat ditransformasikan menjadi sebuah table dengan menyertakan pula atribut key dari hasil implementasi himpunan entitas lemah.

6. Database Management System (DBMS)

DBMS adalah suatu perangkat lunak yang mengatur semua kontrol akses yang mempunyai fasilitas membuat, mengakses, memanipulasi dan memelihara suatu basis data.

DBMS juga mempunyai beberapa komponen yang perlu kita ketahui yaitu query processor, database management, file manager, DML processor, DDL processor dan dicnioray manager yang masing-masing komponen mempunyai tugas yang berbeda pula tetapi masih saling berhubungan.Pada suatu DBMS digunakan beberapa bahasa yaitu DDL(Data Definition Language) dan DML(Data Manipulation Language). Hasil perbndingan dari perintah DDL adalah satu set dari table yang disimpan dalam file khusus yaitu dictionary atau directory. Tetapi kalau DML hanya mengizinkan pemakainya untuk mengakses data yang terorganisasi dalam model data yang cocok.
Apa fungsi dari DBMS ?
1.       Untuk mengolah pendefinisian data
2.       Untuk menangani permintaan untuk mengakses data
3.       Mengurangi kompleksitas
4.       Bertambahnya keamanan
5.       Menyediakan tampilan dan mekanisme database yang berbeda
6.       Database dasar tetap konsisten walaupun diubah

Selasa, 23 Oktober 2012

5. Model Data Relational (lanjut)


Oke sekarang saya akan melanjutkan tentang materi Model Data Relational. Tapi sebelumnya harus (minimal) tahu apa itu :
1.       Varian Entitas
a.       Entitas kuat : merupakan himpunan entitas dalam ERD yang melibatkan entitas kuat, entitas kuat pun tidak punya (memiliki) keterikatan dengan himpunan entitas yang lain
b.      Entitas lemah : merupakan suatu entity yang mana keberadaannya itu bergantung dari adanya entity yang lain. Entitas lemah juga tidak memiiki atribut yang bisa mempunyai fungsi sebagai Key Attribute.

Contoh entitas kuat dan lemah :
2.       Agregasi itu menggambarkan sebuah himpunan relasi secara langsung dan menghubungkan sebuah entitas dengan sebuah relasi himpunan delam ERD. Secara umum menyatakan telash adanya suatu relasi yang lain, dan relasi itu terbentuk tidak hanya dari entitas tapi juga ada unsur relasi yang lain.
Contoh Agresi :

Oke selanjutnya kita membahas Transformasi Model Data ke Basis Data Fisik.
1.       ERD direpresntasikan menjadi suatu basis data secara fisik.
2.       Komponen ERD (himpunan relasi dan entitas) ditransformasikan menjadi suatu tabel yang merupakan komponen utama pembentuk basis data.
3.       Atribut yang melekat pada masing-masing himpunan entitas dan relasi akandinyatakan sebagai field dari tabel yang sesuai. Jadi setiap himpunan entitas akan diimplementasikan sebagi tabel atau bisa disebut juga file data.


Transormasi Dasar
            Relasi dengan derajat relasi 1-1 yang menghubungkan 2 buah himpunan entitas dan di jabarkan ke dalam bentuk penjumlahan atau disertakan dalam atribut relasi ke dalam tabel yang mewakili salah satu dari kedua entitas himpunan. Relasi dengan derajat 1-N yang akan menghubungkan dua buah himpunan entitas, juga akan dipresentasikan dalam bentuk pemberian atau panandaan atribut key dari himpunan entitas berderajat 1 ke tabel yang mewakili himpunan entitas berderajat N. Relasi N-N yang menghubungkan dua buah himpunan entitas, ditandakan dalam bentuk tabel khusus yang memiliki foerign key yang berasal dari kunci-kunci himpunan entitas yang dapat disambungkan.


Implementasi Himpunan Entitas Lemah dan Sub Entitas.
1.      Penggunaan pada himpunan entitas lemah dan sub entitas dalam diagram ER di jabarkan dalam bentuk tabel sebagaimana himpunan entitas kuat.
2.      Bedannya apabila himpunan entitas kuat sudah dapat langsung menjadi sebuah tabel yang sempurna walaupun tanpa atau dengan tidak adanya relasi dengan himpunan lain.
Implementasinya :

Hasil Akhir (Basis Data Relational)

Minggu, 30 September 2012

4. Data Relational Model


Model Data Relasional merupakan suatu model database yg menggunakan table dua dimensi,  dan terdiri dari baris dan kolom untuk menggambarkan suatu berkas dari data.  Atau dalam istilah lain adalah suatu model data yang datanya tersebut di letakkan dalam bentuk relasi.

Istilah Data Model Relasi :

1.    Relasi merupakan suatu table yang terdiri dari beberapa kolom dan baris.
2.    Attribute merupakan kolom dalam sebuah relasi
3.    Tuple merupakan baris dari suatu relasi atau kumpulan elemen-elemen yang menginformasikan entitas dengan lengkap
4.    Domain merupakan semua kemungkinan nilai, dapat di berikan ke attribute
5.    Degree merupakan jumlah attribute dalam suatu relasi
6.    Cardianity merupakan jumlah tuple di dalam suatu relasi

Pada relasi menunjukkan hubungan antara sejumlah entitas yang berasal dari beberapa entitas yang berbeda. Pada struktur datanya terdapat kumpulan beberapa tabel. Dan pada setiap relasi punya schema yang berguna untuk mendeskripsikan nama relasi dari tipe attribute nya.

Contoh 1 :
Mahasiswa = (nim : string, nama_mahasiswa : string)

Keterangannnya adalah mahasiswa merupakan nama relasi, sedangkan nim & nama_mahasiswa merupakan nama attribute. Dan string merupakan tipe attribute

Database Relational
-       Baris biasa disebut dengan Tuple
-       Kolom biasa disebut dengan Attribute
-       Tabel biasa disebut dengan Relation
-       Domain merupakan kumpulan harga atomik yang dipunyai oleh kolom atau attribute


Mendefinisikan suatu Domain
-       Dengan memberi nama pada Domain yang sesuai dengan yang akan di punyai domain itu.
-       Dengan menentukan tipe data dari suatu nilai yang di bentuk domain.
-       Dengan mementukan format dari domain.
 

Batasan-batasan pada Integritas :

-       Batasan yang di berikan pada relasi
-       Ditetapkan apabila schema di jabarkan
-       Dicheck ketika suatu relasi dimanipulasi

Aturan integritas relasional :

-       Null merupakan nilai dari attribute yang nilai tersebut belum atau tidak di ketahui dalam tuple.
-       Entity integrity merupakan komponen yang primary key nya tidak bernilai null.
-       Referential integrity merupakan garis yang dapat menghubungkan antara satu table dengan table yang lainnya.

LATIHAN 1
Entitas Account
Candidat Key : Account_number, balance
Primary Key : account_number
Alternate Key : balance

Entitas Branch
Candidat Key : branch-name, branch-city, assets
Primary Key : branch-name
Alternate Key : branch-city, assets

Entitas Customer
Candidat Key : customer-name, customer-street, customer-city
Primary Key : customer-name
Alternate Key : customer-street, customer-city

Entitas Loan
Candidat Key : loan-number, amount
Primary Key : loan-number
Alternate Key : amount

  LATIHAN 2
Buat tabel-tabel dan keterhubungannya :

  1.      Siswa, Pelajaran, Guru dengan minimal masing-masing tabel mempunyai 5 record/tuple/baris.
  2.     Buatlah tabel baru untuk keterhubungannya.
  3.     Tunjukan atribut kunci yang ada.
  4.      Gambar ERD


Jawaban :
1. Tabel siswa
NIS
Nama_siswa
Tgl_lahir
Jenis_kelamin
231 Anggit Fauzan
25/5/1993
Laki-laki
234
Darmawan
1/9/1994
Laki-laki
235
Waris
4/7/1993
Laki-laki
236
Fajar
19/10/1993
Laki-laki
237
Novi
8/3/1993
Wanita

Tabel pelajaran
Kode_mapel
Nama_mapel
Guru_pengampu
001
Agama
Siti Mushoha
002
Bahasa Indonesia
Wisnu Widiastuti
003
Matematika
Andi Setiawan
004
IPA
Aris Munandar
005
Bahasa Inggris
Sukendro
 
Tabel guru
NIP
Nama
Alamat
No_telp
322121
Niken Sujati
Sekaran
087737771561
322122
Yuliati
Sekaran
087737771562
322123
Wihartasih
Sekaran
087737771563
322124Sukarni
Sekaran
087737771564
322125
Sutejo
Sekaran
087737771565
    
2.  Tabel  keterhubungan

3.Atribut kunci / primary key

Entity
Primary key       
Siswa
NIS
Pelajaran
Kode_mapel
Guru
NIP

4. Gambar ERD


 

GET ON YOUR KNEES!

GET ON YOUR KNEES!

HIP YOUR HOP!

HIP YOUR HOP!

SO FAR AWAY!

SO FAR AWAY!