Anda di halaman 1dari 9

Pada tulisan ini akan dibahas tahap-tahap dalam perancangan database.

Pada database yang digunakan oleh single user atau hanya beberapa user
saja, perancangan database tidak sulit.

Tetapi jika ukuran database yang sedang atau besar perancangan database
akan menjadi sangat kompleks. Oleh karena itu para pemakai mengharapkan
penggunaan database yang sedemikian rupa sehingga sistem harus dapat
memenuhi kebutuhan-kebutuhan seluruh user tersebut. Tentunya agar
kebutuhan-kebutuhan tersebut dapat terlayani dengan baik maka harus
dilakukan perancangan database yang baik pula, aktifitas-aktifitas apa saja
yang dilakukan pada tahap tersebut.

Tujuan Perancangan Database


 Untuk memenuhi informasi yang berisikan kebutuhan-kebutuhan user secara
khusus dan aplikasi – aplikasinya.
 Memudahkan pengertian struktur informasi.
 Mendukung kebutuhan-kebutuhan pemrosesan dan beberapa obyek penampilan
(response time, processing time, dan storeage space).
Proses Perancangan Database
Proses perancangan database terdiri dari 6 tahap:
 Tahap 1, Pengumpulan data dan analisis
 Tahap 2, Perancangan database secara konseptual
 Tahap 3, Pemilihan DBMS
 Tahap 4, Perancangan database secara logika (data model mapping)
 Tahap 5, Perancangan database secara fisik
 Tahap 6, Implementasi Sistem database
Secara khusus proses perancangan berisi 2 aktifitas paralel:
1. Aktifitas yang melibatkan perancangan dari isi data dan struktur database,
2. Aktifitas mengenai perancangan pemrosesan database dan aplikasi-aplikasi
perangkat lunak.
Perancangan Basis Data Fisik Perancangan database secara fisik merupakan proses pemilihan struktur-
struktur penyimpanan dan jalur-jalur akses pada file-file database untuk mencapai penampilan yang terbaik
pada bermacam-macam aplikasi.Selama fase ini, dirancang spesifikasi-spesifikasi untuk database yang
disimpan yang berhubungan dengan struktur-struktur penyimpanan fisik, penempatan recorddan jalur akses.
Petunjuk pemilihan perancangan database secara fisik : Ø Response time Waktu yang telah berlalu dari
suatu transaksi database yang diajukan Untuk menjalankan suatu tanggapan. Pengaruh utama pada response
time adalah di bawah pengawasan DBMS yaitu : waktu akses database untuk data item yang ditunjuk oleh
suatu transaksi.Response time juga dipengaruhi oleh beberapa faktor yang tidak berada di bawah
pengawasan DBMS, seperti penjadwalan sistem operasi atau penundaan komunikasi. Ø Space Utility Jumlah
ruang penyimpanan yang digunakan oleh file-file database dan struktur-Struktur jalur akses. Ø Transaction
throughput Rata-rata jumlah transaksi yang dapat diproses per menit oleh sistem database, dan merupakan
parameter kritis dari sistem transaksi (misal, digunakan pada pemesanan tempat di pesawat, bank, dll).
Hasil dari fase ini adalah penentual awal dari struktur penyimpanan dan jalur akses untuk file-file database.
6. Implementasi Basis Data System Setelah perancangan secara logika dan secara fisik lengkap,kita dapat
melaksanakan sistem database. Perintah-perintah dalam DDL dan SDL(storage definition language) dari DBMS
yang dipilih, dihimpun dan digunakan untuk membuat skema database dan file-file database (yang kosong)
kemudian database tsb dimuat (disatukan) dengan datanya.Jika data harus dirubah dari sistem komputer
sebelumnya, perubahan-perubahan yang rutin mungkin diperlukan untuk format ulang datanya yang
kemudian dimasukkan ke database yang baru. Transaksi-transaksi database sekarang harus dilaksanakan oleh
para programmmer aplikasi. ALASAN PERANCANGAN BASIS DATA Ø Sistem basis data telah menjadi bagian
dalam sistem informasi suatu organisasi. Ø Kebutuhan menyimpan data dl jumlah besar semakin mendesak.
Ø Fungsi-fungsi dalam organisasi semakin dikomputerisasikan. Ø Semakin kompleks data & aplikasi yg
digunakan, maka relationship antar data harus dimodelisasikan. Ø Dibutuhkannya kemandirian data.
KONVERSI & LOADING DATA Ø Tahap ini dilakukan apabila sistem basis data yg ada digantikan sistem basis
data baru. Ø Semua data yg ada ditransfer ke basis data baru & konversi aplikasi yg ada utk basis data baru.

