Normalisasi Basis Data

Proses normalisasi adalah proses pengelompokan data elemen menjadi tabel-tabel yang menunjukkan entity dan relasinya. Pada proses normalisasi dilakukan pengujian pada beberapa kondisi apakah ada kesulitan pada saatTeknik menambah/menyisipkan, menghapus, mengubah dan mengakses pada suatu basis data. Bila terdapat kesulitan pada pengujian tersebut maka perlu dipecahkan relasi pada beberapa tabel lagi atau dengan kata lain perancangan basis data belum optimal.

Perancangan basis data diperlukan, agar kita bisa memiliki basis data yang kompak dan efisien dalam penggunaan ruang penyimpanan, cepat dalam pengaksesan dan mudah dalam pemanipulasian (tambah, ubah, hapus) data.

Dalam merancang basis data, kita dapat melakukannya dengan :

–    Menerapkan normalisasi pada struktur table yang telah diketahui.

–        Menerapkan model ER (Entity Relationship)

Normalisasi adalah suatu teknik untuk mengorganisasi data ke dalam tabel-tabel untuk memenuhi kebutuhan pemakai di dalam suatu organisasi.

Bila ada kesulitan pada pengujian tersebut, maka relasi tersebut dipecahkan menjadi beberapa table lagi, sehingga diperoleh database yang optimal.

Tujuan dari normalisasi adalah untuk membuat agar data yang ada tidak redundan dan memiliki data integrity yang kuat sehingga ketika kita melakukan relasi antara table akan dengan mudah kita menjaga dataintegrity dan mendapatkan datanya.

Proses Normalisasi

Proses normalisasi model data dapat diringkas sebagai berikut:

  1. Menemukan entitas-entitas utama dalam model data
  2. Menemukan hubungan antara setiap entitas
  3. Menentukan atribut yang dimiliki masing-masing entitas

Field (Atribut) Kunci

Setiap file selalu terdapat kunci dari file berupa field atau satu set field yang dapat mewakili record. Misalnya Nomor Pokok Mahasiswa (NPM) merupakan kunci dari tabel mahasiswa suatu Perguruan Tinggi, setiap pencarian cukup dengan menyebut nomor mahasiswa tersebut maka dapat diketahui identitas mahasiswa lainnya seperti nama, alamat dan atribut lainnya. Nomor Pegawai (NIP) bagi data dosen, NIK untuk data karyawan, Kode_Kuliah untuk data Mata kuliah, dan lain sebagainya.

Jenis Atribut Pada Entitas

Atribut yang melekat pada suatu entitas ada bermacam tipe seperti yang akan dijelaskan sebagai berikut :

Atribut Sederhana : atribut sederhana merupakan atribut atomik yang tidak dapat lagi dipecah menjadi atribut lain.

Contoh:

Entitas mahasiswa mempunyai atribut sederhana berupa NIM, Nama Mahasiswa .

Atribut Komposit : atribut komposit merupakan atribut yang masih dapat dipecah menjadi sub-sub atribut yang masing-masing memiliki arti tesendiri.

Contoh :

entitas mahasiswa mempunyai atribut alamat. Alamat disini dapat

dipecah menjadi sub atribut seperti nama_kota, kode_pos.

Atribut Bernilai Tunggal: yaitu atribut yang hanya memiliki satu nilai untuk setiap barisnya.

Contoh : entitas mahasiswa mempunyai atribut NPM, Nama, Alamat isi data dari atribut ini hanya boleh diisi dengan 1 data. Setiap mahasiswa hanya memiliki 1 NPM, 1 Nama, 1 Alamat.

Atribut Bernilai Jamak: yaitu atribut yang boleh memiliki lebih dari satu nilai untuk setiap barisnya.

Contoh :

entitas mahasiswa mempunyai atribut Hobby isi data dari atribut ini boleh lebih dari 1 data. Mahasiswa Roshita memiliki NPM 13402021 beralamat di Jalan Garuda 32 Yogyakarta memiliki Hobby (Olah Raga, Nyanyi, Masak dan Nonton TV)

Atribut Harus Bernilai: yaitu atribut yang harus memiliki nilai data untuk setiap barisnya. Biasanya atribut seperti ini sudah ditetapkan dalam perancangan tabelnya sehingga jika dalam pengisian dokosongi akan terjadi kesalahan.

Contoh :

entitas mahasiswa mempunyai atribut NPM dan Nama_Mahasiswa yang harus diisi datanya, sebab jika tidak diisi akan terjadi kekacauan dalam basis data.

Atribut Bernilai Null: yaitu atribut yang boleh tidak memiliki nilai data untuk setiap barisnya.

Contoh :

entitas mahasiswa mempunyai atribut Alamat, Hobby, Nama_Pacar yang boleh untuk tidak diisi tetapi kalau diisi akan lebih baik,

Atribut Turunan: yaitu atribut yang nilai-nilainya diperoleh dari pengolahan

atau dapat diturunkan dari atribut lain yang berkaitan.

Contoh :

entitas mahasiswa mempunyai atribut IPK yang diperoleh dari pengolahan atribut Nilai pada tabel (entitas Nilai) dengan kode NIM mahasiswa yang sama dan diproses sehingga menghasilkan IPK untuk mahasiswa yang bersangkutan.

Kunci Kandidat (Candidate Key)

