Kamis, 18 Desember 2014

NORMALISASI DAN ORGANISASI DATA



2.1 Pengertian Normalisasi
Definisi Normalisasi adalah suatu teknik untuk mengorganisasi data ke dalam tabel-tabel  untuk memenuhi kebutuhan pemakai di dalam suatu organisasi.
Normalisasi adalah suatu proses memperbaiki/membangun data dengan model data relasional dan secara umum lebih tepat di koneksikan dengan data model logical. Normalisasi adalah proses pengelompokan data ke dalam bentuk tabel atau relasi atau file untuk menyatakan entitas dan hubungan mereka, sehingga terwujud satu bentuk basis data yang mudah untuk di modifikasi.
            Normalisasi adalah suatu proses untuk mengidentifikasi tabel kelompok atribut yang memiliki ketergantungan sangat tinggi antara satu atribut dengan aribut lainnya.
Normalisasi bisa di sebut juga sebagai proses pengolompokan atribut-atribut dari suatu relasi sehingga membentuk “Well Stuructured Relation”.
Well Stuructured Relation adalah sebuah relasi yang kerangkapan datanya sedikit (Minimum Amount Of Redudancy), serta memberikan kemungkinan bagi pemakai untuk melakukan  insert, Delete, Modify terhadap baris-baris data pada relasi tersebu,yang tidak berakibat terjadinya error atau inconsistency data yang disebabkan oleh operasi-operasiyang di berikan oleh pemakai.
2.2 Tujuan Normalisasi
1.     Untuk menghilangkan kerangkapan data.
2.     Untuk mengurangi kompleksitas.
3.     Untuk mempermudah pemodifikasian data.

2.3 Syarat perlunya normalisasi:
a)      Fleksibilitas
Struktur database harus menunjang semua cara untuk menampilan data, sehingga ketika user menjalankan aplikasi dan meminta sesuatu dalam datbase, database harus dapat berjlan memenuhi permintaan user.
b)     Integritas data
Semua data dalam database yang berkaitan harus terhubung dalam suatu relationship. Sehingga ketika suatu data berubah,maka semua data yang berkaitan dengan data tersebut harus dapat berubah secara otomatis.
c)      Efficiency
Pada database, ukuran suatu database merupakan hal yang penting. Maka dalam database, kita harus mengurangi redudansi data yang bisa menyebabkan ukuran databse membengkak.
d)     Menghindari modification anomaly
Desain database yang baik menyajikan suatu keyakinan bahwa ketika user melakukan perubahan dalam database, maka tidak terjadi hal yang tidak diinginkan.

2.4 Proses Normalisasi
1.     Data diuraikan dalam bentuk tabel, selanjutnya  dianalisis berdasarkan persyaratan tertentu ke beberapa tingkat.
2.     Apabila tabel yang diuji belum memenuhi persyaratan tertentu, maka tabel tersebut perlu dipecah menjadi beberapa tabel yang lebih sederhana sampai memenuhi bentuk yang optimal.
2.5 Tahapan Normalisasi
1.   Bentuk normalisasi pertama (1NF)
Bentuk normal pertama adalah suatu bentuk relasi dimana atribut bernilai panjang(multifalues attribute) telah dihilangkan sehingga kita akan menjumpai nilai tunggal( mungkin saja nilai null) pada perpotongan setiap baris. Bentuk normal pertama tidak membutuhkan informasi tambahan seperti informasi ketergantungan fungsional. Bilangan bulat (Integer) umumnya sering diasumsikan atau mix. 
Himpunan integer bisa dikatakan bukan nilai atau milik jika padanya bisa dilakukan pembagian lebih lanjut menjadi unit-unit yang lebih kecil. Misalnya, nilai NIM_Mahasiswa bisa dinyatakan sebagai bilangan bulat (integer) namun bisanya bisa di bagi-bagi menjadi digit-digit yang menunjukkan tahun masuk mahasiswa yang bersangktan, jurusan serta nomor urutannya di suatu jurusan dalam suatu fakultas tertentu. Dalam kasus ini nilai built yang bersangkatan tidak atomis
Perancangan Basis Data yang Buruk
Hal-hal yang mungkin menjadi sumber kasalahan pada perancangan basis data yang buruk. Beberapa karakteristk dari perancangan basis data yang  buruk yaitu:
1.     Perulang-perulangan informasi (redundansi).
2.     Ketidakkonsistanan data.
3.     Ketidakmampuan penguna atau program aplikasi untuk mendapatkan informasi yang dibutuhkan.
Tabel Denda Buku (unnormal)
NIM
Kode fakultas
Fakultas
Judul buku
Jumlah Denda
120213314478
1
Sastra
Bahasa indonesia
1000