Cheap Offers: http://bit.ly/gadgets_cheap

JENIS-JENIS FILE

Transaction file : mengupdate record-record yang ada difile master.

Master file : jenis file yang paling penting, isinya tetap.

Report file : kumpulan record yang disusun sehingga memudahkan penggunanya untuk mendapatkan
informasi dari file tersebut.

Work file ; file yang berisi kumpulan record dalam waktu sementara.

Dump file : untuk menjaga suatu keamanan dan mencatat semua kegiatan seperti pengupdatean atau
lainnya.

Program file : file yang berisi kumpulan program untuk memproses data.

History file : suatu file akumulasi dari hasil pemrosesan pada file master dengan file transaction.

Library file : untuk menyimpan program aplikasi dan utilities.


ORGANISASI FILE

Organisasi file sequential. ORecord-record disusun secara berurutan pada saat waktu dibuat dan mengaksesnya pun
secara berurutan. Biasanya diurut berdasarkan field tertentu.
Organisasi File Relatif. Pada organisasi ini record tidak harus disusun secra urut. Biasanya diakses dengan
menyebutkan alamat relative dari record.
Organisasi File Index Sequential. Merupakan kombinasi dari organisasi sequential dengan file relative. Jika ada
beberapa data, maka dibuat sebuah index yang akan menuju ke file sequentialnya.

Struktur Organisasi File adalah kumpulan record-record yang disimpan dengan


menggunakan suatu konsep file tertentu. Sebuah file diorganisasikan sebagai urutan
record-record di mana record-record tersebut dipetakan ( pada disk ) ke dalam bentuk blok-
blok. File tersebut disediakan sebagai sebuah konsep dasar dalam system operasi. Adapun
tujuan dari organisasi file adalah sebagai berikut :
 Untuk menghemat penyimpanan
 Agar data yang tersimpan dalam suatu file dapat diakses secara tepat
 Digunakan untuk mempermudah proses manipulasi data
---
MACAM-MACAM ORGANISASI FILE

Dua struktur file paling dasar, yaitu :

1. Pile ( Tumpukan )
2. File sekuen berurut ( Sequential File atau Ordered File )
Untuk file Pile dan file Sekuensial, keduanya merupakan organisasi file yang struktur
penyimpanannya tidak dilengkapi dengan kemampuan pengaksesan data secara cepat.

Struktur file dengan dilengkapi indeks, yaitu :

1. File sekuen berindeks ( indexed sequential file )


2. File berindeks majemuk ( multiply indexed file )
Indeks digunakan untuk memudahkan pencapaian data, sehingga waktu pencarian datanya
lebih cepat bila dibandingkan dengan kedua organisasi file sebelumnya yaitu organisasi file
Pile dan file Sekuensial.

Struktur file spesifik keperluan system komputer, yaitu :

1. File hash ( hashed file atau direct file )


2. File multiring ( multiring file )
Kedua organisasi file di atas merupakan jenis organisasi file yang memiliki tipe
pengaksesan data dengan menggunakan metode komputasi spesifik untuk mencapai data.

Organisasi File Sequential


1.1 Pengertian File Sequential
Organisasi berkas sequential adalah merupakan cara yang paling dasar untuk mengorganisasikan
kumpulan record-record dalam sebuah berkas. Dalam organisasi berkas sequential, pada waktu
record ini dibuat, record-record direkam secara berurutan.

1.2 Proses
Karena record-record dalam organisasi berkas sequential harus diakses secara berurutan,
maka berkas sekuensial lebih sering menggunakan batch processing dari pada interactive
processing.

1.3 Keuntungan dari Sequential File


Merupakan organisasi file yang sederhana. Jarak setiap aplikasi yang tersimpan sangat
jelas. Metode penyimpanan didalam memory sangat sederhana, sehingga efisien untuk
menyimpan record yang besar. Sangat murah untuk digunakan, sebab medianya cukup
menggunakan magnetic tape.

1.4 Kerugian Dari Sequential File


Seandainya diperlukan perubahan data, maka seluruh record yang tersimpan didalam master
file, harus semuanya diproses. Data yang tersimpan harus sudah urut (sorted). Posisi data yang
tersimpan sangat susah untuk up-to-date, sebab master file hanya bisa berubah saat proses
selesai dilakukan. Tidak bisa dilkukan pembacaan secara langsung.

1.5 Pola Akses


