Senin, 02 November 2015

basis data



BASIS DATA


            Basis data adalah kumpulan informasi yang disimpan didalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari database tersebut. Perangkat lunak yang digunakan untuk mengolah dan mengambil kueri (query) basis data disebut sistem manajemen basis data.
Pemrosesan basis data sebagai perangkat andalan sangat diperlukan oleh berbagai institusi dan perusahaan. Dalam pengembangan sistem informasi diperlukan basis data sebagai media penyimpanan data. Kehadiran basis data dapat meningkatkan Daya saing perusahaan tersebut. Basis data dapat mempercepat upaya pelayanan kepada pelanggan, menghasilkan informasi dengan cepat dan tepat sehingga membantu pengambilan keputusan untuk segera memutuskan suatu masalah berdasarkan informasi yang ada. Banyak aplikasi yang dibuat dengan berlandaskan pada basis data antara lain semua transaksi perbankan, aplikasi pemesanan dan penjadwalan penerbangan, proses regristasi dan pencatatan data mahasiswa pada perguruan tinggi, aplikasi pemrosesan penjualan, pembelian dan pencatatan data barang pada perusahaan dagang, pencatatan data pegawai beerta akrifitasnya termasuk operasi penggajian pada suatu perusahaan, dan sebagainya. Beberapa informasi pada perusahaan retail seperti jumlah penjualan, mencari jumlah stok penjualan, mencari jumlah stok yang tersedia, barang apa yang paling lakudijual pada bulan ini, dan berapa laba bersih perusahaan dapat diketahui dengan mudah dengan basis data. Pada perpustakaan, adanya aplikasi pencarian data buku berdasarkan judul, pengarang atau kriteria lain dapat mudah dilakukan dengan basis data. Pencarian data peminjam yang terlambat mengembalikan juga mudah dilakukan sehingga bisa dibuat aplikasi pembuatan surat berdasarkan informasi yang tersedia.




A.    Pengertian Basis Data
Banyak sekali definisi tentang basis data yang diberikan oleh para pakar di bidang ini. Basis data atau juga disebut database, terdiri dari dua penggalan kata yaitu data dan base, yang artinya berbasiskan pada data, tetapi secara konseptual, database diartikan sebuah koleksi atau kumpulan data-data yang saling berhubungan (relation), disusun menurut aturan tertentu secara logis, sehingga menghasilkan informasi. Selain itu, untuk mengelola dan memanggil query basis data agar dapat disajikan dalam berbagai bentuk yang diinginkan dibutuhkan perangkat lunak yang disebut Sistem Manajemen Basis Data atau juga disebut Database Management System (DBMS). Penggabungan Database Management System (DBMS) dengan Basis Data akan membentuk satu kesatuan yang disebut Sistem Basis Data. Sistem Basis Data adalah suatu sistem penyusunan dan pengelolaan record-record dengan menggunakan komputer, dengan tujuan untuk menyimpan atau merekam serta memelihara data operasional lengkap sebuah organisasi/perusahaan sehingga mampu menyediakan informasi yang diperlukan pemakai untuk kepentingan proses pengambilan keputusan.




B.    Komponen Dasar Basis Data

Dalam membuat basis data harus memiliki komponen dasar. Agar terciptanya basis data maka hal yang diperhatikan adalah tersedianya:

a.       Data: representasi fakta dunia nyata yang mewakili suatu objek yang direkam dalam bentuk  angka, huruf, symbol, teks, gambar, bunyi atau kombinasinya.
b.      Hardware: terdiri dari semua peralatan perangkat keras komputer yang digunakan untuk mengelola sistem basis data berupa: peralatan penyimpanan (disk, drum, tape), peralatan input dan output, atau peralatan komunikasi.
c.       Software: sebagai perantara antara pemakai dengan data fisik pada basis data, dapat berupa: Database Management System (DBMS) atau program- program aplikasi dan prosedur-prosedur.
d.      User (Pemakai): terbagi menjadi 4 klasifikasi, yaitu:
1.    System Engineer: tenaga ahli yang bertanggung jawab atas pemasangan sistem basis data, dan juga mengadakan peningkatan dan melaporkan kesalahan dari sistem tersebut kepada pihak penjual.
2.   Administrator Basis Data: tenaga ahli yang mempunyai tugas untuk mengontrol sistem basis data secara keseluruhan, meramalkan kebutuhan akan sistem basis data, merencanakannya dan mengaturnya.
3.    Programmer: membuat program aplikasi yang diperlukan oleh pemakai akhir  dengan menggunakan data yang terdapat dalam sistem basis data.
Pemakai Akhir: tenaga ahli yang menggunakan data untuk mengambil keputusan yang diperlukan untuk kelangsungan usaha.



