Senin, 02 Februari 2009

Normalisasi Data

Normalisasi Data

Sebenarnya perancangan basis data itu sangat penting dan perlu, agar bisa memiliki basis data yang kompak dan efisien. Dalam merancang basis data, dapat dilakukan dengan cara sebagai berikut:

1. Menerapkan Normalisasi terhadap struktur table yang telah di ketahui

2. atau langsung membuat model Entitiy-Relationship

Normalisasi sendiri merupakan cara pendekatan lain dalam membangun desain logik basis dan relasionalyang tidak secara langsung berkaitan dengan model data, tetapi malah lebih ke penerapan sejumlah aturan dan criteria.

Normalisasi basis data meliputi istilah baru seperti: Atribut, Key, Domain dan ketergantungan fungional.

Atribut Table (Table Attribute)

Atribut sendiri biasanya identi dengan pemakaian kolom data, karena memudahkan kita dalam menelaah kajian data yang sudah di sediakan. Istilah atribut biasanya di gunakan dalam perancangan basis data dan mempunyai fungsi sebagai pembentuk karakteristik yang berinteraksi dengan pada sebuah table.

Key dan Atribut Deskriptif

Key adalah gabungan dari beberapa atribut yang dapat membedakan semua baris data dalam table yang secara unik.

Ada 3 macam key dalam basis data, a.l:

1. Super-key => Key ini dapat membedakan setiap baris data dalam sebuah table.

2. Candidate-Key => Key yang memiliki atribut minimal yang dapat membedakan setiap baris data dalam setiap table.

3. Primary-Key => Key yang menjadi utama dalam setiap basis data yang ada dan dalam table.

Model Data

Model Data

Model??

Apa yang tersirat dalam benak kita apabila mendengar kata model..??? Pasti kita memikirkan sesuatu yang nampak,berwujud dan bernilai mutu, tetapi model di dalam basis data tersebut adalah model dalam menampilkan sebuah table yang mudah di mengerti oleh si pembaca table tersebut.

Dapat di simpulkan bahwa model data dalm basis data adalah penyajian bentuk keterangan dalam table yang di lakukan demi penyederhanaan penulisan dan dapat di gambarkan secara konseptual/dapat menunjukan makna dari data dan keterhubungannya dengan data yang lain.

Ada beberapa cara dalam menyajikan perancangan basis data yang secara umum dibagi menjadi 2, a.l:

1. Model Lojik Data Berdasarkan Objek (Object-Based Logical Models):

· Model keterhubungan Entitas (Entitiy-Relationship Model)

· Model Berorientasi Objek (Object-Oriented Model)

· Model Data Semantik (Semantic Data Model)

· Model Data Fungsional (Functional Data Model)

2. Model Lojik Data Berdasarkan Record (Record-Base Logical Models):

· Model Relasional (Relational Model)

· Model Hirarkis (Hierarchial Model)

· Model Jaringan (Network Model)

Model disini sangat di perlukan dalam artian setiap model memiliki karaktersitik yang berbeda dalam menyamapaikan/penyajiannya, apabila di setiap perusahaan tidak ada model dalam penggambarannya mungkin kita yang orang awam sulit untuk mengerti yang dimaksudkan. Contohnya saja di bagian Administarsi, apabila tidak ada model dalam bentuk Microsoft Exel mungkin kita masih melakukan pekerjaan yang membutuhkan waktu banyak, apa lagi perusahaan itu perusahaan yang “go public”, pasti seorang manager akan kewalahan. Makannya orang pomrograman menciptakan suatu program yang memudahkan untuk melakukan penginputan.

Itulah maksud lain dari model yang dibicarakan. Efisien dan Efektif dalam menggunakannya agar kita menjadi mengerti apa itu Model Data.

Atribut Dalam Basis Data

Atribut Dalam Basis Data

1. Atribut Sederhana dan Atribut Komposit

Atribut sederhana adalah atribut yang tidak dapat di kelompokan lagi atau di pisahkan lagi, sedangkan atribut komposit merupakan kebalikan dai atribut sederhana tetapi masing-masing memiliki makna.

Apabila dalam penerapannya tidak ada perubahan atau aktivitas pengolahan maka atribut komposit yang berperan penting agar dapat terus di pertahankan dalam struktur tablenya, apabila dalam penerapannya dibutuhkan perubahan maka atribut komposit dapt di komposisikan menjadi atribut sederhana.

