Anda di halaman 1dari 20

Analisis Sistem Modern dan Desain Edisi keempat

Bab 10

Merancang Basis Data


Tujuan Pembelajaran

Tetapkan persyaratan desain basis data utama.


Jelaskan peran desain database dalam proses pengembangan IS.
Ubah E-R atau diagram kelas menjadi hubungan yang dinormalisasi.
Gabungkan relasi yang dinormalisasi dari tampilan pengguna yang terpisah menjadi
seperangkat hubungan yang terstruktur dengan baik.
Pilih format penyimpanan untuk bidang.
Menerjemahkan hubungan yang terstruktur dengan baik ke dalam tabel basis data.
Jelaskan kapan harus menggunakan berbagai jenis organisasi file.
Jelaskan tujuan dan penggunaan indeks yang sesuai.

Desain Basis Data Logis


 Berdasarkan model data konseptual
 Empat langkah utama
1. Kembangkan model data logis untuk setiap antarmuka pengguna yang diketahui
untuk aplikasi menggunakan prinsip normalisasi.
2. Menggabungkan persyaratan data yang dinormalisasi dari semua antarmuka
pengguna menjadi satu model basis data logis terkonsolidasi (integrasi tampilan).
3. Menerjemahkan model data E-R konseptual untuk aplikasi ke dalam persyaratan data
yang dinormalisasi.
4. Bandingkan desain basis data logis gabungan dengan model E-R yang telah
diterjemahkan dan hasilkan satu model basis data logis akhir untuk aplikasi tersebut.

Desain Basis Data Fisik


 Berdasarkan hasil desain database logis
 Keputusan penting
1. Memilih format penyimpanan untuk setiap atribut dari model database logis
2. Mengelompokkan atribut dari model database logis ke dalam catatan fisik
3. Mengatur rekaman terkait dalam memori sekunder (hard disk dan pita magnetik)
sehingga catatan dapat disimpan, diambil, dan diperbarui dengan cepat
4. Memilih media dan struktur untuk menyimpan data agar akses lebih efisien

Hasil Kerja dan Hasil

 Desain basis data logis


 harus memperhitungkan setiap elemen data pada input atau output system
 hubungan yang dinormalisasi adalah hasil utama
 Desain basis data fisik
 mengubah relasi menjadi tabel basis data

Model Database Relasional

Database Relasional: data direpresentasikan sebagai seperangkat tabel terkait (atau


hubungan)
Relasi: tabel data dua dimensi yang diberi nama. Setiap relasi terdiri dari seperangkat
kolom bernama dan jumlah baris tanpa nama yang berubah-ubah
Relasi Terstruktur dengan Baik: relasi yang berisi jumlah redundansi minimum dan
memungkinkan pengguna untuk menyisipkan, memodifikasi, dan menghapus baris tanpa
kesalahan atau ketidakkonsistenan

Properti suatu Relasi

 Entri dalam sel sederhana.


 Entri dalam kolom berasal dari set nilai yang sama.
 Setiap baris unik.
 Urutan kolom dapat dipertukarkan tanpa mengubah arti atau penggunaan relasi.
 Baris dapat dipertukarkan atau disimpan dalam urutan apa pun.
Kunci Utama

 Kunci utama
 Atribut yang nilainya unik di semua kemunculan suatu hubungan.
 Semua relasi memiliki kunci utama.
 Beginilah cara baris dipastikan unik.
 Kunci primer dapat melibatkan atribut tunggal atau terdiri dari beberapa atribut.

Relasi Terstruktur dengan Baik

Tidak ada redundansi, dan data berkaitan dengan satu entitas, seorang karyawan

Relasi yang Tidak Terstruktur

Redudansi, karena data berkaitan dengan dua entitas, karyawan, dan kursus yang mereka ambil

Normalisasi

 Proses mengubah struktur data yang kompleks menjadi struktur data yang sederhana dan
stabil
 Bentuk Normal Pertama (1NF)
 Baris unik
 Tidak ada atribut multinilai
 Semua relasi ada di 1NF

Hubungan Normalisasi