C.    Istilah-Istilah Basis Data

Dalam penyusunan basis data ada beberapa istilah yang akan sering digunakan. Oleh karena itu, kita sebagai obyek yang mempelajari lebih jauh lagi tentang ilmu pengetahuan basis data sepatutnya mengenal:
a.       Enterprise: suatu bentuk organisasi seperti: bank, universitas, rumah sakit, pabrik, dsb. Data yang disimpan dalam basis data merupakan data operasional dari suatu enterprise. Contoh data operasional: data keuangan, data mahasiswa, data pasien, data karyawan.
b.      Entitas: suatu obyek yang dapat dibedakan dari lainnya yang dapat diwujudkan dalam basis data. Contoh entitas dalam lingkungan bank terdiri dari: nasabah, simpanan, hipotik. Contoh entitas dalam lingkungan universitas terdiri dari : mahasiswa, mata kuliah. Kumpulan dari entitas disebut Himpunan Entitas. Contoh: semua nasabah, semua mahasiswa.
c.       Atribut (Elemen Data): karakteristik dari suatu entitas. Contoh: entitas mahasiswa atributnya terdiri dari npm, nama, alamat, tanggal lahir. d. Nilai Data (Data Value): isi data/informasi yang tercakup dalam setiap elemen data. Contoh atribut nama mahasiswa dapat berisi nilai data: Dani, Dewi, Diaz.
d.      Kunci Elemen Data (Key Data Element): tanda pengenal yang secara unik mengidentifikasikan entitas dari suatu kumpulan entitas. Contoh entitas mahasiswa yang mempunyai atribut- atribut npm, nama, alamat, tanggal lahir menggunakan kunci elemen data npm.
e.       Record Data: kumpulan isi elemen data yang saling berhubungan. Contoh: kumpulan atribut npm, nama, alamat, tanggal lahir dari entitas mahasiswa berisikan : "4109073",  "Dani", "Jl. Jend. Sudirman No. 4 Makassar", "4 April 1983".



D.    Database Management System (DBMS)

           Seperti yang telah dikemukakan di awal, pada bagian ini kita akan mengulas lebih spesifik lagi mengenai Sistem Manajemen Basis Data atau populernya disebut Database Management System atau disingkat DBMS. Yang mana adalah perangkat lunak yang berfungsi untuk mengelola database, mulai dari membuat database itu sendiri sampai dengan proses-proses yang berlaku dalam database tersebut, baik berupa entry, edit, hapus, query terhadap data, membuat laporan dan lain sebagainya secara efektif dan efisien. Salah satu jenis DBMS yang sangat terkenal saat ini adalah Relational DBMS (RDBMS), yang merepresentasikan data dalam bentuk tabel-tabel yang saling berhubungan. Sebuah tabel disusun dalam bentuk baris (record) dan kolom (field). Banyak sekali berkembang perangkat lunak RDBMS ini, misalnya MySQL, Oracle, Sybase, dBase, MS. SQL, Microsoft Access (MS. Access) dan lain-lain. Ada 3 kelompok perintah yang digunakan dalam mengelola dan mengorganisasikan data dalam RDBMS, yaitu :
a.       Data Definition Language: merupakan perintah-perintah yang digunakan oleh seorang Database Administrator untuk mendefinisikan struktur dari database, baik membuat tabel baru, menentukan struktur penyimpanan tabel, model relasi antar tabel, validasi data, dan lain sebagainya.
b.      Data Manipulation Language (DML): perintah-perintah yang digunakan untuk memanipulasi dan mengambil data pada suatu database. Manipulasi yang dapat dilakukan terhadap data adalah :
  •  Penambahan data
  •  Penyisipan data
  •  Penghapusan data
  •  Pengubahan data
