Sabtu, 12 November 2011

Tentang DATABASE


1.     Definisi tentang Database

Ada beberapa defenisi tentang database :

Menurut Gordon C. Everest :
Database adalah koleksi atau kumpulan data yang mekanis, terbagi/shared, terdefinisi secara formal dan dikontrol terpusat pada organisasi.
Menurut C.J. Date :
Database adalah koleksi “data operasional” yang tersimpan dan dipakai oleh sistem aplikasi  dari suatu organisasi.
-  Data input adalah data yang masuk dari luar sistem
-  Data output adalah data yang dihasilkan sistem
-  Data operasional adalah data yang tersimpan pada sistem
Menurut Toni Fabbri :
Database adalah sebuah sistem file-file yang terintegrasi yang mempunyai minimal primary key untuk pengulangan data.
Menurut S. Attre :
Database adalah koleksi data-data yang saling berhubungan mengenai suatu organisasi / enterprise dengan macam-macam pemakaiannya.

Jadi SISTEM DATABASE adalah sistem penyimpanan data memakai komputer. Database merupakan salah satu komponen yang penting di sistem informasi, karena berfungsi sebagai basis penyedia informasi bagi para pemakainya. Penerapan database dalam sistem informasi disebut dengan database sistem. Sistem basis data ( database system ) ini adalah suatu sistem informasi yang mengintegrasikan kumpulan dari data yang saling berhubungan satu dengan lainnya dan membuatnya tersedia untuk beberapa aplikasi yang bermacam-macam di dalam suatu organisasi.
Tujuan dari desain database adalah untuk menentukan data-data yang dibutuhkan dalam sistem, sehingga informasi yang dihasilkan dapat terpenuhi dengan baik. Database yang sudah masuk dalam suatu media penyimpanan tidak akan pernah bisa diakses tanpa adanya suatu perangkat lunak aplikasi yang familiar dengannya, misalkan saja perangkat lunak aplikasi yang berbasis database.
Istilah-istilah dalam database antara lain :
1.
Variabel yaitu kontainer khusus yang digunakan untuk menyimpan data untuk sementara pada program
2.
Field adalah kategori informasi yang disimpan dalam database
3.
Data adalah satu satuan informasi
4.
Width yaitu menunjukkan lebar sebuah field
5.
File adalah kumpulan dari beberapa record yang sejenis
6.
Record adalah kumpulan dari suatu informasi orang atau suatu
objek tertentu
7.
Field kunci berguna untuk mengidentifikasikan record

2.     Perancangan Database

I. Tahap Perancangan Database
1. Pengumpulan Dan Analisa Data
2. Perancangan Database Secara Konseptual
3. Pemeliharaan Dbms
4. Perancangan Database Secara Logika
5. Perancangan Database Secara Fisik
6. Implementasi Sistem Database


Tahap 1 : Pengumpulan data dan analisis
Sebelum merancang suatu database, yang harus dilakukan adalah mengetahui dan menganalisis apa yang diinginkan dari pengguna aplikasi, sehingga proses ini disebut pengumpulan data dan analisis.

Untuk menspesifikasikan kebutuhan yang pertama kali dilakukan adalah mengidentifikasi bagian lain di dalam sistem informasi yang berinteraksi dengan sistem database. Termasuk pengguna yang baru atau yang sudah lama juga aplikasinya, kebutuhan–kebutuhan tersebut dikumpulkan dan di analisa.

