ARSIP BULANAN : November 2012

Tugas

09 November 2012 10:35:32 Dibaca : 2111

 

MANAJEMEN SISTEM DATABASE

DBMS (DataBase Management System) adalah sistem yang secara khusus dibuat untuk memudahkan pemakai dalam mengelola basis data. Sistem ini dibuat untuk mengatasi kelemahan sistem pemrosesan yang berbasis berkas.Pada pendekatan yang berbasis berkas, umumnya perancangan sistem didasarkan pada kebutuhan individual pemakai, bukan berdasarkan kebutuhan sejumlah pemakai. Setiap kali terdapat kebutuhan baru dari seorang pemakai, kebutuhan segera diterjemahkan kedalam program komputer. Akibatnya, kemungkinan besar setiap program aplikasi menuliskan data tersendiri. Sementara itu ada kemungkinan data yang sama juga terdapat pada berkas-berkas lain yang digunakan oleh program aplikasi lain.

Sejarah DBMS

Generasi pertama DBMS didesain oleh Charles Bachman di perusahaan General Electric pada awal tahun 1960, disebut sebagai Penyimpanan Data Terintegrasi (Integrated Data Store). Dibentuk dasar untuk model data jaringan yang kemudian distandardisasi oleh Conference on Data System Languages (CODASYL).
Bachman kemudian menerima ACM Turing Award (Penghargaan semacam Nobel pada ilmu komputer) di tahun 1973. Dan pada akhir 1960, IBM mengembangkan sistem manajemen informasi (Information Management System) DBMS. IMS dibentuk dari representasi data pada kerangka kerja yang disebut dengan model data hirarki. Dalam waktu yang sama, dikembangkan sistem SABRE sebagai hasil kerjasama antara IBM dengan perusahaan penerbangan Amerika. Sistem ini memungkinkan user untuk mengakses data yang sama pada jaringan komputer.
Kemudian pada tahun 1970, Edgar Codd, di Laboratorium Penelitian di San Jose, mengusulkan model data relasional. Di tahun 1980, model relasional menjadi paradigma DBMS yang paling dominan. Bahasa query SQL dikembangkan untuk basis data relasional sebagai bagian dari proyek Sistem R dari IBM. SQL distandardisasi di akhir tahun 1980, dan SQL-92 diadopsi oleh American National Standards Institute (ANSI) dan International Standards Organization (ISO). Program yang digunakan untuk eksekusi bersamaan dalam basis data disebut transaksi. User menulis programnya, dan bertanggung jawab untuk menjalankan program tersebut secara bersamaan terhadap DBMS. Pada tahun 1999, James Gray memenangkan Turing Award untuk kontribusinya pada manajemen transaksi dalam DBMS.
Pada akhir tahun 1980 dan permulaan 1990, banyak bidang sistem basis data yang dikembangkan. Penelitian pada bidang basis data meliputi bahasa query yang powerful, model data yang lengkap, dan penekanan pada dukungan analisis data yang kompleks dari semua bagian organisasi. Beberapa vendor memperluas sistemnya dengan kemampuan penyimpanan tipe data baru semisal image dan text, dan kemampuan query yang kompleks. Sistem khusus/spesial dikembangkan oleh banyak vendor untuk membuat data warehouse, mengkonsolidasi data dari beberapa basis data. Penomena yang paling menarik adalah adanya enterprise resource planning (ERP) dan management resource planning (MRP), yang menambahkan substansial layer dari fitur berorientasi pada aplikasi. Paket yang termasuk didalamnya meliputi Baan, Oracle, PeopleSoft, SAP, dan Siebel. Paket-paket ini mengidentifikasi himpunan tugas secara umum (misal manajemen inventori, perencanaan sumber daya manus ia, analisis finansial) dan menyediakan aplikasi layer secara umum untuk menangani keperluan tersebut. Data disimpan dalam DBMS relasional, dan aplikasi layer dapat disesuaikan untuk perusahaan yang berbeda. Lebih jauh lagi, DBMS memasuki dunia internet. Pada saat generasi pertama dari Web site menyimpan datanya secara eksklusif dalam file system operasi, maka saat ini DBMS dapat digunakan untuk menyimpan data yang dapat diakses melalui Web browser. Query dapat digenerate melalui form Web, dan format jawabannya menggunakan markup language semisal HTML untuk mempermudah tampilan pada browser. Semua vendor basis data menambahkan fitur ini untuk DMS mereka. Manajemen basis data mempertimbangkan pentingnya suatu data bersifat on-line, dan dapat diakses melalui jaringan komputer. Saat sekarang bidang seperti ini diwujudkan dalam basis data multimedia, video interaktif, perpustakaan digital,proyek ilmuwan seperti proyek pemetaan, proyek sistem observasi bumi milik NASA, dll.


TUJUAN DBMS

Tujuan Utama
DBMS bertujuan untuk menyediakan lingkungan yang nyaman dan efisien untuk penyimpanan dan pengambilan data dari basisdata. Sistem manajemen basisdata berperan memberi abstraksi data tingkat tinggi ke pemakai yang dirancang untuk membantu pengelolaan dan pemakaian koleksi data yang besar.
Tujuan Lainnya
1. Menghindari redudansi dan inkonsistensi data;
2. Menghindari kesulitan pengaksesan data;
3. Menghindari isolasi data;
4. Menghindari terjadinya anomali pengaksesan konkuren;
5. Menghindari masalah-masalah keamanan; dan
6. Menghindari masalah-masalah integritas.

KOMPONEN DBMS

Komponen Utama DBMS
Komponen utama DBMS dapat dibagi menjadi 4 macam :
• Perangkat Keras
• Perangkat Lunak
• Data
• Pengguna

Selain itu, DBMS umumnya mengandung komponen-komponen berikut:

1. Kamus Data
Kamus data (data dictionary) digunakan untuk menyimpan deskripsi data yang digunakan dalam basis data. Setiap elemen data antara lain memiliki tipe dan ukuran. Kamus data terkadang juga berisi ketentuan yang mengatur nilai yang bisa dimasukkan dalam field. Sebagai contoh, jika definisi sebuah field menyatakan bahwa hanya huruf P dan W yang dimasukkan ke dalam field bernama Jenis_Kelamin, maka sistem akan menolak sekiranya pemakai memasukkan data L ke field tersebut.

2. Utilitas
Utilitas digunakan untuk memudahkan pemakai dalam menciptakan basis data dan tabel serta dalam memanipulasi data.

3. Pembangkit Laporan
Pembangkit Laporan adalah fasilitas yang disediakan kepada pemakai untuk membuat laporan dengan mudah.
4. Pembangkit Aplikasi
Pembangkit Aplikasi adalah fasilitas yang digunakan untuk membuat tampilan yang digunakan oleh pemakai yang akan menggunakan aplikasi basis data (tampilan seperti ini dikenal dengan istilah formulir), misalnya untuk mengisikan data.

5. Keamanan Akses
Fasilitas keamanan akses digunakan untuk mengatur hak akses pemakai. Keamanan akses dapat berupa pengaturan wewenang akses terhadap pemakai tertentu. Misalnya, pemakai dapat mengubah isi tabel Mahasiswa, tetapi pemakai B tidak. DBMS seperti pemakai B tidak.

6. Pemulihan Sistem
Fasilitas pemulihan sistem berfungsi untuk mengembalikan data semula ke basis data sekiranya terjadi kegagalan sistem. Beberapa teknik yang umum digunakan untuk menangani pemulihan sistem yaitu mirroring, reprocessing, dan rollback.


DBMS memiliki keuntungan seperti berikut:

1. Independensi data
DBMS menyediakan pendekatan yang membuat perubahan dalam data tidak membuat program harus diubah.

2. Pengaksesan yang efisien terhadap data
DBMS menyediakan berbagai teknik yang canggih sehingga penyimpanan dan pengambilan data dilakukan secara efisien.

3. Keamanan dan integritas data
Karena data dikendalikan oleh DBMS, DBMS dapat melakukan kendala integritas terhadap data. Segala sesuatu yang tidak sesuai dengan definisi suatu field dan kekangan yang melekat pada field akan ditolak. Sebagai contoh, jika field Jenis_Kelamin dinyatakan berupa P atau W, maka penyimpanan L ke field tersebut dengan sendirinya akan ditolak oleh DBMS.

4. Administrasi data
Jika sejumlah pemakai berbagi data, pemusatan administrasi dapat meningkatkan perbaikan yang sangat berarti. Dengan cara seperti ini, duplikasi atau redudansi data dapat diminimalkan.
5. Akses bersamaan dan pemulihan terhadap kegagalan
DBMS menyediakan mekanisme sehingga data yang sama dapat diakses oleh sejumlah orang dalam waktu yang sama. Selain itu, DBMS melindungi pemakai dari efek kegagalan sistem. Jika terjadi kegagalan sistem, DBMS dapat mengembalikan data sebagaimana kondisi saat sebelum terjadi kegagalan.

6. Waktu pengembangan aplikasi terpendek
DBMS menawarkan banyak fasilitas yang memudahkan dalam menyusun aplikasi sehingga waktu pengembangan aplikasi dapat diperpendek.

Kelemahan DBMS antara lain sbb:

1. Memerlukan suatu skill tertentu untuk bisa melakukan administrasi dan manajemen database agar dapat diperoleh struktur dan relasi data yang optimal
2. Memerlukan kapasitas penyimpanan baik eksternal (disk) maupun internal (memory) agar DBMS dapat bekerja cepat dan efisien.
3. Harga DBMS yang handal biasanya sangat mahal
4. Kebutuhan akan sumber daya (resources) biasanya cukup tinggi
5. Konversi dari sistem lama ke sistem DBMS terkadang sangat mahal, disamping biaya pengadaan perangkat keras dan perangkat lunak, diperlukan pula biaya pelatihan.
6. Apabila DBMS gagal menjalankan misinya maka tingkat kegagalan menjadi lebih tinggi karena banyak pengguna yang bergantung pada sistem ini.

Level Abstraksi Dalam DBMS

Data dalam DBMS dapat digambarkan dalam tiga level abstraksi, yaitu konseptual, fisik, dan eksternal. Data definition language (DDL) digunakan untuk mendefinisikan skema eksternal dan konseptual. Semua vendor DBMS menyertakan perintah SQL untuk menggambarkan aspek dari skema fisik. Informasi tentang skema konseptual, eksternal dan fisik disimpan dalam katalog sistem.
Memiliki beberapa tinjauan (views), skema konseptual tunggal (logical) dan skema fisik.
• Menggambarkan bagaimana cara user melihat data
• Skema konseptual mendefinisikan struktur logika
• Skema fisikal menggambarkan file dan indeks yang digunakan
Skema didefinisikan menggunakan DDL (Data Definition Language), data dimodifikasi dengan menggunakan DML (Data Management Laguage). Sebuah aplikasi mengirimkan pesan permintaan (request/query) ke DBMS, pesan tersebut dapat berupa operasi-operasi dasar sebagai berikut:
1. Menambah informasi (operasi C - Create)
2. Mengekstrak informasi (operasi R - Read)
3. Memodifikasi data (operasi U - Update)
4. Menghapus data (operasi D - Delete)

Keempat operasi dasar tersebut dapat kita sebut CRUD ini merupakan tugas pokok dari DBMS.

Berikut ini disajikan tabel beberapa DBMS yang terkenal.
DBMS Perusahaan
Access Microsoft Corporation
DB2 IBM
Informix IBM
Ingress Computer Associate
mySQL The MySQL Company
Oracle Oracle Corporation
Postgres SQL Postgres


DBMS untuk model data berbasis objek biasanya dinamakan sebagai Object Oriented Data Base Management System (OODBMS). Beberapa OODBMS yang terkenal adalah sebagai berikut:

OODBMS Perusahaan
Gemstone Gemstone System
Matisse ADB Inc.
Versant Versant
Jeevan W3 Apps.
Vision Insyte
Objectivity Objectivity Inc.
ObjectStone Object Design Inc.

Perlu ditambahkan disini bahwa beberapa DBMS berbasis objek sebenarnya tetap menggunakan file data relasional biasa, dengan kata lain, programnya berbasis objek tetapi datanya masih model relasional biasa. Software seperti ini biasanya disebut sebagai Object Oriented Relational DataBase Management System (OORDBMS), misalnya Visual dBase.

Arsitektur DBMS

Salah satu tujuan dari DBMS adalah untuk menyediakan sarana antar muka (interface) dalam meng-akses data secara efisien tanpa harus melihat kerumitan atau detail tentang cara data direkam dan dipelihara. DBMS memiliki arsitektur untuk melakukan abstraksi dari data sehingga dapat diperoleh independensi data-program.

Pada tahun 1975, badan standarisasi nasional Amerika ANSI-SPARC (American National Standards Institute – Standards Planning and Requirements Committee) menetapkan tiga level abstraksi dalam database, yaitu:

1. Level Eksternal (external level) atau Level Pandangan (view level)
2. Level Konseptual (conceptual level)
3. Level Internal (internal level) atau Level Fisik (physical level)

Level Eksternal adalah level yang berhubungan langsung dengan pengguna database. Pada level ini pengguna (user) hanya bisa melihat struktur data sesuai dengan keperluannya sehingga setiap user bisa memiliki pandangan (view) yang berbeda dari user lainnya. Pada level ini pula dimungkinkan pandangan user berbeda dengan representasi fisik dari data, misalkan untuk data hari secara fisik data direkam dalam bentuk kode (1, 2, 3, dst) sedang user melihat data dalam bentuk teks nama hari (Ahad, Senin, Selasa, …). Data yang dilihat oleh user seakan-akan berasal dari satu file, secara fisik mungkin diambil dari beberapa file yang berelasi.
Arsitektur Sistem Manajemen Basis Data

Level Konseptual adalah level dari para administrator database, pada level ini didefinisikan hubungan antar data secara logik, sehingga diperlukan struktur data secara lengkap. Para administrator database memahami bagaimana satu view dijabarkan dari beberapa file data, demikian pula pada saat perancangan database mereka dapat saja membagi data menjadi beberapa file agar dapat diakses dan disimpan secara efisien.
Level Internal adalah level dimana data disimpan secara fisik dalam bentuk kode, teks, angka, bit. Pada level ini didefinisikan allokasi ruang penyimpanan data, deskripsi data dalam penyimpanan, kompressi data (agar lebih hemat), dan enkripsi data (agar lebih aman).

Agar independensi data dapat dicapai maka disediakan pemetaan antar lapisan (level), yatiu pemetaan eksternal-konseptual dan pemetaan konseptual-internal. Pada pemetaan eksternal-konseptual, DBMS dapat memetakan field-field data dari user-view ke dalam struktur data yang sesungguhnya. Pada pemetaan konseptual-internal, DBMS dapat menemukan rekaman fisik dari data yang didefinisikan pada struktur logik.

Bahasa DBMS

Implementasi bahasa DBMS bervariasi sesuai dengan variasi perusahaan yang merancangnya, namun pada prinsipnya bahasa ini bisa dikategorikan ke dalam tiga komponen bahasa, yaitu:
1. Data Definition/Decription Language (DDL)
2. Data Manipulation Language (DML)
3. Device Control Media Language (DCML)

DDL adalah komponen bahasa DBMS yang digunakan untuk mendefinisikan struktur data antara lain perintah untuk membuat tabel baru (CREATE) dimana terdefinisi komponen/field data dengan tipe dan panjangnya, mengubah index (INDEX, REINDEX) agar setiap rekord dalam satu file data dapat diakses melalui indeks-nya, mengubah struktur (MODIFY STRUCT) dari file data, dan sebagainya. Komponen bahasa ini banyak digunakan oleh para administrator basisdata pada saat merencanakan atau membangun file-file basisdata.

