MATERI I
Pengantar Basis Data
Pengantar Basis Data
A. Pengertian File Tradisional & Basis Data
File Tradisional adalah file yang dimana setiap user mengimplementasikan
file yang dibutuhkan untuk aplikasi khusus sebagai bagian dari pemrograman
aplikasinya.
Basis data
adalah sekumpulan file-file yang mempunyai kaitan antara satu file dengan file yang
lain sehingga dapat membentuk suatu bangunan data untuk menginformasikan suatu
perusahaan atau instansi dalam batasan tertentu.
B. Perbedaan File Manajemen Tradisional & File
Manajemen Database
File Manajemen Tradisional :
- Orientasi program
- Sering terjadi kerangkapan data
- Kaku
File Manajemen Basis Data :
- Orientasi data
- Terkontrolnya kerangkapan data
- Luwes
Kelemahan File Tradisional :
- Timbulnya data rangkap & ketidak konsistenan
- Data tidak dapat digunakan bersama-sama
- Kesukaran dalam pengaksesan data
- Tidak fleksibel
- Data tidak standar
Kelemahan Basis Data :
- Storage yang digunakan besar
- Dibutuhkan tenaga spesialis
- Softwarenya mahal
- Kerusakan pada system database dapat mempengaruhi departemen lain yang terkait
C. Konsep Dasar Basis Data
Adalah sekumpulan file yang saling terkait sehingga membentuk sebuah
bangunan data untuk memberikan informasi dan merupakan tindak lanjut dari file
tradisional.
Istilah-istilah
yang ada dalam Basis Data:
1. Entititas adalah orang, tempat, kejadian atau konsep yang
informasinya direkam. Pada bidang kesehatan Entity adalah Pasien, Dokter,
Kamar.
2. Field adalah sebutan untuk mewakili suatu entity.
3. Record adalah kumpulan isi elemen data (atribut)
yang saling berhubungan menginformasikan tentang suatu entity secara lengkap.
4. Data Value adalah data aktual atau infomasi yang disimpan ditiap
data elemen. Isi atribut disebut nilai data.
5. Kunci Elemen Data adalah Tanda pengenal yang secara unik
mengidentifikasikan entitas dari suatu kumpulan entitas.
D. Komponen Basis Data
- DATA, data tersimpan secara terintegrasi dan dipakai secara bersama-sama
- HARDWARE, perangkat keras yang digunakan dalam mengelola sistem database
- SOFTWARE, perangkat lunak perantara antara pemakai dengan data fisik. perangkat lunak dapat berupa data base management system dan berbagai program aplikasi
- USER, sebagai pemakai sistem
Keuntungan
menggunakan Basis Data
- Mengurangi redundansi : Data yang sama pada beberapa aplikasi cukup disimpan sekali saja
- Menghindarkan inkonsistensi : Karena redundansi berkurang, sehingga umumnya update hanya sekali saja
- Terpeliharanya integritas data : Data tersimpan secara akurat
- Data dapat dipakai bersama-sama : Data yang sama dapat diakses oleh beberapa user pada saat bersamaan
- Memudahkan penerapan standarisasi : Menyangkut keseragaman penyajian data
- Jaminan sekuriti : Data hanya dapat diakses oleh yang berhak
- Menyeimbangkan kebutuhan : Dapat ditentukan prioritas suatu operasi, misalnya antara update (mengubah data) dengan retrieval (menampilkan data) didahulukan update
Kerugian
menggunakan Basis Data
- Mahal
- Diperlukan hardware tambahan
- CPU yang lebih besar
- Terminal yang lebih banyak
- Alat untuk komunikasi
- Biaya performance yang lebih besar
- Listrik
- Personil yang lebih tinggi klasifikasinya
- Biaya telekomunikasi yang antar lokasi / kota
- Kompleks
Prosedur backup & recovery sulit
Pengguna Basis Data
Pemakai database dibagi atas 3 klasifikasi, yaitusebagai berikut :
- Database Administrator (DBA) : Orang/team yang bertugas mengelola sistem database secara keseluruhan
- Programmer : Orang/team yang bertugas membuat program aplikasi yang mengakses database, dengan menggunakan bahasa pemrograman, seperti Clipper, VB, Oracle baik secara batch maupun online untuk berinteraksi dengan komputer
- End-user : Orang yang mengakses database melalui terminal, dengan menggunakan query-language atau program aplikasi yang dibuatkan oleh programmer
sumber :
MATERI II
SISTEM BASIS DATA