Kunci kandidat adalah satu atribut atau satu set atribut yang mengidentifikasikan secara unik suatu kejadian spesifik dari entity. Satu set atribut menyatakan secara tidak langsung dimana anda tidak dapat membuang beberapa atribut dalam set tanpa merusak kepemilikan yang unik.

Jika kunci kandidat berisi lebih dari satu atribut, maka biasanya disebut sebagai composite key (kunci campuran atau gabungan).

Kunci Primer (Primery Key)

Primary key adalah satu atribut atau satu set minimal atribut yang tidak hanya mengidentifikasi secara unik suatu kekadian spesifik, tetapi juga dapat mewakili setiap kejadian dari suatu entity. Setiap kunci kandidat dapat menjadi kunci primer tetapi sebaliknya sebaiknya dipilih satu saja yang dapat mewakili secara menyeluruh terhadap entity yang ada.

Kunci Alternatif (Alternate Key)

Kunci alternatif adalah kunci kandidat yang tidak dipakai sebagai kunci primer. Kunci alternatif ini sering digunakan untuk kunci pengurutan misalnya dalam laporan.

Kunci Tamu (Foreign Key)

Kunci tamu adalah satu atribut aatau satu set minimal atribut yang melengkapi satu hubungan yang menunjukkan ke induknya. kunci tamu ditempatkan pada entity anak dan sama dengan kunci primer induk yang direlasikan. Hubungan antara entity induk dengan anak adalah hubungan satu lawan banyak (one to many relationship).

Bentuk Tidak Normal

• Berupa data yang diterima, tanpa membaginya kedalam tabel-tabel yang ditentukan, contoh :

Seorang pegawai memiliki : nomor_pegawai, nama_pegawai, nomor_klien, nama_klien, alamat_klien, keperluan_klien

Satu orang pegawai mungkin akan melayani lebih dari 1 orang klien.

no_pegawai                 nama_pegawai                        no_klien          nama_klien

P27                                         Amir Udinsah                                 K01                 Rini Suwandi

K02                                        Edi Damhudi

K04                                        Fatwa Sari

P28                                         Kartika Amelia                            K03                 Robert Irwandi

K07                                       Veronica Suci

P29                                         Barkah                                           K05                 Gabriela Febrianti

P30                                        Mahendra                                     K06                 Siti Amiarti

K08                                         Sandi Sunardi

Bentuk Normal Pertama (1NF)

Bentuk Normal Pertama mempunyai ciri yaitu setiap data dibentuk dalam file flat, data dibentuk dalam satu record demi satu record dan nilai dari field berupa “atomic value”. Tidak ada set atribut yang berulang ulang atau atribut bernilai ganda (multi value). Tiap field hanya satu pengertian, bukan merupakan kumpulan data yang mempunyai arti mendua. Hanya satu arti saja dan juga bukanlah pecahan kata kata sehingga artinya lain.

no_pegawai                 nama_pegawai                        no_klien          nama_klien

P27                                          Amir Udinsah                             K01                      Rini Suwandi

P27                                          Amir Udinsah                             K02                      Edi Damhudi

P27                                         Amir Udinsah                              K04                      Fatwa Sari

P28                                         Kartika Amelia                             K03                      Robert Irwandi

P28                                         Kartika Amelia                             K07                     Veronica Suci

P29                                        Barkah                                              K05                     Gabriela Febrianti

P30                                       Mahendra                                        K06                      Siti Amiarti

P30                                       Mahendra                                         K08                     Sandi Sunardi

Bentuk Normal Kedua (2NF)

• Adalah bentuk yang mensyaratkan bahwa relasi harus sudah dalam bentuk 1NF dan tidak mengandung dependensi parsial.

• Cara untuk menghilangkan dependensi parsial adalah :

– Ubahlah setiap dependensi parsial menjadi sebuah relasi, dengan kunci primernya adalah determinannya.

– Ubahlah dependensi yang terkait langsung dengan kunci primer sebagai relasi tersendiri dan kunci primernya adalah kunci primer dalam relasi semula

no_pegawai                 nama_pegawai

P27                                  Amir Udinsah

P28                                  Kartika Amelia

P29                                   Barkah

P30                                 Mahendra

no_klien          nama_klien

K01                 Rini Suwandi

K02                 Edi Damhudi

K03                 Robert Irwandi

K04                 Fatwa Sari

K05                 Gabriela Febrianti

K06                 Siti Amiarti

K07                 Veronica Suci

K08                 Sandi Sunardi

Bentuk Normal ketiga (3NF)

• Bentuk 3NF adalah dengan syarat, sudah berada dalam bentuk normal kedua dan tidak mengandung dependensi transitif

• Dependensi transitif didekomposisi relasinya dengan cara sebagai berikut :

– Bentuk relasi yang mewakili dependensi fungsional yang tidak melibatkan kunci primer

dalam relasi semula, determinannya menjadi kunci primer relasi yang dibentuk.

no_pegawai                 no_klien

P27                              K01

P27                              K02

P27                              K04

P28                              K03

P28                              K07

P29                              K05

P30                              K06

P30                              K08


0 Responses to “perancangan basis data”



  1. Tinggalkan sebuah Komentar

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s




Desember 2016
S S R K J S M
« Jun    
 1234
567891011
12131415161718
19202122232425
262728293031  

Bulan


%d blogger menyukai ini: