BASIS DATA
Pengertian Basis Data (Database)
Pengertian Data
· Data merupakan fakta mengenai suatu objek seperti manusia, benda, peristiwa, konsep, keadaan dan sebagainya yang dapat dicatat dan mempunyai arti secara implisit.
Pengertian Basis Data
· Data dapat dinyatakan dalam bentuk angka, karakter atau simbol, sehingga bila data dikumpulkan dan saling berhubungan maka dikenal dengan istilah basis data (database) [Ramez2000].
· Sedangkan menurut George Tsu-der Chou basis data merupakan kumpulan informasi bermanfaat yang diorganisasikan ke dalam aturan yang khusus. Informasi ini adalah data yang telah diorganisasikan ke dalam bentuk yang sesuai dengan kebutuhan seseorang [Abdul1999].
· Basis data menurut Fabbri dan Schwab adalah sistem berkas terpadu yang dirancang terutama untuk meminimalkan duplikasi data.
Pengertian Informasi
· Menurut Encyclopedia of Computer Science and Engineer, para ilmuwan di bidang informasi menerima definisi standar informasi yaitu data yang digunakan dalam pengambilan keputusan.
Hirarki Data
Data diorganisasikan kedalam bentuk elemen data (field), rekaman (record), dan berkas (file). Definisi dari ketiganya adalah sebagai berikut:
· Elemen data adalah satuan data terkecil yang tidak dapat dipecah lagi menjadi unit lain yang bermakna. Misalnya data siswa terdiri dari NIS, Nama, Alamat, Telepon atau Jenis Kelamin.
· Rekaman merupakan gabungan sejumlah elemen data yang saling terkait. Istilah lain dari rekaman adalah baris atau tupel.
· Berkas adalah himpunan seluruh rekaman yang bertipe sama.
Pengertian DBMS (Database Management System)
Database biasanya memiliki dua bagian utama yaitu :
1. File yang memegang basis data fisik
2. Perangkat lunak sistem manajemen basis data (DBMS) menggunakan aplikasi untuk mengakses data.
Database yang telah tersedia dalam suatu media penyimpanan (file) tidak akan pernah bisa diakses tanpa adanya suatu perangkat lunak yang familiar dengannnya.
Kumpulan/gabungan database dengan perangkar lunak sistem manajemen basis data tersebut disebut dengan Database Management System (DBMS).
Secara umum, DBMS diartikan sebagai suatu program komputer yang digunakan untuk memasukkan, mengubah, menghapus, memanipulasi dan memperoleh data/informasu dengan praktis dan efisien.
Tujuan utama dari DBMS adalah untuk menyediakan suatu lingkungan yang mudah dan efisien untuk penggunaan, penarikan dan penyimpanan data dan informasi.
Pengelolaan manajemen basis data meliputi hal :
1. Pendefenisian struktur penyimpanan
2. Penyediaan mekanisme untuk manipulasi informasi
3. Penyediaan keamanan dalam penarikan dan penyimpanan data.
Dibandingkan dengan sistem yang berbasis kertas, DBMS memiliki 4 keunggulan :
• Kepraktisan à DBMS menyediakan media penyimpan permanen yang berukuran kecil namun banyak menyimpan data jika dibandingkan dengan menggunakan kertas.
• Kecepatan à Komputer dapat mencari dan menampilkan informasi yang dibutuhkan dengan cepat.
• Mengurangi kejemuan à Pekerjaan yang berulang-ulang dapat menimbulkan kebosanan bagi manusia, sedangkan mesin tidak merasakannya.
• Update to date àInformasi yang tersedia selalu berubah dan akurat setiap.
Keuntungan DBMS antara lain:
a) Kemubaziran data terkurangi
b) Integrasi data
c) Independensi data
d) Konsistensi data
e) Berbagi data
f) Sekuritas data
g) Penggunaan data lebih mudah
Kelemahan-kelemahan DBMS antara lain:
a) Biaya. Kebutuhan untuk medapatkan perangkat lunak dan perangkat keras yang tepat cukup mahal, termasuk biaya pemeliharaan dan sumber daya manusia yang mengelola basis data tersebut.
b) Sangat kompleks. Sistem basis data lebih kompleks dibandingkan dengan proses berkas, sehingga dapat mudah terjadinya kesalahan dan semakin sulit dalam pemeliharaan data.
c) Resiko data yang terpusat. Data yang terpusat dalam satu lokasi dapat beresiko kehilangan data selama proses aplikasi.
Komponen Utama DBMS
Komponen utama dari DBMS adalah sebagai berikut :
1. Perangkat keras
Perangkat keras berupa komputer dan bagian-bagian didalamnya seperti prosesor, memori dan harddisk. Perangkat inilah yang melakukan pemrosesan dan juga untuk menyimpan basis data.
2. Data
Data di dalam basis data mempunyai sifat terpadu dan berbagi
• Terpadu berarti berkas data yang ada pada basis data saling terkait, tetapi kemubaziran data tidak akan terjadi atau hanya terjadi sedikit sekali.
• Berbagi data berarti bahwa data dapat dipakai oleh sejumlah pengguna
3. Perangkat lunak
Perangkat lunak, dalam hal ini DBMS, berkedudukan antara basis data dan pengguna. Perangkat lunak inilah yang berperan melayani permintaan pengguna.
4. Pengguna
Pengguna dapat diklasifikasikan menjadi tiga kategori ;
• Pengguna Akhir
Pengguna akhir dapat dibagi menjadi 2 yaitu
a) Pengguna aplikasi yaitu orang yang mengoperasikan program aplikasi yang dibuat oleh pemrogram aplikasi.
b) Pengguna interaktif yaitu orang yang dapat memberikan perintah pada antarmuka basis data yang tersedia.
• Pemrogram Aplikasi
• Administrasi Basis Data
Administrasi Basis Data adalah orang yang bertanggung jawab terhadap pengelolaan basis data yang terdiri dari : mendefenisikan basis data, menentukan isi basis data, dan menentukan sekuritas basis data.
Fungsi-Fungsi DBMS
1. Data Defenition – penjelasan struktur data yang baru untuk suatu batas data, pemindahan struktur data dari basis data, serta pemodifikasiaan struktur dari data yang ada.
2. Data Maintenance – memasukkan data baru ke dalam struktur data yang ada, memperbaharui data di dalam struktur data yang ada, dan menghapus data dari struktur data yang ada.
3. Data Retrieval – Peng-query-an data yang ada oleh pengguna akhir dan pengabstrakan data sebagai penggunaan oleh program aplikasi.
4. Data Control – menciptakan dan mengawasi penggunaan basis data, pembatasan akses untuk data di dalam basis data, dan pengawasan kinerja basis data.
Pengertian Sistem Basis Data
Gabungan antara basis data dan perangkat lunak SMBD (Sistem Manajemen Basis Data) termasuk di dalamnya program aplikasi yang dibuat dan bekerja dalam satu sistem disebut dengan Sistem Basis Data.
Klasifikasi DBMS
Sistem Basis Data dapat diklasifikasikan menjadi tiga bagian, yang terdiri dari:
a. Klasifikasi berdasarkan model data. Klasifikasi ini terdiri dari model data hirarki, model data jaringan, model data relasional.
1. Model data hirarki
· Dalam model ini, data disusun menurut struktur pohon yang merupakan bentuk lain dari abstraksi data untuk basis data akademi. Pada puncak hirarki diesbut dengan akar (root). Tiap entitas tingkat atas (parent) mempunyai satu atau lebih sub-entitas (children) sehingga setiap entitas hanya boleh mempunyai satu induk, tetapi dapat mempunyai banyak anak.
· Pada mode data hirarki, hubungan antar entitas dinyatakan dalam satu-banyak (one to many) atau satu-satu (one to one). Dalam satu Universitas terdapat banyak Fakultas dan setiap Fakultas terdapat banyak Dosen atau banyak Mahasiswa, dan seterusnya. Tanda panah menunjukkan derajat keterhubungan “banyak”.
· Untuk menampilkan semua mata kuliah pada Fakultas tertentu harus dilakukan dalam dua tahap. Yang pertama adalah menampilkan rekaman semua Dosen yang mengajar di Fakultas tersebut, kemudian baru mata kuliah yang dipegang oleh para Dosen. Dalam hal ini penampilan data terlihat kurang efisien, sebab menggunakan entitas perantara (dosen) yang harus ditampilkan juga. Dikarenakan kunci data yang digunakan untuk menghubungkan antar entitas diberi kode dalam struktur data, maka untuk jumlah entitas perantara yang sedikit masih dapat dikatakan efisien.
· Kelemahan lain pada model data hirarki adalah tidak dapat melakukan pencarian data pada field. Misalnya dalam entitas mata kuliah tidak dapat ditampilkan hanya mata kuliah dengan jumlah SKS tertentu, sebab field “Jumlah SKS” bukan sebagai kunci data. Hal ini masih dapat dilakukan dengan mengubah struktur data dengan memberi hubungan khusus yang digunakan untuk mengubah struktur database. Kelebihan model ini adalah sangat mudah dipahami dan mudah dalam pembaharuan data [Waliyanto2000].
2. Model Data Jaringan
Dalam model ini setiap entitas dapat mempunyai banyak induk dan banyak anak. Pada gambar menunjukkan entitas mata kuliah mempunyai dua induk, yaitu langsung berhubungan dengan Fakultas dan Dosen.
Dalam model ini lebih sedikit terdapat data rangkap, namun lebih banyak terdapat hubungan antar entitas, sehingga akan menambah informasi hubungan yang harus disimpan dalam database. hal ini akan menambah volume dan kerumitan dalam penyimpanan berkas data.
3. Model Data Relasional
Dalam model ini setiap field dapat dijadikan kunci data. Data rekaman disusun dari nilai yang berhubungan (record). Baris-baris ini akan membentuk tabel yang umunya tersimpan dalam satu berkas (file).
Dengan menggunakan model ini, pencarian field dari suatu tabel atau banyak tabel dapat dilakukan dengan cepat. Pencarian atribut yang berhubungan pada tabel yang berbeda dapat dilakukan dengan menghubungkan terlebih dahulu tabel-tabel tersebut dengan menggunakan atribut yang sama (joint operation).
Keuntungan yang didapat dengan menggunakan model ini adalah sebagai berikut [Waliyanto2000]:
· Model ini lebih luwes karena nilai data dalam tabel tidak ada pembatasan dalam berbagai proses pencarian data.
· Model ini mempunyai latar belakang teori matematika.
· Pengorganisasian model relasional sangat sederhana, sehingga mudah dipahami.
· Basis data yang sama biasanya dapat disajikan dengan lebih sedikit terjadi data rangkap (redudancy data).
Sedangkan beberapa kelemahan model ini adalah [Waliyanto2000]:
· Lebih sulit dalam implementasinya terutama untuk data dengan jumlah yang besar dan tingkat kompleksitasnya tinggi.
· Proses pencarian informasi lebih lambat, karena beberapa tabel tidak dihubungkan secara fisik. Dalam manipulasi data yang menggunakan beberapa tabel akan memerlukan waktu yang lama, karena tabel-tabel harus dihubungkan terlebih dahulu.
Beberapa produk DBMS terkenal yang menggunakan model relational antara lain :
a) DB2 (IBM)
b) Rdb/VMS (Digital Equipment Corporation)
c) Oracle (Oracle Corporation)
d) Informix (Informix Corporation)
e) Ingres (ASK Group Inc.)
f) Sybase (sybase Inc.)
g) Keluarga R:Base (Micorim Corporation)
h) Keluarga dBase ( Ashton-Tate, sekarang bagian dari Borland International) antara lain dBase III Plus, dBase IV, serta keluarga Visual dBase.
i) Microsoft SQL (Microsoft Corporation)
j) Visual Fox Pro (Microsoft Corporation)
k) Microsoft Access (Microsoft Corporation)
b. Klasifkasi berdasarkan lokasi penyimpanan data, yaitu DBMS terpusat dan DBMS terdistribusi.
Dalam DBMS terpusat basis data disimpan dalam satu komputer media penyimpan sehingga pengguuna sistem mengakses data dari pusat. DBMS terdistribusi, basis data tersebar pada penyimpanan tiap terminal pengguna (client). Antar pengguna dapat mengakses data secara langsung tanpa perlu melalui pusat penyimpanan. DBMS ini memerlukan sistem kontrol yang rumit.
c. Klasifikasi berdasarkan tujuan DBMS digunakan yaitu tujuan umum (general purpose) dan tujuan khusus (special purpose). Untuk tujuan umum dapat digunakan untuk berbagai tujuan dengan memperlakukan data sama menurut penggunaannya contoh aplikasinya adalah DBASE, ORACLE, FOXBASE dan sebagainya. DBMS tujuan khusus dirancang dan digunakan untuk keperluan tertentu, sebagai contoh pengelolaan data karyawan pada perusahaan Asuransi.
Macam Perintah DBMS
Semua DBMS paling tidak mempunyai dua macam perintah yang digunakan untuk mengelola dan mengorganisasikan data, yaitu :
1. Bahasa Defenisi Data (DDL / Data Defenition Language)
2. Bahasa Manipulasi Data (DML / Data Manipulation Language)
Selain itu sekarang telah berkembang perintah yang tergolong DCL (Data Control Language) yang berkaitan dengan sekuritas terhadapa basis data.
BASIS DATA RELASIONAL
Pengertian Bit, Byte, Field, Record, File
· Bit merupakan bagian data yang terkecil yang bisa diwakili dengan numeric, symbol-symbol khusus, gambar-gambar dan alphabetis.
· Byte adalah kumpulan dari bit-bit yang sejenis. Satu Byte identik dengan 1 character. (1Byte=8bit)
· Field adalah sekumpulan byte-byte yang sejenis.
|
NIM
|
NAMA
|
ALAMAT
|
0705012539
|
Abdulah
|
Benda Raya No.4
|
0705012540
|
Aminah
|
Ciledug Tengah No.4
|
· Record adalah suatu baris data dalam suatu relasi
· File (dalam hal ini Table) merupakan kumpulan dari record yang sejenis dan mempunyai elemen yang sama, atribut yang sama namun berbeda data valuenya.
Elemen – Elemen Basis Data Relasional
A. Kolom (field)
Kumpulan data sejenis yang menempati satu kolom. Di dalam basis data biasanya orang menggunakan nama field sebagai atribut.
Dibawah ini diberikan contoh field/atribut dari suatu tabel :
- Mahasiswa : NIM, NAMA, ALAMAT, RT, RW, KOTA, KODEPOS
- Mobil : NO_MOBIL, WARNA, JENIS, CC
- Dosen : NID, NAMA, KEAHLIAN, PENGASUHMATAKULIAH, STATUS
- Pegawai : NIP, NAMA, ALAMAT, KEAHLIAN
Ada beberapa tipe field/atribut yang perlu diperhatikan:
1. Atribut Komposisi dan Atomic
Biasanya terdiri dari beberapa atribut yang lebih kecil dengan arti yang bebas dari atribut itu sendiri. Atribut seperti ini disebut sebagai atribut komposisi. Contoh : atribut nama mempunyai atribut yang lebih kecil yaitu nama_depan, nama_tengah, dan nama_belakang.
Ada juga atribut yang tidak dapat terbagi ke dalam beberapa atribut kecil, atribut seperti ini disebut sebagai atribut atomic. Contoh : atribut NIM untuk Mahasiswa.
2. Derived Attribute
Kondisi dimana ada dua atau lebih atribut yang berelasi, misalkan atribut umur dan tgllahir untuk mahasiswa. Nilai atribut umur dapat ditentujan dengan tanggal sekarang dan tgllahir mahasiswa yang bersangkuran. Atribut umur ini disebut derived atribut dan dikatakan bahwa atribut umur ini dihasilkan dari atribut tgllahir.
3. Null Value Attribute
Kondisi dimana suatu object instance tidak memiliki nilai untuk salah satu atributnya. Atribut ini tidak akan mempengaruhi object tersebut. Misalnya : Atribut Hoby pada mahasiswa.
4. Mandatory Value Attribute
Kondisi dimana suatu object instance harus memiliki nilai untuk setiap atau salah satu atributnya. Misalnya : NIM dan Nama untuk Mahasiswa. Jika tidak diisikan maka akan mempengaruhi mahasiswa tersebut.
5. Inherit
Merupakan suatu kondisi dimana suatu objek adalah spesialisasi obejk lain, maka objek spesialisasi itu inherit semua atribut dan objek relasi yang dispesialisasikan.
B. Baris(Record)
Record adalah kumpulan dari data yang berisikan informasi tunggal dalam 1 baris.
C. Tabel
Tabel merupakan kumpulan data yang secara logis yang terkait. Biasanya disebut dengan entitas.
D. Degree
Degree/derajat dari suatu relasi merupakan banyaknya atribut yang berada di dalamnya. Relasi yang hanya memiliki satu atribut akan berderajat satu (relaso unary). Relasi dengan dua atribut disebut binary. Dan relasi dengan tiga atribut dinamakan ternary. Untuk banyak atribut biasa digunakan istilah n-ary.
Contoh :
NIM
|
NAMA
|
ALAMAT
|
0705012539
|
Abdulah
|
Benda Raya No.4
|
0705012540
|
Aminah
|
Ciledug Tengah No.4
|
Dari tabel diatas dikatakan berderajat tiga karena terdiri dari 3 field/atribut.
E. KUNCI (KEY)
Key adalah elemen record yang dipakai untuk menemukan record tersebut pada waktu akses atau biasanya digunakan untuk mengidentifikasikan setiap entity/record/baris.
Jenis-jenis key antara lain :
1. Superkey
Merupakan satu atau lebih atribut (kumpulan atribur dari suatu tabel yang dapat digunakan untuk mengidentifikasikan record dari tabel secara unik.
2. Candidate Key
Superkey dengan jumlah atribut minimal,disebut dengan candidate key. Candidate key tidak boleh berisi atribut dari tabel ian, sehingga candidate key sudah pasti superkey namun belum tentu sebaliknya.
Contoh :
NIM
|
NAMA
|
NO_KWITANSI
|
JUMLAH
|
995555011000
|
HARUN
|
637
|
50000
|
995555011001
|
BAHAR
|
412
|
60000
|
995555011002
|
MARDI
|
980
|
85000
|
995555011003
|
MARNO
|
222
|
45000
|
|
3. Primary Key
Salah satu atribut dari candidate key dapat dipilij/ditentuka menjadi primary key dengan ketiga kriteria sebagai berikut :
o Key tersebut lebih natural untuk digunakan sebagai acuan.
o Key tersebut lebih sederhana
o Key tersebut terjamin keunikannya.
4. Alternate Key
Setiap atribut dari candidate key yang tidak terpilih menjadi primary key, maka atribut tersebut dinamakan alternate key.
5. Foreign Key
Merupkan sembarang atribut yang menunjukkan kepada primary key pada tabel lain. Foreign key akan terjadi pada suatu relasi yang meiliki kardinalitas one to many (satu ke banyak) atau many-many (banyak ke banyak). Foreign key biasanya selalu diletakkan pada tabel/relasi yang mengarah ke banyak.
Contoh : terdapat dua relasi yaitu relasi dosen dan jadwal, kardinalitas relasi tersebut adalah satu orang dosen dapat mengajar lebih dari satu mata kuliah. Relasi dosen memiliki kardinalitas relasi satu. Sedangkan relasi jadwal memiliki kardinalitas relasi many, maka foreign key pada relasi/tabel dosen dan jadwal diletakkan pada relasi jadwal (yang memilik relasi kardinalitas relasi many) dapat dilihat pada tabel dibawah ini.
Relasi Jadwal
KD-
MK
|
MATA
KULIAH
|
SKS
|
KD-
DOSEN
|
MI-01
|
DELPHI
|
3
|
DT-01
|
MI-02
|
ORACLE
|
2
|
DT-02
|
MI-03
|
SQL
|
4
|
DT-03
|
MI-04
|
JAVA
|
4
|
DT-04
|
Primary Key Foreign Key
Relasi Dosen
KD-DOSEN
|
NAMA_DOSEN
|
DT-01
|
ALBAHRA
|
DT-02
|
ANDI
|
DT-03
|
SUCIANA
|
Primary Key
6. External Key
External Key merupakan suatu lexical attribute (atau himpunan lexical attribute) yang nilai-nilainya selalu mengidentifikasikan satu object instance.
RELASI ANTARA TABEL
Kardinalitas (Cardinality)
Kardinalitas relasi menunjukkan jumlah maksimum tupel yang dapat berelasi dengan entitas pada entitas yang lain. Dari sejumlah kemungkinan banyaknya hubungan antar entitas tersebut, kardinalitas relasi merujuk kepada hubungan maksimum yang terjadi dari entitas yang satu ke entitas yang lain dan begitu juga sebaliknya. Terdapat 3 macam kardinalitas relasi (Ladjamudin,2005:147) :
a. One to One
Tingkat hubungan satu ke satu, dinyatakan dengan satu kejadian pada entitas yang pertama, hanya mempunyai satu hubungan dengan satu kejadian pada entitas yang kedua dan sebaliknya.
Yang berarti setiap tupel pada entitas A berhubungan dengan paling banyak satu tupel pada entitas B, dan begitu juga sebaliknya setiap tupel pada entitas B berhubungan dengan paling banyak satu tupel pada entitas A.
b. One to Many atau Many to One
Tingkat hubungan satu ke banyak adalah sama dengan banyak ke satu. Tergantung dari arah mana hubungan tersebut dilihat. Untuk satu kejadian pada entitas yang pertama dapat mempunyai banyak hubungan dengan kejadian pada entitas yang kedua. Sebaliknya satu kejadian pada entitas yang kedua hanya dapat mempunyai satu hubungan dengan satu kejadian pada entitas yang pertama.
- One to Many (Satu ke Banyak)
Yang berarti satu tupel pada entitas A dapat berhubungan dengan banyak tupel pada entitas B, tetapi tidak sebaliknya, di mana setiap tupel pada entitas B, berhubungan dengan paling banyak satu tupel pada entitas A.
- Many to One (Banyak ke Satu)
Yang berarti setiap tupel pada entitas B dapat berhubungan dengan banyak tupel pada entitas A, tetapi tidak sebaliknya, di mana setiap tupel pada entitas A berhubungan dengan paling banyak satu tupel pada entitas B.
c. Many to Many
Tingkat hubungan banyak ke banyak terjadi jika tiap kejadian pada sebuah entitas akan mempunyai banyak hubungan dengan kejadian pada entitas lainnya. Baik dilihat dari sisi entitas yang pertama, maupun dilihat dari sisi entitas yang kedua.
Yang berarti setiap tupel pada entitas A dapat berhubungan dengan banyak tupel pada entitas B, dan demikian juga sebaliknya, di mana setiap tupel pada entitas B dapat berhubungan dengan banyak tupel pada entitas A.
Pada tabel A terdapat primary key begitu juga dengan tabel B memiliki primary key. Primary key dari tabel A dan tabel B dijadikan Foreign Key pada Tabel C. Antara primary key di tabel A maupun di tabel B akan membentuk relasi dengan foreign key pada tabel C. Dengan demikian tabel A dan tabel B dikatakan sebagai tabel acuan sedangkan tabel C dikatakan sebagai tabel relasi.
0 komentar:
Posting Komentar