Sistem Basis Data adalah suatu sistem yang menyusun dan mengelola record-record dengan menggunakan komputer untuk menyimpan atau merekam serta memelihara data operasional lengkap sebuah organisasi/perusahaan sehingga mampu menyediakan informasi yang optimal yang diperlukan pemakai untuk proses mengambil keputusan. Salah satu cara menyajikan data untuk mempermudah modifikasi adalah dengan cara pemodelan data. Model yang akan dipergunakan pada pelatihan ini adalah Entity Relationship Model. Model Entity Relationship adalah representasi logika dari data pada suatu organisasi atau area bisnis tertentu dengan menggunakan Entity dan Relationship.
Entity/Entitas
- Adalah obyek di dunia nyata yang dapat dibedakan dari obyek lain.
- Entity Set/Kumpulan Entity adalah kumpulan dari entitas sejenis/dalam tipe sama.
- Entity set dapat berupa: Obyek fisik : rumah, kendaraan, pegawai dan Obyek abstrak : konsep politik, pekerjaan, rencana, dll.
- Simbol yang digunakan untuk entity adalah persegi panjang
- Entitas Kuat yaitu entitas mandiri yang keberadaannya tidak bergantung pada keberadaan entitas lain
- Entitas Lemah/Weak Entity yaitu entitas yang keberadaannya bergantung pada keberadaan entitas lain.
- Entitas Assosiatif adalah entitas yang terbentuk dari suatu relasi, bisa terjadi jika : Relasi yang merekatkan dua entitas bersifat banyak ke banyak. Biasanya berasal dari suatu relasi dimana relasi itu memiliki makna mandiri bagi pengguna
- Adalah hubungan antara suatu himpunan entitas dengan himpunan entitas lainnya
- Simbol yang digunakan adalah bentuk belah ketupat, diamod atau rectangle.
Derajat Relationship
Menjelaskan jumlah entity yang terlibat dalam suatu relationship
- Unary Degree (Derajat satu) –>> hanya satu entity yang terlibat

- Binary Degree (Derajat dua) –>> menghubungkan dua entity

- Ternary Degree (Derajat tiga) –>> menghubungkan tiga entity

Atribut
Adalah property deskriptif yang dimiliki oleh setiap himpunan entitas
Jenis-jenis atribut :
- Atribut key –>> digunakan untuk mengidentifikasi suatu entity secara unik
- Atribut tunggal –>> memiliki nilai tunggal
- Atribut multivalue –>> memiliki sekelompok nilai untuk setiap instant entity
- Atribut composite –>> dapat didekomposisi menjadi beberap atribut lain
- Atribut derivative –>> dihasilkan dari atribut yang lain
Adalah sejumlah atribut yang mengidentifikasi record/baris di dalam sebuah relation secara unique.
Beberapa jenis key:
- Super Key adalah sekumpulan atribut yang secara unik mengidentifikasi sebuah record di dalam relasi atau himpunan dari satu atau lebih entitas yang dapat digunakan untuk mengidentifikasi secara unik sebuah entitas dalam entitas set.
- Candidate Key adalah atribut-atribut yang menjadi determinan yang dapat dijadikan identitas record pada sebuah relation bisa terdapat satu atau lebih candidate key.
- Primary key adalah candidate key yang menjadi identitas record karena dapat mengidentifikasi record secara unik
- Altenate key adalah kandidat key yang tidak dijadikan primary key.
- Composite key adalah key yang terdiri dari 2 atribut atau lebih.
- Atribut-atribut tersebut bila berdiri sendiri tidak menjadi identitas record, tetapi bila dirangkaikan menjadi satu kesatuan akan dapat mengidentifikasi secara unik
- Foreign key adalah non key atribut pada sebuah relation yang juga menjadi key (primary) atribut di relation lainnya. Foreign key biasanya digunakan sebagai penghubung antara record-record dan kedua relation tersebut.