Toefl
1500



Mandarin
3000
100213314485
4
Teknik
Konstuksi
4000
102311338899
5
Ekonomi
Manajemen keuangan
2500

Suatu relasi dikatakan sudah memenuhi Bentuk Normal Kesatu bila setiap data bersifat atomik yaitu setiap irisan baris dan kolom hanya mempunyai satu nilai data. Pada tabel diatas tidak bersifat atomik NIM 120213314478 memiliki data lebih dari satu yaitu dengan jumlah denda 1000, 1500, dan 3000.

Tabel Denda (1NF)
NIM
Kode fakultas
Fakultas
Judul buku
Jumlah Denda
120213314478
3
Sastra
Bahasa indonesia
1000
120213314478
3
Sastra
Toefl
1500
120213314478
3
Sastra
Mandarin
3000
100213314485
1
Teknik
Konstuksi
4000
102311338899
2
Ekonomi
Manajemen keuangan
2500

Suatu relasi dikatakan sudah memenuhi Bentuk Normal Kesatu bila  setiap data  bersifat atomik yaitu  setiap irisan baris dan kolom  hanya mempunyai satu nilai data. Pada tabel diatas setiap irisan baris dan kolom  hanya mempunyai satu nilai data misal dengan NIM 120213314478, kode fakultas 3, fakultas Sastra, judul buku Bahasa Indonesia memiliki jumlah denda sebesar 1.000
Diagram Ketergantungan Fungsional

2.   Bentuk normal kedua (2NF)
Semua kebergantungan fungsional yang bersifat sebagian (Partial
Functional dependency) telah dihilangkan. Suatu reaksi berada di bentuk normal kedua (2NF) jika reaksi tersebut berada dalam bentuk normal pertama (Semua nilai atribut bernilai atomik) dan setiap anomik bukan kunci bergantung penuh ada kunci primer. Maka tidak ada atribut bukan kunci yang bergantung pada sebagian (tepi tidak seluruhya) kunci primer. Relasi yang berada dalam bentuk normal pertama akan menjadi bentuk normal kedua jika salah satu kondisi berikut terpenuhi.
a.    Kunci primer hanya mengandung satu atribut (seperti atribut NIP dalam relasi karyawan)
b.   Tidak ada atribut bukan kunci yang muncul pada relasi (sehingga semua atribut  pada relasi adalah komponen dari kunci primer).
c.    Setiap atribut bukan kunci bergantung penuh dengan himpunan / sekumpulan atribut pada kunci primer.
Tabel NIM-1 (2NF)
NIM
Kode Fakultas
Fakultas
120213314478
3
Sastra
100213314485
1
Teknik
102311338899
2
Ekonomi
Keterangan
Suatu relasi dikatakan sudah memenuhi Bentuk Normal Kedua bila relasi tersebut sudah memenuhi bentuk Normal kesatu, dan atribut yang bukan key sudah tergantung penuh terhadap keynya.
3.   Bentuk normal ketiga (3NF)
            Semua tergantungan transitif ( transitife depenfency) telah dihilangkan. Relasi berada dalam bentuk normal ketiga (3NF) jika berada dalam bentuk normal kedua dan tidak dijumpai ketergantungan transif. Kebergantungan transif dalam suatu relasi adalah ketrbegantungan fungsional antara dua atau lebih atribut bukan kunci

Tabel Kirim-3 (3NF)
NIM
Judul Buku
Jumlah Denda
120213314478
Bahasa indonesia
1000
120213314478
Toefl
1500
120213314478
Mandarin
3000
100213314485
Konstuksi
4000
102311338899
Manajemen keuangan
2500

