Jumat, 05 November 2010

Basis Data (Database)

Basis data (bahasa Inggris: database), adalah kumpulan informasi yang disimpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut. Perangkat lunak yang digunakan untuk mengelola dan memanggil kueri (query) basis data disebut sistem manajemen basis data (database management system, DBMS).

Telah diketahui bahwa secara fisik data dalam bentuk kumpulan bit dan direkam dengan basis track didalam media penyimpan eksternal. Dalam prakteknya, untuk kemudahan dalam mengakses data, data disusun dalam suatu struktur logis yang menjelaskan bahwa:

1. Kumpulan tabel menyusun basis data,
2. Tabel tersusun atas sejumlah record,
3. Sebuah record mengandung sejumlah field, dan
4. Sebuah field disimpan dalam bentuk kumpulan bit.

Pengertian masing-masing istilah diatas adalah seperti berikut:

a. Field (medan) menyatakan data terkecil yang memiliki makna. Istilah lain untuk field yaitu elemen data, kolom item, dan atribut. Contoh field yaitu nama seseorang, jumlah barang yang dibeli, dan tanggal lahir seseorang.

b. Record (rekaman) menyatakan kumpulan dari sejumlah elemen data yang saling terkait. Sebagai contoh, nama, alamat, tanggal lahir, dan jenis kelamin dari seseorang menyusun sebuah record. Istilah lain yang juga menyatakan record yaitu tupel dan baris.

c. Tabel menghimpun sejumlah record. Sebagai contoh, data pribadi dari semua pegawai disimpan dalam sebuah tabel.

d. Basis data (database) adalah suatu pengorganisasian sekumpulan data yang saling terkait sehingga memudahkan aktivitas untuk memperoleh informasi. Sebagai contoh, basis data akademis mengandung tabel-tabel yang berhubungan dengan data mahasiswa, data jurusan, data mata kuliah, data pengambilan mata kuliah pada suatu semester, dan nilai yang diperoleh mahasiswa.

Alasan Perlunya Database

Basis data merupakan salah satu komponen penting dalam system informasi, karena merupakan dasar dalam menyediakan informasi.
Basis data menentukan kualitas informasi : akurat, tepat pada waktunya dan relevan. Informasi dapat dikatakan bernilai bila manfaatnya lebih efektif dibandingkan dengan biaya mendapatkannya.
Basis data mengurangi duplikasi data (data redudancy).
Dengan mengaplikasikan basis data hubungan data dapat ditingkatkan.
Basis data dapat mengurangi pemborosan tempat simpanan luar.

Konsep dasar dari basis data adalah kumpulan dari catatan-catatan, atau potongan dari pengetahuan. Menurut pengaksesannya, basis data dibedakan menjadi empat jenis, yaitu :

1. Basis data individual
Basis data individual adalah basis data yang digunakan oleh perseorangan. Biasanya basis data seperti ini banyak dijumpai dilingkungan PC. Visual dBASE, Corel Paradox, dan Filemaker Pro merupakan contoh perangkat lunak yang biasa digunakan untuk mengelola basis data untuk kepentingan pribadi.

2. Basis data perusahaan
Basis data perusahaan adalah basis data yang dimaksudkan untuk diakses oleh sejumlah pegawai dalam sebuah perusahaan dalam sebuah lokasi. Basis data seperti ini disimpan dalam sebuah server dan para pemakai dapat mengakses dari masing-masing komputer yang berkedudukan sebagai client.

3. Basis data terdistribusi
Basis data terdistribusi adalah basis data yang disimpan pada sejumlah komputer yang terletak pada beberapa lokasi. Model seperti ini banyak digunakan bank yang memiliki sejumlah cabang di pelbagai kota dan melayani transaksi perbankan yang bersifat online.

4. Basis data publik
Basis data publik adalah basis data yang dapat diakses oleh siapa saja (publik). Sebagai contoh, banyak situs web (misalnya yahoo dan about.com) yang menyediakan data yang bersifat publik dan dapat diambil siapa saja secara gratis. Namun adakalanya seseorang harus menjadi anggota dan membayar iuran untuk memperoleh data publik.

Berdasarkan struktur data di dalam basis data, maka basis data dapat dikelompokkan kedalam:
a. Basis data relasional
b. Basis data pohon
c. Basis data hirarki
d. Basis data objek
e. Basis data relasional-obyek

