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.
JENIS-JENIS FILE
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.
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.
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.
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.
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.
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.
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.
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
+-------------------+-------+
| Variable_name | Value |
+-------------------+-------+
| have_partitioning | YES +
+-------------------+-------+
1 row in set (0.06 sec)
1. Partisi Range, adalah membuat partisi berdasarkan sebuah range, misalkan berdasarkan tanggal, sebuah
nilai, contoh nya seperti di bawah ini
2. Partisi List, adalah membuat partisi berdasarkan kondisi dari sebuah nilai yang nilai nya cocok dengan
yang sudah di tentukan, contohnya seperti dibawah ini
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
3. Partisi Hash, adalah membuat partisi berdasarkan sebuah kolom yg sudah ditentukan dengan pembagian
segmen nya diatur oleh MySQL, contohnya seperti dibawah ini
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
4. Partisi Key, adalah membuat partisi berdasarkan sebuah key dari tabel, contoh nya seperti dibawah ini