Abstraksi
Data
Abstraksi data merupakan
tingkatan-tingkatan pengguna dalm melihat bagaimana data diolah didalam system,
sehingga nantinya dapat enjadi kondisi yang dilihat oleh pengguna seharihri.
Pada abstraksi data ini,
tidak hanya diperhatikan bagaimana data masuk dan disimpna, tetapi menyangkut
segala hal bagaimana data diabstraksikan.
Sebuah database
management system seringkali menyembunyikan detail bagaiman data disimpan dan
diolah dalam system database, hal ini bertujuan untuk memudahkan pengguna
karena seringkali data yang sebelumnya berbeda engan data yan tersimpan secara
fisik. Sehingga tujuan utama dari DBMS itu sendiri yakni menyediakan fasilitas
antarmuka dengan sisyem yang telah menyembunyikan bentuk sebenarnya dari data
itu.
Database dapat dipandang
dari 2 yaitu:
1. sudut
pandang pengguna yakni orang-orang yang menggunakan database dan perancang
database.
2. perancang
database adalah orang yang berperan sebagai perancang dan pengelola database
kedua Pandangan tersebut menunjukkan level pandangan
terhadap suatu database. Pandangan terhadap database sering disebut sebagai
arsitektur database atau abtraksi database dan terbagi menjadi 3 Tingkatan pada
abstraksi data, yakni :
1. Level
Fisik (Physical Level)
Level abstraksi data yang paling rendah,
yang menggambarkan bagaimana (how) data disimpan dalam kondisi sebenarnya atau
diorganisasikan decara fisik atau aktual. Represents berupa teks, anfka dan
bit.Level ini sangat kompleks karena struktur data dijelaskan secara rinci.
Level ini dibutuhkan oleh system enginner,
pakar software dan hardware.
Physical level sering disebut sebagai level eksternal
merupakan bentuk implementasi konseptual, yaitu suatu pandangan perancang yang
bekaitan dengan permasalahan teknik penyimpanan data dalam database ke dalam
media penyimpanan yang digunakan. Pandangan ini bersifat sangat teknis danlebih
berorientasi pada mesin, yaitu berkaitan dengan organisasi berkas database.
2. Level
Konseptual (Conceptual Level/ Global Logical)
Level
konseptual merupakan level abstraksi yang berada diantara level logika pandangan
pengguna dan level fisik. Level ini memberikan gambaran tentang data apa yang
sebenarnya disimpan pada basisdata, dan juga menjabarkan hubungan-hubungan
antardata secara keseluruhan (entitas,atribut, dan relasinya). Data Pengguna
tidak mempedulikan kerumitan dalam struktur level fisik lagi, pengambaran cukup
dengan memakai kotak, garis, dan hubungan secukupnya.
3. Level
pandangan pengguna (External View/logic)
Level
pandangan pengguna atau level eksternal merupakan pandangan para pengguna
database pada masing-masing pengguna database, sehingga memiliki cara pandang
yang berbeda-beda tergantung pada macam data apa saja yang tersedia atau dapat
diakases oleh pengguna. Pada lapis ini pengguna hanya mengenal struktur data
yang sederhana, yang berorientasi pada kebutuhan pengguna. Data yang dikenal
oleh masing-masing pengguna bisa berbeda-beda dan barangkali hanya mencakup
sebagian dari basis data. Pengguna tidak perlu tahu bagaimana sebenarnya
data-data tersebut tersimpan. Pada level ecternal view ini data berbentuk
narasi dan lebih ngalur ngindur sehingga perlu dianalisa dan berupa konseptual.
Misalnya: Bagian keuangan hanya membutuhkan data keuangan, jadi
yang digambarkan hanya pandangan terhadap data keuangan saja, begitu juga
dengan bagian akuntansi, hanya membutuhkan data akuntansi saja. Jadi tidak
semua pengguna database membutuhkan seluruh informasi yang terdapat dalam
database tersebut.
Struktur
Basis Data (Konsep Basis Data)
Arsitektur basis data
merupakan serangkaian pengetahuan tentang pemodelan data. Pengetahuan tentang
File, table, field, record indeks, abstraksi data dan serangkaian konsep yang
digunakan untuk membuat diskripsi struktur basis data. Melalui diskripsi
Struktur basis data dapat ditentukan jenis data, hubungan dan konstrain
(keterbatasan) data yang ditangani. Dalam basis data, data diorganisasikan
kedalam bentuk elemen data (field), rekaman (record), dan berkas (file).
·
Elemen (kolom atau field) data adalah
satuan data terkecil yang tidak dapat dipecah lagi menjadi unit lain yang
bermakna. Misalnya Misalnya data siswa terdiri dari NIS, Nama, Alamat, Telepon
atau Jenis Kelamin.
·
Rekaman (record) merupakan gabungan
sejumlah elemen data yang saling terkait. Record terdiri dari satu atau lebih
suatu field. Istilah lain dari record
adalah baris atau tupel.
·
Berkas(file) adalah himpunan seluruh
record yang bertipe sama Didalam manajemen basis data, data disimpan dalam
bentuk Berkas atau file.
- karakter bagian terkecil barupa angka dan huruf.
Model
Basis Data Relasional
Model Data Relasional adalah kumpulan tabel berdimensi
dua dengan masing- masing relasi tersusun atas tuple(baris) dan atribut(kolom)
yang menggambarkan sebuah berkas data.
Model ini menunjukkan cara mengelola/mengorganisasikan
data secara fisik dalam memori sekunder, yang akan berdampak pula pada
bagaimana mengelompokkan data dan membentuk keseluruhan data yang terkait dalam
sistem yang kita buat.
Pada model data ini, data dan hubungan
antar data memiliki nama yang unik yang berguna untuk merepresentasikan data. Sehingga
tidak ada data yang kembar.
Pada model relasional, basis data akan disebar ( dipilah-pilih) ke dalam berbagai tabel 2 dimensi. Setiap tabel selalu terdiri atas lajur mendatar yang disebut dengan baris data (row/record) dan lajur vertikal biasa disebut dengan kolom (column/field). Disetiap pertemuan baris data dan kolom itulah, item-item data (satuan data terkecil) ditempatkan.
Pada model relasional, basis data akan disebar ( dipilah-pilih) ke dalam berbagai tabel 2 dimensi. Setiap tabel selalu terdiri atas lajur mendatar yang disebut dengan baris data (row/record) dan lajur vertikal biasa disebut dengan kolom (column/field). Disetiap pertemuan baris data dan kolom itulah, item-item data (satuan data terkecil) ditempatkan.
Model data ini dianggap mudah karena menggunakan table
yang merupakan hal yang tidak asing di kehidupan sehari-hari. Contohnya
mengenai informasi mahasiswa yang direpresentasikan pada relasi MAHASISWA yang
mengandung informasi nomor induk mahasiswa, nama, alamat, prodi dan fakultas
tempat mahasiswa kuliah.
Tiga komponen yang mendasari model data relasional:
1.Struktur data
2.Pemanipulasi data
3.Integritas data
Istilah-istilah
dalam model data relasional
Kunci Relasi :
1. SUPERKEY
: satu atau lebih atribut (kumpulan atribut) yang dapat membedakan setiap baris
data dalam tabel secara unik.Berdasarkan contoh relasi sebelumnya, maka
superkey-nya adalah : {nim, nama_mhs} dan {nim}.
2. CANDIDATE
KEY : relasi mungkin mempunyai lebih dari satu key. Masing-masing disebut
candidate key.
3. PRIMARY
KEY (PK) : candidate key yang digunakan untuk mengidentifikasikan tuple yang
unik pada suatu relasi. Berdasarkan contoh sebelumnya, maka primary key-nya
adalah nim.
4. FOREIGN
KEY (FK) : suatu skema relasi dapat memiliki atribut yang menunjuk ke primary
key dari relasi lain. Atribut ini disebut foreign key.
Relational
Integrity Rules (Aturan Integritas Relasional)
1.Null : Nilai suatu atribut yang tidak diketahui dan
tidak cocok untuk baris (tuple) tersebut. Nilai (konstanta) Null digunakan
untuk menyatakan / mengisi atribut-atribut yang nilainya memang belum
siap/tidak ada.
2.Entity Integrity : Tidak ada satu komponen primary
key yang bernilai null.
3.Referential Integrity : Suatu domain dapat dipakai
sebagai kunci primer bila merupakan atribut tunggal pada domain yang
bersangkutan.
Bahasa
Pada Basis Data Relasional
Bahasa Basis Data Relasional Menggunakan bahasa query
pernyataan yang diajukan untuk mengambil informasi. Bahasa Query (Query
Language) lebih ditekankan pada aspek pencarian data dari dalam tabel. Aspek
pencarian ini sedemikian penting karena merupakan inti dari upaya untuk
pengelolaan data.
Bahasa query terbagi 2 :
1. Bahasa Formal
Bahasa query yang diterjemahkan dengan menggunakan
simbol- simbol matematis.
Contoh :
Contoh :
•Aljabar Relasional : Bahasa query prosedural, pemakai
menspesifikasikan data apa yang dibutuhkan dan bagaimana untuk mendapatkannya.
•Kalkulus Relasional : Bahasa query non-prosedural,
pemakai menspesifikasikan data apa yang dibutuhkan tanpa menspesifikasikan
bagaimana untuk mendapatkannya. Kalkulus Relasional terbagi menjadi dua yaitu
Kalkulus Relasional Tupel dan Kalkulus Relasional Domain.
2. Bahasa Komersial
Bahasa Query yang dirancang sendiri oleh programmer
menjadi suatu program aplikasi
agar pemakai lebih mudah menggunakannya (user friendly).
agar pemakai lebih mudah menggunakannya (user friendly).
Contoh :
• QUEL : Berbasis pada bahasa kalkulus relasional
• QBE : Berbasis pada bahasa kalkulus relasional
• SQL : Berbasis pada bahasa kalkulus relasional dan aljabar relasional.
• QUEL : Berbasis pada bahasa kalkulus relasional
• QBE : Berbasis pada bahasa kalkulus relasional
• SQL : Berbasis pada bahasa kalkulus relasional dan aljabar relasional.
Model Data Rasional lebih luas dibandingkan yang lain
.nilai data dalam tabel tidak ada pembatasan dalam berbagai proses pencarian
data . hal ini tidak terdapat pada model data herarkhi dan jaringan dimana
manipulasi data dibatasi oleh bagaimana struktur data dibuat. Dengan model data
relasional yang bentuknya sederhana sehingga seseorang mudah melakukan berbagai
operasi data.
Pada model relasional, jumlah tupel suatu relasi disebut kardinalitas dan jumlah atribut suatu relasi disebut derajat (degree) atau terkadang disebut arity. Relasi yang berderajat satu (hanya memiliki satu atribut) disebut unary. Relasi yang berderajat dua disebut binary dan relasi yang berderajat tiga disebut ternary. Relasi yang berderajat n disebut n-ary.
Ada beberapa sifat yang melekat pada suatu relasi:
1. Tak ada tupel (baris) data yang kembar
2. Urutan tuple tidaklah penting (tupel-tupel dapat dipandang dalam sembarang urutan)
3. Setiap atribut memiliki nama yang unik
4. Letak atribut bebas ( urutan atribut tidak penting)
5. Setiap atribut memiliki nilai tunggal dan jenisnnya sama untuk semua tupel
Sebagaimana dikatakan didepan, tupel-tupel yang terdapat pada suatu relasi tidak ada yang kembar. Sesungguhnya bagian yang menyebabkan tidak adannya tupel yang kembar adalah yang disebut kunci primer. Kunci primer adalah kunci kandidat yang dipilih sebagai kunci utama untuk mengidentifikasi baris dalam tabel.
C. Keuntungan & kelemahan model data reasional
Keuntungan lain menggunakan model data relasional dibandingkan dengan model data herarkhi dan jaringan adalah:
1. model data rasional lebih luas dibandingkan yang lain .nilai data dalam tabel tidak ada pembatasan dalam berbagai proses pencarian data . hal ini tidak terdapat pada model data herarkhi dan jaringan dimana manipulasi data dibatasi oleh bagaimana struktur data dibuat.
2. Model data relasional mempunyai latar belakang teori matematik. Hal ini akan memudahkan dalam pembentukan hubungan matematis sebagai dasar dalam prosedur pemrosesan data disamping pemrograman komputer . sebab bagaimanapun juga dalam pelaksanaan sistem harus dilakukan dalam bahasa program tertentu .
3. Pengorganisasian model relasional sangat sederhana , sehingga mudah dipahami .
4. Basis data yang sama biasanya dapat disajikan lebih sedikit terjadi data rangkap (Redun-dansy data) dengan menggunakan model relasional dibandingkan dengan model data herarkhi dan jaringan.
Keuntungan lain menggunakan model data relasional dibandingkan dengan model data herarkhi dan jaringan adalah:
1. model data rasional lebih luas dibandingkan yang lain .nilai data dalam tabel tidak ada pembatasan dalam berbagai proses pencarian data . hal ini tidak terdapat pada model data herarkhi dan jaringan dimana manipulasi data dibatasi oleh bagaimana struktur data dibuat.
2. Model data relasional mempunyai latar belakang teori matematik. Hal ini akan memudahkan dalam pembentukan hubungan matematis sebagai dasar dalam prosedur pemrosesan data disamping pemrograman komputer . sebab bagaimanapun juga dalam pelaksanaan sistem harus dilakukan dalam bahasa program tertentu .
3. Pengorganisasian model relasional sangat sederhana , sehingga mudah dipahami .
4. Basis data yang sama biasanya dapat disajikan lebih sedikit terjadi data rangkap (Redun-dansy data) dengan menggunakan model relasional dibandingkan dengan model data herarkhi dan jaringan.
5. menggunakan table, sehingga lebih muda dimengerti.
Sedangkan kelemahannya adalah :
1. Lebih sulit dalam implementasinya terutama untuk data dala,m jumlah besar dan tingkat kompleksitasnya tinggi.
2. Proses pencarian informasinya lebih lambat. Hal ini disebabkan beberapa tabel tidak dihubungkan secara fisik (seperti pada model hirarkhi atau jaringan).dalam manipulasi data menggunakan beberapa tabel akan memerlukan waktu yang lama , karena tabel-tabel haus dihubungkan terlebih dahulu.
Sedangkan kelemahannya adalah :
1. Lebih sulit dalam implementasinya terutama untuk data dala,m jumlah besar dan tingkat kompleksitasnya tinggi.
2. Proses pencarian informasinya lebih lambat. Hal ini disebabkan beberapa tabel tidak dihubungkan secara fisik (seperti pada model hirarkhi atau jaringan).dalam manipulasi data menggunakan beberapa tabel akan memerlukan waktu yang lama , karena tabel-tabel haus dihubungkan terlebih dahulu.
Pengertian
Menurut Entity Relationship Diagram (ERD)
Dalam rekayasa
perangkat lunak, sebuah Entity-Relationship Model (ERM) merupakan abstrak dan
konseptual representasi data. Entity-Relationship adalah salah satu metode
pemodelan basis data yang digunakan untuk menghasilkan skema konseptual untuk
jenis/model data semantik sistem. Dimana sistem seringkali memiliki basis
data relasional, dan ketentuannya bersifat top-down. Diagram untuk
menggambarkan model Entitiy-Relationship ini disebut Entitiy-Relationship
diagram, ER diagram, atau ERD.
Menurut salah
satu para ahli, Brady dan Loonam (2010), Entity Relationship diagram (ERD)
merupakan teknik yang digunakan untuk memodelkan kebutuhan data dari suatu
organisasi, biasanya oleh System Analys dalam tahap analisis persyaratan proyek
pengembangan system. Sementara seolah-olah teknik diagram atau alat peraga
memberikan dasar untuk desain database relasional yang mendasari sistem
informasi yang dikembangkan. ERD bersama-sama dengan detail pendukung merupakan
model data yang pada gilirannya digunakan sebagai spesifikasi untuk database. Notsinya
IDEF1X.
Dalam pembentukan ERD terdapat 3 komponen yang akan
dibentuk yaitu :
a. Entitas
(entitas) yaitu
suatu obyek yang dapat dibedakan dari lainnya yang dapat diwujudkan dalam basis
data. Pengertian lainnya menurut Brady dan Loonam (2010), entitas adalah objek
yang menarik di bidang organisasi yang dimodelkan.
Contoh : Mahasiswa, Kartu Anggota Perpustakaan (KAP),
dan Buku.
b. Hubungan (relasi/relationship)
Suatu hubungan adalah hubungan antara dua jenis
entitas dan direpresentasikan sebagai garis lurus yang menghubungkan dua
entitas. merepresentasikan hubungan antar obyek di dunia nyata.
Macam-Macam Relasi antar tabel:
One-to-many. Misalkan terdapat relasi antara tabel ibu
dan tabel anak dengan nama relasi “mempunyai” dan relasinya one-to-many.
Artinya satu record pada tabel ibu boleh berelasi (mempunyai) dengan
banyak record pada tabel anak. Namun satu record pada tabel anak hanya boleh
berelasi dengan satu record saja pada tabel ibu Gambar relasi one-to-many:
One-to-one. Jika dua tabel berelasi one-to-one artinya
setiap record di entitas pertama hanya akan berhubungan dengan satu record di
entitas kedua begitu pula sebaliknya. Conrohnya relasi antara tabel pegawai dan
alamat pegawai. Satu record pegawai hanya berhubungan dengan satu record alamat
pegawai beitu pula sebaliknya. Entitas 3 merupakan atribut yang unik di entitas
4. Gambar relasi one-to-one:
Many-to-many. Jika tabel satu berelasi dengan tabel
dua dengan relasi any-to-many artinya ada banyak record di entitas satu dan
entitas dua yang saling berhubungan satu sama lain. Contohnya relasi
many-to-many antara tabel transaksi dan barang. Satu record transaksi bisa
berhubungan dengan banyak record barang, begitu pula sebaliknya. Gambar relasi
many-to-many:
c. Atribut
Atribut memberikan informasi lebih rinci tentang jenis
entitas. Atribut memiliki struktur internal berupa tipe data. Atribut adalah
ciri-ciri kualitatif yang dimiliki oleh suatu obyek, yang mencerminkan
sifat-sifat dari obyek tersebut. Field menyatakan data terkecil yang memiliki
makna. Istilah lain untuk field yaitu elemen data, kolom item. Contoh field
yaitu nama seseorang, jumlah barang yang dibeli, dan tanggal lahir seseorang.
Derajat Relasi Minimum-Maximum
Menunjukkan hubungan (korespondensi) minimum yang
boleh terjadi dalam sebuah relasi antar entitas. Misalnya: pada relasi “bekerja
untuk” pada entitas pegawai terhadap departemen Derajat relasi minimumnya
adalah satu. Dalam arti lain, setiap pegawai minimal harus memiliki sebuah
relasi terhadap Departemen, atau setiap pegawai selalu memiliki tempat di mana
dia bekerja. Notasi (x,y) pada relasi menunjukkan derajat minimum (x) dan
derajat maksimum (y) pada sebuah relasi. Partisipasi total bisa dinotasikan
dengan memberikan derajat relasi minimum (x) = 1.
Jenis-jenis
atribut :
Atribut Key
Atribut Key adalah satu atau gabungan dari beberapa
atribut yang dapat membedakan semua baris data ( Row/Record ) dalam tabel
secara unik. Dikatakan unik jika pada atribut yang dijadikan key tidak boleh
ada baris data dengan nilai yang sama
Contoh : Nomor induk mahasiswa (NIM), NISS dan nomor
pokok lainnya
Atribut simple
atribut yang bernilai atomic, tidak dapat dipecah/
dipilah lagi
Contoh : Alamat, penerbit, tahun terbit, judul buku.
Atribut Multivalue
nilai dari suatu attribute yang mempunyai lebih dari satu
(multivalue) nilai dari atrribute yang bersangkutan
Contoh : dari sebuah buku, yaitu terdapat beberapa
pengarang.
Atribut Composite
Atribut composite adalah suatu atribut yang terdiri
dari beberapa atribut yang lebih kecil yang mempunyai arti tertentu yang masih
bisah dipecah lagi atau mempunyai sub attribute.
Contoh : dari entitas nama yaitu nama depan, nama
tengah, dan nama belakang
Atribut Derivatif
Atribut yang tidak harus disimpan dalam
database Ex. Total. atau atribut yang dihasilkan dari atribut lain atau
dari suatu relationship. Atribut ini dilambangkan dengan bentuk oval yang
bergaris putus-putus
Menunjukkan jumlah maksimum entitas yang dapat
berelasi dengan entitas pada himpunan entitas yang lain. Macam-macam
kardinalitas adalah:
Satu ke satu (one to one), Setiap anggota entitas A
hanya boleh berhubungan dengan satu anggota entitas B, begitu pula sebaliknya.
Satu ke banyak (one to many), Setiap anggota entitas A
dapat berhubungan dengan lebih dari satu anggota entitas B tetapi tidak
sebaliknya.
Banyak ke banyak (many to many), Setiap entitas A
dapat berhubungan dengan banyak entitas himpunan entitas B dan demikian pula
sebaliknya.
Notasi Simbolik dalam Diagram ER
Persegi panjang : himpunan entitas
Elips : atribut (atribut yang sebagai kunci
digarisbawahi)
Belah ketupat : himpunan relasi
Garis : penghubung antara himpunan relasi dengan
himpunan entitas dan himpunan entitas dengan atributnya
Kardinalitas Relasi dinyatakan dengan banyaknya
garis cabang atau dengan pemakaian angka (1 dan 1 untuk relasi satu-ke-satu, 1
dan M untuk relasi satu-ke-banyak, M dan M untuk relasi banyak-ke-banyak)