Disusun oleh :
(172101811)
Kelas 5/C2
1.Relational Data Model
Relation Data Model adalah model data yang terdiri dari kumpulan tabel berdimensi dua yang memiliki relation (relasi) , tuple
(baris) , dan atribut (kolom) untuk merepresentasikan suatu basis data.
• RDBM menjelaskan tentang hubungan logik antar data dalam basis data dengan merepresentasikannya ke dalam
bentuk relasi- relasi yang berupa tabel.
• Tabel tsb merupakan tabel mendatar (flat file) yang terdiri dari sejumlah baris yang menunjukkan record dan kolom.
Relasi
Relasi adalah tabel dua dimensi dalam Model Relasional yang memiliki sejumlah baris dan kolom. Di dalam relasi kita dapat
menyimpan informasi mengenai entitas-entitas yang kita punya. Relasi juga dapat kita gunakan untuk menunjukkan hubungan
antara beberapa entitas pada himpunan entitas yang berbeda.
Ada beberapa hal yang harus diperhatikan dalam membuat sebuah relasi, yaitu: Dalam suatu relasi, semua atributnya harus
memiliki nilai yang bersifat utuh.
• Dalam satu kolom harus memiliki tipe data yang sama. Tiap-tiap kolomnya harus memiliki nama yang unik.
• Baris dalam relasi tidak memiliki urutan tertentu. Kita dapat membuat relasi dengan cara membuat skema relasinya.
Skema relasi adalah definisi nama relasi, pasangan atribut, dan domain dari suatu relasi. Skema relasi terdiri dari:
• Nama atribut relasi yang unik dan berasosiasi dengan nama domain.
• Primary key untuk membedakan baris yang satu dengan yang lain.
Atribut
Atribut merupakan kolom dalam sebuah relasi. Atribut-atribut dalam suatu relasi tidak perlu diurutkan dengan urutan tertentu.
Tuple
Tuple merupakan baris dalam sebuah relasi. Atau bisa juga didefinisikan sebagai kumpulan-kumpulan elemen yang saling
berkaitan dan dapat menginformasikan tentang suatu elemen secara lengkap.
Domain
Domain merupakan suatu nilai yang dapat dimasukkan ke dalam suatu atribut. Nilai suatu domain harus bersifat atomic,
maksudnya nilai tersebut tidak bisa dipecah menjadi nilai-nilai yang lebih sederhana. Jika data yang kita miliki bersifat multivalued
attribute maka data tersebut harus dimasukkan ke relasi lain. Sedangkan apabila data kita berupa atribut komposit maka data
tersebut harus diubah menjadi atribut sederhana.
1. Memberi nama domain sesuai dengan nilai yang akan dimasukkan ke dalamnya.
Degree
Degree merupakan jumlah seluruh atribut dalam suatu relasi. Apabila suatu relasi memiliki 5 atribut, artinya relasi tersebut
memiliki nilai degree 5.
Cardinality
Cardinality merupakan jumlah seluruh tuple dalam suatu relasi. Apabila suatu relasi memiliki 10 tuple, artinya relasi
tersebutmemiliki nilai cardinality 10.
Relational key
Relational key merupakan atribut kunci dari suatu relasi. Dibagi menjadi 4 :
• Candidate key : yaitu atribut yang digunakan untuk membedakan antara baris yang satu dengan baris yang Iain
• Primary key : yaitu candidate key yang digunakan untuk mengidentifikasikan tuple yang unik pada suatu relasi.
• Alternate key : yaitu candidate key yang tidak dijadikan sebagai primary key.
• Foreign key : yaitu sebuah atribut dalam suatu relasi yang merujuk ke primary key relasi yang lainnya.
2. Formal Relational Query Languages
Bahasa Query
merupakan suatu bahasa yang termasuk dalam kategori bahasa tingkat tinggi yang digunakan oleh user untuk mendapatkan
informasi dari suatu basis data atau database.
• Bahasa prosedural : yaitu user meminta sistem untuk melakukan atau menginstruksikan serangkaian operasi terhadap
basis data dalam rangka mendapatkan informasi yang diinginkan. Contohnya yaitu aljabar relasional.
• Bahasa non prosedural : yaitu user menunjukkan informasi yang diinginkan tanpa menyatakan suatu cara tertentu
untuk memperoleh informasi tersebut.
ALJABAR RELASIONAL
Sekumpulan operasi yang digunakan untuk melakukan proses manipulasi data dalam rangka untuk mendapatkan informasi yang
diperlukan dari database
• Operasi yang dikembangkan secara khusus untuk database relational. (SELECT, PROJECT dan JOIN)
Operator Dasar
− select: σ
− project: ∏
− union: ∪
− set difference: –
− Cartesian product: x
− rename: ρ
Untuk memilih baris tertentu dari sebuah himpunan baris data (record) yang memenuhi kondisi dan membuang baris yang lain.
NOTASI:
contoh :
Operasi Project (Projection)
Untuk memilih attribut (kolom) tertentu dari himpunan / subhimpunan dan membuang yang lain
NOTASI :
contoh :
Operasi Union
• r ∪ s = {t | t ∈ r or t ∈ s}
• notasi r ∪ s
• Relasi yang menggabungkan semua baris di R atau S dengan meniadakan duplikasi
contoh :
Contoh :
Certesain Product
Contoh :
3. Perancangan Database: Pendekatan Entity-Relationship
Entitas
• Entitas adalah sebuah objek yang mempunyai sesuatu yang eksistensi atau nyata yang bisa di bedakan dari yang lain
nya.
• Bagaimana cara mengidentifikasi entitas ?
Contoh :
Relationship
• Relasi adalah sebuah basis data yang saling berhubungan satu dengan yang lainnya. Relasi juga di sebut dengan tabel.
• Seperti biasanya tabel itu mempunyai baris, kolom. Baris dinamakan juga dengan tuple dan kolom di sebut dengan
atribut.
• Binary Relationship
• Recursive Relationship
• Ternary Relationship
Binary Relationship
Contoh :
Recursive Relationship
Ketika Entitas terkait dengan dirinya sendiri, itu dikenal sebagai RecursiveRelationship
Ternary Relationship
Atribut
Ciri atau karakter yang membedakan antara entitas yang satu dengan entitas yang lainnya. Atribut dilambangkan dengan
oval.Pada atribut ini harus ada primary key (kunci utama).Primary itu di anggap sebagai atribut terpenting yang bisa memanggil
atau mengkaitkan ke atribut lain.
ER-Diagram adalah representasi visual dari data yang menggambarkan bagaimana data terkait satu sama lain
4.Data Storage dan Query (Data Storage And Querying)
Query
Query adalah pertanyaan atau permintaan informasi tertentu dari sebuah basisdata yang ditulis dalam format tertentu. Informasi
tersebut diperoleh dari data-data yang terdapat dalam table-table database. Dengan kata lain, query dapat diartikan sebagai
kemampuan (capability) menampilkan informasi yang diperoleh dari table-table yang tersimpan didalam database.
2. Query by example (QBE) adalah metode query yang disediakan sistem dalam bentuk record kosong dan pengguna dapat
menentukan field dan nilai tertentu yang akan digunakan dalam query.
3. Bahasa query (query language) adalah bahasa khusus yang digunakan untuk melakukan query pada sebuah basisdata. Metode
ini paling rumit tetapi paling fleksibel.
Macam-Macam Query :
• select query
Mengacu pada permintaan untuk memperoleh data atau informasi yang terdapat didalam database.
• Action query
merupakan permintaan yang berkaitan dengan operasi-operasi seperti penambahan (insert), pembaruan (updating)
dan penghapusan (deletion).
PENGAKSESAN QUERY
• Teknik ini mengaplikasikan aturan heuristik untuk mempercepat proses query. Optimasi jenis ini
mentransformasikan query dengan sejumlah aturan yang akan meningkatkan kinerja eksekusi, yakni:
- melakukan operasi selection di awal untuk mereduksi jumlah baris
- melakukan operasi projection di awal untuk mereduksi jumlah atribut
- mengkonversikan query dengan banyak join menjadi query dengan banyak subquery
- melakukan operasi selection dan join yang paling kecil keluarannya sebelum operasi lain
b. Cost-based
Cost Model memprediksi biaya yang harus dikeluarkan dari suatu query yang akan dieksekusi. Terdiri dari cost function, statistic
database, dan formula.
Klasifikasi Aktivitas
• Sebelum pemrosesan query dimulai, sistem harus menterjemahkan query tersebut ke dalam bentuk yang cocok
bagi sistem basis data.
• Proses translasi dilakukan oleh modul parser dalam sebuah sistem kompilator program.
• Parser memeriksa sintaks query dari pemakai juga melihat apakah nama tanel yang disebutkan memang benar
merupakan nama tabel yang ada di dalam basis data.
• Dari proses parsing yang dilakukan oleh modul parser akan dibentuk sebuah representasi hirarkis dari sebuah
query yang kemudian dapat lebih mudah ditranslasikan ke dalam ekspresi aljabar relasional.
Sebagai ilustrasi, perhatikan query yang kita nyatakan dalam SQL untuk menampilkan daftar kode kuliah (beserta SKS yang
diselenggarakan di semester 1 dan 2, berikut ini :
Query Optimizer
• Query optimizer adalah bagian dari DBMS yang berfungsi mengoptimasi query.
• Proses yang biasanya terjadi dalam optimizer adalah optimizer memeriksa semua ekspresi-ekspresi aljabar yang sama
yang diberikan query dan memilih salah satunya yang memiliki harga taksiran paling rendah. Tugas dari optimizer
adalah untuk mentransformasikan inisial ekspresi query ke dalam sebuah rencana evaluasi yang menghasilkan record
yang sama.
KLASIFIKASI AKTIVITAS
Query optimizer, sebuah modul software yang mendukung optimasi query terdiri dari tiga komponen, yaitu :
Representasi dari query tersebut dibentuk dalam suatu operator trees yang dapat dibuat dengan aturan transformasi.
6.ArsitekturSistemDatabase (Database System Architecture)
ArsitekturSistemDatabase
• Internal/Physical Level
• Berhubungan dengan bagaimana data disimpan secara fisik (physical storage)
• External /View Level
• Berhubungan dengan bagaimana data di representasikan dari sisi setiap user.
• Conceptual/Logical Level
• Penghubung antara internal & external level
Contoh Penggunaan :
Contoh dalam sebuah basis data pegawai, ketiga level digambarkan sebagai berikut :
basis data mengandung informasi tentang sebuah entity yang disebut EMPLOYEE. Setiap EMPLOYEE mempunyai sebuah
EMP_NUMBER (6 karakter), DEP_NUMBER(4 karakter) & SALARY (5 digit desimal)
Para pegawai direpresentasikan oleh STRORED_EMP, panjang 20 byte. STORED_EMP terdiri atas 4 field yaitu flag/pointer, 6 byte,
tiga field untuk atribut pegawai
• (Physical Level)
mempunyai sisi pandang level eksternal dimana pegawai direpresentasikan dalam sebuah record yang ditulis dengan sintaks PL/I
mempunyai sisi pandang level eksternal dimana pegawai direpresentasikan dalam sebuah record yang ditulis dengan sintaks
COBOL
• Adalah level user. Yang dimaksud dengan user adalah programmer, end user atau DBA.
• Setiap user mempunyai ‘bahasa’ yang sesuai dengan kebutuhannya.
• Programmer: bahasa yang digunakan adalah bahasa pemrograman seperti C, COBOL
• 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.
• 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-MODEL DATA
Sekumpulan tool konseptual untuk mendeskripsikan data, relasi-relasi antar data, semantic data & konsistensi konstrain
Model-model data:
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.
• Data dalam model jaringan direpresentasikan dengan sekumpulan record, dan relasi antara data direpresentasikan
oleh record & link. Link dipandang sebagai pointer. Record-record diorganisasikan sebagai graf.
• Contoh, model relasional di atas direpresentasikan dalam model jaringan.
• SMBD terdistribusi (DDBMS) Pada sistem ini data disimpan pada beberapa tempat (site), setiap tempat diatur
dengan suatu DBMS yang dapat berjalan secara independent. Perangkat lunak dalam sistem ini akan mengatur
pendistribusian data secara transparan.
Sistem terdistribusi
• Sekumpulan data yang secara logis adalah milik satu sistem yang sama, tetapi secara fisik tersebar di beberapa
tempat di jaringan.
• Basis data disimpan di beberapa computer
• Komputer pada sistem terdistribusi berkomunikasi satu sama lain.
• Komputer pada sistem terdistribusi disebut sebagai site atau node.
• Transaksi lokal transaksi yang hanya mengakses data hanya dari site dimana transaksi dilakukan.
• Transaksi global transaksi yang mengakses data pada beberapa site yang berbeda.
Alasan membuat Sistem terdistribusi
• Data bersama pengguna pada satu site bisa menggunakan data yang ada pada site lain.
• Misalnya pada sistem perbankan, dimana masing masing cabang menyimpan data yang saling berhubungan antar
cabang.
• Ketersediaan ,jika satu site gagal, maka site lainnya dapat melanjutkan operasai sampai selesai
• Otonomi setiap site bisa mengontrol data yang disimpan secara local
• Administrator global bertanggung jawab pada keseluruhan sistem,
• administrator lokal hanya bertanggung jawab pada masingmasing site yang dikelolanya.
– Homogen semua site pada satu sistem terdistribusi memiliki DBMS dan software komunikasi yang sama.
– Heterogen site pada satu sistem terdistribusi memiliki DBMS dan software komunikasi yang berbeda satu sama
lain.
– SMBD paralel. Sistem manajemen basis data ini menggunakan beberapa prosesor dan disk yang dirancang untuk
dijalankan secara paralel dan simultan. Sistem ini digunakan untuk memperbaiki kinerja dari DBMS
Client-Server Architecture
– Konsep arsitektur client/server mengasumsikan sebuah kerangka dasar (framework) yang terdiri atas banyak PC
yang terhubung melalui LAN beserta tipe-tipe jaringan komputer lainnya. Suatu Client adalah mesin user yang
menyediakan kemampuan user interface dan local processing.
– Suatu Server adalah mesin yang menyediakan berbagai service ke mesin client.