2. Atribut Bernilai Tunggal Dan Bernilai Banyak

Atribut bernilai tunggal, maksudnya pada dasarnya atribut ini adalh atribut yang memiliki banyak satu nilai dari setiap baris datanya, sebagai contoh: misal alamat mhs punya dua, tetapi tetap satu yang di inputkan.

Sedangkan, atribut bernilai banyak ditujukan pada atribut yang bisa di inputkan lebih dari 1 atau banyak, tetapi dalam 1 jenis yang sama, sebagai contoh: mhs punya nmr Hp banyak maka semuanya bisa di inptkan.

3. Atribut Harus Bernilai dan Nilai Null

Ada data yang setiap isinya harus bernilai jadi tidak boleh di kosongkan dan tentunya table tersebut harus berisi data, ini disebut sebagai atribut yang bernilai. Sebagai contohnya: mhs yang mau masuk atau terdata pasti harus memilik NIM dan NIM dari setiap masing-masing berbeda.

Dan ada pula atribut yang boleh di kosongkan dalam arti table tersebut belum siap untuk di isi atau di inputkan datanya.

4. Atribut Turunan

Atribut turunan adalah atribut yang nilainya diperoleh dari pengolahan atau dapat diturunkan dari atribut table lain yang berhubungan. Atribut ini sebetulnya tidak di gunakan dalam sebuah table juga tidak apa-apa, karena nilainya bergantung pada nilai yang ada di atribut lainnya. Sebagai contoh: atribut angkatan bisa diliat dari atribut NIM, dimana dua karakter pertama dalam NIM menyatakan dua dijit bilangan Tahun masuknya mahasiswa.

Losessless-Join Decomposition

Losessless-Join Decomposition

Ini berfungsi untuk membentuk table yang baik dalam pembentukan table itu sendiri, apa bila table yang di dekomposisikan di gabungkan kembali dapat menghasikan table awal sebelum di dekomposisi. Ini di sebut dengan lossless-join decomposition/dekomposisi aman.

Dependency-Preservation

Ini merupakan langkh ke dua dalm membentuk table yang baik setelah langkah pertama berhasil. Disampaing itu juga, apa bila kita melakukan perubahan dalam table tersebut, maka hasil atau isinya tidak boleh merubah isinya maka dalam perubahan harus lah yang seEfisien mungkin.

Jadi apabila kita merubah isi table tersebut terus yang di hasilkan malah semakin tak karuan berarti kemungkinannya ada 2 hal, antara langkah pertama yang tidak benar atau malah di Pemeliharan ketergantungannya yang salah.

Boyce-Codd Normal Form(BCNF)

Langkah berikutnya adalah menyempurnakan hasil dari table yang di hasilkan. BCNF ini bisa dikatakan sebagai table universal, maksudnya table yang di hasilkan begitu detail sekali, tetapi kita juga harus meminimalisasikan redudansi agar mengurangi komposisi di memori.

Tetapi dengan adanya ini bukan malah mengasilkan table yang sempuran tetapi kita malah harus semakin teliti dalm menginputkan datanya, karena apabila salah satu dari table tersebut ada yang salah maka semuanya juga ikut salah.

Domain

Domain dan Tipe Data

Istilah Domain mungkin bisa di bilang nilai yang sering banyak muncul, itu dalam matematika tetapi dalam basis data tidak di artikan seperti itu. Domain memiliki banyak kesamaan dengan fungsi tipe data tersebut. Akan tetapi tipe data lebih merujuk pada kemampuan penyimpanan data.

Pada saat pekerjaan perancangan basis data yang perlu dilihat hanyalah domain nilai dari setiap atribut yang ada, kemudian penetapan tipe data baru akan relevan apabila di implementasikan dalam suatu basis data.

Normalisasi dengan ketergantungan Fungsional

Normalisasi dalam basis data dikatakan baik apabila setiap tablenya menjadi unsur pembentukan basis data dan tentunya dalm keadaan baik atau normal.

Ada 3 kriteria dalam pembentukan table yang normal, a.l:

1. Jika ada penguraian table, maka pengurainya harus dijamin aman (lossless-join Decompsition)

2. Terpeliharanya ketergantungan fungsional pada saat perubahan data (Dependency Preservation)

3. Tidak melanggar Boyce-Code Normal Form (BCNF)

Jika langkah yang ke 3 tidak terpenuhi maka masih bisa di bilang normal atau tidak melanggar bentuk normal.