Data Base Management System (DBMS)/Sistem Manajemen Basis Data (SMB)
DBMS dapat diartikan sebagai program komputer yang digunakan untuk memasukkan, mengubah, menghapus, memodifikasi dan memperoleh data/informasi dengan praktis dan efisien.
Kelebihan dari DBMS antara lain adalah:
- Kepraktisan. DBMS juga 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.
Skema basis data adalah deskripsi dari basis data yang spesifikasinya ditentukan dalam tahap perancangan namun tidak terlalu diharapkan diubah setiap saat. Penggambaran skema umumnya hanya berisi sebagian dari detail deskripsi basis data.

Record/tuple adalah sekelompok data yang tersusun dalam satu baris rekaman dan tersimpan dalam basis data disebut dengan instansi (instance) atau kejadian (occurences).
MATERI III
MODEL BASIS
DATA
Model Basis Data adalah
kumpulan dari konsepsi basis data yang mewakili struktur dan relasi data
yang terdapat pada suatu basis data. Esensi sebuah model basisdata adalah
tempat dimana data atau suatu metodologi untuk menyimpan data. Kita tidak dapat
melihat model basisdata tetapi kita dapat melihat algoritma yang digunakan oleh
model basisdata tersebut.
Model-Model Basis Data pada hakekatnya adalah sekumpulan perangkat konseptual untuk menggambarkan
data, relasi data, makna (semantik) data, dan batasan data.
Model basis data menyatakan
hubungan antar rekaman yang tersimpan dalam basis data.
Ada beberapa
Jenis Model Basis Data :
Data flat file terdiri dari satu
atau lebih file yang dapat dibaca, yang secara normal berbentuk format file
text.
Informasi pada
suatu flat-file disimpan sebagai fields, dengan fields-nya memiliki panjang
konstan atau panjang bervariasi yang dipisahkan beberapa karakter (delimeter).
Contoh 1, Flat
file Model Data
Model data flat-file dengan panjang fields-nya
konstan.

Penjelasan Contoh 1:
·
Terdapat 3 fields : identifikasi angka, nama dosen,
dan nama program studi.
·
Setiap fields memiliki panjang konstan karena field
identifikasi angka selalu dimulai pada kolom #1 dan selalu berakhir pada kolom
#4, field nama dosen selalu dimulai pada kolom #6 dan selalu berakhir pada
kolom #25, dan seterusnya.
Contoh 2, Flat-file Model Data
Model data flat-file dengan panjang fields-nya
bervariasi
0123: Mulyono: Progdi TI-S1
1234: Max Tetelepta : Progdi TI-S1
2345: Tyas Catur P.: Progdi TI-S1
3456: Ifan Riska:PS. Progdi TI-S1
Penjelasan Contoh 2 :
·
Model data flat-file dengan panjang fields bervariasi
yang dipisahkan dengan delimeter.
·
Untuk setiap fields dipisahkan dengan titik dua.
Setiap fields memiliki panjang tidak konstan.
·
Pada saat menggunakan fields separator, seharusnya
fields seperatornya bukan merupakan karakter yang terdapat pada data.
Kelemahan model data flat-file:
- Flat-file tidak menggunakan struktur data yang
dengan mudah dapat direlasikan
- Sulit untuk mengatur data secara efisien dan
menjamin akurasi
- Lokasi fisik fields data dengan file harus diketahui
- Program harus dikembangkan untuk mengatur data
2) Model data Hirarki ( Hierarchichal
data model )
·
Basis data Hirarki satu tingkat di atas basis
data flat-file, dalam hal ini kaitanya dengan kemampuan untuk menemukan dan
memelihara relasi antar kelompok data .
·
Arsitektur model data hirarki berdasarkan konsep
hubungan parent/child.
·
Pada model data hirarki, suatu root table atau parent
table berada apa struktur yang paling atas, terhubung ke child table yang
dihubungkan dengan data
Contoh: Hirarki
Model Data

