Konsep Basis Data
Konsep Basis Data
PENDAHULUAN
1
BAB II
PEMBAHASAN
2
melakukan pembaharuan atau penggantian (update) data, serta pembuatan report
data.
Software
Software merupakan komponen dari DBMS itu sendiri danprogram
aplikasi termasuk sistem operasi. Program aplikasi ada yang ditulis
dengan bahasa pemrograman ke-tiga (3GL) seperti C, C++, Java, Visual
Basic, COBOL, Fortran dan ada juga yang ditulis dengan bahasa
pemrograman ke-empat (4GL) seperti SQL. Antara fisik basis data
(tempat di mana sesungguhnya suatu basis data dapat tersimpan
dalam media ) dengan pengguna terdapat suatu piranti lunak yang disebut
sistem manajemen basis data atau juga disebut DBMS. Semua
kebutuhan akses oleh pengguna seperti pembentukan file, penambahan
data, penghapusan dan lain-lain dilakukan oleh DBMS. Satu hal
lagi, bahwa DBMS juga berfungsi untuk memberikan suatu batas agar
sesame pengguna basis data tidak perlu memikirkan berbagai hal yang
berkaitan dengan detil pada level perangkat keras (misalnya metoda
akses).
Pemakai ( User )
Bagi pemakai dapat berinteraksi dengan basis data dan memanipulasi data
dalam program yang ditulis dalam bahasa pemograman.
3
Database administrator adalah orang atau group yang bertanggungjawab
mengimplementasikan sistem database di dalam suatu organisasi
End user adalah orang yang berada di depan workstation dan berinteraksi
secara langsung dengan sistem.
Programmer aplikasi, orang yang berinteraksi dengan database melalui
cara yang berbeda. Programmer merupakan tenaga ahli komputer
yang berfungsi untuk mengembangkan program-program aplikasi yang
diperlukan dalam manajemen basis data. Seringkali suatu aplikasi basis
data memang perlu disiapkan dalam bentuk program, misalnya
untuk bentuk tampilan layar dalam proses penyiapan dan pemuktahiran
data, pembuatan laporan-laporan baik yang melalui printer ataupun
layar monitor dan lain-lain. Program aplikasi basis data dapat
dikembangkan dengan menggunakan bahasa pemrograman SQL.
Program aplikasi yang dikembangkan dapat juga ditempelkan pada
layar web pada aplikasi internet, sehingga bagi pengguna akhir akan
menjadi sangat mudah melakukan akses ke dalam basis data.
Contoh bahasa menggunakan komponen-komponen tersebut adalah SQL
(Structured Query Language). SQL merupakan bahasa standar yang digunakan
oleh kebanykan aplikasi-aplikasi DBMS.
4
2.3 Prinsip dan Tujuan Sistem 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;
1. Tujuan dibangunnya basis data adalah sebagai berikut :
• Kecepatan & kemudahan (speed)
Dengan memanfaatkan basis data, memungkinkan kita untuk dapat
menyimpan data atau melakukan perubahan/ manipulasi terhadap data atau
menampilkan kembali data tersebut secara lebih cepat & mudah.
• Efisiensi ruang penyimpanan (space)
Karena keterkaitan yang erat antara kelompok data dalam sebuah
basisdata,maka redundansi (pengulangan) pasti akan selalu ada, sehingga
akan memperbesar ruang penyimpanan. Dengan basisdata, efisiensi ruang
penyimpanan dapat dilakukan dengan menerapkan sejumlah pengkodean,
atau dengan membuat relasi-relasi antar kelompok data yang saling
berhubungan.
• Keakuratan (accuracy)
Pengkodean atau pembentukan relasi antar data bersama dengan penerapan
aturan/batasan (constraint), dmain data, keunikan data, dsb, yang secara ketat
dapat diterapkan dalam sebuah basis data, sangat berguna untuk menekan
ketidak akuratan penyimpanan data.
• Ketersediaan (availability)
Dengan pemanfaatan jaringan komputer, maka data yang berada di suatu
lokasi/cabang dapat juga diakses (tersedia/available) bagi lokasi/cabang lain.
• Kelengkapan (completeness)
Kelengkapan data yang disimpan dalam sebuah database bersifat relatif, bisa
jadi saat ini dianggap sudah lengkap, tetapi belum tentu pada suatu saat
dianggap lengkap. Untuk mengakomodasi kelengkapan data, seperti
• Keamanan (security)
Aspek keamanan dapat diterapkan dengan ketat, dengan begitu kita dapat
menentukan pemakai basis data serta obyek-obyek didalamnya ,serta jenis-
jenis operasi apa saja yang boleh dilakukannya.
• Kebersamaan pemakaian (sharability)
Basis data yang dikelola dengan aplikasi multi user dapat memenuhi
kebutuhan ini.
5
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.
6
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 atau
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
7
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.
8
Sekelompok data yang tersusun dalam satu baris rekaman (record/tuple) dan
tersimpan dalam basis data disebut dengan instansi (instance) atau kejadian
(occurences).
9
individu yang mewakili sesuatu yang nyata dan dapat dibedakan dengan yang
lainnya.
• Atribut
Atribut merupakan kolom pada sebuah relasi. Setiap entitas pasti memiliki
aribut yang mendeskripsikan karakter dari entitas tersebut. Penentuan atau
pemilihan atribut-atribut yang relevan bagi sebuah entitas merupakan hal
penting dalam pembentukan model data.
• Tuple
Tuple merupakan baris pada sebuah relasi atau kumpulan elemen-elemen yang
saling berkaitan menginformasikan tentang suatu entitas secara lengkap. Satu
record mewakili satu data atau informasi tentang seseorang, misalnya : NPM,
nama mahasiswa, alamat, kota, dll.
• Domain
Kumpulan nilai yang valid untuk satu atau lebih atribut
• Derajat (degree)
Jumlah atribut dalam sebuah relasi
• Cardinality
Jumlah tupel dalam sebuah relasi
Relational Key
• Super key
Satu atribut / kumpulan atribut yang secara unik mengidentifikasi sebuah
tuple di dalam relasi.
• Candidate key
Suatu atribut atau satu set minimal atribut yang mengidentifikasikan secara
unik suatu kejadian spesifik dari entitas. Atribut di dalam relasi yang biasanya
mempunyai nilai unik. Satu set minimal dari atribut menyatakan secara tak
langsung dimana kita tidak dapat membuang beberapa atribut dalam set tanpa
merusak kepemilikan yang unik.
• Primary key
Merupakan satu atribut atau satu set minimal atribut yang tidak hanya
mengidentifikasikan secara unik suatu kejadian spesifik, tapi juga dapat
mewakilisetiap kejadian dari suatu entitas. Candidate key yang dipilih untuk
mengidentifikasikan tuple secara unik dalam relasi. Setiap kunci candidate
10
key punya peluang menjadi primary key, tetapi sebaiknya dipilih satu saja
yang dapat mewakili secara menyeluruh terhadap entitas yang ada.
• Alternate key
Merupakan candidate key yang tidak dipakai sebagai primary key atau
Candidate key yang tidak dipilih sebagai primary key.
• Foreign key (Kunci Tamu)
Atribut dengan domain yang sama yang menjadi kunci utama pada sebuah
relasi tetapi pada relasi lain atribut tersebut hanya sebagai atribut biasa. Kunci
tamu ditempatkan pada entitas anak dan sama dengan primary key induk
direlasikan.
11
• Analisa lingkungan operasi dan pemrosesan data:mempelajari sistem yang
sedang berjalan baik itu masih menggunakan sistem manusl ataupun sudah
mengggunakan sistem computer
• Daftar pertanyaan dan wawancara: pada calon pemakai yang dipandang
potensial untuk meperoleh spesifikasi informasi dan proses yang diperlukan.
12
2.6.2 Keahlian Basis Data
Meningkatnya peran basisdata dalam industri, kebutuhan akan tenaga-
tenaga ahli yang berhubungan dengan basisdata juga mengalami peningkatan.
Beberapa keahlian yang biasanya diperlukan dunia industri dalam bidang basis
data :
1. Bisinis analisis
2. Data modeling
3. Database design
4. Database administration
5. Database manajemen
1. Microsoft. Access
Microsoft Access (atau Microsoft Office Access) adalah sebuah program
aplikasi basis data komputer relasional yang ditujukan untuk kalangan rumahan
dan perusahaan kecil hingga menengah. Aplikasi ini merupakan anggota dari
beberapa aplikasi Microsoft Office. Aplikasi ini menggunakan mesin basis data
Microsoft Jet Database Engine, dan juga menggunakan tampilan grafis yang
intuitif sehingga memudahkan pengguna. Versi terakhir adalah Microsoft Office
Access 2007 yang termasuk ke dalam Microsoft Office System 2007.
Microsoft Access dapat menggunakan data yang disimpan di dalam format
Microsoft Access, Microsoft Jet Database Engine, Microsoft SQL Server, Oracle
Database, atau semua kontainer basis data yang mendukung standar ODBC. Para
pengguna/programmer yang mahir dapat menggunakannya untuk
mengembangkan perangkat lunak aplikasi yang kompleks, sementara para
programmer yang kurang mahir dapat menggunakannya untuk mengembangkan
perangkat lunak aplikasi yang sederhana. Access juga mendukung teknik-teknik
pemrograman berorientasi objek, tetapi tidak dapat digolongkan ke dalam
perangkat bantu pemrograman berorientasi objek.
2. My SQL
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.
SQL adalah sebuah konsep pengoperasian database, terutama untuk pemilihan
atau seleksi dan pemasukan data, yang memungkinkan pengoperasian data
dikerjakan dengan mudah secara otomatis.
Selain itu MySQL juga memiliki beberapa keistimewaan, antara lain :
13
Portability
MySQL dapat berjalan stabil pada berbagai sistem operasi seperti Windows,
Linux, FreeBSD, Mac Os X Server, Solaris, Amiga, dan masih banyak lagi.
Open Source
MySQL didistribusikan secara open source (gratis), dibawah lisensi GPL
sehingga dapat digunakan secara cuma-cuma.
Multiuser
MySQL dapat digunakan oleh beberapa user dalam waktu yang bersamaan
tanpa mengalami masalah atau konflik.
Performance tuning
MySQL memiliki kecepatan yang menakjubkan dalam menangani query
sederhana, dengan kata lain dapat memproses lebih banyak SQL per satuan
waktu.
Column types
MySQL memiliki tipe kolom yang sangat kompleks, seperti signed atau
unsigned integer, float, double, char, text, date, timestamp, dan lain-lain.
Command dan functions
MySQL memiliki operator dan fungsi secara penuh yang mendukung
perintah Select dan Where dalam query.
Security
MySQL memiliki beberapa lapisan sekuritas seperti level subnetmask, nama
host, dan izin akses user dengan sistem perizinan yang mendetail serta
password terenkripsi.
Scalability dan limits
MySQL mampu menangani database dalam skala besar, dengan jumlah
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.
Connectivity
MySQL dapat melakukan koneksi dengan client menggunakan protokol
TCP/IP, Unix soket (UNIX), atau Named Pipes (NT).
Localisation
MySQL dapat mendeteksi pesan kesalahan pada client dengan menggunakan
lebih dari dua puluh bahasa. Meskipun demikian, bahasa Indonesia belum
termasuk didalamnya.
Interface
MySQL memiliki interface (antar muka) terhadap berbagai aplikasi dan
bahasa pemrograman dengan menggunakan fungsi API (Application
Programming Interface).
Clients dan tools
MySQL dilengkapi dengan berbagai tool yang dapat digunakan untuk
administrasi database, dan pada setiap tool yang ada disertakan petunjuk
online.
Struktur tabel
MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani
ALTER TABLE, dibandingkan database lainnya semacam PostgreSQL
ataupun Oracle.
14
3. SQL Server
Microsoft SQL Server adalah sebuah sistem manajemen basis data relasional
(RDBMS) produk Microsoft. Bahasa kueri utamanya adalah Transact-SQL yang
merupakan implementasi dari SQL standar ANSI/ISO yang digunakan oleh
Microsoft dan Sybase. Umumnya SQL Server digunakan di dunia bisnis yang
memiliki basis data berskala kecil sampai dengan menengah, tetapi kemudian
berkembang dengan digunakannya SQL Server pada basis data besar.
4. Oracle
Basis data Oracle adalah basis data relasional yang terdiri dari kumpulan
data dalam suatu sistem manajemen basis data RDBMS. Perusahaan perangkat
lunak Oracle memasarkan jenis basis data ini untuk bermacam-macam aplikasi
yang bisa berjalan pada banyak jenis dan merk perangkat keras komputer
(platform). Basis data Oracle ini pertama kali dikembangkan oleh Larry Ellison,
Bob Miner dan Ed Oates lewat perusahaan konsultasinya bernama Software
Development Laboratories (SDL) pada tahun 1977. Pada tahun 1983, perusahaan
ini berubah nama menjadi Oracle Corporation sampai sekarang.
5. Postgre SQL
Postgre SQL adalah sebuah sistem basis data yang disebarluaskan secara bebas
menurut Perjanjian lisensi BSD. Piranti lunak ini merupakan salah satu basis data
yang paling banyak digunakan saat ini, selain MySQL dan Oracle. PostgreSQL
menyediakan fitur yang berguna untuk replikasi basis data. Fitur-fitur yang
disediakan PostgreSQL antara lain DB Mirror, PGPool, Slony, PGCluster.
6. Fire Bird
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 di diarahkan dan di-maintain oleh FirebirdSQL
Foundation. Ia merupakan turunan dari Interbase versi open source milik Borland.
Modul-modul kode baru ditambahkan pada Firebird dan berlisensi di bawah
Initial Developer's Public License (IDPL), sementara modul-modul aslinya dirilis
oleh Inprise berlisensi di bawah InterBase Public License 1.0.
7. Paradox
Borland paradox adalah suatu program pembangun database yang sangat terkenal.
Database yang dibangun dengan aplikasi ini berada dalam beberapa file yang
berakhiran .db, .mb, dan .px. dimana file .db menyimpan informasi tabel dari
database, file .mb menyimpan isi dari tipe data, memo, formatted memo, graphic,
OLE, dan binary dari tabel pada file.db. database ini dapat dikenali dan diolah
oleh aplikasi Borland Delphi. Dengan aplikasi ini, kita dapat membuat suatu
database yang terdiri dari tabel, relasi dan lain-lain.
Borland paradox menyediakan berbagai tipe data. Pemilihan tipe data yang
digunakan secara tepat akan sangat berguna, misalnya dalam hal menghemat
memory, kecepatan proses, ketelitian perhitungan dan lain-lain.
15
BAB III
PENUTUP
3.1 Kesimpulan
Basis data atau sering disebut database adalah kumpulan informasi
yang disimpan dadalam computer secara sistematik sehingga dapat diperiksa
menggunakan suatu program computer untuk memperoleh informasi dari basis
data tersebut.
Perangkat lunak yang digunakan untuk memanggil dan mengelola
query basis data disebut sistem manajemen basis data (database management
system DBMS). Sistembasis data dipelajari dalam ilmu informasi basis data
adaLah suatu gabungan file yang saling berhubungan dan dikordinasi secara
terpusat. Pendekatan database memerlukan data sebagai sumber daya organisasi
yang seharusnya dipergunakan serta dikelola oleh seluruh bagian dari organisasi
tersebut, bukan hanya satu departemen atau fungsi tertentu saja. Fokusnya adalah
integrasi data dan pembagian data dengan seluruh pemakai yang berhak
memakainya. Terdapat berbagai program atau aplikasi yang bertujuan untuk
mempercepat proses basis data antara lain Microsoft Access, Oracle, My SQL,
SQL Server, Paradox, Postgre SQL, dan Fire Bird.
3.2 Saran
Untuk kemajuan tekhnologi computer maka diharapkan agar
perkembangan computer kedepan mampu mengubah pola fikir dan menjadikan
masyarakat Indonesia menjadi manusia yang kreatif dan inoatif, Serta tumbuhnya
kreatifitas hingga menghasilkan suatu karya yang berguna bagi manusia.
Diharapkan dengan adanya teknhnologi computer dapat dimanfaatkan sesuai
dengan kegunaan sebnarnaya yang mampu mempercerdas bangsa bukannya untuk
menghancurkan moral-moral bangsa. Kemajuan computer dimasa mendatang
diharapkan dapat membantu semua jenis pekerjan manusia sehingga mereka
mampu menyelesaikan pekerjaan mereka dengan cepat karena dimasa depan
teknologi akan semakin canggih dan pekerjaan dikerjakan dengan sistem
komputerisasi
16
DAFTAR PUSTAKA
Alpro, 1990. Seri Diktat Kuliah, Sistem Basis Data. Jakarta : University YARSI..
Yusuf, Heni. 1997. Sistem Data Base. Jakarta : Bina Sarana Informatika..
Marlinda, Linda. 2004. Sistem Basis Data. Yogyakarta : Andi.
http://ronawajah.wordpress.com/2007/06/26/sistem-bassis-data/ Diposkan oleh Maya
Putri AnjeLina di 4/23/2012.
http//images.fd90.multiply.multiplycontent.com.
LAMPIRAN
17