Jumat, 30 November 2012

DEPENDENSY DAN NORMALISASI

Fungtional dependency/ketergantungan fungsional
  • FD menggambarkan Relationship/hubungan, batasan, keterkaitan antara atribut-atribut dalam relasi.
  • Suatu Attribute dikatakan functionally dependent pada yang lain jika kita menggunakan harga attribut tersebut untuk menentukan harga atribut yang lain.
  • Symbol yang digunakan untuk mewakili FD adalah -> dibaca secara fungsional menentukan
Notasi  A ->  B
A&B adalah atribut dari sebuah table. Berarti secara fungsional A menentukan B/ B bergantung pada A, jika dan hanya jika ada dua baris data dengan nilai A yang sama,maka nilai B juga sama.
Contoh :
Macam-macam dependency
Functional Dependency
  •  Full Fungtional Depedency : menunjukkan jika  terdapat atribut A dan B dalam suatu relasi, dimana: B memiliki ketergantungan fungsional secara penuh pada A ,  B bukan memiliki dependensi terhadap subset A
  • Partially dependency: merupakan ketergantungan fungsional, dimana beberapa atribut dapat dihilangkan dari A dengan ketergantungan tetap diptahankan, B memiliki dependensi terhadap subset A
  • Transitive dependency : Merupakan tipe fungtional dependensy, yaitu kondisi dimana A,B,C adalah attribute sebuah relasi dimana A-> B dan B->C, maka C dikatakan sebagai transitive dependensy terhadap A melalui B
NORMALISASI
Normalisasi adalah suatu proses untuk mendapatkan struktur table atau relasi yang efisien dan bebas dari anomaly, dan mengacu pada cara data item dikelompokkan ke dalam struktur record.
Normalisasi adalah proses pembentukan struktur basis data sehingga sebagian besar ambiguity bisa dihilangkan.
Mengapa dilakukan normalisasi?
  • Optimalisasi struktur-struktur table
  • Meningkatkan kecepatan
  • Menghilangkan pemasukan data yang sama
  • Lebih efisien dalam penggunaan media penyimpanan
  • Mengurangi redudansi(ganda)
  • Menghindari anomaly(insertion anomalies, delecion anomalies, upadate anomalies)
  • Integritas data yang ditingkatkan
Bentuk normalisasi yang biasa digunakan:
  • first normal form (1NF)
         Suatu keadaaan yang membuat setiap perpotongan baris dan kolom dalam relasi hanya berisi satu nilai. Didalam 1NF tidak diperbolehkan adanya:
  1. attribute yang bernilai banyak (Multivalued attribute)
  2.  Atrribute komposit atau kombinasi keduanya
  • second normal form (2NF)
       Bentuk normal 2NF terpenuhi dalam sebuah tabel jika telah memenuhi bentuk 1NF, dan semua atrribute selain primary key, secara utuh memiliki fungtional dependensy pada primary key.
      Sebuah tabel tidak memenuhi 2NF, jika ada atribute yang ketergantungannya (fungtional dependensy) hanya bersifat parsial saja (hanya tergantung pada sebagian dari primary key)
      Jika terdapat atribute yang tidak memiliki ketergantungan terhadap primary key, maka atribute tersebut harus dipindah atau dihilangkan
  • third normal form (3NF)
        Bentuk normal 3NF terpenuhi jika : 
  1. telah memenuhi bentuk 2NF
  2.  tidak ada atribute non primary key yang memiliki ketergantungan terhadap atribute non primary key yang lainnya(ketergantungan trnsitif)
  • boyce-codd  normal form (BCNF)
  • four normal form (4NF)
  • five normal form (5NF)    
Langkah-Langkah Normalisasi

Pemrosesan Query



