Senin, 02 Desember 2019

Normalisasi

Normalisasi

1. Pengertian Normalisasi
        Normalisasi   merupakan   suatu   proses   untuk   mengubah   suatu   tabel   yang memiliki masalah tertentu ke dalam dua buah tabel atau lebih yang tidak lagi memiliki masalah tersebut (Abdul Kadir, 2008). Ada juga yang berpendapat normalisasi adalah proses   penyusunan   tabel¬-tabel   yang   tidak   redundan   (dobel),   yang   dapat menyebabkan  anomali  yaitu  proses  basis  data  yang memberikan  efek  samping  yang tidak  diharapkan (Misalnya  menyebabkan  data  tidak  konsisten atau  membuat  data hilang ketika data yang lain dihapus).
       Normalisasi  digunakan  sebagai  teknik  analisis  data  pada  database,  sehingga dapat diketahui apakah pembuatan tabel-tabel yang terelasi dalam database itu sudah baik.  Kondisi  sudah  baik  yaitu  suatu  kondisi  pada  saat  proses  insert,  update,  delete dan modifikasi pada satu atau beberapa atribut suatu tabel tidak berpengaruh terhadap integritas data yang lain dalam satu hubungan relasi database

2. Tujuan Normalisasi Database 
         Tujuan Normalisasi Database adalah untuk menghilangkan dan mengurangi redudansi data dan memastikan dependensi data (Data berada pada tabel yang tepat). Jika data dalam database tersebut belum di normalisasi maka akan terjadi 3 kemungkinan yang akan merugikan sistem secara keseluruhan. Anomali merupakan penyimpangan-penyimpangan atau error atau inkonsistensi data yang terjadi pada saat dilakukan proses delete, insert ataupun modify dalam suatu basis data.
Berikut ini adalah penjelasan dari delete, insert dan modify dalam suatu basis data :
   a. Insert Anomali
  • Insert Anomali yaitu Situasi dimana tidak memungkinkan memasukkan beberapa jenis data secara langsung di database. Adanya error atau kesalahan yang terjadi sebagai akibat dari operasi menyisipkan (insert) record pada sebuah relasi.
  • Penambahan matakuliah baru (CS-600) yang akan diajarkan, maka matakuliah tersebut tidak bisa di insert / disisipkan ke dalam Relasi Kuliah di atas sampai ada mahasiswa yang mengambil matakuliah tersebut.
   b. Delete Anomali 
  • Delete Anomali  yaitu Penghapusan data yang tidak sesuai dengan yang diharapkan, artinya data yang harusnya tidak terhapus mungkin ikut terhapus. pabila terdapat salah satu baris data dari transaksi faktur dihapus, sehingga menghilangkan informasi yang tidak ingin dihapus. Contoh:
  • Terdapat penghapusan data untuk transaksi nomor faktur F-007, sehingga data pada baris ketiga, keempat dan kelima dihapus. Hal ini termasuk ke dalam delete anomaly karena informasi mengenai kode barang PS-003 dengan nama barang “Pensil HB” akan ikut hilang akibat dari penghapusan pada transaksi F-007. Hal ini karena data mengenai barang PS-003 dengan nama barang “Pensil HB” hanya terdapat pada baris kelima. Selain itu delete anomaly juga terjadi karena informasi mengenai kode supplier S-002 dengan nama supplier “Enya” ikut hilang akibat dari penghapusan pada transaksi F-007. Hal ini terjadi karena data mengenai supplier S-002 dengan nama Supplier “Enya” hanya terdapat pada baris ketiga saja.
   c. Update Anomali 
        Update Anomali yaiut Situasi dimana nilai yang diubah menyebabkan inkonsistensi database, dalam artian data yang diubah tidak sesuai dengan yang diperintahkan atau yang diinginkan. Contohnya Pada tabel sebelumnya, Terjadi perubahan nama barang pada baris pertama, yaitu kode barang PS-001 semula nama barang “Pensil Warna” diubah / di-update menjadi “Pensil Warna-warni” namun untuk kode barang PS-001 pada baris ketiga dan baris kedelapan tidak dilakukan perubahan nama barang menjadi “Pensil Warna-warni”. Hal ini termasuk ke dalam update anomaly karena terdapat ketidakkonsistenan data pada kode barang PS-001, kode barang sama namun nama barang berbeda.