Perangkat lunak basis data yang banyak digunakan dalam pemrograman dan merupakan perangkat basis data aras tinggi (high level):

•Microsoft SQL Server , Oracle , Sybase , Interbase , XBase , Firebird , MySQL , PostgreSQL , Microsoft Access , dBase III , Paradox , FoxPro , Visual FoxPro , Arago , Force , Recital , dbFast , dbXL , Quicksilver , Clipper , FlagShip , Harbour , Visual dBase , Lotus Smart Suite Approach
•Bahasa basis data

Bahasa basis data terdiri atas:

Data Definition Language (DDL), merujuk pada kumpulan perintah yang dapat digunakan untuk mendefinisikan objek – objek basis data, seperti membuat sebuah tabel basis data atau indeks primer atau sekunder.

Data Manipulation Language (DML), mengacu pada kumpulan perintah yang dapat digunakan untuk melakukan manipulasi data, seperti penyimpanan data ke suatu tabel, kemudian mengubahnya dan menghapusnya atau hanya sekedar menampilkannya kembali.

Penyusunan basis data meliputi proses memasukkan data kedalam media penyimpanan data dan diatur dengan menggunakan perangkat Sistem Manajemen Basis Data (Database Management System DBMS). Manipulasi basis data meliputi pembuatan pernyataan (query) untuk mendapatkan informasi tertentu, melakukan pembaharuan atau penggantian (update) data, serta pembuatan report data.

Objektif Basis Data

Secara lebih lengkap, pemanfaatan basis data dilakukan untuk memenuhi sejumlah tujuan (objektif) seperti berikut
a. Kecepatan dan kemudahan (Speed)
b. Efisiensi ruang penyimpanan (Space)
c. Keakuratan (Accuracy)
d. Ketersediaan (Avaibility)
e. Kelengkapan (Completeness)
f. Keamanan (Security)
g. Kebersamaan pemakaian (Sharability)

Tujuan utama DBMS adalah untuk menyediakan tinjauan abstrak dari data bagi user. Jadi sistem menyembunyikan informasi mengenai bagaimana data disimpan dan dirawat, tetapi data tetap dapat diambil dengan efisien. Pertimbangan efisien yang digunakan adalah bagaimana merancang struktur data yang kompleks, tetapi tetap dapat digunakan oleh pengguna yang masih awam, tanpa mengetahui kompleksitas struktur data. Basis data menjadi penting karena munculnya beberapa masalah bila tidak menggunakan data yang terpusat, seperti adanya duplikasi data, hubungan antar data tidak jelas, organisasi data dan update menjadi rumit. Jadi tujuan dari pengaturan data dengan menggunakan basis data adalah :

•Menyediakan penyimpanan data untuk dapat digunakan oleh organisasi saat sekarang dan masa yang akan datang.
•Kemudahan pemasukan data, sehingga meringankan tugas operator dan menyangkut pula waktu yang diperlukan oleh pemakai untuk mendapatkan data serta hak-hak yang dimiliki terhadap data yang ditangani.
•Pengendalian data untuk setiap siklus agar data selalu up-to-date dan dapat mencerminkan perubahan spesifik yang terjadi di setiap sistem.
•Pengamanan data terhadap kemungkinan penambahan, pengubahan, pengerusakan dan gangguan-gangguan lain.

SQL (Structured Query Language)

SQL adalah sebuah konsep pengoperasian basisdata, terutama untuk pemilihan atau seleksi dan pemasukan data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis dan bahasa yang digunakan untuk berkomunikasi dengan database. Menurut ANSI (American National Standards Institute), bahasa ini merupakan standar untuk relational database management systems (RDBMS). Pernyataan-pernyataan SQL digunakan untuk melakukan beberapa tugas seperti : update data pada database atau menampilkan data dari database. Hampir semua software database mengimplementasikan bahasa SQL sebagai komponen utama dari produknya, salah satunya MySQL.

MySQL adalah sebuah implementasi dari sistem manajemen basisdata relasional (RDBMS) yang didistribusikan secara gratis dibawah lisensi GPL (General Public License). Setiap pengguna dapat secara bebas menggunakan MySQL, namun dengan batasan perangkat lunak tersebut tidak boleh dijadikan produk turunan yang bersifat komersial. MySQL sebenarnya merupakan turunan salah satu konsep utama dalam basisdata yang telah ada sebelumnya; SQL (Structured Query Language).