Kegiatan pengumpulan data dan analisis :
• Menentukan kelompok pemakai dan areal bidang aplikasinya.
Pengguna yang menguasai aplikasi yang lama dari setiap bagian dipilih untuk menyampaikan kebutuhan-kebutuhan dan menspesifikasikannya.
• Peninjauan dokumentasi yang ada.
Dokumen yang berhubungan dengan aplikasi yang akan dibuat dipelajari dan dianalisa, sedangkan dokumen lainnya seprti kebijakan manual, form, laporan–laporan dan bagan-bagan organisasi diuji dan ditinjau kembali untuk mengetahui apakah dokumen tersebut berpengaruh terhadap pengumpulan data dan proses spesifikasi
• Analisa lingkungan operasi dan kebutuhan pemrosesan.
Lingkungan operasional yang sekarang dan informasi yang direncanakan akan di gunakan dipelajari, termasuk menganalisa jenis–jenis dari transaksi dan frekuensi transaksinya seperti halnya alur informasi dengan sistem. Input dan output data untuk transaksi tersebut harus diperinci.
• Pengumpulan respon terhadap daftar pertanyaan dan angket yang telah dibuat sebelumnya.
Pengumpulan respon dari angket dan daftar pertanyaan berisikan prioritas para pengguna dan penempatan mereka di dalam berbagai aplikasi. Ketua kelompok mungkin akan ditanya untuk membantu para pengguna dalam memberikan informasi yang penting dan menentukan prioritas.
Teknik yang digunakan dalam penspesifikasian kebutuhan secara formal :
• OOA ( Object Oriented Analysis )
• DFD ( Data Flow Diagram )
• HIPO ( Hierarchical Input Process Output )
• SADT ( Structured Analysis & Design )

Tahap 2 : Perancangan database secara konseptual

Tujuan dari tahap ini adalah untuk menghasilkan skema konseptual untuk databse yang tidak tergantung pada sistem manajemen database yang spesifik. Penggunaan model data tingkat tinggi seperti ER/EER sering digunakan didalam tahap ini.
Di dalam skema konseptual dilakukan perincian aplikasi–aplikasi database dan transaksi–transaksi yang diketahui .

Ada dua kegiatan di dalam perancangan database secara konseptual :
• Perancangan skema konseptual :
Pada tahap ini kegiatan yang dilakukan mengecek tentang kebutuhan– kebutuhan pemakai terhadap data yang dihasilkan dari tahap 1, dimana
tujuan dari proses perancangan skema konseptual adalah menyatukan pemahaman dalam struktur database, pengertian semantik, keterhubungan dan batasan-batasannya, dengan membuat sebuah skema database konseptual dengan menggunakan model data ER/EER tanpa tergantung dengan sistem manajemen database
Ada dua pendekatan perancangan skema konseptual :
• Terpusat
Kebutuhan–kebutuhan dari aplikasi atau kelompok–kelompok pemakai yang berbeda digabungkan menjadi satu set kebutuhan pemakai kemudian dirancang menjadi satu skema konseptual.
• Integrasi view–view yang ada
Untuk masing–masing aplikasi atau kelompok–kelompok pemakai yang berbeda dirancang sebuah skema eksternal ( view ) kemudian view – view tersebut disatukan ke dalam sebuah skema konseptual.

Ada 4 strategi dalam perancangan skema konseptual :
• Top down
• Bottom Up
• Inside Out
• Mixed
• Transaksi
Merancangan karakteristik dari transaksi–transaksi yang akan di implementasikan tanpa tergantung dengan DBMS yang telah dipilih. Transaksi–transaksi ini digunakan untuk memanipulasi database sewaktu diimplementasikan . Pada tahap ini diidentifikasikan input, output dan fungsional . Transaksi ini antara lain : retrieval, update dan delete, select dll.

Tahap 3 : Pemilihan Sistem Manajemen Database
Pemilihan sistem manajemen database ditentukan oleh beberapa faktor a.l : Teknik, Ekonomi, dan Politik Organisasi

Faktor Teknik :
• Tipe model data ( hirarki, jaringan atau relasional )
• Struktur penyimpanan dan jalur pengaksesan yang didukung sistem manajemen database
• Tipe interface dan programmer
• Tipe bahasa queri

Faktor Ekonomi :
• Biaya penyiadaan hardware dan software
• Biaya konversi pembuatan database
• Biaya personalia
• Biaya pelatihan
• Biaya pengoperasian
• Biaya pemeliharaan

