Maret 24, 2012

Teknik Normalisasi

Minggu, 25 Maret 2012

Hai sob, pada postingan tugas saya kali ini, saya akan mempostingkan tentang teknik normalisasi pada database.

Teknik Normalisasi merupakan sebuah teknik dalam logical desain sebuah basis data, teknik pengelompokkan atribut dari suatu relasi sehingga membentuk struktur relasi yang baik (tanpa redudansi).
Pada normalisasi terdapat 3 aturan, yakni:

  • Aturan Pertama : mendefinisikan atribut kunci, tidak adanya group berulang, semua atribut bukan kunci tergantung pada atribut kunci.
  • Aturan Kedua : sudah memenuhi dalam bentuk normal kesatu, sudah tidak ada ketergantungan parsial, dimana seluruh field hanya tergantung pada sebagian field kunci.
  • Aturan Ketiga : sudah berada dalam bentuk normal kedua, tidak ada ketergantungan transitif (dimana field bukan kunci tergantung pada field bukan kunci lainnya), bentuk Normal seharusnya berada dalam bentuk normal tertinggi dan bergerak dari bentuk normal satu dan seterusnya untuk setiap kali membatasi hanya satu jenis redudansi. Keseluruhannya cuma ada lima bentuk normal. Tiga bentuk normal pertama menekankan redudansi yang muncul dari Function Dependencies sedangkan bentuk keempat dan kelima menekankan redudansi yang muncul dari kasus Multi Valued Dependencies.
Contoh normalisasi pada kasus lain:








Contoh normalisasi sampai dengan aturan ke 3
Normalisasi Pertama
Disini kita akan terlebih dahulu membuat dan menentukan primary key pada tablenya, supaya setiap data atau field field lainya tergantung hanya pada satu field.
Dalam tabel yang saya buat ini, Primary Key nya adalah idPeminjam

tbl_peminjam






Normalisasi Kedua
Pada aturan ini kita akan memisahkan field field yang tergantung pada satu field, seperti field judulDvd dengan idDvd dan genre dengan idGenre. Field tersebut harus dipisahkan dari tbl_peminjam

tbl_peminjam






tbl_dvd







tbl_genre








Normalisasi Ketiga
Pada tahap ini kita akan membenahi data, data-data yang telah dibuatkan tabel yang baru akan dicek apabila terjadi redudansi maka data tersebut akan dihilangkan. Misalkan saya mempunyai data seperti berikut

tbl_dvd
Pada tabel ini terjadi redudansi data, yakni terdapat perulangan judulDvd dan idDvd, maka data tersebut akan dihapuskan




tbl_dvd






Kira-kira seperti itulah teknik normalisasi pada database. Masih banyak contoh normalisasi lainnya pada database.

Maret 03, 2012

Data Manipulation Language dan Entity Relational Diagram

Minggu, 4 Maret 2012

Hai sob, pada postingan tugas saya kali ini saya akan mem-posting tentang Data Manipulation Language dan Entity Relational Diagram

A. Data Manipulation Language
Digunakan untuk memanipulasi data yang ada dalam suatu tabel. Perintah yang umum dilakukan adalah:
a. SELECT, digunakan untuk menampilkan semua atau sebagian isi dari tabel yang telah di inputkan data-datanya.
b. INSERT , merupakan perintah untuk memasukkan/menyisipkan  data ke dalam sebuah tabel yang telah kita buat.
c. UPDATE, merupakan perintah untuk mengubah suatu data jika terdapat kesalahan dalam penginputan data tersebut.
d. DELETE, merupakan perintah untuk mengubah suatu data jika terdapat kesalahan dalam penginputan data tersebut.

B. Diagram Entity Relational
ERD adalah sebuah konsep yang mendeskripsikan hubungan antara penyimpanan dan didasarkan pada persepsi dari sebuah dunia nyata yang terdiri dari sekumpulan objek, disebut entiti & relasi diantar objek-objek tersebut. Diagram ERD digunakan untuk memodelkan struktur data dan hubungan antar data. Dengan ERD, model dapat diuji dengan mengabaikan proses yang dilakukan. Diagram ER pertama kali dideskripsikan oleh Peter Chen yang dibuat sebagai bagian dari perangkat lunak.

Notasi ERD
1. Entity
Entitas digunakan untuk menerapkan integritas pada tingkat Entity (Tabel), agar setiap Instances (Record/Baris) pada suatu Entity bersifat Unique yang disebut sebagai Primary Key sehingga dapat dibedakan antara yang satu dengan yang lainnya.

2.Relasi
Relasi digunakan utk menghubungkan beberapa tabel, sehingga data–data yang disimpan dalam tabel tetap normal. Dalam mySQL relasi antar tabel dapat dibuat jika tipe tabel tersebut innoDB. Secara otomatis saat membuat tabel baru, tipe tabel adalah MyISAM sehingga perlu merubah ke tipe innoDB terlebih dahulu.

3. Atribut
Setiap Entitas pasti memiliki Atribut yang mendeskripsikan karakteristik dari Entitas tersebut. Penentuan/pemilihan atribut-atribut yang relevan bagi sebuah entitas merupakan hal penting lainnya dalam pembentukan model data. Penetapan atribut bagi sebuah entitas umumnya memang didasarkan pada fakta yang ada, tetapi tidak selalu seperti itu. Istilah atribut sebenarnya identik dengan pemakaian kolom data.

4.Garis
Merepresentasikan hubungan atribut ke set entitas & set entitas ke relasi.