3. Konsep Ketergantungan Dalam Normalisasi
    Ketergantungan (dependency) merupakan konsep yang mendasari normalisasi. Dependency menjalankan hubungan antara atribut atau secara lebih khusus menjelaskan nilai suatu atribut yang menentukan nilai atribut lainnya. Dependency akan mencari acuan untuk pendekomposisian data ke dalam bentuk paling efisien.
   a. Functional Dependency
      Ketergantungan fungsional (functional dependency) adalah suatu kondisi dimana satu atribut atau beberapa atribut dari suatu relasi yang keberadaannya bergantung pada atribut lain. ketergantungan fungsional didefinisikan sebagai berikut:
      Suatu atribut Y mempunyai ketergantungan fungsional terhadap atribut X jika dan hanya jika setiap nilai X berhubungan dengan sebuah nilai Y.
      Definisi diatas biasanya dituangkan dalam bentuk notasi: X => Y 
      Artinya :        
      X secara fungsional tergantung Y
      Y secara fungsional menentukan X
   b. Dependency Transitive
   Ketergantungan transitive (dependency transitive) adalah ketergantungan secara fungsional suatu atribut kepada atribut lainnya melalui atribut yang lain pula.
   Misalnya R adalah relasi yang memiliki 3 atribut A, B, dan C yang memiliki ketergantungan fungsional:
      A => B
      B => C
      Artinya fungsional dependency => C disebut dependency transitive.
   c. Trivial Dependency
      Ketergantungan trivial (trivial dependency) terjadi apabila suatu relasi terdapat banyak set fungsional dependency, maka dapat dilakukan penghapusan trivial dependency.

4. Tahapan-tahapan Normalisasi
   Adapun penjelasan yang lebih detailnya adalah sebagai berikut :
   a. Unnormalized Form (UNF) / Bentuk Tidak Normal 
        Merupakan bentuk tidak normal berdarsarkan data yang diperoleh dan mengandung kerangkapan data. Kumpulan data yang akan direkam, tidak ada keharusan mengikukti format tertentu, dapat saja data tidak lengkap atau terduplikasi. Data dikumpulkan apa adanya.
   b. First Normal Form (1NF) 
       Pada tahap ini dilakukan penghilangan beberapa group elemen yang berulang agar menjadi satu harga tunggal yang berinteraksi di antara setiap baris pada suatu tabel, dan setiap atribut harus mempunyai nilai data yang atomic (bersifat atomic value). Atom adalah zat terkecil yang masih memiliki sifat induknya, bila terpecah lagi maka ia tidak memiliki sifat induknya. Syarat: - Tidak ada kolom multivalue - Tidak ada kolom dengan domain yang sama.
       Langkah pertama yang dilakukan pada Tabel Pelanggan Biaya (pada Tabel 2) tersebut adalah menghilangkan elemen data yang berulang dengan data-data Pelanggan yang sesuai pada setiap baris. Hasil dari tabel yang telah memenuhi bentuk normal pertama 
   c. Second Normal Form (2NF) 
       Entitas yang atribut non-primary key-nya hanya tergantung pada full primary key. Bentuk normal kedua didasari atas konsep full functional dependency (ketergantungan fungsional sepenuhnya) .
      Syarat: 
  • Bentuk data telah memenuhi kriteria bentuk normal kesatu. 
  • Atribute bukan kunci (non-key) haruslah memiliki ketergantungan fungsionla sepenuhnya (fully functional dependency) pada kunci utama / primary key. 
   d. Third Normal Form (3NF) 
      Walaupun relasi 2-NF memiliki redudansi yang lebih sedikit dari pada relasi 1-NF, namun relasi tersebut masih mungkin mengalami kendala bila terjadi anomaly peremajaan (update) terhadap relasi tersebut. Jika kita hanya mengupdate satu baris saja, sementara baris yang lainnya tidak, maka data di dalam database tersebut akan inkonsisten / tidak teratur. Anomaly update ini disebabkan oleh suatu ketergantungan transitif (transitive dependency). Kita harus menghilangkan ketergantungan tersebut dengan melakukan normalisasi ketiga (3-NF).
      Syarat: 
  • Bentuk data telah memenuhi kriteria bentuk normal kedua
  • Atribute bukan kunci (non-key) harus tidak memiliki ketergantungan transitif, dengan kata lain suatu atribut bukan kunci (non_key) tidak boleh memiliki ketergantungan fungsional (functional dependency) terhadap atribut bukan kunci lainnya, seluruh atribut bukan kunci pada suatu relasi hanya memiliki ketergantungan fungsional terhadap priamry key di relasi itu saja.

SQL (Structured Query Language)

SQL (Structured Query Language)