DML adalah komponen bahasa DBMS yang digunakan untuk memanipulasi data, komponen ini diperlukan oleh para pengguna untuk memanipulasi data, antara lain perintah-perintah untuk melakukan hal-hal berikut ini:
* mengambil data dari basisdata (LIST, DISPLAY)
* menambah data kedalam basisdata (INSERT, APPEND)
* meremajakan data yang ada dalam basisdata (UPDATE)
* menghapus data yang tidak diperlukan (DELETE)
* meng-urutkan data (SORT)
* menghitung frekuensi data (COUNT)
* mencari data (SEEK, FIND)
DML dapat dibedakan atas dua macam, yaitu DML Prosedural dan DML Non-Prosedural. Pada DML Prosedural ketika data akan dimanipulasi maka perintah harus disertai dengan perintah-perintah bagaimana data diakses dari file database. Perintah DML Prosedural biasanya termuat dalam bahasa pemrograman tingkat tinggi (high level programming language) seperti COBOL, C, C++ dan sebagainya. Pada DML non-Prosedural data dapat dimanipulasi langsung tanpa harus memerintahkan bagaimana data dibaca dari file. Perintah DML non-Prosedural biasanya digunakan dalam bahasa-bahasa DBMS seperti pada dBase, Access, Paradox, FoxPro, SQL, dan sebagainya.

DCML adalah komponen bahasa DBMS yang digunakan untuk mengatur perekaman atau penyimpanan data secara fisik. Komponen bahasa DCML digunakan oleh operator-operator sistem basisdata didalam mengatur file-file data secara fisik. Perintah-perintah yang termuat dalam komponen ini, antara lain perintah perintah: merekam (Write Record, Create Table), menghapus (Drop, Delete Table).

Beberapa contoh DBMS yang terkenal dapat dilihat pada tabel sebagai berikut :

Beberapa Contoh DBMS
DBMS Vendor
Access Microsoft Corporation
DB2 IBM
Informix Ibm
Ingres Computer Associate
MySQL The MySQL AB Company
Oracle Oracle Corporation
Sybase Sybase Inc.
Microsoft SQL Server Microsoft Corporation
Visual dBASE Borland
Visual FoxPro Microsoft Corporation

Jenis data pada basis data
DBMS masa kini mendukung berbagai jenis data, dari teks, suara, hingga gambar. Contoh berbagai nama tipe data pada berbagai DBMS adalah sebagai berikut:
Contoh berbagai jenis data
Tipe Data Keterangan
Character (Visual dBASE) Menyatakan tipe data untuk
Char (SQL) menyimpan deretan karakter
Text (Access) seperti nama orang
Alpha (Paradox) atau nama mobil

Memo (Access dan Visual dBASE) Untuk menyimpan deretan karakter dengan
Text (PostgresSQL) ukuran yang besar (melebihi 256 karakter)


Number (Access) Untuk menyimpan data bilangan
Numeric (Visual dBASE)

Date/Time (Access) Untuk menyimpan data jam dan tanggal

Date (Visual dBASE) Untuk menyimpan tanggal
Date (PostgresSQL)

Time (PostgresSQL) Untuk menyimpan data jam

Currency (Access) Untuk menyimpan data uang
Money (Paradox)

Yes/No (Access) Untuk menyimpan data logika
Logical (Visual dBASE) (benar atau salah)
Bool (PostgresSQL)

OLE (Visual dBASE) Untuk menyimpan OLE. Dapat berupa
OLE Object (Access) objek seperti gambar atau bahkan suara

Binary (Visual dBASE) Untuk menyimpan data gambar atau suara

Graphics (Paradox) Untuk menyimpan data gambar
Hyperlink (Access) Untuk menyimpan data hyperlink

Jenis basis data

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.

Struktur data dan data base

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.