Tabel NIM-2 (3NF)
NIM
Kode Fakultas
100213314485
1
102311338899
2
120213314478
3

Tabel NIM-3 (4NF)
Kode Fakultas
Fakultas
1
Teknik
2
Ekonomi
3
Sastra

Suatu relasi dikatakan sudah memenuhi Bentuk Normal ketiga bila relasi tersebut sudah memenuhi bentuk Normal kedua dan atribut yang bukan key tidak tergantung transitif terhadap keynya.
4. Bentuk normal Boyce-codd (BCNF)
Semua anormali yang tersisa dari hasil penyempurnaan kebergantungan fungsional sebelumnya telah dihilangkan. Ketika relasi memiliki lebih dari satu kandidat, anomaly-anomali seperti yang kita bahas sebelumnya masih kita jumpai, meskipun relasi yang bersangkutan sudah dalam bentuk normal yang ketiga (3NF).


 


NIM
Rumpun MK
Pembimbing
IP
123
Fisika
Stephen Hawking
4.0
123
Pemrograman
Bill Gates
3.3
456
Kimia
Avogadro
3.2
789
Musik
Sebastian Bach
3.7
678
Fisika
Stephen Hawking
3.5
Kunci primer untuk relasi Pembimbing_Mahasiswa adalah kunci omposit NIM dan Rumpun_Matakuliah. Maka, atribut-atribut Pembimbing dan IP secara fungsional bergantung pada kunci primer yang telah disebutkan. Gambar diatas merefleksikan bahwa seorang mahasiswa dapat mengambil lebih dari satu rumpun mata kuliah, dimana untuk setiap rumpun mata kuliah mahasiswa memilki satu pembimbing dan satu nilai IP.
5. Bentuk normalisasi keempat (4NF)
Semua ketergantungkan bernilai telah banyak dihilangkan. Ketika relasi berada dalam BCNF, kita tidak akan menemukan lagi anomali -anomali akibat kebergantungan fungsional. Bagaimanapun juga, anomali-anomali masih mungkin ditemukan karena keterbegantungan banyak nilai.

Matakuliah
Dosen
Buku Teks
Manajemen
Adi Nugroho
Abu Bahri
Aang Darman
Drucker
Peters
Manajemen Keuangan
Bernard Simamora
Jones
Chang
a)     Tabel matakuliah, dosen, dan buku teks.
PENAWARAN_MATAKULIAH
Matakuliah
Dosen
Buku Teks
Manajemen
Adi Nugroho
Drucker
Manajemen
Adi Nugroho
Peters
Manajemen
Abu Bahri
Drucker
Manajemen
Abu Bahri
Peters
Manajemen
Aang Darmana
Drucker
Manajemen
Aang Darmana
Peters
Manajemen Keuangan
Bernard Simamora
Jones
Manajemen Keuangan
Bernard Simamora
Chang
b)     Tabel Relasi BCNF

DOSEN
Matakuliah
Dosen
Manajemen
Adi Nugroho
Manajemen
Abu Bahri
Manajemen
Aang Darmana
Manajemen Keuangan
Bernard Simamora

BUKU_TEKS
Matakuliah
Buku Teks
Manajemen
Drucker
Manajemen
Peters
Manajemen
Jones
Manajemen Keuangan
Chang
c)     Relasi normal keempat (4NF)

Tabel-tabel diatas merupakan contoh langkah-langkah untuk
menghilangkan ketergantungan banyak nilai.