Kardinalitas Relasi 
Kardinalitas pemetaan atau rasio kardinalitas menunjukkan jumlah entitas yang dapat dihubungkan ke satu entity lain dengan suatu relasi. Kardinalitas pemetaan meliputi :  

1. Hubungan satu ke satu (one to one).
Yaitu satu entity dalam A dihubungkan dengan maksimum satu entity dalam B. Contohnya adalah dalam suatu universitas hanya boleh memiliki satu rektor.
2. Hubungan satu ke banyak (one to many)
Yaitu satu entity dalam A dihubungkan dengan sejumlah entity dalam B. Satu entity dalam B dihubungkan dengan maksimum satu entity dalam A. Contohnya adalah dalam suatu universitas bisa memiliki banyak dosen.

3. Hubungan banyak ke satu (many to one)
Yaitu satu entity dalam A dihubungkan dengan maksimum satu entity dalam B. Satu entity dalam B dapat dihubungkan dengan sejumlah entity dalam A. Contohnya adalah dalam suatu universitas beberapa mahasiswa dapat diajar oleh satu dosen pada satu matakuliah.

4. Hubungan banyak ke banyak (many to many).
Satu entity dalam A dihubungkan dengan sejumlah entity dalam B, dan satu entity dalam B dihubungkan dengan sejumlah entity dalam A. Contohnya adalah dalam suatu universitas beberapa mahasiswa dapat mengambil beberapa matakuliah tidak wajib.

Spesialisasi
Setiap tipe account ini diterangkan dengan himpunan atribut yang termasuk dalam atribut-atribut dari entitas account ditambah dengan atribut tambahan. Contoh entity saving-account diterangkan dengan atribut interest-rate, dan checking-account diterangkan dengan overdraft-amount. Proses spesialisasi mengijinkan pembedaan account berdasarkan tipe account. Account juga dapat dibedakan dengan cara lain, misalkan berdasarkan tipe kepemilikkan menjadi commercial-account dan personal-account. Ketika dalam suatu entitas dibentuk lebih dari satu proses spesialisasi, maka suatu entitas menjadi milik dua spesialisasi tersebut. Misal suatu account bisa merupakan suatu personal account dan suatu checking account. Dalam diagram E-R, spesialisasi dilambangkan dengan komponen segitiga bertuliskan ISA. ISA juga melambangkan hubungan antara superclass-subclass. Entity yang dengan kedudukkan lebih rendah/tinggi memiliki lambang sama.

Generalisasi
Disamping proses desain top-down (dari inisial entitas ke level lebih rendah (subgrup)), desain juga dapat dilakukan dengan proses bottom-up, yaitu banyak entitas disintesiskan menjadi entity yang lebih tinggi berdasarkan kesamaan feature-nya.
Desainer basis data mungkin mengidentifikasi terlebih dulu entitas checking-account dengan atribut account-number, balance dan overdraftamount. Ditemukan juga entity set saving-account dengan atribut account-number, balance dan interest-rate. Terdapat kesamaan antara entitas checking-account dengan entitas saving-account, yaitu keduanya memiliki beberapa atribut yang sama. Persamaan ini dapat diekspresikan dengan generalisasi.

Maret 02, 2012

Windows 8 Hanya Dijual 3 Versi

Sob pada postingan kali ini saya akan memposting tentang rumor Windows 8 nih. langsung aja cekidot sob :D

Sepertinya Microsoft hanya akan menghadirkan 3 versi retail pada Windows 8. Jika pada Windows 7 dihadirkan 4 versi retail yaitu Home Premium, Professional, Enterprise, dan Ultimate, maka Windows 8 tidak akan menghadirkan versi retail bagi versi Ultimate.
Stephen Chapman, seorang kolumnis di ZDNet yang pertama kali memberikan bocoran bahwa nantinya Microsoft hanya akan meluncurkan 3 versi saja, yaitu versi generik, Professional, dan Enterprise. Ketiga versi tersebut akan tersedia bagi versi 32- dan 64-bit.

Versi generik atau yang dulunya biasa diberi label Home Premium, kali ini hadir tanpa embel-embel lain sehingga nantinya hanya diberi nama Windows 8 saja. Untuk Professional, Windows 8 akan dihadirkan dengan feature yang lebih lengkap dibanding versi generik, sedangkan versi Enterprise hanya tersedia bagi perusahaan dan tidak dijual secara satuan.

Stephen mendapatkan bocoran tersebut dari dokumen keluaran Hewlett Packard mengenai dukungan Windows bagi produknya. Menurut analisisnya, Microsoft sengaja menghapus versi Ultimate dengan alasan karena paling rendah penjualannya. Hal ini diambil berdasarkan pengalaman Microsoft saat menghadirkan Windows 7.
Selain itu alasan lain bisa disebabkan karena beberapa feature yang ada dirasa tidak terlalu diperlukan oleh sebagian pengguna, sehingga banyak yang lebih memilih versi di bawahnya. Apalagi harga versi Ultimate merupakan yang termahal.
Jika versi Ultimate jadi dihadirkan, itu pun hanya berupa versi OEM yang telah dibundel dengan pembelian PC ataupun Notebook, mirip dengan versi Starter pada Windows 7.

Sumber: http://berita.plasa.msn.com/teknologi/Infokom/article.aspx?cp-documentid=5945508


Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Design by NewWpThemes | Blogger Theme by Lasantha - Premium Blogger Themes | New Blogger Themes