Pola Akses adalah penentuan akses berdasarkan field tertentu. Selama pola akses, berkas
sequential dapat dipasangkan dengan record-record yang sudah diurut pada berkas, maka waktu
aksesnya sangat baik.

Jadi kita harus menentukan pola akses terlebih dahulu, kemudian baru menentukan organisasi
berkas sequential berdasarkan urutan yang sesuai dengan pola aksesnya, jangan sebaliknya.

Contoh:
Berkas gaji yang disusun secara sequential berdasarkan NIP, hendak diakses berdasarkan
NAMA, maka program tidak baik. Juga tidak baik mengakses record dengan urutan sebagai
berikut:
NIP = 15024508, NIP = 15024607
NIP = 15024115, NIP = 1502800
Dimana NIP tersebut belum tersortir.
Keuntungan Random File
Sangat sesuai untuk kebutuhan File Transaksi, sebab transaksi harus diproses saat
kejadian berlangsung. Data yang tersimpan tidak harus urut (sorted). Untuk pemrosesan lebih
efisien, sebab ada beberapa file yang memerlukan perubahan saat proses berlangsung. Lebih
cepat dalam hal pemanggilan data. Beberapa data yang tersimpan didalam file, bisa diperbaiki
dalam waktu bersamaan.

2.3 Kerugian Random file


Memerlukan adanya back-ap data. Sebab transaksi yang diperbaiki setiap saat bisa
menghilangkan jejak data asal. Data yang tersimpan mempunyai potensi lebih cepat rusak.
Kapasitas media penyimpanan memory menjadi besar. Memerlukan hardware dan software yang
lebih kompleks apabila dibanding Sequential file.

3. Index Sequential File

3.1 Pengertian Index Sequential File


Index Sequential File merupakan perpaduan terbaik dari teknik Sequential dan random file.
Teknik penyimpanan yang dilakukan, menggunakan suatu index yang isinya berupa bagian dari
data yang sudah tersortir. Index ini diakhiri denga adanya suatu pointer (penunjuk) yang bisa
menunjukkan secara jelas posisi data yang selengkapnya. Index yang ada juga merupakan
record-key (kunci record), sehingga kalau recordkey ini dipanggil, maka seluruh data juga akan
ikut terpanggil.
Keuntungan Index Sequential File
Sangat cocok untuk digunakan menyimpan batch data ataupun individual data. Dibanding Sequential
file, pemanggilan data menjadi lebih cepat.

3.3 Kerugian Index Sequential File


Access (pemanggilan) data tidak bisa disamakan dengan random (direct access file). Memerlukan
adanya ruangan extra didalam memory untuk menyimpan index data. Memerlukan adanya hardware
dan software yang lebih kompleks.

Banyak sistem informasi interaktif memerlukan dukungan dari berkas banyak key.
III. KELEBIHAN DAN KELEMAHAN

Kelebihan
• Lebih mudah melakukan akses data dibanding metode lain.

• Dalam pencarian menggunakan inversi, lebih dari satu data dapat ditemukan serentak.

• Sangat diperlukan dalam basis data skala besar.

Kelemahan

• Karena digunakan dalam basis data besar, perlu memory space yang besar.

Contoh Kasus :

Sebuah sistem perbankan yang mempunyai beberapa pemakai (user), seperti kasir, pegawai
kredit, manajer cabang, pegawai bank, nasabah dan lain-lain. Semuanya memerlukan akses data
yang sama dengan format record :

Adanya pemakai yang berbeda memerlukan akses record-record ini dalam cara yang berbeda.

Kasir Mengidentifikasikan record account menurut nilai ID.


Kredit Akses semua record menurut nilai OVERDRAW LIMIT atau
semua record account dengan nilai SOCNO.
Manajer Cabang Akses semua record menurut Branch dan Type.
Pegawai Bank Membuat laporan berkala untuk semua record ccount yang disortir
berdasarkan ID.
Nasabah Memerlukan akses recordnya dengan memberikan ID yang
dimilikinya atau kombinasi dari NAME, SOCNO dan Type.

Satu pendekatan yang dapat mendukung semua jenis akses adalah dipunyainya banyak berkas
yang berbeda. Setiap berkas diorganisasi untuk melayani satu jenis keperluan.
Secara definisi partisi table adalah memecah tabel menjadi beberapa bagian/segmen, tujuan dari
menggunakan partisi adalah untuk mempercepat proses query.