MySQL memiliki beberapa keistimewaan, antara lain :

1. Portabilitas. MySQL dapat berjalan stabil pada berbagai sistem operasi seperti Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga, dan masih banyak lagi.
2. Perangkat lunak sumber terbuka. MySQL didistribusikan sebagai perangkat lunak sumber terbuka, dibawah lisensi GPL sehingga dapat digunakan secara gratis.
3. Multi-user. MySQL dapat digunakan oleh beberapa pengguna dalam waktu yang bersamaan tanpa mengalami masalah atau konflik.
4. 'Performance tuning', MySQL memiliki kecepatan yang menakjubkan dalam menangani query sederhana, dengan kata lain dapat memproses lebih banyak SQL per satuan waktu.
5. Ragam tipe data. MySQL memiliki ragam tipe data yang sangat kaya, seperti signed / unsigned integer, float, double, char, text, date, timestamp, dan lain-lain.
6. Perintah dan Fungsi. MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah Select dan Where dalam perintah (query).
7. Keamanan. MySQL memiliki beberapa lapisan keamanan seperti level subnetmask, nama host, dan izin akses user dengan sistem perizinan yang mendetail serta sandi terenkripsi.
8. Skalabilitas dan Pembatasan. MySQL mampu menangani basis data dalam skala besar, dengan jumlah rekaman (records) lebih dari 50 juta dan 60 ribu tabel serta 5 milyar baris. Selain itu batas indeks yang dapat ditampung mencapai 32 indeks pada tiap tabelnya.
9. Konektivitas. MySQL dapat melakukan koneksi dengan klien menggunakan protokol TCP/IP, Unix soket (UNIX), atau Named Pipes (NT).
10. Lokalisasi. MySQL dapat mendeteksi pesan kesalahan pada klien dengan menggunakan lebih dari dua puluh bahasa. Meski pun demikian, bahasa Indonesia belum termasuk di dalamnya.
11. Antar Muka. MySQL memiliki antar muka (interface) terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi API (Application Programming Interface).
12. Klien dan Peralatan. MySQL dilengkapi dengan berbagai peralatan (tool)yang dapat digunakan untuk administrasi basis data, dan pada setiap peralatan yang ada disertakan petunjuk online.
13. Struktur tabel. MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani ALTER TABLE, dibandingkan basis data lainnya semacam PostgreSQL ataupun Oracle.

Untuk melakukan administrasi dalam basis data MySQL, dapat menggunakan modul yang sudah termasuk yaitu command-line (perintah: mysql dan mysqladmin). Selain itu terdapat juga sebuah perangkat lunak gratis untuk administrasi basis data MySQL berbasis web yang sangat populer yaitu phpMyAdmin. Untuk perangkat lunak untuk administrasi basis data MySQL yang dijual secara komersial antara lain: MySQL front, Navicat dan EMS SQL Manager for MySQL.

Perintah dasar MySQL

Bahasa SQL memiliki struktur yang mudah dipahami karena perintah – perintahnya pada dasarnya dibuat dari bahasa Inggris. Sehingga kita dapat melakukan perintah – perintah SQL ke dalam database MySQL, yaitu

a. Memasukkan atau menambah record baru ke dalam database.
b. Mengeksekusi query database
c. Mengambil data dari database
d. Mengubah record pada database
e. Menghapus record pada database

Perintah SQL dapat diketik dengan huruf besar atau kecil (non case sensitive). Setelah selesai mengetik perintah di MySQL harus diakhiri dengan tanda titik koma sebagai penanda akhir dari perintah MySQL. Perintah SQL dapat diketik dengan huruf besar atau kecil (non case sensitive). Setelah selesai mengetik perintah di MySQL harus diakhiri dengan tanda titik koma sebagai penanda akhir dari perintah MySQL.

MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL (bahasa Inggris: database management system) atau DBMS yang multithread, multi-user, dengan sekitar 6 juta instalasi di seluruh dunia. MySQL AB membuat MySQL tersedia sebagai perangkat lunak gratis dibawah lisensi GNU General Public License (GPL), tetapi mereka juga menjual dibawah lisensi komersial untuk kasus-kasus dimana penggunaannya tidak cocok dengan penggunaan GPL.

