NIM : 4812020018
Kelas : TMJ 1 AeU
Dosen : Achmad Bachris
1. Buat rangkuman sepanjang 2 halaman mengenai hal terpenting yang dijelaskan pada bab ini.
Software yang dipakai dalam Database Management System:
- MySQL
MySQL adalah software yang menggunakan standar SQL yang bersifat multi-thread dan multi use.
Kelebihan MySQL adalah:
- Software sumber terbuka dibawah lisensi GPL.
- Free (bebas di download)
- Stabil dan tangguh
- Fleksibel dengan berbagai bahasa pemrograman
- Mampu menangani basis data dalam skala besar
- Mempunyai beberapa lapis sistem keamanan seperti subnetmask, host name, izin akses serta sandi terenkripsi
- Dukungan dari banyak komunitas dan kemudahan manajemen dari banyak komunitas dan kemudahan manajemen database serta mendukung transaksi
2. Oracle
3. Microsoft SQL server
4. Firebird
5. Visual Foxpro
6. Postgre SQL
7. dBase
8. IBM DB/2
9. Clipper
10. FoxPro
Arsitektur Sistem Basis Data
Arsitektur system basis data memberikan kerangka kerja bagi pembangunan basis data. Dan terbagi atas tiga level yaitu :
1. Internal/Physical Level: berhubungan dengan bagaimana data disimpan secara fisik (physical storage). Merupakan level terendah untuk merepresentasikan basis data. Record disimpan dalam media penyimpanan dalam format byte. Didefinisikan sebagai sebuah Skema Internal.
2. External /View Level, berhubungan dengan bagaimana data di representasikan dari sisi setiap pengguna dan merupakan level pengguna. Yang dimaksud dengan pengguna adalah programmer, end user atau DBA. Setiap user mempunyai ‘bahasa’ yang sesuai dengan kebutuhannya. Untukprogrammer, bahasa yang digunakan adalah bahasa pemrograman seperti C, COBOL, atau PL/I. Untuk end user, bahasa yang digunakan adalah bahasa query atau menggunakan fasilitas yang tersedia pada program aplikasi. Pada level eksternal ini, user dibatasi pada kemampuan perangkat keras dan perangkat lunak yang digunakan aplikasi basis data. Didefinisikan sebagai sebuah Skema Eksternal.
3. Conceptual/Logical Level yang menghubungkan antara internal & external level. Conceptual level adalah sebuah representasi seluruh muatan informasi yang dikandung oleh basis data. Tidak seperti level eksternal maka pada level conceptual, keberadaannya tidak memperhitungkan kekurangan perangkat keras maupun perangkat lunak pembangun aplikasi basis data. Didefinisikan sebagai sebuah Skema Konseptual
Model Data
a. Entity-relationship Model
E-R model didasarkan atas persepsi terhadap dunia nyata yang terdiri dari sekumpulan objek, disebut entity (entitas) dan hubungan antar objek tersebut, disebut relationship.
• Kotak persegi panjang, menggambarkan himpunan antar entitas
• Elip, menggambarkan atribut-atribut entitas
• Diamon, menggambarkan hubungan antara himpunan entitas
• Garis, yang menghubungkan antar objek dalam diagram E-R
b. Object-Oriented Model
• Model berorientasi objek berbasiskan kumpulan objek. Setiap objek berisi :
• Nilai yang disimpan dalam variable instant, dimana variable tersebut “melekat” dengan objek itu sendiri.
• Metoda : operasi yang berlaku pada objek yang bersangkutan.
• Objek-objek yang memiliki tipe nilai & metode yang sama dikelompokkan dalam satu kelas. Kelas disini mirip dengan tipe data abstrak pada bahasa pemrograman.
• Sending a message : sebuah objek dapat mengakses data sebuah objek yang lain hanya dengan memanggil metode dari objek tersebut.
c. Model-model lojik berbasis record
Data yang disimpan menggambarkan beberapa aspek dari suatu organisasi. Model data, adalah himpunan deksripsi data level tinggi yang dikonstruksi untuk menyembunyikan beberapa detail dari penyimpanan level rendah. Terdapat beberapa model dalam kelompok ini, antara lain :
· Model Relasional ( Relational Model)
Model relasional menggunakan kumpulan tabel-tabel untuk merepresentasikan data & relasi antar data-data tersebut. Setiap tabel terdiri atas kolom-kolom, dan setiap kolom mempunyai nama yang unik.
· Model Jaringan (Network Model )
Data dalam model jaringan direpresentasikan dengan sekumpulan record (Pascal),dan relasi antara data direpresentasikan oleh record & link. Link dipandang sebagai pointer. Record-record diorganisasikan sebagai graf Model jaringan distandarisasi pada tahun 1971 oleh Data Base Task Group (DBTG).
2. RDBMS (Relational Database Management System)
RDBMS adalah kependekan dari Relational
Database Management System. RDBMS adalah program yang melayani sistem basis
data yang entitas utamanya terdiri dari tabel-tabel yang mempunyai relasi dari
satu tabel ke tabel yang lain.
Suatu database terdiri dari banyak tabel.
Tabel ini terdiri dari banyak field yang merupakan kolomnya. Isi tiap baris
dari tabel inilah merupakan data.
Untuk membuat sistem basis data yang
terintegrasi maka antara satu tabel dengan tabel lain mempunyai hubungan yang
harus selalu diperlihara. Setiap tabel mempunyai sebuah primary key, primary
key ini kemudian dihubungkan dengan tabel kedua dan menjadi foreign key untuk
tabel kedua ini.
Dengan relational database ini maka data
akan secara konsisten disimpan di suatu tabel, kemudian tabel lain yang
membutuhkan data lainnya tinggal menghubungkan melalui foreign key.
Sebagai contoh adalah database kampus yang terdiri tabel_mahasiswa,
tabel_makakuliah dan nilai.
Field dari tabel_mahasiswa adalah NIM, nama, alamat, tanggal lahir dengan primary_key NIM
Field dari tabel_matakuliah adalah kode_matakuliah, nama_matakuliah, sks dengan primary_key kode_matakuliah.
Untuk tabel nilai kita hanya perlu field NIM, kode_matakuliah dan nilai. Di sini NIM dan kode_matakuliah merupakan foreign_key untuk tabel tabel_mahasiswa dan tabel_matakuliah.
Field dari tabel_mahasiswa adalah NIM, nama, alamat, tanggal lahir dengan primary_key NIM
Field dari tabel_matakuliah adalah kode_matakuliah, nama_matakuliah, sks dengan primary_key kode_matakuliah.
Untuk tabel nilai kita hanya perlu field NIM, kode_matakuliah dan nilai. Di sini NIM dan kode_matakuliah merupakan foreign_key untuk tabel tabel_mahasiswa dan tabel_matakuliah.
Berbagai macam relasi dalam database
1. one-to-one
2. one-to-many
3. many-to-many
RDBMS akan menjaga agar data-data yang
menjadi kunci relasi yang foreign_key dan primary_key ini merupakan data-data
yang benar-benar berkaitan satu dengan yang lain. Jika ada data yang salah
relasinya, maka RDMBS akan menolak data tersebut. Ini akan memudahkan pembuat
program (software developer) dalam melakukan coding karena dibantu pengecekan secara
otomatis oleh RDBMS.
3.a. 3 level arsitektur basis data:
1. Laval fisik/internal
Level ini merupakan level yang paling rendah yang menggambarkan bagaimana data disimpan secara fisik. Missal kita mamiliki data pegawai, data tersebut disimpan didalam disk berdasarkan atribut-atribut didalamnya.
Level ini merupakan level yang paling rendah yang menggambarkan bagaimana data disimpan secara fisik. Missal kita mamiliki data pegawai, data tersebut disimpan didalam disk berdasarkan atribut-atribut didalamnya.
2. Level konseptual/logika
Pada level ini menggambarkan basis data pada hubungan atau relasi antar entitas yang biasanya digambarkan dengan diagram-diagram/model
Pada level ini menggambarkan basis data pada hubungan atau relasi antar entitas yang biasanya digambarkan dengan diagram-diagram/model
3. Level pandangan pengguna (User View
Level)/Eksternal
Level ini adalah level tertinggi yang menggambarkan sebagian saja yang dilihat dan dari keseluruhan data base. Hal ini desebabkan dari beberapa pengguna(end user,programmer,DBA) sesuai dengan bahasa yang digunakan (tidak semua dibutuhkan).
Level ini adalah level tertinggi yang menggambarkan sebagian saja yang dilihat dan dari keseluruhan data base. Hal ini desebabkan dari beberapa pengguna(end user,programmer,DBA) sesuai dengan bahasa yang digunakan (tidak semua dibutuhkan).
a. Programmer : bahsa yang digunakan adalah bahasa
pemrograman seperti Java,C,COBOL dll.
b. End user : bahasa yang digunakan adalah bahasa
query atau menggunakan fasilitas yang tersedia pada program aplikasi. Pada
level ini user dibatasi pada perangkat keras maupun lunak yang digunakan pada
basis data.
3.b. Model Data adalah
sekumpulan perangkat konseptual untuk menggambarkan data, hubungan data,
semantik data atau makna data dan batasan data atau disebut juga dengan model
data logic.
Dalam perancangan
basis data, model data secara umum dapat dibagi menjadi beberapa, yaitu :
1. Model data berbasis
objek
2. Model data berbasis
record
3. Model data fisik
4. Model data
konseptual
dimana fungsi dari
model - model ini adalah sebagai berikut
1. Model data berbasis
objek
Model data berbasis
objek menggunakan konsep entitas, atribut dan hubungan antar entitas.
2. Model data berbasis
record
Digunakan untuk
menguraikan seluruh logika dalam struktur database, juga digunakan untuk
menguraikan implementasi dari system database. Hal itulah yang membedakan Model
data berbasis record dengan model data berbasis objek.
3. Model data fisik
Yaitu konsep bagaimana
data disimpan pada media penyimpanan (storage) dalam suatu susunan secara
fisik.
4. Model data konseptual
Model konseptual
bukanlah pendekatan proses informasi seorang programmer aplikasi, tetapi
merupakan kombinasi beberapa cara untuk memproses data untuk beberapa aplikasi.
Model konseptual tidak tergantung pada aplikasi individual, tidak tergantung
pada DBMS yang digunakan, tidak tergantuk pada hardware yang digunakan serta
tidak tergantung juga pada phisikal model.
3.c.
Entity-relationalship Model. Entity-relationalship
Model (E-R Model)didasarkan atas persepsi terhadap dunia nyata yang terdiri
dari sekumpulan objek, disebut entity (entitas) dan hubungan antar objek tersebut, disebut relationalship.
Entitas adalah objek d dunia nyata yang
bersifat unik. Setiap entitas memiliki atribut yang membedakannya dengan
entitatas yang lainnya. Contoh : entitas burung mempunyai atribut nama, jenis,
warna, habitat.
E-R model menggunakan diagram E-R yang
terdiri dari :
Kotak persegi panjang, menggambarkan
himpunan antar entitas.
Elip, menggambarkan atrubut-atribut entitas.
Diamon, menggambarkan hubungan antara himpunan
entitas.
Garis, yang menghubungkan antara objek dalam
diagram E-R.
Object-oriented Model. Object-oriented Model adalah model berorientasi objek berbasiskan kumpulan
objek, dimana setiap objek memeliki hal berikut :
Nilai yang disimpan dalam variable
instant, dimana variable tersebut "melekat" dengan objek itu sendiri.
Metoda, operasi yang berlaku pada objek yang
bersangkutan.
Objek-objek yang memiliki tipe nilai dan
metoda yang sama dikelompokkan dalam satu kelas. Kelas disini mirip dengan tipe
data abstrak pada bahasa pemograman.
Sending a message, sebuah objek dapat
mengakses data sebuah objek yang lain hanya dengan memanggil metoda dari objek
tersebut.
Dengan melihat pengertian dan hal-hal
yang berkaitan dengan kedua model tersebut sebenarnya kita sudah dapat melihat
dimana letak perbedaannya. Namun untuk lebih memperjelasnya marilah lihat
uraian perbedaan letak dari kedua model tersebut.
Pertama, dari segi komponen
yang ada di dalam kedua model tersebut. Komponen utama dari E-R model adalah
entitas, atribut dan relationanship, sedangkan pada objek-oriented model
komponen utamanya adalah nilai, metoda, dan sending a message.
Kedua, pada E-R model
karakteristik sebuah objek terletak pada atribut dari entitas, sedangakan pada
objek-oriented model terletak pada nilai atau variable yang "melekat"
pada objek.
Ketiga, pada E-R model tidak
digunakan penggunaan kelas, sedangkan pada objek-oriented model adanya
penngunaan kelas.
3.d. Model
hirarkis atau biasa disebut model pohon ini menggunakan
pola hubungan dengan istilah orang tua dan anak. Terdapat juga istilah simpul
(bercirikan kotak atau lingkaran). Simpul yang berada diatas yang terhubung ke
simpul pada level dibawahnya disebut orang tua. Setiap orang tua bisa memiliki
satu (hubungan 1:1) atau beberapa anak (hubungan 1:M), tetapi setiap anak hanya
memiliki satu orang tua. Simpul – simpul yang dibawahi oleh simpul orang tua
disebut anak. Adapun hubungan antara anak dan orang tua disebut cabang.
Perbedaannya adalah, record-record diorganisasikan sebagai tree (pohon)
daripada graf.
Model jaringan direpresentasikan dengan sekumpulan record (Pascal),dan relasi antar data yang direpresentasikan oleh record & lin. Model ini menyerupai model hirarki. Perbedaannya terdapat pada suatu simpul anak bisa memilki lebih dari satu orang tua. Model ini bisa menyatakan hubungan 1:1 (satu arang tua punya satu anak), 1:M (satu orang tua punya banyak anak), maupun N:M (beberapa anak bisa mempunyai beberapa orangtua). Pada model jaringan, orang tua disebut pemilik dan anak disebut anggota. Sebagai Contoh lihat gambar dibawah ini:
Model relasional berbeda dengan model jaringan & hirarki.Pada model data relasional pemodelan menggunakan tabel untuk merepresentasikan data & relasi antar data. Setiap tabel terdiri atas kolom, dan setiap kolom mempunyai nama variable tertentu.Inti dari model ini adalah relasi, yang dimisalkan sebagai himpunan dari record. Pada model relasional, skema atau deskripsi data pada model relasi ditentukan oleh nama, nama dari tiap field (Atribut atau kolom), dan tipe dari tiap field.
Kesimpulan:
Dari ketiga perbedaan model diatas, dapat kita simpulkan bahwa pada tiap model memiliki ciri yang berbeda. Seperti pada model relasional yang menggunakan table, model jaringan yang seperti pohon namun bisa memliki banyak orang tua dan anak, dan yang terakhir model hirarki yang hanya bisa memiliki satu orang tua-satu anak begitu sebaliknya.
Dari ketiga perbedaan model diatas, dapat kita simpulkan bahwa pada tiap model memiliki ciri yang berbeda. Seperti pada model relasional yang menggunakan table, model jaringan yang seperti pohon namun bisa memliki banyak orang tua dan anak, dan yang terakhir model hirarki yang hanya bisa memiliki satu orang tua-satu anak begitu sebaliknya.
3.e.