Senin, 26 November 2012

Functional Dependency


Functional Dependency

Functional Dependency di sebut juga Ketergantungan Fungsional.
Functional Dependency menunjukkan suatu relationship atau hubungan, batasan, keterkaitan antara atribut-atribut di dalam suatu relasi.
·         Notasi: Aà B
A dan B atribut dari sebuah tabel. Maka secara fungsional A menentukan B atau B tergantung pada A, jika dan hanya jika ada 2 baris data dengan nilai A yang sama, maka nilai B juga sama.
Macam-macam dependency :
1.      Functional dependency
a.      Full functional dependency
Jika terdapat atribut A dan  dalam suatu relasi dimana B memiliki ketergantungan fungsional secara penuh pada A, dan B bukan memiliki dependensi terhadap subset A.
Example :
{NIM, nama} à idRuang bukan Full Dependency jika nama dihilangkan, maka NIM à id Ruang bisa Full dependency.
b.      Partially Dependency
Disebut juga Ketergantungan parsial . merupakan ketergatungan fungsional, di mana beberapa atribut dapat dihilangkan dari A dan ketergantungan tetap dipertahankan. B memiliki dependensi terhadap subset A.
Example  :



NIM, nama à idRuang
Dimana jika nama dihilangkan maka ketergantungan tetap ada.
c.       Transitive Dependency
Adalah tipe functional dependency, yaitu kondisi dimana A,B,C adalah atribut sebuah relasi dimana Aà B dan Bà C, maka C dikatakan sebagai transitive dependency terhadap A melalui B.
Exaample:

Nip à {Nama, Jabatan, Gaji, KdCabang, AlmCabang}
KdCabang à AlmCabang
Normalisasi
         Normalisasai adalah suatu proses untuk mendapatkan struktur tabel atau relasi yang efisien dan bebas dari anomaly, dan mengacu pada cara data item dielompokan ke dalam struktur record.

Bentuk normalisasi yang biasa digunakan adalah :

  1. First normal form (1NF)
  2. Second normal form (2NF)
  3. Third normal form (3NF)
  4. Boyce-codd normal form (BCNF)
  5. Four normal form (4NF)
  6. Five normal form (5NF)


1 NF (Bentuk Normal Pertama)
            First Normal Form, suatu keadaan yang membuat setiap perpotongan baris dan kolom dalam relasi hanya berisi satu nilai.
Dalam 1NF tidak diperbolehkan adanya :
·         Atribut yang bernilai banyak (Multivalued attribute).
·         Attribut komposit atau kombinasi keduanya.

Example :


2NF (Bentuk Normal Kedua)
            Bentuk normal 2NF terpenuhi dalam sebuah tabel jika telah memenuhi bentuk 1 NF, dan semua atribut selain primary key, secara utuh memiliki Functional Dependency pada primary key.
3 NF (Bentuk Normal Ketiga)
            Bentuk normal ketiga terpenuhi jika :
·         Telah memenuhi bentuk 2NF
·         Tidak ada atribut non primary key yang memiliki ketergantungan terhadap atribut non primary key yang lainnya (ketergantungan transitif).

Selasa, 20 November 2012

Query Languange


Query Languange yaitu Bahasa yang  digunakan untuk meminta informasi dari basis data.
Jenis Query Language :
1. Bahasa Prosedual,yaitu bahasa yang membuat suatu urutan instruksi.Contoh Aljabar Relational yang terdiri dari operasi dasar dan operasi tambahan.
2. Bahasa Non-Prosedual,yaitu bahasa yang mendiskipsikan informasi tanpa mendiskripsikan instruksi.Contoh kalkulus ralational.
Bahasa DBMS
Paket bahsa dalam DBMS dibagi menjadi 3, yaitu :
  • Data Definision Language (DDL)
  • Data Manipulasi Bahasa (DMB)
  • Data Control Language (DCL)
Query Operators
  • Relational Aljabar
  1. tuple (unary) Seleksi, proyeksi
  2. set ( biner) Union, Intersection, Perbedaan
  3. tuple (biner) Join, Divisi
  • Additional Operator
  1. Outer Join, Uni Outer