Kriteria di atas merupakan criteria minimal untuk bisa dikatakan efisien bagi sebuah table. Disamping itu juga ada tahapan dalam bentuk normalisasi, a.l:

· Bentuk normal tahap pertama (First Normal Form)

· Bentuk normal tahap kedua (Second Normal Form)

· Bentuk normal tahap ketiga (Third Normal Form)

· Bentuk Normal tahap keempat (Fourth Normal Form)

Dari kriteri diatas normalisasi dapat kita terapkan pada setiap table yang ada, tetapi untuk menunjukannya ada penguraian table, akan lebih baik kalau semua table diteliti secata merata. Maka nanti bisa kita terapkan hingga bisa mendapatkan hasil yang normal.

Kamis, 22 Januari 2009

Gambar ERD


Urutan Dalam Membuat ERD


Sebenarnya dalam membuat ERD itu mudah, yang penting bagaimana kita tahu dan mengerti urutan-urutan dalam membuat ERD.

Kalau sudah paham pasti mudah. Di bawah ini ada urutan dalam membuat gambar ERD.

Ada langkah-langkahnya untuk bisa mengerti akan ERD, a.l:

  1. Menentukan Entitas : maksudnya, Menentukan peran, kejadian, lokasi, hal nyata dan konsep di mana pengguna akan menyimpan data.

  2. Menentukan Relasi : maksudnya, tentukan hubungan antara pasangan entitas menggunakan matrikas relasi.

  3. Gambar ERD sementara : maksudnya, Entitas digambarkan dengan kotak dan relasi dengan garis yang menghubungkan entitas.

  4. Isi Kardinalitas : maksudnya, menentukan jumlah kejadian dari setiap entitas dan entitas yang berhubungan.

  5. Tentukan Kunci Utama : maksudnya, mengidentifikasikan atribut dan satu kejadian pada masing-masing entitas.

  6. Gmbr ERD berdasarkan Kunci : maksudnya, gunakan Primary key dan kunci tamu pada setiap entitas dan tidak menggunakan Many-to-Many.

  7. Menentukan Atribut : maksudnya, tuliskan field-field yang di perlukan oleh system.

  8. Pemetaan Atribut : maksudnya, pasang-pasangkan setiap atribut dengan entitasnya masing-masing.

  9. Gmbr ERD dengan Atribut : maksudnya, menambah entitas yang ditemukan di langkah ke 8 dan mengatur ERD dari langkah 6.

  10. Periksa Hasil : maksudnya, sudah sesuai belum system yang di bangun dengan ERD nya.

Senin, 12 Januari 2009

Key dan atribut


Pengenalan Key dan Atribut dalam

Sistem Basis Data


Ada beberapa ketentuan dalam menggunakan key di Sistem Basis Data. Kita harus mengetahui mana yang Primary Key, Kandidat Key ataupun Super Key.


3 macam Key di dalam Sistem Basis Data, a.l:

  1. Primary Key : Kunci yang menjadi tokoh utama dalam sebuah pemrograman. Bisa jg dikatakan sebagai kunci utama dari sebuah table.

  2. Kandidat Key : Kunci/atribut minimal. Maksudnya, bahwa kunci tersebut adalah kunci pengganti dari Primary trsb, jadi setidaknya dapat membedakan dari setiap baris data dalam sebuah table secara unik.

  3. Super Key : Kunci yang menunjang adanya Primary Key di dalam sebuah Basis Data, bisa juga di katakana sebagai kuci yang harus ada Primarynya,kalau tidak ada kunci utama maka tidak ada Kandidat Key nya.


Ada juga atribut yang melengkapi dari adanya Key-key di atas, a.l:

  1. Deskriptif : maksudnya menjelaskan atribut-atribut yang ada, agar semua yang di jelaskan menjadi lebih jelas.

  2. Turunan : Dari atribut tersebut mempunyai turunan atau atribut yang menjadi atribut bantuan u/ lebih memperjelas lagi yang di maksud.

  3. Bernilai tinggi : mempunyai nilai yang bernilai lebih tinggi dari atribut-atribut yang di atas.

  4. Bernilai banyak : mempunyai nilai banyak.

  5. Sederhana : maksudnya punya arti yang sederhana tapi bisa membantu atribut yang lainnya.


Itu macam dari atribut yang ada serta Key yang membantunya.