Sistem Basis Data
Model Data Relasional
Cara Pandang (Abstraksi) Terhadap Data
Salah satu tujuan penerapan Sistem Basis Data
adalah menyediakan pengguna suatu pandangan
abstrak dari data, secara nyata dan sederhana yakni sistem menyembunyikan rincian bagaimana data
disimpan dan dipelihara (pengguna tidak dipusingkan dengan rumitnya sistem dalam mengelola data)
Pengguna Sistem Basis Data secara umum adalah
awam di bidang komputer, oleh karena itu pengembang seharusnya menyembunyikan kompleksitas sistem dari pengguna dengan
meyediakan beberapa peringkat abstaksi data
Three Schema Architecture
External View
Pemetaan Secara Internal/ Phisik External View
Pandangan Konseptual/Logika
DATABASE EXTERNAL
LEVEL
CONCEPTUAL LEVEL
INTERNAL LEVEL
External Level / Tingkat Pengguna/Pandangan
Pada peringkat ini meyederhanakan interaksi pengguna dengan sistem berupa antarmuka pengguna grafis (GUI-Graphical User Interface) pada perangkat lunak aplikasi sistem basis data.
Conceptual Level / Tingkat Konsep
Abstraksi yang mendiskripsikan secara menyeluruh tampilan komunitas dari basis data meliputi entity, atribut dan bagaimana hubungan relasi antar data/table yang terjadi.
Internal Level / Tingkat Fisik
Abstraksi yang mendiskripsikan struktur penyimpanan basis data secara fisik pada system komputer dan organisasi file yang
Tingkat Pandangan
Banyak pemakai yang tidak berurusan dengan
semua informasi yang disimpan dalam basis
data
Kebanyakan pemakai hanya memerlukan
sebagian informasi yang ada dalam basis data
Tingkat Pandangan (
view
) memdefinisikan suatu
bagian untuk suatu kelompok tertentu
Sistem dapat menyediakan pandangan berbeda
Tingkat Konseptual
Tingkat Konseptual mendeskripsikan data apa
yang sesungguhya disimpan dan keterhungan
antar data (
data relationships
) yang ada dalam
basis data
Seluruh basis data dinyatakan dengan sejumlah
struktur yang sederhana (mudah dipahami)
Tingkat konseptual menyatakan
Entitas, atribut dan terhubungannya Konstrain (batasan) terhadap data
Tingkat Fisik
Tingkat fisik mendeskripsikan cara penyimpanan
fisik data secara rinci (komplek)
Tingkat ini mencakup implementasi fisik basis
data untuk memperoleh kinerja dan utilisasi
ruang penyimpanan yang optimal
Tingkat fisik ini berurusan dengan
Alokasi ruang penyimpanan
Deskripsi rekord untuk kebutuhan penyimpanan
(ukuran simpanan untuk tiap item data)
Ketidakbergantungan Data
Sasaran utama arsitektur 3 tingkat adalah
Ketidakbergantungan Data pada setiap levelnya
Ketidatbergantungan Data merupakan kemampuan
memodifikasi skema di satu tingkat, dengan tidak mempengaruhi definisi skema di tingkat lainnya.
Ketidakbergantungan Data dapat dipandang
sebagai;
Ketidakbergantungan secara logik (logical data
independence) perubahan skema konsep tidak
mempengaruhi program aplikasi. Modifikasi tingkat konsep diperlukan saat pengubahan struktur logik.
Ketidakbergantungan secara fisik (logical data
independence) perubahan skema fisik tidak
Perubahan pada skema konsep
(penambahan/pengurangan entitas, atribut
atau relasinya) harus dimungkinkan tanpa
mengubah skema eksternal yang telah ada.
Perubahan pada skema internal/fisik
(perubahan struktur/organisasi file,
index/hashing, perangkat penyimpanan)
Model Data
Model Data merupakan kumpulan konsep yang
terpadu untuk mendeskripsikan data, keterhubungan antar data (relationship), semantik dan batasan
konsistensi data (constrain), yang berguna untuk
menyembunyikan kompleksitas/rincian penyimpanan data pada level rendah/fisik
Model Data dapat terdiri dari 3 komponen;
Bagian struktur yang berisikan sekumpulan aturan
yang berkaitan dengan basis data yang dibangun
Sekumpulan aturan integritas yang menjamin
keakuratan data
Bagian manipulasi yang mendefinisikan tipe-tipe
operasi yang diijinkan seperti pembaruan dan
Macam- Macam Model Data
Model data yang umum digunakan adalah
Model Entity Relationship (ER Model)
Model Relasional
Model Data Berorientasi Objek
Model lain seperti Model Data Jaringan dan
Model Data Hierarki (keduanya sudah
kadaluarsa)
Model-model data tersebut secara umum
dikategorikan menjadi
Model data berbasis Rekord (ER, Relasional,
Jaringan dan Hierarki)
Mirip dengan hirarkical model, dimana data
dan hubungan antar data direpresentasikan dengan
record dan links. Perbedaannya terletak pada
susunan record dan linknya yaitu network model
menyusun record-record dalam bentuk graph.
Beberapa ketentuan untuk model data jaringan :
Terdapat lebih dari satu edge antara pasangan node
Tidak ada konsep root node
Suatu node dapat mempunyai lebih dari parent node
Contoh model data jaringan :
model data jaringan
R1
R4
R3 R5
R2
Model Data Hirarki
Dimana data serta hubungan antar data direpresentasikan dengan record dan link (pointer), dimana record-record tersebut disusun dalam bentuk tree (pohon), dan masing-masing node pada tree tersebut merupakan record/grup data elemen.
Ketentuan-ketentuan dalam model data hirarki adalah :
Terdiri dari kumpulan record (R1,R2,R3,...Rn) yang masing-masing mempunyai field pengenal.
Terdapat suatu kumpulan kaitan yang berhubungkan semua jenis record sehingga membuat diagram struktur data.
Kaitan tersebut membentuk suatu pohon yang semua ujungnya mengarah ke daun.
Tidak mungkin ada elemen yang mempunyai parent lebih dari satu.
Contoh Model Hirarki :
DEPARTEMEN PROJECT EMPLOYE DNAME PNAME NAME DNUMBER PNUMM SSN MGRNAME PLOCATION BDATE MGRSTARDATE ADRESS DEPENDENT BRITHDATE DEPNAME SEXSUVERVISE NAME SSN
WORKER
Model Entity-Relationship
Entity adalah obyek pada dunia nyata yang dapat
dibedakan satu dengan lainnya, yang bermanfaat bagi aplikasi yang sedang dikembangkan
Relationship adalah hubungan antara beberapa entitas Model Entity-Relationship adalah suatu representasi
logika dari data pada suatu organisasi atau area bisnis tertentu dengan menggunakan Entity dan Relationship.
Mahasiswa Mengambil Matakuliah Nim Nama Nilai No_Mk
Nama_MK
Atribute
Model Data Relasional
Model Data Relasional adalah model basis data
yang menggunakan sejumlah tabel untuk
mengambarkan data serta hubungan antara data-data tersebut
Setiap tabel memiliki sejumlah kolom dimana setiap
kolom memiliki nama yang unik.
Setiap kolom dalam tabel-tabel mencerminkan
atribut-atribut entitas yang bersangkutan seperti pada model Entity Relationship
Model Data Relasional merupakan abstraksi data
pada tingkat yang lebih rendah (detil) dari ERD(Entity Relationship Diagram). Oleh karena itu perancang
Bedjoe 0002.51.2007 Paijoe 0001.52.2007 Nama Nim 2 Delphi 222 3 Basis Data 111 SKS Nama_MK No_Mk
Contoh Model Relasional
B 222 0001.52.2007 A 111 0002.51.2007 A 111 0001.52.2007 Nilai No_MK NIM
Tabel Mahasiswa Tabel Matakuliah
Sasaran Model Relasional
Model basis data disebut relasional karena basis data
dibangun berdasarkan konsep relasi di matematika.
Relasi di matematika menyatakan bahwa elemen-elemen
dari himpunan yang berbeda dapat saling berhubungan
Sasaran/tujuan penerapan model rasional adalah
Memungkinkan derajat ketidakbergantungan data
yang tinggi. Program aplikasi tidak dipengaruhi oleh modifikasi representasi internal (perubahan
organisasi file & urutan rekord)
Memberikan landasan semantik, konsistensi dan
ketiadaan redudansi data dengan proses Normalisasi Relasi (proses penghindaran terhadap kelompok data berulang/RG dan redudansi)
Memungkinkan perluasan bahasa manipulasi data
Keunggulan Model Relasional
Merupakan alat komunikasi yang bagus (mudah
dipahami) antara pemakai dan perancang basis data
Memenuhi kriteria kebutuhan dasar dalam
perancangan basis data (adanya mekanisme
konsistensi data dan penghilangan redudansi data)
Adanya kemandirian antara Data degan Program
Aplikasi
Struktur data yang dipresentasikan dengan model
relasi dapat dikonversi ke RDBMS dan
diimplementasikan ke komputer secara langsung
Model data relasional yang telah dikonversi &
Istilah-Istilah Pada Model Relasional
Relasi
Tabel yang terdiri dari baris dan kolom
Himpunan dari Tupel, yang secara matematis urutan Tupel tidak
PENTING
Atribut
Nama kolom pada relasi
Seluruh Atribut dalam Relasi saling berhubungan untuk
merepresentasikan sebuah Tupel yang lengkap
Derajat (Degree) Relasi adalah jumlah Atribut dalam sebuah Relasi Domain
Himpunan nilai yang diijinkan dalam suatu Atribut Setiap Atribut didefinisikan pada suatu Domain
Domain mendefinisikan nilai-nilai yang mungkin dimiliki oleh Atribut Tupel
Baris yang berisi kumpulan Atribut dalam sebuah Relasi Tupel juga dikenal sebagai Rekord
Kardinalitas Relasi
Operasi Dasar Basis Data
Pembuatan Basis Data (Create Database)
Penghapusan Basis Data (Drop Database)
Pembuatan File/Table baru ke suatu basis data
(Create Table)
Penghapusan File/Table dari suatu basis data
(Drop Table)
Penambahan data baru ke suatu file/table di
sebuah basis data (insert)
Pengambilan data dari sebuah file/table
(Retrieve/Search)
Bahasa Basis Data
Terdiri dari sejumlah perintah
(statement) yang diformulasikan dan
dapat diberikan oleh pengguna dan
dikenali/diproses oleh DBMS untuk
melakukan suatu aksi/pekerjaan
tertentu.
Komponen Bahasa Basis Data
Data Definition Language (DDL)
Data Definition Language
Digunakan untuk mespesifikasikan
struktur/skema basis data yang
menggambarkan desain basis data secara
keseluruhan.
Hasil kompilasi perintah DDL adalah kamus
data File yang berisi metadata (data yang
mendeskripsikan data sesungguhnya)
Struktur penyimpan dan metode akses yang
digunakan oleh sistem basis data disebut
Data Manipulation Language (DML)
Digunakan untuk memanipulasi basis data
Bentuk manipulasi
Pencarian kembali data lama Penyisipan data baru
Penghapusan data
Pengubahan data
Jenis DML
Prosedural
Manajer Basis Data
Modul program yang menyediakan
antarmuka (interface) antar penyimpanan
data low level dalam basis data dengan
program aplikasi dan query yang diterima
oleh sistem.
Tugasnya:
Berinteraksi dengan manajer file
Pelaksanaan integrity
Administrator Basis Data
Orang yang mempunyai wewenang
untuk mengendalikan sistem basis
data.
Tugasnya:
Mendefinisikan Skema
Mendefinisikan Struktur penyimpanan dan
metode akses
Memodifikasi skema dan organisasi fisik
Menjamin otorisasi untuk mengakses data
Menspesifikasikan integrity constraint
Struktur Sistem Manajemen Basis Data
File Manager
Mengatur alokasi penyimpanan
Database Manager
Menetapkan antarmuka
Query Processor
Menerjemahkan perintah query menjadi instruksi
yang dimengerti oleh database manager
DML Precompiler
Mengubah perintah DML menjadi bentuk perintah
normal
DDL Compiler
Mengubah perintah DDL menjadi tabel yang berisi