Anda di halaman 1dari 12

PERANCANGAN DATABASE

Database Management System


(DBMS) Dan Struktur Tabel
Pemilihan bagian dari struktur tabel secara tepat dan lengkap sangat
bergantung pada pemilihan Database Management System (DBMS), seperti
Nama Field, Tipe Data dan Ukuran Field. Adapun field-field yang sering
digunakan adalah sebagai berikut :
Data Angka : Numerik atau Alfanumerik (teks)
Alfanumerik adalah field yang berisi angka tapi tidak menunjukkan
adanya operasi aritmatika (penjumlahan, pengurangan, perkalian atau
pembagian). Penggunaan field alfanumerik akan lebih fleksibel dan
format tampilannya dapat diatur lebih mudah. Misal dalam tabel
Mahasiswa field NPM yang berisi data angka tidak menunjukkan suatu
operasi aritmatika, maka tipe data alfanumerik ini sanggat cocok untuk
mendefinisikan field NPM tersebut.

Data Numerik : Bilangan Bulat (integer) atau Bilangan Nyata (Real)


merupakan tipe data yang sering digunakan dalam Data Numerik,
dimana bilangan bulat (integer) mempunyai range -232 s/d 232-1 tanpa
ada nilai pecahan, sedangkan bilangan nyata (real) memungkingkan
menyimpan nilai pecahan. Misalnya field SKS dan Semester pada tabel
Mata Kuliah bisa kita definisikan menggunakan tipa data bilangan bulat
(integer), sedangkan field nil_uts atau nil_uas yang ada kemungkinan
adanya bilangan pecahan, maka bilangan nyata (real) yang cocok untuk
mendefinisikan field tersebut.
Data Bilangan Bulat (Integer) : Ada beberapa pilihan untuk data bilangan
bulat (integer) diantaranya : Byte dengan range nilai 0 s/d 255, Word
dengan range nilai 0 s/d 65535 dan Long Integer dengan range nilai
-2147483648 s/d 2147483647. Pemilihan tipe data tersebut sanggat
ditentukan oleh seberapa besar data yang akan disimpan oleh suatu field

Data Bilangan Nyata (Real) : Seperti halnya bilangan bulat, bilangan


nyata (real) terbagi menjadi Single (4 byte) yang dapat menampung
hingga 7 digit pecahan (1.5x10-45 s/d 3.4x1038) dan Double (8 byte)
yang mampu menampung hingga 15 digit pecahan (5x10 -324 s/d
1.7x10308). Perlu diperhatikan dalam pemilihan tipe data bilangan
adalah waktu akses dan media simpan yang diperluan, dimana data
integer memiliki waktu akses yang lebih cepat dan memerlukan media
simpan yang lebih kecil dibandingkan data real. Demikian juga tipe
single lebih cepat dibandingkan tipe double.
Data Uang : Jika dalam DBMS menyediakan pemilihan data
uang/currency, pemilihan data ini sangat membantu dalam field yang
menunjukkan nilai uang, dengan memakai tipe data ini akan
membantu dalam mengatur tampilan datanya. Misalnya pemisah
ribuan atau adanya pemakaian simbol mata uang.

Data Teks : Tipe data teks terbagi menjadi 2 (dua) bagian yaitu :
a. Ukuran Tetap (Fixed Character), jika data yang mempunyai panjang
karakter yang pasti atau pendek sebaiknya menggunakan tipe data
ini.
b. Ukuran Dinamik (Variable Character), jika data yang mempunyai
panjang karakter yang bervariasi atau sangat panjang sanggat cocok
menggunakan tipe data ini.
Misal Field NPM sanggat cocok menggunakan tipe data Fixed Character,
sedangkan untuk Nama_Mhs dan Alamat_Mhs sangat tepat jika
menggunakan Variable Character, karena bervariasinya ukuran datanya.

Indeks Dan Struktur Penyimpanan


Salah satu ciri basis data relasional adalah keberadaan key yang disamping
berfungsi untuk menjamin keunikan entitas dalam tabel juga akan menjadi
acuan (pengidentifikasi entitas) dalam melakukan pencarian atau
pengaksesan data. Pada tahap implementasi atribut-atribut dari entitas yang
kita tetapkan sebagai key akan direpresentasikan sebagai Indeks Primer
(Primary Index). Ada beberapa macam indeks yang dikenal dalam DBMS
yaitu :
A. Indeks Primer (Primary Index)
Dalam setiap tabel hanya mempunyai 1 (satu) indeks primer, adapun
kriteria indeks primer adalah sebagai berikut :
- Bersifat mandatory (data tidak boleh kosong)
- Bersifat Unik
- Mempunyai nilai yang lebih permanen
- Berukuran kecil (pendek)