Faktor Organisasi :
• Struktur data
Jika data yang disimpan dalam database mengikuti struktur hirarki, maka suatu jenis hirarki dari sistem manajemen database harus dipikirkan.
• Personal yang terbiasa dengan sistem yang terdahulu
Jika staff programmer dalam suatu organisasi sudah terbiasa dengan sautu sistem manajemen database maka hal ini dapat mengurangi biaya latihan dan waktu belajar.
• Ketersediaan dari service vendor
Keberadaan fasilitas pelayanan penjual sangat dibutuhkan untuk membantu memecahkan masalah sistem.

Tahap 4 : Perancangan database secara logika ( Transformasi model data )
Transformasi dari skema konseptual dan eksternal ( Tahap 2 ) ke model data sistem manajemen database yang terpilih, ada dua proses yaitu :
• Transformasi yang tidak tergantung pada sistem, pada tahap ini transformasi tidak mempertimbangkan karakteristik yang spesifik atau hal– hal khusus yang akan diaplikasikan pada sistem manajemen database
• Penyesuaian skema ke sistem manajemen database yang spesifik, di lakukan suatu penyesuaian skema yang dihasilkan dari tahap 1 untuk dikonfirmasikan pada bentuk implementasi yang spesifik dari suatu model data seperti yang digunakan oleh sistem manajemen database yang terpilih
Hasil dari tahap ini dituliskan dengan perintah DDL ke dalam bahasa sistem manajemen database terpilih. Tapi jika perintah DDL tersebut termasuk dalam parameter–parameter perancangan fisik , maka perintah DDL yang lengkap harus menunggu sampai tahap perancangan database secara fisik telah lengkap.

Tahap 5 : Perancangan Database Secara Fisik
Proses pemilihan struktur penyimpanan yang spesifik dan pengaksesan file– file database untuk mencapai kinerja yang terbaik di bermacam–macam aplikasi
Kriteria pemilihan perancangan fisik :
• Waktu respon
Waktu transaksi database selama eksekusi untuk menerima respon
• Penggunaan ruang penyimpanan
Jumlah ruang penyimpanan yang digunakan oleh database file dan struktur jalur pengaksesannya
• Terobosan yang dilakukan file transaksi
(Transaction troughput )
Merupakan nilai rata–rata transaksi yang dapat di proses permenit oleh sistem database dan merupakan parameter kritis dari sistem transaksi
Apabila waktu respon dari database tidak mencapai optimalisasi, maka pada tahap perancangan fisik ini dapat dilakukan denormalisasi.

Denormalisasi

Denormalisasi merupakan proses yang dilakukan pada database yang sudah dinormalisasi, dengan cara memodifikasi struktur tabel dan mengabaikan kerangkapan data (yang terkontrol) untuk meningkatkan kinerja database.
Proses denormalisasi termasuk :
Mengkombinasikan tabel-tabel yang terpisah dengan join§
Mereplikasi/menduplikat data pada tabel§

Tahap 6 : Implementasi
Implementasi skema database logik dan fisik ke dalam penyataan DDL dan SDL dari sistem manajemen database yang telah dipilih, untuk digunakan dalam pembuatan file–file database yang masih kosong
Studi Kasus :
Di bawah ini deskripsi mengenai suatu perusahaan yang akan di representasikan dalam database dan buat sesuai dengan proses perancangan database dari tahap 1 s/d tahap 4.
1. Suatu perusahaan terdiri atas bagian–bagian, masing–masing bagian mempunyai nama, nomor bagian dan lokasi . Setiap bagian mempunyai seorang pegawai yang mempunyai seorang pimpinan yang memimpin bagian tersebut.
2. Setiap bagian mengontrol sejumlah proyek dimana masing–masing proyek mempunyai nama, nomor proyek dan lokasi .
3. Setiap pegawai menjadi anggota pada salah satu bagian tapi dapat bekerja di beberapa proyek . Untuk setiap pegawai yang bekerja di proyek mempunyai jam kerja per-minggu . Seorang pegawai mempunyai nama, nomor pegawai, alamat, jenis kelamin, tanggal lahir dan usia serta supervisor / penyelia langsung. Pegawai juga mempunyai tanggungan yang terdiri atas nama, jenis kelamin dan hubungannya dengan si pegawai.