c.                Data Control Language: bagian ini berkenaan dengan cara mengendalikan data, seperti siapa saja yang bisa melihat isi data, bagaimana data bisa digunakan oleh banyak user, dan lain-lain. Lebih mengarah ke segi sekuritas data. Misalnya dalam dunia pendidikan atau lingkungan akademis pada umumnya, sering anda menjumpai pertanyaan- pertanyaan seperti berikut :
4.    Berapa jumlah mahasiswa yang mengambil mata kuliah Database Management?
5.    Berapa mahasiswa yang aktif pada semester ini?
6.    Berapa jumlah mahasiswa yang berjenis kelamin laki- laki dan yang berjenis kelamin   perempuan?
7.    Tolong cetakkan Kartu Hasil Studi mahasiswa dengan nama Dani!
Jawaban dari pertanyaan- pertanyaan diatas dapat dilakukan dengan cepat dan mudah, bila dalam pengelolaan sistem informasi akademik telah menggunakan sistem database. Tapi akan sangat membosankan memakan waktu yang lama jika masih dikelola secara manual. Ini merupakan contoh kecil yang dihadapi dalam dunia akademis, tentu hal ini juga akan dihadapi dalam bidang kerja yang lain dengan format dan model yang lain pula. Jika kita bandingkan pengelolaan data dengan menggunakan database dan dengan cara manual, maka kita akan mendapatkan suatu perbedaan yang sangat banyak antara lain:
Database Manual
a.    Duplikasi data dapat diminimalkan
b.    Integritas data tinggi
c.    Independensi data
d.    Konsistensi data tinggi
e.    Dapat berbagi (sharing) data
f.    Tingkat keamanan tinggi
g.    Mudahnya mendapatkan data
h.    Duplikasi data
i.    Terbatasnya berbagi data
j.    Ketidak konsistennya data
k.    Kurangnya integritas data
Kesulitan dalam mendapatkan informasi

E.    Arsitektur Basis Data

Sebuah basis data memiliki penjelasan terstruktur dari jenis fakta yang tersimpan di dalamnya, penjelasan ini disebut skema. Arsitektur sistem basis data memberikan kerangka kerja bagi pembangunan basis data. Menurut ANSI/SPARC, arsitektur basis data terbagi atas tiga level yaitu :
a.       Internal/Physical Level: level terendah untuk merepresentasikan basis data, berhubungan dengan bagaimana data disimpan secara fisik (physical storage). Record disimpan dalam media penyimpanan dalam format byte. Didefinisikan sebagai sebuah Skema Internal.
b.      External/View Level: level user, berhubungan dengan bagaimana data di representasikan dari sisi setiap user. Yang dimaksud dengan user adalah programmer, end user atau DBA. Setiap user mempunyai ‘bahasa’ yang sesuai dengan kebutuhannya.
  • Programmer menggunakan bahasa bahasa pemrograman seperti C, COBOL, atau PL/I
  • End User menggunakan bahasa query atau menggunakan fasilitas yang tersedia pada program aplikasi. Pada level eksternal ini, user dibatasi pada kemampuan perangkat keras dan perangkat lunak yang digunakan aplikasi basis data. Didefinisikan sebagai sebuah Skema Eksternal. Conceptual/Logical Level: sebuah representasi seluruh muatan informasi yang dikandung oleh basis data yang menghubungkan antara level internal & level external. Tidak seperti level eksternal, maka pada level conceptual, keberadaannya tidak memperhitungkan kekurangan perangkat keras maupun perangkat lunak pembangun aplikasi basis data. Didefinisikan sebagai sebuah Skema Konseptual.

F.    Database Independence

            Dalam kebebasan data, aplikasi disekat dari bagaimana data disimpan dan distrukturkan. Kebebasan data adalah salah satu keuntungan utama dari penggunaan DBMS. Tujuan utama dari arsitektur 3 level di atas adalah untuk menyediakan data independence, dimana level di atasnya tidak berpengaruh oleh perubahan untuk level di bawahnya. Ada 2 jenis data independence:
a.       Logical Data Independence (kebebasan data secara logika): perlindungan dari perubahan struktur logika suatu data. Logical data independence menunjuk kepada kekebalan dari skema eksternal untuk perubahan- perubahan dalam skema konseptual. Perubahan skema konseptual, seperti: memungkinkan penambahan atau penghapusan entiti, atribut atau relationship tanpa harus mengganti skema eksternal atau harus menulis kembali program aplikasi yang sudah ada.
b.      Physical Data Independence (kebebasan data secara fisik): perlindungan dari perubahan struktur fisik suatu data. Physical data independence menunjuk kepada kekebalan dari skema konseptual untuk perubahan-perubahan dalam skema internal. Perubahan skema internal, seperti: penggunaan organisasi file atau struktur penyimpanan yang berbeda, penggunaan media penyimpanan yang berbeda, perubahan algoritma indeks atau hashing tanpa harus mengganti/merubah konseptual atau skema eksternal.


G.    Model Basis Data

            Model data adalah kumpulan konsep yang terintegrasi yang menggambarkan data, hubungan antara data dan batasan-batasan data dalam suatu organisasi. Fungsi dari sebuah model data untuk merepresentasikan data sehingga data tersebut mudah dipahami. Untuk menggambarkan data pada tingkat eksternal dan konseptual digunakan model data berbasis objek atau model data berbasis record.
