1. KONSEP
DASAR BASIS DATA
A. PENDAHULUAN
Pemrosesan basis data sebagai perangkat andalan sangat diperlukan oleh berbagai
institusi dan perusahaan. Dalam pengembangan sstem 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.
Dengan memanfaatkan teknologi jaringan, kemampuan basis data dapat dapat dioptimalkan.
Misalnya transaksi antar cabangpada sebuah perbankan secara online. Begitu
banyak yang dapat diperoleh dengan pemanfaatan basis data. Basis data dapat
meningkatkan daya guna perangkat computer yang mungkin tadinya hanya untuk
keperluan game atau pengetikan dengan aplikasi office.
B. DEFINISI BASIS DATA
Basis data adalah kumpulan data
yang saling berelasi. Data sendiri
merupakan fakta mengenai obyek, orang, dan lain-lain. Data dinyatakan dengan
nilai (angka,deretan karakter, atau symbol). Basis data dapat didefinisikn
dalam berbagai sudut pandang seperti berikut:
- Himpunan kelompok data yang saling berhubungan yang diorganisasikan sedemikian rupa sehingga kelak dapat dimanfaatkan dengan cepat dan mudah.
- Kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian rupa tanpa pengulangan (redundancy) yang tidak perlu, untuk memenuhi kebutuhan.
- Kumpulan file/table/arsip yang saling berhubungan yang disimpan dalam media penyimpanan elektronik.
C. TUJUAN BASIS DATA
Basis data bertujuan untuk mengatur data sehingga
diperoleh kemudahan, ketepatan, dan kecepatan dalam pengambilan kembali. Untuk
mencapai tujuan, syarat sebuah basis data yang baik adalah sebagai berikut;
- Tujuan adanya redundansi dan inkonsistensi data
Redudansi terjadi jika suatu informasi disimpan di
beberapa tempat. Misalnya, ada data mahasiswa yang memuat NIM, nama, alamat,
dan atribut lainnya, sementara kita punya data lain tentang data KHS mahasiswa
yang isinya yang terdapat NIM, nama, mata kuliah, dan nilai.
2) Kesulitan Pengaksesan Data
Basis data memiliki fasilitas untuk melakuakan
pencarian informasi dengan menggunakan Query taupun dari tool untik melihat
tabelnya. Dengan fasilitas ini. Kita bias secara langsung melihat data dari
software DBMS-nya. Selain itu, baiss data bias dihubungkan dengan program
aplikasi sehingga memudahkan pengguna dalam mengakses informasi. Misalnya
program aplikasi untuk kasir yang terhubung dengan basis data . pengguna cukup
mengguna fasilitas pencarian ataupun laporan. Yang tersedia pada program
aplikasi untuk mendapatkan informasi stok, laporan penjualan, dan lain-lain. Dalam
basis data, informasi yang diperolah dari kumpulan data bisa berupa keseluruhan
data, sebagai data, data denga filter tertentu, data yang terurut, ataupun data
summary.
Sebagai contoh sederhana ketika kita ingin
mencatat data alamat dan telepon dari kolega kita. Sebagai orang akan
menggunakan buku alamat. Metode pencatat dilakukan dilakukan dengan menuliskan
data setelah catatan terakhir. Ketika kita menginginkan informasi alamat
seseorang kita akan mencari karena informasi yang tersaji tidak terurut. Ada
juga orang mencatat dengan mengelompokan nama berdasarkan abjad. Hal ini akan
lebih mempermudah pencarian karena kita tidak perlu membaca keseluruhan data,
tetapi cukup dalam satu kelompok saja. Tapi masalah baru muncul ketika jumlah
data untuk sekelompokan data abjad teretentu telalu banyak sedangkan kelompok
abjad yang lain masih terlalu sedikit. Dalam metode ini, ada banyak ruang tidak
terpakai jika memberikan ruang yang sama untuk setiap kelompok. Dalam hal
pencarian, kesulitan akan kita temui ketika informasi yang kita ingin cari
dengan kata kunci sebagagian namanya. Misalnya kita akan mencari alamat Anto,
sementara yang tercatat dalam buku catatan adalah Mardianto. Tentu saja kita
tidak akan dapat menemukannya dalam kelompok data dengan huruf depan A. selain
itu, tidak selamanya kata kunci yang diketahui adalah dari nama, tetapi bisa
saja yang diketahui adalah nomer teleponnya, sedangkan yang ingin kita cari
adalah alamat dan namanya. Hal ini merupakan masalah baru dari pencatatan data
dengan buku. Basis data bisa memberikan solusi terhadap
permasalahan-permasalahan tersebut diatas.
3) Multiple
User
Basis data memungkinkan pengguna data bersama-sama
oleh banyak pengguna pada saat yang bersamaan atau pada saat yang berbeda. Dengan
meletakkan basis data pada bagian server yang bisa diakses kesemua pengguna dari
banyak klient, kita sudah menyediakan akses kesemua pengguna dari computer
klient ke sumber informasi yaitu basis data. Tentu saja pengaksesan oleh pengguna-pengguna
ini disesuaikan dengan hak aksesnya. Misalnya sebuah perguruan tinggi memiliki
data tentang mahasiswa, pembayaran, dan lain-lain yang diletakan dalam sebuah
basis data. Bagian Akademi akan bisa mengakses data-data akademi mahasiswa,
Bagian Keuangan akan diijinkan mengakses data pembayaran mahasiswa, sementara
mahasiswa hanya bisa melihat status akademi/keuangan yang berhubungan dengan
dirinya saja. Hal ini sangat dimungkinkan dengan penyimpanan data dalam basis
data.
D.
MANFAAT/KELEBIHAN BASIS DATA
Banyak
memanfaat yang dapat kira peroleh dengan menggunakan basis data. Manfaat/kelebihan
basis data diantaranya adalah:
1) Kecepatan dan kemudahan (speed)
Dengan menggunakan basis data pengambilan
informasi dapat dilakukan dengan cepat dan mudah. Basis data memiliki kemampuan
dalam mengelompokan, mengurutkan bahkan perhitungan dengan metematika. Dengan perancangan
yang benar, maka penyajian informasi akan dapat dilakukan dengan cepat dan
mudah.
2) Kebersamaan pemakai
Sebuah basis data dapat digunakan oleh
banyak user san banyak aplikasi. Untuk data-data yang diperlukan oleh banyak
orang/bagian. Tidak perlu dilakukan pencatatan dimasing-masing bagian, tetapi
cukup dengan satu basis data untuk dipakai bersama. Misalnya data mahasiswa
dalam suatu perguruan tinggi, dibutuhkan oleh banyak bagian, diantaranya:
bagian akademik, bagian keuangan, bagian kemahasiswaan, dan perpustakaan. Tidak
harus semua bagian ini memiliki catatan dan semua bagian bisa mengakses data
tersebut sesuai dengan keperluannya.
3) Pemusatan control data
karena cukup dengan satu basis data unutk
banyak keperluan, pengontrolan terhadap data juga cukup dilakuan di satu tempat
saja. Jika ada perubahan data alamat mahasiswa misalnya, maka tidak perlu kita
meng-update semua data dimasing-masing bagian tetapi cukup hanya disatu basis
data.
4) Efesiensi ruang penyimpanan (space)
Dengan pemakain bersama, kita tidak perlu
menyediakan tempat penyimpanan diberbagai tempat, tetapi cukup satu saja
sehingga ini akan menghemat ruang penyimpanan data yang dimilikioleh sebuah
organisasi. Dengan teknik perancangan basis data yang benar, kita akan
menyederhanakan penyimpanan sehingga tidak semua data harus disimpan.
5) Keakuratan (Accuracy)
Penerapan secara ketat aturan tipe data,
domain data, keunikan data, hubungan antara data, dan lain-lain, dapat menekan
keakuratan dalam pemasukan/penyimpanan data.
6)
Ketersediaan (availability)
Dengan
basis data kita dapat mem-backup data, memilah-milah data mana yang masih
diperlukan dan data mana yang perlu kita simpan ke tempat lain. Hal ini
mengingat pertumbuhan transaksi suatu organisasi dari waktu ke waktu membutuhkan
media penyimpanan yang semakin besar.
7) Keamanan (Security)
Kebanyakan DBMS dilengkapi dengan
fasilitas manajemen pengguna diberikan hak akses yang berbeda-beda sesuai
dengan pengguna dan posisinya. Basis data bisa diberikan passwordnya untuk
membatasi orang yang mengaksesnya.
8) Kemudahan dalam pembuatan program aplikasi
baru
Pengguna basis data merupakan bagian dari
perkembangan teknologi. Dengan adanya basis data pembuatan aplikasi bisa
memanfaatkan kemampuan dari DBMS, sehingga pembuatan aplikasi tidak perlu
mengurusi penyimpanan data, tetapi cukup mengatur interface untuk pengguna.
9) Pemakain secara langsung
Basis data memiliki fasilitas untuk
melihat datanya secara langsung dengan tool yang disediakan oleh DBMS. Untuk
melihat data, langsung ke table ataupun menggunakan query. Biasanya yang
menggunakan fasilitas ini adalah user yang sudah ahli, atau database
administrator.
10) Kebebasan data (Data Independence)
Jika sebuah program telah selesai dibuat,
dan ternyata ada perubahan isi/struktur data. Maka dengan basis data, perubahan
ini hanya perlu dilakukan pada level DBMS tanpa harus membongkar kembali
program aplikasinya.
11) User view
Basis data penyediaan pandangan yang
berbeda-beda untuk tiap-tiap pengguna. Misalnya kita memiliki data-data dari
perusahaan yang bergerak dibidang retail. Data yang ada berupa data barang,
penjualan, dan pembelian. Ada beberapa jenis pengguna yang memerlukan informasi
terkait dengan data perusahaan tresebut. Mereka adalah pelanggan, kasir, bagian
gudang, bagian akutansi dan manajer. Tidak semua data boleh diakses oleh semua
pengguna. Misalnya kasir dia hanya boleh berhak melihat informasi nama barang
dan harga jualnya. Sementara itu dia berhak untuk memasukan data penjualan .
berbeda dengan pelanggan yang hanya melihat data keberadaan barang dan harga
jual tetapi tidak berhak memasukan atau merubah data. Sementara itu bagian
akutansi berhak melihat keuntungan dari tiap-tiap barang untuk menganalisa data
akutansinya.Basis data mampu memberikan layanan organisasi seperti ini.
2. LINGKUNGAN BASIS DATA
Tujuan utama dari sistem basis data adalah menyediakan pemakai
melalui suatu pandangan abstrak mengenai data, dengan menyembunyikan
detail dari bagaimana data disimpan dan dimanipulasikan. Oleh karena
itu, titik awal untuk perancangan sebuah basis data haruslah abstrak dan
deskripsi umum dari kebutuhan-kebutuhan informasi suatu organisasi
harus digambarkan di dalam basis data.
Lebih jauh lagi, jika sebuah basis data merupakan suatu sumber yang bisa digunakan bersama maka setiap pemakai membutuhkan pandangan yang berbeda-beda terhadap data di dalam basis data. Untuk memenuhi kebutuhan ini, arsitektur komersial basis data yang banyak digunakan telah tersedia saat ini dan telah mengalami perluasan yaitu arsitektur ANSI-SPARC.
Materi ini menyediakan latar belakan informasi yang penting pada basis data, diantaranya tiga tingkatan arsitektur ANSI-SPARC, pengenalan model data, fungsi yang disediakan oleh DBMS multi user.
Tiga Tingkatan Arsitektur Basis data ANSI-SPARC
Ada 3 tingkat dalam arsitektur basis data yang bertujuan membedakan cara pandang pemakai terhadap basis data dan cara pembuatan basis data secara fisik.
3 tingkatan arsitektur basis data :
1. Tingkat Eksternal (External Level)
Tingkat eksternal merupakan cara pandang pemakai terhadap basis data. Pada tingkat ini menggambarkan bagian basis data yang relevan bagi seorang pemakai tertentu. Tingkat eksternal terdiri dari sejumlah cara pandang yang berbeda dari sebuah basis data. Masing-masing pemakai merepresentasikan dalam bentuk yang sudah dikenalnya. Cara pandang secara eksternal hanya terbatas pada entitas, atribut dan hubungan antar entitas (relationship) yang diperlukan saja.
Tingkat eksternal merupakan cara pandang pemakai terhadap basis data. Pada tingkat ini menggambarkan bagian basis data yang relevan bagi seorang pemakai tertentu. Tingkat eksternal terdiri dari sejumlah cara pandang yang berbeda dari sebuah basis data. Masing-masing pemakai merepresentasikan dalam bentuk yang sudah dikenalnya. Cara pandang secara eksternal hanya terbatas pada entitas, atribut dan hubungan antar entitas (relationship) yang diperlukan saja.
2. Tingkat Konseptual (Conseptual Level)
Tingkat konseptual merupakan kumpulan cara pandang terhadap basis data. Pada tingkat ini menggambarkan data yang disimpan dalam basis data dan hubungan antara datanya.
Hal-hal yang digambarkan dalam tingkat konseptual adalah :
- semua entitas beserta atribut dan hubungannya
- batasan data
- informasi semantik tentang data
- keamanan dan integritas informasi
Tingkat konseptual merupakan kumpulan cara pandang terhadap basis data. Pada tingkat ini menggambarkan data yang disimpan dalam basis data dan hubungan antara datanya.
Hal-hal yang digambarkan dalam tingkat konseptual adalah :
- semua entitas beserta atribut dan hubungannya
- batasan data
- informasi semantik tentang data
- keamanan dan integritas informasi
Semua cara pandang pada tingkat eksternal berupa data yang dibutuhkan
oleh pemakai harus sudah tercakup di dalam tingkat konseptual atau dapat
diturunkan dari data yang ada. Deskripsi data dari entitas pada tingkat
ini hanya terdiri dari jenis data dan besarnya atribut tanpa
memperhatikan besarnya penyimpanan dalam ukuran byte.
3. Tingkat Internal (Internal Level)
Tingkat internal merupakan perwujudan basis data dalam komputer. Pada tingkat ini menggambarkan bagaimana basis data disimpan secara fisik di dalam peralatan storage yang berkaitan erat dengan tempat penyimpanan / physical storage.
Tingkat internal memperhatikan hal-hal berikut ini :
- alokasi ruang penyimpanan data dan indeks
- deskripsi record untuk penyimpanan (dengan ukuran penyimpanan untuk data elemen
- penempatan record
- pemampatan data dan teknik encryption
Tingkat internal merupakan perwujudan basis data dalam komputer. Pada tingkat ini menggambarkan bagaimana basis data disimpan secara fisik di dalam peralatan storage yang berkaitan erat dengan tempat penyimpanan / physical storage.
Tingkat internal memperhatikan hal-hal berikut ini :
- alokasi ruang penyimpanan data dan indeks
- deskripsi record untuk penyimpanan (dengan ukuran penyimpanan untuk data elemen
- penempatan record
- pemampatan data dan teknik encryption
Data Independence
Tujuan utama dari 3 tingkat arsitektur adalah memelihara kemandirian data (data independence) yang berarti perubahan yang terjadi pada tingkat yang lebih rendah tidak mempengaruhi tingkat yang lebih tinggi.
Tujuan utama dari 3 tingkat arsitektur adalah memelihara kemandirian data (data independence) yang berarti perubahan yang terjadi pada tingkat yang lebih rendah tidak mempengaruhi tingkat yang lebih tinggi.
Ada 2 jenis data independence, yaitu:
1. Physical Data Independence
bahwa internal schema dapat diubah oleh DBA tanpa menggangu conceptual schema. Dengan kata lain physical data independence menunjukkan kekebalan conceptual schema terhadap perubahan internal schema.
bahwa internal schema dapat diubah oleh DBA tanpa menggangu conceptual schema. Dengan kata lain physical data independence menunjukkan kekebalan conceptual schema terhadap perubahan internal schema.
2. Logical Data Independence
bahwa conceptual schema dapat diubah oleh DBA tanpa menggangu external schema. Dengan kata lain logical data independence menunjukkan kekebalan external schema terhadap perubahan conceptual schema.
bahwa conceptual schema dapat diubah oleh DBA tanpa menggangu external schema. Dengan kata lain logical data independence menunjukkan kekebalan external schema terhadap perubahan conceptual schema.
Prinsip data independence adalah salah satu hal yang harus diterapkan di dalam pengelolaan sistem basis data dengan alasan-alasan sbb :
1. DBA dapat mengubah isi, lokasi, perwujudan dalam organisasi basis data tanpa mengganggu program-program aplikasi yang sudah ada.
2. Pabrik / agen peralatan / software pengolahan data dapat memperkenalkan produk- produk baru tanpa mengganggu program-program aplikasi yang sudah ada.
3. Untuk memindahkan perkembangan program-program aplikasi
4. Memberikan fasilitas pengontrolan terpusat oleh DBA demi keamanan dan integritas data dengan memperhatikan perubahan-perubahan kebutuhan pengguna.
Model Data
Model data adalah kumpulan konsep yang terintegrasi yang menggambarkan data, hubungan antara data dan batasan-batasan data dala suatu organisasi. Fungsi dari sebuah model data untuk merepresentasikan data sehingga data tersebut mudah dipahami.
Model data adalah kumpulan konsep yang terintegrasi yang menggambarkan data, hubungan antara data dan batasan-batasan data dala 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.
1. Model Data Berbasis Objek
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
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
2. Model Data Berbasis Record
Pada 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 :
- model data relasional (relational)
- model data hierarkhi (hierarchical)
- model data jaringan (network)
Pada 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 :
- model data relasional (relational)
- model data hierarkhi (hierarchical)
- model data jaringan (network)
Fungsi DBMS
Layanan-layanan yang sebaiknya disediakan oleh database management system adalah :
Layanan-layanan yang sebaiknya disediakan oleh database management system adalah :
1. Penyimpanan, pengambilan dan perubahan data
Sebuah DBMS harus menyediakan kemampuan menyimpan, mengambil dan merubah data dalam basis data.
2. Katalog yang dapat diakses pemakai
menyediakan sebuah katalog yang berisi deskripsi item data yang disimpan dan diakses oleh pemakai.
3. Mendukung Transaksi
Menyediakan mekanisme yang akan menjamin semua perubahan yang berhubungan dengan transaksi yang sudah ada atau yang akan dibuat.
4. Melayani kontrol concurrency
Sebuah DBMS harus menyediakan mekanisme yang menjamin basis data ter-update secara benar pada saat beberapa pemakai melakukan perubahan terhadap basis data yang sama secara bersamaan.
5. Melayani recovery
Menyediakan mekanisme untuk mengembalikan basis data ke keadaan sebelum terjadinya kerusakan pada basis data tersebut.
Menyediakan mekanisme untuk mengembalikan basis data ke keadaan sebelum terjadinya kerusakan pada basis data tersebut.
6. Melayani autorisasi
Sebuah DBMS harus menyediakan mekanisme untuk menjamin bahwa hanya pemakai yang berwenang saja yang dapat mengakses basis data.
Sebuah DBMS harus menyediakan mekanisme untuk menjamin bahwa hanya pemakai yang berwenang saja yang dapat mengakses basis data.
7. Mendukung komunikasi data
8. Melayani Integrity
Sebuah DBMS bertujuan untuk menjamin semua data dalam basis data dan setiap terjadi perubahan data harus sesuai dengan aturan yang berlaku.
Sebuah DBMS bertujuan untuk menjamin semua data dalam basis data dan setiap terjadi perubahan data harus sesuai dengan aturan yang berlaku.
9. Melayani data independence
Sebuah DBMS harus mencakup fasilitas untuk mendukung kemandirian program dari struktur basis data yang sesungguhnya.
Sebuah DBMS harus mencakup fasilitas untuk mendukung kemandirian program dari struktur basis data yang sesungguhnya.
10. Melayani utility
Sebuah DBMS sebaiknya menyediakan kumpulan layanan utility.
Sebuah DBMS sebaiknya menyediakan kumpulan layanan utility.
www.gunadarma.ac.id