Jenis-Jenis Key :
1. Super key
Himpunan dari satu atau lebih entitas yang digunakan untuk mengidentifikasikan secara unik sebuah entitas dalam entitas set
2. Candidate key
Satu attribute atau satu set minimal atribute yang mengidentifikasikan secara unik suatu kejadian yang specifik dari entity
Jika satu kunci kandidat berisi lebih dari satu atribute, maka biasanya disebut sebagai composite key (kunci campuran/gabungan)
Contoh:
File pegawai berisi atribute
no indukv
No ktpv
Namav
Tempat lahirv
Tanggal lahirv
Alamatv
Kotav

Kunci kandidat disini adalah:
No indukv
No ktpv

3. Primary key
Satu atribute atau satu set minimal atribute yang tidak hanya mengidentifikasikan secara unik suatu kejadian yang specifik tapi juga dapat mewakili setiap kejadian dari suatu entity

-No.induk, karena unik tidak mungkin ganda dan mewakili secara seluruh entity pegawai.
-No ktp, ini hanya dipakai bila sampai dengan pembayaran gaji pegawai ternayata no.induk belum keluar.

4. Alternatif key
Kunci kandidat yang tidak dipakai sebagai primary key

5. Foreign key
Satu atribute (atau satu set atribute) yang melengkapi satu relationship (hubungan yang menunjukkan ke induknya.
Contoh file transaksi gaji bulanan
v No induk
v Nomor bukti
v Tanggal
v Jumlah gaji kotor
v Jumlah potongan
v Jumlah gaji bersih
v Jumlah pajak

Kunci tamu
v No.induk, karena gaji ini berhubungan dengan file pegawai

Kunci primary
v Nomor bukti, karena uni dan mewakili entitiy

Kunci kandidat atau kunci alternative
v No induk+nomor bukti, unik dan menunjukakan hubungan file induk pegawai


Kebergantungan Fungsi (Functional Dependency).

Konsep dalam perancangan database, dimana mempunyai definisi sbb :
“Diberikan sebuah relasi R, atribute Y dari R adalah bergantung fungsi pada atribute X dr R jika dan hanya jika setiap nilai-nilai X dlm R memiliki Hub. dengan tepat satu nilai Y dlm R.”


Contoh:
File pegawai berisi atribute
v no induk
v No ktp
v Nama
v Tempat lahir
v Tanggal lahir
v Alamat
v Kota

Isi attribute nama bergantung pada nomor induk. Jadi dapat dikatakan bahwa attribute nama bergabtung secara fungsi pada no.induk dan no induk menunjukan secara fungsi nama.

No induk>> nama
Atau
Nama=f(no induk)

3.     Macam-macam DBMS

-          MySQL
MySQL merupakan sebuah perangkat lunak system manajemen basis data SQL (bahasa inggris : data management system) atau DNMS yang multithread, multi-user, dengan sekitar 6 juta instalasi di seluruh dunia. MySQL AB membuat MySQL tersedia sebagai perangkat lunak gratis di bawah lisensi GNU General Public Licenci (GPL), tetapi mereka juga menjual dibawah lisensi komersial untuk kasus-kasus dimana penggunaannya tidak cocok dengan penggunaan GPL . Tidak seperti Apache yang merupakan software yang dikembangkan oleh komunitas umum, dan cipta untuk code sumber dimiliki oleh penulisnya masing-masing, Vendor dari MySQL adalah The MySQL AB Company. MySQL AB memegang penuh hak cipta hampir atas semua kode sumbernya. Kedua orang Swedia dan satu orang Finlandia yang mendirikan MySQL AB adalah : david axmark, allan larsson, dan Michael “monthy widenius.
Kelebihan MySQL antara lain :
1. free (bebas didownload)
2. stabil dan tangguh
3. fleksibel dengan berbagai pemrograman
4. Security yang baik
5. dukungan dari banyak komunitas
6. kemudahan management database
7. mendukung transaksi
8. perkembangan software yang cukup cepat

Kekurangan MySQL antara lain :
1. Untuk koneksi ke bahasa pemrograman visual seperti vb, delphi, dan foxpro, mysql kurang support, karena koneksi ini menyebabkan field yang dibaca harus sesuai dengan koneksi dari program visual tersebut.
2. Data yang ditangani belum begitu besar.
3. Lambat untuk query yang kompleks seperti LEFT JOIN yang banyak, dan penggunaan SubQuery.
4. Belum mendukung Windowing Function.
Contoh Instruksi dalam MySQL :
• CREATE untuk membuat objek baru,
• USE untuk menggunakan objek,
ALTER untuk mengubah objek yang sudah ada, dan
• DROP untuk menghapus objek.

-           ORACLE

Oracle adalah relational database management system (RDBMS) untuk mengelola informasi secara terbuka, komprehensif dan terintegrasi. Vendor dari oracle adalah Orace Corporation. Versi terbaru dari Oracle adalah Oracle 11g.Software ini biasa digunakan untuk pengaksesan data yang dilakukan secara online.
Oracle merupakan DBMS yang paling rumit dan paling mahal di dunia. Jika dibandingkan dengan MySQL yang bersifat gratis, maka Oracle lebih terlihat tidak kompetitif karena berjalan lebih lambat daripada MySQL meskipun harganya sangat mahal.
Namun yang mereka tidak perhitungkan adalah bahwa Oracle merupakan DBMS yang dirancang khusus untuk organisasi berukuran besar, bukan untuk ukuran kecil dan menengah. Kebutuhan organisasi berukuran besar tidaklah sama dengan organisasi yang kecil atau menengah yang tidak akan berkembang menjadi besar. Organisasi yang berukuran besar membutuhkan fleksibilitas dan skalabilitas agar dapat memenuhi tuntutan akan data dan informasi yang bervolume besar dan terus menerus bertambah besar.
Kelebihan Oracle antara lain:
• Oracle memiliki banyak sekali fitur yang dapat memenuhi tuntutan fleksibilitas dari organisasi besar tersebut.
• Oracle dapat mendayagunakan lebih dari satu server serta data storage dengan mudah dan transparan.
• Oracle menjadi DBMS yang rumit dan sulit untuk dipelajari.
Kekurangan Oracle antara lain:
• Oracle merupakan DBMS yang paling rumit dan paling mahal di dunia, Penggunaan Oracle sangat memakan banyak biaya, mulai dari device sampai diperlukannya DBA yang handal.
Contoh Instruksi dalam Oracle :
• Contoh : CREATE DATABASE Perkuliahan;
Create table : untuk membuat table.
Syntax : CREATE TABLE nama_tabel
(nama_kolom1, type_kolom1,
nama_kolom2, type_kolom2,…);
• Contoh : DELETE FROM NILAI WHERE NPM=”12100748” AND
KDMK=”KK021’;

-          FIREBIRH

Firebird (juga disebut FirebirdSQL) adalah sistem manajemen basisdata relasional yang menawarkan fitur-fitur yang terdapat dalam standar ANSI SQL-99 dan SQL-2003. RDBMS ini berjalan baik di Linux, Windows, maupun pada sejumlah platform Unix. Firebird ini diarahkan dan di-maintain oleh FirebirdSQL Foundation. Ia merupakan turunan dari Interbase versi open source milik Borland. Karena itulah Interbase dan Firebird sebenarnya mempunyai CORE yang sama karena awalnya sama” dikembangkan oleh Borland. Vendor dari firebird adalah Official mozilla firefox builds.
Namun dalam perkembangannya, Interbase yang komersial di-bundle oleh Borland menjadi Phoenix, sedangkan Firebird adalah interbase yang dikembangkan oleh komunitas Open Source, sehingga menjadikannya sebagai produk Database Server yang FREE. Open source DBMS ini dimotori oleh para developer Interbase 6.x open-source.
Kelebihan Firebird antara lain:
Firebird memiliki user base kecil namun aktif, Firebird selalu lebih banyak memiliki fitur,
Firebird merupakan DBMS yang relatif matang untuk digunakan, dan tujuannya menetapkan peletakan kembali Oracle dan SQL server dalam aplikasi komersil,
Firebird memiliki user-base yang loyakl, dan merupakan produk bagus untuk bekerja dengannya, dan jika ia dapat meningkatkan kecepatan development-nya, seperti juga meningkatkan marketing-nya, akan menjadi pesaing yang kuat.
Kelemahan Firebird antara lain:
Kekurangan yang paling nyata waktu itu adalah replication engine (walaupun Firebird memiliki fitur lanjutan, yang menjaga identical copy dari live database). Ada proyek yang terjadi, banyak yang komersil, namun Open Source-nya sendiri terlihat tidak matang, atau terintegrasi ke dalam Firebird code utama. Firebird development relatif lambat, Firebird merupakan DBMS yang relatif matang untuk digunakan, dan tujuannya menetapkan peletakan kembali Oracle dan SQL server dalam aplikasi komersil.
Contoh Instruksi dalam Firebird :
Contoh Memasang batteray alarm pada windows :
pertama : letakkan file exe batteray alarm pada direktory “C:\Users\name of user\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup”. name of user sesuaikan dengan nama user yang akan digunakan, misalnya user yang saya gunnakan adalah “smileeuy” maka letakkan file tersebut pada direktori C:\Users\SmileEuy\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup.
kedua : letakkan file okfan.okfan dan file FirebirdSql.Data.Firebird.dll dan semua file file yang didownload tadi pada direktori “c:/windows/system32″.




-         Microsoft Visual Fox Pro

Microsoft Visual Fox Pro adalah salah satu bahasa pemrograman prosedural dan bahasa pemrograman berorientasi objek yang dikembangkan oleh Microsoft. Software ini dimulai dari     FoxPro (FoxBASE) yang awalnya dikembangkan oleh Fox Technology pada 1984.Fox Technology kemudian bergabung dengan Microsoft pada 1992.Awalnya Foxpro dapat berjalan pada sistem operasi Mac OS, DOS, Windows, dan UNIX (2.6 Version) tapi pada perkembangannya (3.0 Version) hanya mampu berjalan pada Mac OS dan Windows saja, bahkan pada versi-versi berikutnya hanya berjalan pada Windows saja.


4.  DDL ( DATA DEFENITION LANGUAGE

DDL digunakan untuk mendefinisikan, mengubah, serta menghapus basis data dan objek-objek yang diperlukan dalam basis data, misalnya tabel, view, user, dan sebagainya. Secara umum, DDL yang digunakan adalah CREATE untuk membuat objek baru, USE untuk menggunakan objek, ALTER untuk mengubah objek yang sudah ada, dan DROP untuk menghapus objek. DDL biasanya digunakan oleh administrator basis data dalam pembuatan sebuah aplikasi basis data.
  • Pembuatan (CREATE)
  • Perubahan (ALTER & RENAME)
    • ALTER DATABASE
    • ALTER FUNCTION
    • ALTER PROCEDURE
    • ALTER TABLE
    • ALTER VIEW
    • RENAME TABLE
  • Penghapusan (DROP)
    • DROP DATABASE
    • DROP FUNCTION
    • DROP INDEX
    • DROP PROCEDURE
    • DROP TABLE
    • DROP TRIGGER
    • DROP VIEW

5. DML ( DATA MANIPULATION LANGUAGE)

DML sendiri adalah kumpulan perintah SQL yang berhubungan dengan pekerjaan mengolah data di dalam table - dan tidak terkait dengan perubahan struktur dan definisi tipe data dari objek database seperti table, column, dan sebagainya.


Beberapa daftar Perintah DML MySQL 5.0

·   CALL
·   DELETE
·   DO
·   HANDLER
·   INSERT
·   LOAD DATA INFILE
·   REPLACE
·   SELECT
·   TRUNCATE
·   UPDATE





Source :
Jogiyanto. HM . Analisis dan Desain , Andi Offset, Yogyakarta, 2005.
http://gsixxx.wordpress.com
http://id.wikipedia.org
http://mhs.stiki.ac.id
Load disqus comments

0 blogger-facebook