Kelebihan basis data hirarki :
- Data dapat dengan cepat dilakukan retrieve.
- Integritas data mudah dilakukan pengaturan.
Kelemahan basis data hirarki :
- Pengguna harus sangat familiar dengan struktur basis
data.
- Terjadi redudansi data.
3)
Model data Jaringan ( Network data
model )
·
Model basis data jaringan merupakan perbaikan
dari model basis data hirarki, yaitu dengan menambahkan kemampuan root table
untuk melakukan share relationships dengan child tables.
·
Dalam hal ini child table dapat memiliki banyak root
table dan untuk melakukan akses terhadap child table, tidak dibutuhkan lagi
untuk mengakses root table terlebih dahulu.
Contoh 1, Model
Data Jaringan

Contoh 2, Model
Data Jaringan

Kelebihan model data jaringan :
- Data lebih cepat diakses.
- User dapat mengakses data dimulai dari beberapa table.
- Mudah untuk memodelkan basis data yang komplek.
- Mudah untuk membentuk query yang komplek dalam
melakukan retrieve data.
Kelemahan basis data jaringan :
- Struktur basis datanya tidak mudah untuk dilakukan modifikasi.
- Perubahan struktur basis data yang telah didefinisikan akan mempengaruhi
program aplikasi yang mengakses basis data.
- User harus memahami struktur basis data.
4) Model data Relasional ( Relational
data model )
·
Model basis data relasional merupakan model basis data yang paling populer
banyak digunakan sekarang ini.
·
Unit utama yang disimpan pada basis data adalah berbentuk
tabel atau kelompok data yang saling berhubungan.
·
Tabel terdiri baris dan kolom, baris adalah
merepresentasikan tuple atau record pada tabel, dan kolom merepresentaksikan
fields pada tabel.
·
Tabel dapat berhubungan dengan tabel yang lain dengan
menggunakan kunci
Contoh : Model
Data Relasional

Kelebihan basis data relasional :
- Data sangat cepat diakses.
- Struktur basis data mudah dilakukan perubahan.
- Data direpresentasikan secara logik, user tidak membutuhkan bagaimana data
disimpan.
- Mudah untuk membentuk query yang komplek dalam melakukan retrieve data.
- Mudah untuk mengimplementasikan integritas data.
- Datanya lebih akurat.
- Mudah untuk membangun dan memodifikasi program aplikasi.
- Telah dikembangkan Structure Query Language (SQL).
Kelemahan basis data relasional :
- Kelompok informasi/tables yang berbeda harus dilakukan joined untuk
melakukan retrieve data.
- User harus familiar dengan relasi antar tabel.
- User harus belajar SQL.
5) Model Data Keterhubungan antar
Entitas ( Entity Relationship data model )
·
Menjelaskan hubungan antar data dalam sistem
basis data berdasarkan suatu presepsi bahwa real world terdiri dari obyek-obyek
dasar yang mempunyai hubungan relasi antara obyek-obyek tersebut.
·
Relasi antara obyek dilukiskan dengan menggunakan
simbol-simbol grafis tertentu.
Contoh : Model
Data Keterhubungan antar Entitas