Aljabar Relational
Aljabar relasional adalah sekumpulan operasi yang digunakan untuk proses manipulasi data dalam rangka untuk mendapatkan informasi yang diperlukan dari database. Ada dua operasi pada aljabar relasional yaitu operasi dasar dan operasi tambahan :
  • Operasi Dasar
  • a. Selection ( σ )
    Merupakan operasi untuk menyeleksi tuple-tuple yang memenuhi suatu predikat, dapat dikombinasikan dengan konjungsi AND( ˄ ) dan OR( ˅ )
    b. Projection ( π )
    Merupakan operasi untuk memperoleh kolom-kolom tertentu, atau bisa juga dikatakan bahwa operasi projection adalah operasi unary yang mengirim relasi argument dengan kolom-kolom tertentu.
    c. Cartesian Product ( X )
    Merupakan operasi yang menghasilkan tabel perkalian kartesian, yang memungkinkan mengkombinasi beberapa relasi, dan merupakan relasi biner.
    d. Set-difference (— )
    Merupakan operasi untuk mendapatkan tupel yang terdapat dalam relasi satu, tapi tidak terdapat dalam relasi dua.
    e. Union ( ∪ )
    Merupakan sebuah operasi untuk menghasilkan gabungan.
    f. Rename ( ρ )
    Merupakan operasi untuk mengubah nama.
  • Operasi Tambahan
  1. Set intersection
  2. Tetha join
  3.  Division
Jenis-Jenis Operasi
  • Unary : suatu operasi yang hanya digunakan pada suatu relasi
  • Binary : suatu operasi yang memerlukan sepasang relasi
Selection
Selection merupakan suatu operasi untuk menyeleksi tupel-tupel yang memenuhi suatu predikat
Projection
Projection merupakan sebuah operasi unary yang digunakan untuk memperoleh kolom-kolom tertentu

Sabtu, 17 November 2012

Transformasi Model Data

Varian Entitas

  1. Entitas Kuat
    Himpunan entitas yang dilibatkan dalam ERD merupakan entitas kuat dan tidak memiliki ketergantungan dengan entitas lain.
  2. Entitas Lemah
    Suatu entity yang mana keberadaannya tergantung dari keberadaan entity lain dan tidak memiliki atribut yang dapat erfungsi sebagai key attribute.
Contoh Entitas kuat dan lemah



Agregasi

Menggambarkan sebuah himpunan relasi yang secara langsung menghubungkan sebuah himpunan entitas dengan sebuah himpunan relasi dalam ERD. secara kronologi mensyaratan telah adanya relasi lain dan relasi yang terbentuk tidak hanya dari entitas tapi juga mengandung unsur relasi lain.

Berikut ini contoh agregasi



Transformasi Model Data ke Basis Data Fisik

  • ERD direpresentasikan menjadi sebuah basis data secara fisik.
  • Komponen ERD 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.
  • Setiap himpunan entitas akan diimplementasika sebagai sebuah tabel
  • Relasi dengan derajat relasi 1-1 yang menghubungkan 2 buah himpunan entitas yang direpresentasikan dalam betuk enambahan/penyertaan atribut-atribut relasi ke tabel yang mewakili salah satu daru himpuan entitas.
  • Relasi dengan derajat relasi 1-N yang menghubungkan 2 buah himpunan entitas, juga akan direpresentasika 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 dlalam bentuk tabel khusus yang memiliki field yang berasal dari key-key dari himpunan entitas yang dihubungkan.

Implementasi Himpunan Entitas Lemah dan Sub Entitas seperti dibawah ini :
  • Penggunaan himpunan entitas lemah dan Sub Entitas dalam diagram ER diimplementasikan dalam bentuk tabel sebagai mana himpunan entitas kuat.
  • Bedanya jika himpunan entitas kuat sudah dapat langsung menjadi sebuah tabel utuh/sempurna walaupun tanpa melihat elasinya dengan himpunan entitas lain.