6. Bentuk Normal kelima (5NF)
Menghilangkan semua anomali-anomali yang tersisa. Bentuk normal 5NF terpenuhi jika tidak dapat memiliki sebuah lossless decomposition menjadi tabel-tabel yg lebih kecil. Jika 4 bentuk normal sebelumnya dibentuk berdasarkan functional dependency, 5NF dibentuk berdasarkan konsep join dependence. Yakni apabila sebuah tabel telah di-dekomposisi menjadi tabel-tabel lebih kecil, harus bisa digabungkan lagi (join) untuk membentuk tabel semula.
Jika data dalam database tersebut belum di normalisasi maka akan terjadi 3 kemungkinan yang akan merugikan sistem secara keseluruhan yaitu
1.     INSERT Anomali: situasi dimana tidak memungkinkan memasukkan beberapa jenis data secara langsung di database.
2.     DELETE Anomali: Penghapusan data yang tidak sesuai dengan yang diharapkan, artinya data yang harusnya tidak terhapus mungkin ikut terhapus.
3.     UPDATE Anomali: Situasi dimana nilai yang diubah menyebabkan inkonsistensi database, dalam artian data yang diubah tidak sesuai dengan yang diperintahkan atau yang diinginkan.
2.6 Organisasi Data
Organisasi data adalah teknik utuk menyusun rekaman-rekaman dalam berkas pada tempat penyimpanan sekunder (Secondary strorage) secara fisik. Dalam memilih pengorganisaian berkas pada basis data, kita perlu mempertimbangkan faktor yaitu (Hariyanto: 2004):
1.     Kecepatan panggilan data yang diperlukan
2.     Tingginya kebutuhan pemrosesan data masukan dan pemeliharaan transaksi.
3.     Efesiensi pengguna ruang penyimpanan.
4.     Perlindungan dari kehilangan data.
5.     Peminimalan kebutuhan pengorganisasian ulang (reorganisasi).
6.     Pengangkomodasi pertumbuhan organisasi dimasa yang akan datang.
7.     Perlindungan dari pengguna yang tidak berhak.
Organisasi data lebih canggih dapat ditelusur sebagai kombiasi organisasi-organisasi file dasar, yaitu:
1.   Organisasi Pile
            Pada pile data tidak dapat dianalisa dikatagorikan atau diharuskan
memenuhi definisi field atau ukuran field urutan record adalah kronolologis.
Rekord-rekord berfariasi panjangnya dan elemen-elemen dapat tidak perlu serupa.
Organisasi pile yaitu:
a.    Biasanya data ditumpuk-tumpuk secara kronologis
b.   Tidak ada ketkaitan antara ukuran file, record, dan blok
c.    Elemen data dapat berbeda-beda (berisi atribut dan nilai) data harus disimpan secara lengkap.

2.   Organisasi Sequential data
            Metode ini memberi dua perubahan terhadap organisai pile yaitu:
1.   Record-rekord data diurut dalam satu sekuent spesifik
2.   Atribut atribut data dikataorikan. Record berisi semua nilai data atribut dengan urutan dan posisi yang sama.
Deskripsi bentuk:
1.   Nama atribut tidak perlu ditulis di tiap record.
2.   Nama atribut hanya muncul di bagian deskripsi file .
3.   Rekord tersusun berdasarkan urutan tertentu.
4.   Setiap record mempuyai data atribut dalam urutan yang sama.

3.   Organisai Index sequential file
              Indeks berisi kumpulan isian (entry). Keseluruhan kapasitas indeks lebih kecil disbanding file data sehingga ruang pencarian ruang (search) menjadi lebih kecil. Indeks menjadi efektif ketika file sangat besar. Proses pencarian pada indeks yang besar dapat dibantu dengan pengindeksan terhadap indeks. Semakin tinggi level indeks semakin kecil kapasitasnya. Sifat rekursif pengindeksan berulang yang dapat dilakukan sistem komputer membedakan dari pengindeksan yang terdapat pada buku.
Terdapat dua jenis indeks , yaitu:
a.   Statis
Indeks diciptakan saat terorganisasi dan tidak berubah selama pembaharuan (uptodate). Rekord-rekord baru ditempatka ke overlow dan dikatakan dengan record sebelumya.
b.   Dinamis
Pada file berindeks dinamis, pembaharuan dilakkan di file utama. Karena record-rekord harus dicari lewat lewat indeks maka pengindekan harus dilakukan secara dinamis. Artinya: begitu terjadi pembaharuan (insert, update, delate) maka indeks pun diperbaharui mengikuti perubahan file utama.