a.       Model Data Berbasis Objek menggunakan konsep entitas, atribut dan hubungan antar entitas. Beberapa jenis model data berbasis objek yang umum adalah :
  • Entity-Relationship
  • Semantic
  • Functional
  • Object-Oriented
b.      Model Data Berbasis Record, basis data terdiri dari sejumlah record dalam bentuk yang tetap yang dapat dibedakan dari bentuknya. Ada 3 macam jenis model data berbasis record yaitu :
c.       Model Data Relasional (Relational), merupakan model data yang paling populer saat ini. Menggunakan model berupa tabel berdimensi dua yang disebut relasi atau tabel. Memakai kunci tamu (foreign key) sebagai penghubung dengan tabel lain.
d.      Model Data Hierarkhi (Hierarchical), dikenal pula sebagai model pohon.
e.                Model Data Jaringan (Network), disebut jjuga model CODASYL. Setiap anak bisa memiliki llebih dari satu orangtua.

H.    Bahasa Query Formal dan Komersial

            Bahasa query yaitu pernyataan yang diajukan untuk mengambil informasi. Dan bahasa query ini adalah bahasa pada model data relasional yang terbagi menjadi 2:
a.       Bahasa Query Formal : bahasa query yang diterjemahkan dengan menggunakan simbol-simbol matematis terdiri dari :
b.      Prosedural, yaitu pemakai memberi spesifikasi data apa yang dibutuhkan dan bagaimana cara mendapatkannya. Contoh: Aljabar Relasional, yaitu dimana query diekspresikan dengan cara menerapkan operator tertentu terhadap suatu tabel/relasi.
c.       Non Prosedural, yaitu pemakai menspesifikasikan data apa yang dibutuhkan tanpa menspesifikasikan bagaimana untuk mendapatkannya. Contohnya Kalkulus Relasional, dimana query menjelaskan set tuple yang diinginkan dengan cara menjelaskan predikat tuple yang diharapkan. Kalkulus Relasional ini terbagi 2:
a.    Kalkulus Relasional Tupel
b.    Kalkulus Relasional Domain
b.    Bahasa Query Komersial: bahasa query yang dirancang sendiri oleh programmer menjadi suatu program aplikasi agar pemakai lebih mudah menggunakannya (user friendly). Contoh :
·                  QUEL: berbasis pada bahasa kalkulus relasional
·                  QBE: berbasis pada bahasa kalkulus relasional

SQL : berbasis pada bahasa kalkulus relasional dan aljabar relasional

I.    Perancangan Basis Data
Perancangan basis data adalah proses pembuatan (develop) stuktur database sesuai dengan data yang dibutuhkan oleh user. Dalam perancangan basis data tentu sangat dibutuhkan model data seperti apa yang diinginkan, dan hal itu sudah dibahas pada bagian sebelumnya. Selanjutnya mengambil langkah-langkah dalam perancangan basis data, yaitu:
a.        Mendefinisikan kebutuhan (Requirements definition) tujuannya: untuk mengidentifikasi dan mendeskripsikan data yang dibutuhkan oleh user dalam sebuah organisasi. Penjabarannya adalah:
1.    Mendefinisikan Kebutuhan Data
  • Pengumpulan Informasi
  • Domain Constraint
  • Refrensial Integrity
  • Other Business Rules


2.    Menentukan Ruang Lingkup
  • Pemilihan Metodologi
  • Mengidentifikasi User Views
  • Model Data Struktur    
  • Model Database Contraint
b.      Rancangan konseptual (Conceptual design) tujuannya: untuk membuat sebuah model data konseptual (atau arsitektur iinformasi) yang akan mendukung perbedaan kebutuhan iinformasi dari beberapa user dalam sebuah organisasi.
c.       Rancangan implementasi (Implementation design) tujuannya: untuk memetakan model data logis (logical data model) ke dalam sebuah skema yang dapat diproses oleh DBMS tertentu melalui transformasi ER-D ke Relasi.
d.      Rancangan fisik (Physical design). Pada tahap terakhir ini, logical database structured (normalized relation, trees, network dll) dipetakan menjadi physical storage structure seperti file dan tabel. Rancangannya seperti:
  • Model detail oleh Database Specialists
  • Diagram Entity-Relationship
  • Normalisasi
  • Spesifikasi hardware/ software
Langkah perbaikan (Stepwise refinement). Keseluruhan proses perancangan pada perancangan database harus dipandang sebagai satu langkah perbaikan, di mana perancangan pada setiap tahapan diperbaiki secara progresif melalui perulangan (iteration). Langkah perbaikan harus dilakukan pada bagian akhir setiap tahapan sebelum melangkah ke tahapan berikutnya.


Tidak ada komentar:

Posting Komentar