Redudansi dihapus
dengan
membaginya
menjadi dua
hubungan yang
terpisah

Ketergantungan dan Penentu Fungsional

 Ketergantungan fungsional
 Hubungan khusus antara dua atribut. Untuk relasi yang diberikan, atribut B secara
fungsional bergantung pada atribut A, untuk setiap nilai valid A, nilai A secara unik
menentukan nilai B
 Determinant: atribut yang menentukan nilai atribut lainnya
 Semua kunci utama adalah penentu
 Notasi simbolik:
 AB
 A adalah penentu
 B secara fungsional tergantung pada A

Mengidentifikasi Ketergantungan dan Penentu Fungsional

 Ketergantungan fungsional bukan ketergantungan matematika.


 Contoh (atau sampel data) dalam suatu hubungan tidak membuktikan adanya
ketergantungan fungsional.
 Pengetahuan tentang domain masalah adalah metode yang paling dapat diandalkan untuk
mengidentifikasi ketergantungan fungsional.

Bentuk Normal Kedua (2NF)

Suatu relasi berada dalam bentuk normal kedua (2NF) jika salah satu dari kondisi berikut ini
berlaku:
Kunci utama hanya terdiri dari satu atribut
Tidak ada atribut kunci non-primer dalam hubungan
Setiap atribut kunci non-primer bergantung secara fungsional pada set lengkap atribut kunci
primer

Konversi ke Bentuk Normal Tinggi

 Untuk mengkonversi relasi menjadi 2NF atau 3NF, dekomposisi relasi menjadi relasi
baru menggunakan atribut, yang disebut determinan, yang menentukan atribut lainnya.
 Penentu menjadi kunci utama dari hubungan baru.

1NF tetapi tidak 2NF

EMPLOYEE2 (Emp_ID, Name, Dept, Gaji, Kursus, Date_Completed)


Ketergantungan fungsional:
Emp_ID  Nama, Departemen, Gaji Ketergantungan kunci parsial
Emp_ID, Kursus  Date_Completed

2NF (sebenarnya, juga 3NF)

EMPLOYEE1 (Emp_ID, Name, Dept, Gaji) EMPCOURSE (Emp_ID, Kursus, Date_Completed)

Ketergantungan fungsional: Ketergantungan fungsional:

Emp_ID Customer_Name, SalesPerson Emp_ID, Kursus  Date_Completed

Bentuk Normal Ketiga (3NF)

 Suatu relasi berada dalam bentuk normal ketiga (3NF) jika relasinya dalam bentuk
normal kedua (2NF) dan tidak ada dependensi fungsional (transitif) antara dua (atau
lebih) atribut kunci nonprimer.

2NF tetapi tidak 3NF


SALES (Customer_ID, Customer_Name, SalesPerson, Region)

Ketergantungan fungsional:

1. Customer_ID  Customer_Name, Sales Person, Region


2. Sales Person  Wilayah transitive

Dikonversi menjadi 3NF

SALES1 (Customer_ID, Customer_Name,


SPERSON (Sales Person, Region)
SalesPerson)

Ketergantungan fungsional: Ketergantungan fungsional:

Customer_IDCustomer_Name, SalesPerson Sales Person  Wilayah

Ketergantungan Fungsional dan Kunci Utama

 Kunci asing
 Atribut yang muncul sebagai atribut kunci non-primer dalam satu relasi dan sebagai
atribut kunci primer (atau bagian dari kunci utama) dalam relasi lain
 Integritas referensial
 Batasan integritas yang menetapkan bahwa nilai (atau keberadaan) atribut dalam satu
relasi bergantung pada nilai (atau keberadaan) atribut yang sama dalam relasi lain
Contoh Kunci Asing

Kunci Asing
 Kunci asing membangun hubungan satu-ke-banyak antara SPERSON (satu) dan SALES1
(banyak).
 Tidak ada nilai SalesPerson di SALES1 yang tidak ada di SPERSON (integritas
referensial).

Mengubah Diagram E-R menjadi Hubungan

 Berguna untuk mengubah model data konseptual menjadi seperangkat hubungan yang