4.   Organisasi Indexed file
Organisasi File sekuen berindeks adalah pengorganisaian dimana rekaman-rekaman bisa disimpan secara berurutan maupun tidak, dan indeks diciptakan sehingga pengorgansasian maupun  melakolsasi rekaman secara individual. File sekuen berindeks hanya menyediakan satu indeks, sementara pencarian informasi dapat dilakukan pada atribut-atribut lain selain atribut kunci utama. Pada file berindeks yang digeneralisasi (generalized indexed file), dimungkinkan mengindeks file dari satu cara. Indeks dibolehkan pada sembarang atribut bahkan semua atribut.
Perubahan terhadap file sekuen berindeks adalah:
1.   Semua konsep adalah jagar record.
2.   Konsep atribut utama tidak ada lagi.
3.   Tidak berurutan menurut indeks utama yang perlu dikelola.

5.   Organisasi Hashed file
Pengaksesan hash menggunakan suatu komputasi menghitung alamat untuk memperoleh record tertentu. Terdapat dua komponen pada hash yaitu:
1.   Ruang penyimpanan yang diroganisasikan menjadi m slot. Masing-masing slot berkapasitas menyimpan satu record.
2.   Komputasi (perhitungan) terhadap t yang memberikan satu alamat slot dari record yang diketahui kuncinya.
Pengaksesan langsung berlangsung cepat tapi tidak fleksibel. Hashing mentransformasi kunci melalui algoritma komputasi untuk mendapatkan alamat record. Pengaksesan hash cepat karena tidak terdapat operasi antara. Kelemahan metodeini adalah memaksa data ditempatkan mengikuti satu atribut kunci tunggal. Record-rekord pada hash menggunakan satu komputasi untuk memberikan alamat record dari kunci.

6.   Organisasi Multiring file
Organisasi berkas sekuen, sekuen berindeks dan hash berurusan dengan masalah penemukan record individu dengan cepat. Berkas cincin berorientasi pada pemrosesan yang efisien terhadap subset record-rekord. Subset itu didefinisasikan sebagai suatu kelompok record yang berisi satu nilai berisi satu nilai bersama. Pendekatan cincin banyak digunakan sistem basisdata. Subset-subset rekor secara eksplisit dirantai dengan menggunakan pointer-pointer. Rantai-rantai mendefinisikan urutan anggota-anggota subset.
Satu record dapat menjadi anggota beberapa subset. Tiap subset mempunyai record header yang merupakan asal rantai. Record header berisi informas-informasi mengenai record-rekord anggotanya. Record-rekord header untuk himpunan-himpunan subset dapat dikait dengan satu rantai.
Pada berkas cincin, semua record mempunyai stuktur serupa, tapi isi-isinya dan ukurannya akan merupakan fungsi cincin-cincin dimana record itu menjadi anggotanya. Berkas cincin dapat mempunyai sejumlah kategori record berbeda. Rekord-reord tidak identik dalam formatnya dan keanggotaan cincin begitu juga keanggotaan berkas harus diketahui sebelum pemrosesan.
Format record
1.      Format rekor bergantung kombinasi tipe cincin dimana record menjadi anggotanya
2.     Pasangan-pasangan atribut-nilai dapat mengidentifikasi sendiri, seperti pada berkas pile. Rekord itu akan mempunyai identifier  bertipe record.
3.     Record-rekord berjenis sama memiliki fieled-fieled yang sama.
4.     Fieled-fieled pointer untuk mengaitkan record-rekord ke cincin-cincinya.
5.     Fieled-fieled pointer dapat berisi A (null)
Record header
1.     Setiap cincin memiliki hearder.
2.     Header berfungsi
·       Bisa menjadi suatu titik masuk (entry point),
·       Bisa menjadi anggota cincin lain,
·       Bisa menjadi keduanya.
3.     Jika suatu cincin dimasuki untuk proses pencarian, maka titik masuk harus dicatat untuk menandai akhir dari pencarian.
4.     Menghilangkan redudansi.
Manipulasi cincin
1.     Pencariandengan satu argument dapat dilakukan dengan mudah.
2.     Pencarian dengan kombinasi banyak argumen, terhadap dua pendekatan
·       Pencarian pararel
·       Pencarian inisial (Bambang, 281:2004)


DAFTAR PUSTAKA
Hariyanto, Bambang. 2004. Sistem Manajemen Basisdata. Bandung : Informatika Bandung.

Nugroho, A. 2006. Perancangan dan Implementasi sistem Basis Data. Yogyakarta: Andi.




Tidak ada komentar:

Posting Komentar