Misalkan kita memilik data sebanyak 10 juta record, bila pada table konvensional maka data sebanyak itu
akan di simpan dalam satu segmen, tetapi bila menggunakan partisi maka data sebanyak itu akan di pecah-
pecah ke banyak partisi berdasarkan sebuah kondisi, misalkan berdasarkan tanggal, maka ketika melakukan
query hanya men-scan segmen dimana data itu berada, tidak 10 juta record itu di scan, sehingga proses
query menjadilebih cepat.

Feature partisi tabel ini ada hadir dari MySQL versi 5.1, sedangkan MySQL yg gw pake saat eksperimen adalah
MySQL versi 5.1.31 dengan sistem operasi yang gw pake adalah Ubuntu 9.04 Jaunty Jackalope

Tapi sebelum-nya melakukan partisi tabel cek lebih dahulu apa databasenya suport partisi atau tidak,
caranya seperti di bawah ini

setelah masuk ke console MySQL ketikan perintah dibawah ini:

SHOW VARIABLES LIKE '%partition%';

+-------------------+-------+
| Variable_name | Value |
+-------------------+-------+
| have_partitioning | YES +
+-------------------+-------+
1 row in set (0.06 sec)

Partisi tabel terdiri dari beberapa tipe, antara lain

1. Partisi Range, adalah membuat partisi berdasarkan sebuah range, misalkan berdasarkan tanggal, sebuah
nilai, contoh nya seperti di bawah ini

CREATE TABLE tbl_penjualan (


id INT NOT NULL,
nama VARCHAR(30),
tgl_transaksi DATE NOT NULL DEFAULT '1970-01-01'
)
PARTITION BY RANGE ( YEAR(tgl_transaksi) ) (
PARTITION p0 VALUES LESS THAN (1990),
PARTITION p1 VALUES LESS THAN (1995),
PARTITION p2 VALUES LESS THAN (2000),
PARTITION p3 VALUES LESS THAN MAXVALUE
);
contoh di atas membuat partisi berdasarkan tahun transaksi, jadi transaksi yg dari tahun 1990 akan masuk
ke partisi p0, kemudian dari tahun 1995 akan masuk ke partisi p1, kemudian yang dari tahun2000 akan
masuk ke partisi p2 dan selebihnya akan masuk ke partisip3.

contoh lengkapnya bisa diliat di:http://dev.mysql.com/doc/refman/5.1/en/partitioning-range.html

2. Partisi List, adalah membuat partisi berdasarkan kondisi dari sebuah nilai yang nilai nya cocok dengan
yang sudah di tentukan, contohnya seperti dibawah ini

CREATE TABLE tbl_pegawai (


kode_pegawai VARCHAR(30),
kode_golongan INT,
nama_lengkap VARCHAR(255)
)
PARTITION BY LIST(kode_golongan) (
PARTITION p0 VALUES IN (1, 2, 3),
PARTITION p1 VALUES IN (4, 5, 6)
);

contoh diatas membuat partisi berdasarkan golongan pegawai, jadi pegawai dengan golongan 1,2 dan 3 akan
masuk ke partisi p0sedangkan karyawan dengangolongan 4,5 dan 6 akan masuk ke partisi p1

contoh lengkapnya bisa diliat dihttp://dev.mysql.com/doc/refman/5.1/en/partitioning-list.html

3. Partisi Hash, adalah membuat partisi berdasarkan sebuah kolom yg sudah ditentukan dengan pembagian
segmen nya diatur oleh MySQL, contohnya seperti dibawah ini

CREATE TABLE tbl_pegawai (


kode_pegawai VARCHAR(30),
kode_golongan INT,
nama_lengkap VARCHAR(255)
)
PARTITION BY HASH( kode_pegawai )
PARTITIONS 4;

contoh diatas membuat partisi berdasarkan kode pegawai, jadi data pegawai akan di pecah menjadi empat
partisi, dan yg mengatur sebuah kode pegawai masuk ke partisi yang mana langsung di atur otomatis oleh
MySQL

contoh lengkapnya bisa diliat dihttp://dev.mysql.com/doc/refman/5.1/en/partitioning-hash.html

4. Partisi Key, adalah membuat partisi berdasarkan sebuah key dari tabel, contoh nya seperti dibawah ini

CREATE TABLE tbl_nama (


id INT NOT NULL PRIMARY KEY,
nama_lengkap VARCHAR(255)
)
PARTITION BY KEY()
PARTITIONS 2;
Contoh diatas membuat partisi berdasarkan primary key yang bernama id, jadi data dari tbl_nama akan di
pecah menjadi 2 partisi, dan yang mengatur sebuah data masuk
kepartisi yang mana, diatur otomatis oleh MySQL

Anda mungkin juga menyukai