dinormalisasi
 Langkah
 Mewakili entitas
 Mewakili hubungan
 Normalisasi hubungan
 Gabungkan relasi

Entitas yang Mewakili

 Setiap entitas reguler ditransformasikan menjadi relasi.


 Pengidentifikasi tipe entitas menjadi kunci utama dari hubungan yang sesuai.
 Kunci utama harus memenuhi dua kondisi berikut.
a. Nilai kunci harus secara unik mengidentifikasi setiap baris dalam relasi.
b. Kuncinya harus nonredundant.
Mewakili Hubungan

 Biner 1: N Hubungan
 Tambahkan atribut kunci primer (atau atribut) entitas di satu sisi hubungan sebagai
kunci asing dalam hubungan di sisi kanan
 Satu sisi bermigrasi ke banyak sisi.
 Biner atau Unary 1: 1
 Tiga opsi yang memungkinkan
a. Tambahkan kunci primer A sebagai kunci asing B.
b. Tambahkan kunci primer B sebagai kunci asing A.
c. Kedua hal di atas.
Mewakili Hubungan (lanjutan)

 Hubungan Biner dan Tinggi M: N


 Buat relasi lain dan sertakan kunci utama dari semua relasi sebagai kunci utama dari
relasi baru.
Mewakili Hubungan (lanjutan)

 Unary 1: N Hubungan
 Hubungan antara instance dari tipe entitas tunggal
 Gunakan kunci asing rekursif
Kunci asing dalam relasi yang merujuk nilai kunci primer dari relasi yang sama.

 Unary M: N Hubungan
 Buat relasi terpisah.
 Kunci primer dari relasi baru adalah gabungan dari dua atribut yang keduanya mengambil