Tidak sama dengan proyek-proyek seperti Apache, dimana perangkat lunak dikembangkan oleh komunitas umum, dan hak cipta untuk kode sumber dimiliki oleh penulisnya masing-masing, MySQL dimiliki dan disponsori oleh sebuah perusahaan komersial Swedia MySQL AB, dimana memegang 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 "Monty" Widenius. MySQL memiliki beberapa keistimewaan, antara lain :

1. Portabilitas. MySQL dapat berjalan stabil pada berbagai sistem operasi seperti Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga, dan masih banyak lagi.
2. Perangkat lunak sumber terbuka. MySQL didistribusikan sebagai perangkat lunak sumber terbuka, dibawah lisensi GPL sehingga dapat digunakan secara gratis.
3. Multi-user. MySQL dapat digunakan oleh beberapa pengguna dalam waktu yang bersamaan tanpa mengalami masalah atau konflik.
4. 'Performance tuning', MySQL memiliki kecepatan yang menakjubkan dalam menangani query sederhana, dengan kata lain dapat memproses lebih banyak SQL per satuan waktu.
5. Ragam tipe data. MySQL memiliki ragam tipe data yang sangat kaya, seperti signed / unsigned integer, float, double, char, text, date, timestamp, dan lain-lain.
6. Perintah dan Fungsi. MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah Select dan Where dalam perintah (query).
7. Keamanan. MySQL memiliki beberapa lapisan keamanan seperti level subnetmask, nama host, dan izin akses user dengan sistem perizinan yang mendetail serta sandi terenkripsi.
8. Skalabilitas dan Pembatasan. MySQL mampu menangani basis data dalam skala besar, dengan jumlah rekaman (records) lebih dari 50 juta dan 60 ribu tabel serta 5 milyar baris. Selain itu batas indeks yang dapat ditampung mencapai 32 indeks pada tiap tabelnya.
9. Konektivitas. MySQL dapat melakukan koneksi dengan klien menggunakan protokol TCP/IP, Unix soket (UNIX), atau Named Pipes (NT).
10. Lokalisasi. MySQL dapat mendeteksi pesan kesalahan pada klien dengan menggunakan lebih dari dua puluh bahasa. Meski pun demikian, bahasa Indonesia belum termasuk di dalamnya.
11. Antar Muka. MySQL memiliki antar muka (interface) terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi API (Application Programming Interface).
12. Klien dan Peralatan. MySQL dilengkapi dengan berbagai peralatan (tool)yang dapat digunakan untuk administrasi basis data, dan pada setiap peralatan yang ada disertakan petunjuk online.
13. Struktur tabel. MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani ALTER TABLE, dibandingkan basis data lainnya semacam PostgreSQL ataupun Oracle.

Bahasa pemrograman

Terdapat beberapa API (Application Programming Interface) tersedia yang memungkinkan aplikasi-aplikasi komputer yang ditulis dalam berbagai bahasa pemrograman untuk dapat mengakses basis data MySQL antara lain: bahasa pemrograman C, C++, C#, bahasa pemrograman Eiffel, bahasa pemrograman Smalltalk, bahasa pemrograman Java, bahasa pemrograman Lisp, Perl, PHP, bahasa pemrograman Python, Ruby, REALbasic dan Tcl. Sebuah antarmuka ODBC memanggil MyODBC yang memungkinkan setiap bahasa pemrograman yang mendukung ODBC untuk berkomunikasi dengan basis data MySQL. Kebanyakan kode sumber MySQL dalam ANSI C.

Penggunaan

MySQL sangat populer dalam aplikasi web seperti MediaWiki (perangkat lunak yang dipakai Wikipedia dan proyek-proyek sejenis) dan PHP-Nuke dan berfungsi sebagai komponen basis data dalam LAMP. Popularitas sebagai aplikasi web dikarenakan kedekatannya dengan popularitas PHP, sehingga seringkali disebut sebagai Dynamic Duo.

Daftar Pustaka

http://krida85.wordpress.com/2008/04/16/pengertian-basis-data/
http://id.wikipedia.org/wiki/Basis_data
Simarmata, Janner dan Imam Paryudi, "Basis Data", Andi, Yogyakarta : 2005
http://prodisi.wordpress.com/category/tanya-jawab-si/basis-data-tanya-jawab-si/
http://www.ittelkom.ac.id/library/index.php?view=article&catid=13%3Arpl&id=332%3Abasis-data-atau-database&option=com_content&Itemid=15

Tidak ada komentar:

Posting Komentar