B. Indeks Sekunder (Secondary Index)


Digunakan untuk mendukung indeks primer sehingga mempermudah /
mempercepat dalam pengaksesan suatu tabel. Tidak seperti indeks
primer yang hanya ada 1 (satu) untuk setiap tabel, indeks sekunder ini
bisa lebih dari satu dan tidak selalu bersifat unik. Pembentukkan indeks
sekunder haruslah berhati-hati, karena keberadaan indeks sekunder ini
akan membebani proses pengubahan data. Semua indeks sekunder
akan mengalami perubahan (di-reorganisasi) pada saat manipulasi
data (penambahan, pengubahan dan penghapusan).

Struktur Penyimpanan (Storage


Structure)
Struktur penyimpanan (storage structure) juga sangat berpengaruh dalam
kecepatan akses dan manipulasi data. Tabel yang berisi baris data
(row/record) yang mewakili setiap entitas/relasi dalam diagram E-R, maka
struktur penyimpanan berkaitan dengan cara penempatan (penyusunan)
baris data di setiap tabel. Secara umum setiap baris data akan disusun
secara sekuensial berdasarkan kedatangannya (kronologis). Penyusunan
baris data tersebut akan berdampak pada besar/kecilnya ruang
penyimpanan yang dibutuhan dan kecepatan pengaksesan data dalam
tabel.
Beberapa struktur penyimpanan yang disediakan oleh DBMS di antaranya :
Heap : Merupakan struktur penyimpanan yang paling sederhana. Dimana
setiap baris data disimpan berdasarkan kronologis penyimpanannya,
record pertama disimpan diposisi awal dan seterusnya.

Setiap penghapusan record, maka record sesudahnya menempati


record yang dihapus. Pencarian data sangat lamban karena
penelusurannya dilakukan dari posisi awal sampai posisi akhir.
Struktur penyimpanan Heap sanggat cocok untuk tabel yang
berukuran kecil dan jarang berubah
Hash : Merupakan struktur penyimpanan yang menempatkan baris data
berdasarkan alamat fisiknya yang diperoleh dari hasil perhitungan
(penggunaan fungsi Hashing) terhadap nilai key-nya. Jadi jika
sebuah baris data akan disimpan, maka DBMS akan menerapkan
fungsi tersebut
terhadap nilai key (field yang menjadi key) pada
baris tersebut. Hasilnya
adalah nilai yang menunjukkan alamat fisik
dimana baris data tersebut akan ditempatkan. Struktur
Penyimpanan
Hash sangat cocok untuk tabel yang sering
digunakan sebagai acuan tabel lain. Hash memberikan kecepatan
pencarian data
tunggal berdasarkan nilai key (mis. Mencari satu
baris data dari
tabel Mahasiswa dengan NPM),

tapi tidak dengan halnya dengan pencaraian data kelompok


(mis. Perncarian baris data dari tabel Mahasiswa yang tahun
masuknya = 2011). Kelemahan lain dari struktur penyimpanan
Hash adalah kebutuhan ruang penyimpanan awal. Jadi
sebelum
suatu baris data disimpan harus ditentukan besarnya ruang kosong
untuk menyimpan data atau dengan kata lain kita harus dapat
memperkirakan dengan baik jumlah baris data secara keseluruhan
sebelum data disimpan.
Sekuensial Berindeks : Merupakan struktur penyimpanan yang
menempatkan data dengan urutan tertentu dalam tabel (mis.
Berdasarkan nilai indeks primer-nya). Struktur penyimpanan ini
memerlukan waktu yang lebih lama untuk memposisikan record jika
terjadi perubahan data yang menyangkut nilai yang digunakan
sebagai dasar pengurutannnya. Struktur penyimpanan ini sangat
cocok untuk tabel yang sifatnya statis, selain itu struktur
penyimpanan ini sangat cocok untuk pencarian data kelompok pada
suatu tabel.

File Berindeks : Merupakan struktur penyimpanan yang menggunakan


metode Heap, namun disediakan pula file indeks-nya yang disusun
atau diurutkan berdasarkan nilai key-nya. Sehingga mempercepat
dalam pencarian data kesuatu tabel. Jadi pada struktur penyimpan ini
akan ada 2 (dua) objek/komponen yaitu komponen data yang
disusun dengan struktur penyimpanan Heap dan komponen indeks
yang disusun dengan struktur penyimpanan Sekuensial
Berindeks. Struktur penyimpanan ini cocok digunakan untuk tabel
yang dinamis (karena yang di-organisasikan hanya komponen
indeks yang ukurannya lebih kecil dibanding komponen data) dan
tabel yang berukuran besar.

Bagan Pertimbangan Penentuan


Struktur Penyimpanan

Anda mungkin juga menyukai