nilainya dari kunci primer yang sama.
EMPLOYEE (Emp_ID, Nama, Tanggal Lahir, Manajer_ID

ITEM (Item_Number, Name, Cost)


ITEMCOMPONENT(Item_Number, Component_Number, Quatity)
Menggabungkan Hubungan (Lihat Integrasi)

 Tujuannya adalah untuk menghapus hubungan yang berlebihan


 Lihat Masalah Integrasi
Sinonim
 Dua nama berbeda digunakan untuk atribut yang sama
 Saat menggabungkan, dapatkan persetujuan dari pengguna untuk satu nama standar
Homonim
 Nama atribut tunggal yang digunakan untuk dua atau lebih atribut yang berbeda
 Diatasi dengan membuat nama baru
Ketergantungan antara nonkeys
 Ketergantungan dapat dibuat sebagai hasil dari integrasi tampilan
 Untuk menyelesaikannya, relasi baru harus dinormalisasi

File Fisik dan Desain Basis Data

 Informasi berikut diperlukan:


 Hubungan yang dinormalisasi, termasuk perkiraan volume
 Definisi setiap atribut
 Deskripsi di mana dan kapan data digunakan, dimasukkan, diambil, dihapus, dan
diperbarui (termasuk frekuensi)
 Harapan atau persyaratan untuk waktu respons dan integritas data
 Deskripsi teknologi yang digunakan untuk mengimplementasikan file dan database

Merancang Bidang

 Bidang
 Unit terkecil dari data aplikasi bernama yang dikenali oleh perangkat lunak system
 Atribut dari relasi akan direpresentasikan sebagai bidang
 Tipe data
 Skema pengkodean yang diakui oleh perangkat lunak sistem untuk mewakili data
organisasi
 Memilih tipe data
Empat tujuan
 Minimalkan ruang penyimpanan
 Sajikan semua kemungkinan nilai bidang
 Meningkatkan integritas data lapangan
 Mendukung semua manipulasi data yang diinginkan di lapangan
Bidang yang dihitung
 Bidang yang dapat diturunkan dari bidang basis data lainnya

Metode Pengendalian Integritas Data

 Nilai Default
Nilai yang akan diasumsikan oleh suatu bidang kecuali jika nilai eksplisit dimasukkan untuk
bidang itu

 Kontrol Rentang
Membatasi rentang nilai yang bisa dimasukkan ke dalam bidang

 Integritas referensial
Batasan integritas yang menetapkan bahwa nilai (atau keberadaan) atribut dalam satu relasi
bergantung pada nilai (atau keberadaan) atribut yang sama dalam relasi lain

 Nilai Null
Nilai bidang khusus, berbeda dari 0, kosong, atau nilai lainnya, yang menunjukkan bahwa
nilai untuk bidang tersebut tidak ada atau tidak diketahui
Merancang Tabel Fisik

 Database relasional adalah seperangkat tabel terkait


 Tabel Fisik
 Kumpulan baris dan kolom yang ditentukan yang menentukan bidang di setiap baris tabel
 Tujuan Desain
Penggunaan penyimpanan sekunder (ruang disk) yang efisien
 Disk dibagi menjadi beberapa unit yang dapat dibaca dalam satu operasi mesin.
 Ruang digunakan paling efisien ketika panjang fisik dari sebuah baris tabel terbagi
hampir merata dengan unit penyimpanan.
Pemrosesan data yang efisien
 Data diproses secara paling efisien bila disimpan bersebelahan di memori sekunder.

Denormalisasi

 Proses pemisahan atau menggabungkan hubungan yang dinormalisasi menjadi tabel fisik
berdasarkan afinitas penggunaan baris dan bidang
 Partisi
Kemampuan untuk membagi tabel menjadi beberapa bagian terpisah
Oracle 9i mengimplementasikan tiga jenis
 Jarak
 Hash (campuran)
 Gabungan
 Mengoptimalkan operasi tertentu dengan mengorbankan orang lain

Kapan Mendenormalisasi

Tiga situasi umum di mana denasionalisasi dapat digunakan


1. Dua entitas dengan hubungan satu-ke-satu
2. Hubungan banyak-ke-banyak dengan atribut nonkey
3. Data referensi
Merancang Tabel Fisik

 Organisasi File
Suatu teknik untuk mengatur secara fisik catatan suatu file
Tujuan untuk memilih organisasi file
1. Pengambilan data cepat
2. Throughput tinggi untuk memproses transaksi
3. Penggunaan ruang penyimpanan yang efisien
4. Perlindungan dari kegagalan atau kehilangan data
5. Meminimalkan kebutuhan untuk reorganisasi
6. Mengakomodasi pertumbuhan
7. Keamanan dari penggunaan yang tidak sah

Organisasi File Sekuensial

Organisasi file tempat baris


disimpan secara berurutan sesuai
dengan nilai kunci primer

Organisasi File Terindeks

Organisasi file tempat baris


disimpan baik secara berurutan atau
tidak dan indeks dibuat yang
memungkinkan perangkat lunak
untuk menemukan baris individual

Indeks: Tabel yang digunakan untuk


menentukan lokasi baris dalam file
yang memenuhi beberapa kondisi
Pedoman untuk Memilih Indeks

 Tentukan indeks unik untuk kunci utama setiap tabel.


 Tentukan indeks untuk kunci asing.
 Tentukan indeks untuk bidang nonkey yang direferensikan dalam kualifikasi, pengurutan
dan pengelompokan perintah untuk tujuan pengambilan data.

Organisasi File Hashed

Organisasi file di mana alamat


untuk setiap baris ditentukan
menggunakan algoritma
Ringkasan

 Dalam bab ini Anda belajar cara:


1. Tetapkan persyaratan desain basis data utama.
2. Jelaskan peran desain database dalam proses pengembangan IS.
3. Ubah E-R atau diagram kelas menjadi hubungan yang dinormalisasi
4. Gabungkan relasi yang dinormalisasi dari tampilan pengguna yang terpisah menjadi
seperangkat hubungan yang terstruktur dengan baik.
5. Pilih format penyimpanan untuk bidang.
6. Menerjemahkan hubungan yang terstruktur dengan baik ke dalam tabel basis data.
7. Jelaskan kapan harus menggunakan berbagai jenis organisasi file.
8. Jelaskan tujuan dan penggunaan indeks yang sesuai.

Anda mungkin juga menyukai