Terdapat lima operasi dasar dalam aljabar relasional, yaitu:
1. Selection ( σ )
Selection / Select (σ ), adalah operasi untuk menyeleksi tupel – tupel yang memenuhi suatu
predikat, kita dapat menggunakan operator perbandingan (<,>,>=,<=,=,#) pada predikat. Beberapa
predikat dapat dikombinasikan menjadi predikat manjemuk menggunakan penghubung AND (
) dan OR ( ).

2. Projection ( π )
Projection / Project ( π ), adalah operasi untuk memperoleh kolom – kolom tertentu. Operasi
project adalah operasi unary yang mengirim relasi argumen dengan kolom – kolom tertentu. Karena
relasi adalah himpunan, maka baris – baris duplikasi dihilangkan.

3. Cartesian – product ( X, juga disebut sebagai cross product )
Cartesian-product ( X ), adalah operasi untuk menghasilkan table hasil perkalian kartesian.
Sintaks yang digunakan dalam operasi proyeksi ini adalah sebagai berikut :
R X S = {(x,y) | x
R dan yS}
Operasi cartesian-product memungkinkan kita mengkombinasikan informasi beberapa relasi,
operasi ini adalah operasi biner. Sebagaimana telah dinyatakan bahwa relasi adalah subset hasil
cartesian-product dan himpunan domain relasi – relasi tersebut. Kita harus memilih atribut – atribut
untuk relasi yang dihasilkan dari cartesian-product.

4. Union (
)
Union ( ), adalah operasi untuk menghasilkan gabungan table degan syarat kedua table
memiliki atribut yangsama, yaitu domain atribut ke-i masing – masing table harus sama. Sintaks yang
digunakan dalam operasi union ini adalah sebagai berikut :
R
S = {x | xR atau X S}
Operasi ini dapat dilaksanakan apabila R dan S mempunyai atribut yang sama sehingga
jumlah komponennya sama.

5. Set – difference ( - )
Set-difference ( -- ), adalah operasi untuk mendapatkan table pada suatu relasi, tapi tidak
ada pada relasi yang lainnya. Sintaks yang digunakan dalam operasi union ini adalah sebagai berikut :
R – S = { x | x
R dan X S}
Operasi ini dapat dilaksanakan apabila R dan S mempunyai atribut yang tidak sama yang
akan ditampilkan, artinya adalah atribut R yang tidak ada di S akan ditampilkan, sedangkan atribut
yang sama tidak ditampilkan.
6. Rename ( ρ )
Rename ( ρ ), adalah operasi untuk menyalin table lama kedalam table yang baru. Sintaks
yang digunakan dalam operasi union ini adalah sebagai berikut :
ρ [nama_table] (table_lama)

Kamis, 01 November 2012

TRANSFORMASI MODEL DATA

TRANSFORMASI MODEL DATA

Varian Entitas di bagi menjadi dua: 

Entitas lemah adalah  suatu entity yang manan keberadaannya tergantung dari keberadaan entity lain, pada entity lemah tidak memiliki atribut yang berfungsi sebagai key attribute

  Entitas Kuat adalah himpunan entitas yang dilibatkan dalam ERD, entitas kuat tidak memiliki ketergantungan dengan himpunan entitas lainnya

Contoh entitas

Agregasi

yaitu Menggambarkan himpunan relasi yang secara langsung menghubungkan sebuah himpunan entitas dengan sebuah himpunan relasi dalam ERD

Relasi terbentuk tidak hanya dari entitas tapi juga mengandung unsur relasi lain

Contoh Agregasi

 

 


TRANSFORMASI MODEL DATA KE BASIS DATA FISIK

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

Transformasi Dasar 

Setiap himpunan entitas akan diimplementasikan sebagai sebuah tabel (file data)

Relasi dengan derajat Relasi 1-1 yang menghubungkan 2 buah himpunan entitas yang direpresentasikan dalam bentuk penambahan / penyertaan atribut-atribut relasi ke tabel 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/pencantuman atribut key dari himpunan entitas berderajat 1 ke tabel yang mewakili himpunan entitas berderajat N. Atribut key dari himpunan entitas berderajat 1 menjadi atribut tambahan bagi himpunan entitas berderajat N.

Relasi dengan derajat relasi N-N yang menghubungkan 2 buah himpunan entitas, diwujudkan dalam bentuk tabel khusus yang memiliki field (tepatnya foreign key) yang berasal dari key-key dari himpunan entitas yang dihubungkannya.

Implementasi Himpunan Entitas Lemah dan Sub Entitas

Himpunan Entitas lemah dan sub entitas dalam diagram ER diimplementasikan dalam bentuk tabel sebagaimana himpunan entitas kuat. jika himpunan entitas kuat sudah dapat langsung menjadi sebuah tabel utuh/sempurna walaupan tanpa melihat relasinya dengan himpunnan entitas lain. Dan himpunann entitas lemah hanya dapat ditransformasikan menjadi sebuah tabel dengan menyertakan pula attribute key dari hasil implementasi himpunan entitas lemah.