1. Sql (Structured Query Language)

   Sql (Structured Query Language) adalah sebuah Bahasa yang digunakan untuk mengakses  data dalam basis data relasional. Bahasa ini secara defacto merupakan bahasa standar yang digunakan dalam manajemen basis data relasional. Saat ini hampir semua server basis data yang ada mendukung bahasa ini untuk melakukan manajemen datanya.

2. Langkah-langkah membuat sql
   Langkah – Langkah untuk membuat sql sebagai berikut :

  •    Buka file PDM yang sudah jadi
  •    Kemudian pilih tab database
  •    Kemudian pilih generate database
  •    Kemudian ganti format menjadi sql, kemudian klik oke
3. Xampp

    XAMPP adalah perangkat luak bebas yang mendukung banyak sistem operasi, merupakan kompilasi dari beberapa program. Fungsinya adalah sebagai server yang berdiri sendiri (localhost), yang terdiri atas program Apache HTTP Server, MySQL database, dan penerjemah Bahasa yang ditulis dengan Bahasa pemograman PHP dan Perl.
    Nama XAMPP merupakan singkatan dari X (empat sistem operasi apapun), Apache, MySQL, PHP, Perl. Program ini tersedia dalam GNU General Public License dan bebas, merupakan web server yang mudah digunakan yang dapat melayani tampilan halaman web yang dinamis. Untuk mendapatkannya dapat mendownload langsung di web resminya. 

4. Phpmyadmin

    Phpmyadmin adalah perangkat lunak bebas yang ditulis dalam Bahasa pemograman PHP yang digunakan untuk menangani administrasi mysql melalui  Jejaring Jagat Jembar (World Wide Wide). Phpmyadmin mendukung berbagai operasi mysql, diantaranya (mengelola basis data, tabel-tabel, bidang (fields), relasi (relations), indeks, pengguna (users), perizinan (permissions), dan lain-lain). 

PDM (Physical Data Model)

PDM (Physical Data Model)



1. Pengertian Physical Data Model (PDM)
        PDM (Phsical Data Model) merupakan model yang menggunakan sejumlah tabel untuk menggambarkan data sertahubungan antara data-data tersebut. Setiap tabel mempunyai sejumlah kolom di mana setiap kolom memiliki nama yang unik. PDM merupakan gambaran secara detail basis data dalam bentuk fisik. Penggambaran rancangan PDM memperlihatkan struktur penyimpanan data yang benar pada basis data yang digunakan sesungguhnya 

2. Fungsi PDM 
     Perancangan PDM bertujuan untuk meningkatkan efisiensi dalam pemprosesan data yang mencakup :

  • Relasi yang sudah ternormalisasi, juga mencakup perhitungan kasar volume data yang akan disimpan.
  • Definisi dan deskripsi masing-masing atribut pada setiap entitas yang ada.
  • Deskripsi tentang kapan dan dimana data digunakan, meliputi langkah-langkah pemasukan data, pemanggilan, penghapusan serta pembaruan.
  • Kebutuhan akan waktu dalam mem-backup, recovery dan pemeliharaan integritas data.
  • Deskripsi teknologi (sistem database, DBMS) yang digunakan untuk mengimplementasikan data
3. Perbedaan CDM dan PDM 
   Ada sedikit perbedaan antara CDM dan PDM, seperti dibawah ini :
    1. CDM 
        Basis data yang berdasarkan pengumpulan data dan analisis. Pembuatan CDM adalah suatu tahap dimana kita melakukan proses indentifikasi dan analisa kebutuhan-kebutuhan data dan ini disebut pengumpulan data dan analisa. Untuk menentukan kebutuhan-kebutuhan suatu sistem database, kita harus mengenal terlebih dahulu bagian-bagian lain dari sistem informasi yang akan berinteraksi dengan sistem database. Tipe data bersifat general dan tidak spesifik. 
   2. PDM
    Perancangan database secara fisik Tipe data bersifat lebih khusus dan spesifik. Perancangan PDM merupakan representasi fisik/sebenarnya dari database. 

4. Langkah-langkah dalam membuat PDM
    Ada empat langkah yang dapat dilakukan saat ingin membuat PDM, yaitu sebagai berikut:

  •    Buka file CDM yang sudah jadi.
  •    Dari tools pilih Generate Physical Data Model, pilih DBMS yang akan digunakan.
  •    Setelah itu klik OK, PDM akan digunakan di generate secara otomatis.
  •    Tambahkan atribut pada tabel baru yang dihasilkan(jika ada).
5. Jenis-jenis objek dalam PDM

  •    Table
  •    View
  •    Reference

Normalisasi

Normalisasi 1. Pengertian Normalisasi         Normalisasi   merupakan   suatu   proses   untuk   mengubah   suatu   tabel   yang memi...