Keuntungan Model Data Keterhubungan antar Entitas :
- Secara konseptual model basisdata ini sederhana.
- Keamanan basisdata lebih baik
- Kebebasan data
- Integritas data dalam satu tree lebih baik
- Basisdata skala besar lebih efisien
Kerugian Model Data Keterhubungan antar Entitas :
- Sistem lebih rumit
- Kekurangan pada kebebasan struktural
6). Model Data Berorientasi Obyek
+ Model basis data berorientasi objek adalah suatu model basis data, dimana data didefinisikan, disimpan, dan diakses menggunakan pemrograman berorientasi objek.
+ Basis data berorientasi objek didefinisikan dengan menggunakan bahasa pemrograman berorientasi objek, yaitu bahasa Java.
+ Aplikasi End user juga di bangun dengan menggunakan bahasa berorientasi objek.
+ Object database management system digunakan untuk membuat link antara basis data dan aplikasi.
Kerugian Model Data Keterhubungan antar Entitas :
- Sistem lebih rumit
- Kekurangan pada kebebasan struktural
6). Model Data Berorientasi Obyek
+ Model basis data berorientasi objek adalah suatu model basis data, dimana data didefinisikan, disimpan, dan diakses menggunakan pemrograman berorientasi objek.
+ Basis data berorientasi objek didefinisikan dengan menggunakan bahasa pemrograman berorientasi objek, yaitu bahasa Java.
+ Aplikasi End user juga di bangun dengan menggunakan bahasa berorientasi objek.
+ Object database management system digunakan untuk membuat link antara basis data dan aplikasi.
Contoh : Model
Data Berorientasi Obyek
Kelebihan basis data berorientasi
objek :
- Programmer hanya dibutuhkan memahami konsep
berorientasi objek untuk mengkombinasikan konsep berorientasi objek dengan
storage basis data relasional
- Objek dapat dilakukan sifat pewarisan dari objek
yang lain
- Secara teoritis mudah untuk mengatur objek
- Model data berorientasi objek lebih kompatibel
dengan tools pemrograman berorientasi objek.
Kelemahan basis data berorientasi objek :
User harus memahami konsep berorientasi objek, karena
basis data berorientasi objek tidak dapat bekerja dengan metoda pemrograman
tradisional
MATERI IV
Relational Database Model
Relational Database Model
Terminologi
Terminologi menjelaskan tentang hubungan logik antara data dalam basis data dengan cara
memvisualisasikannya ke dalam bentuk tabel dua dimensi yang terdiri dari sejumlah baris dan kolom.
Sifat
yang melekat pada suatu relasi yaitu sebagai
berikut :
•
Tak ada tupel yang kembar.
•
Urutan tupel tidaklah penting (tupel – tupel
dapat dipandang dalam sembarang urutan).
•
Setiap atribut memiliki nama yang unik
•
Semua atribut dalam relasi yang sama memiliki
nilai tunggal dan jenis yang sama untuk semua tupel.
Domain
•
Himpunan nilai yang berlaku bagi suatu atribut.
(nama, tipe, format, panjang dan nilai masing-masing data).
•
Contoh:
- Atribut kode suku cadang dinyatakan dengan nama KD_SUKU_CD, Tipe alfanumerik, Panjang 5 karakter, Format AA999 (A=huruf), 9=angka).
- Atribut agama dinyatakan dengan nama AGAMA, Panjang 1 karakter, dengan kemungkinan nilai berupa I, K, P, H, dan B (masing-masing untuk menyatakan Islam, Katolik, Kristen, Hindu dan Budha).
Kunci Relasi
•
Kunci Kandidat (Candidate Key) adalah kunci yang
secara unik (tidak mungkin kembar) dapat dipakai untuk mengidentifikasi suatu
baris dalam tabel. Contoh: NIP, NIK, dll.
•
Kunci Primer (Primary Key) adalah CK yang
dipilih sebagai kunci utama untuk mengidentifikasi suatu baris dalam tabel.
•
Kunci Alternatif (Alternate Key) adalah CK yang
tidak bertindak sebagai PK.
•
Kunci Tamu (Foreign Key) adalah sembarang
atribut yang menunjuk ke PK pada tabel lain.
Contoh:

Integritas entity
•
Nilai
atribut yang dipilih sebagai PK dalam relasi tidak boleh null.
•
Aturan ini menjamin bahwa semua record yang ada
dalam basis data akan dapat diakses karena semua record dapat diidentifikasi
berdasarkan kunci yang unik.
Integritas
Referensial

Komponen Relasi
Relasi/Tabel mempunyai 2 komponen yaitu sebagai berikut :
a. Intention
-
Terdiri dari dua bagian yaitu struktur penamaan
(naming structure) dan batasan integritas (integrity constraint).
-
Struktur penamaan menunjukkan nama tabel dan
nama atribut yang ada lengkap dengan batasan nilai dan tipe datanya.
-
Batasan integritas dipengaruhi oleh integritas
referensial yang meliputi key constraint dan referensial constraint.
-
Key constraint tidak mengijinkan adanya nilai
null pada atribut yang digunakan sebagai PK.
-
Referentil constraint memberikan aturan bahwa
nilai-nilai dalam atribut kunci yang digunakan untuk menghubungkan basis data
satu ke basis data lain tidak diijinkan memiliki nilai null.
b. Extention
-
Menunjukkan isi dari tabel-tabel yang cenderung
berubah sewaktu-waktu.
