Sistem Basis Data – Materi Konsep Basis Data [Pertemuan 3]
Sistem Basis Data – Materi Konsep Basis Data [Pertemuan 3]
Konsep Basis Data
Basis Data
Ø Sistem manajemen basis data (DBMS) adalah
kumpulan data yang saling terkait dan sekumpulan program untuk mengakses data
tersebut
Ø Pengumpulan database data yang berisi
informasi yang relevan dengan perusahaan
Ø DBMS menyediakan cara untuk menyimpan dan
mengambil informasi database yang nyaman dan efisien.
Konsep Database
DATA>INFORMASI > PENGETAHUAN
- Data adalah “Fakta”
- Interpretasi informasi data
- Informasi pengetahuan yang diberikan
arti
Database System Applications
A. Informasi Perusahaan
Ø Penjualan : Untuk informasi pelanggan,
produk, dan pembelian
Ø Akuntansi : Untuk pembayaran, saldo akun
penerimaan, aset dan informasi akuntan lainnya
Ø Sumber Daya Manusia : Untuk informasi
tentang karyawan, gaji, pajak gaji, dan keuntungan, dan untuk menghasilkan gaji
Ø Manufaktur : Untuk manajemen rantai
pasokan dan untuk melacak produksi barang di pabrik, persediaan barang di
gudang dan toko, dan pesanan barang
B. Perbankan dan Keuangan
Ø Perbankan : Untuk informasi pelanggan,
rekening, pinjaman, dan transaksi perbankan
Ø Transaksi Kartu Kredit : Untuk pembelian
dengan kartu kredit dan pembuatan laporan bulanan
Ø Keuangan : Untuk menyimpan informasi tentang kepemilikan, penjualan, dan pembelian instrumen keuangan seperti saham dan obligasi, juga untuk menyimpan data pasar waktu nyata untuk memungkinkan perdagangan online oleh pelanggan dan perdagangan otomatis oleh perusahaan
Database System vs File Processing System
a) Data Redundancy & Inconsistency
- Pemrograman yang berbeda membuat file
dan program aplikasi dalam waktu yang lama
- Berbagi file cendrung memiliki
struktur yang berbeda dan program mungkin dibuat dalam beberapa bahasa
pemrograman
- Selain itu, informasi yang sama dapat digandakan di beberapa tempat (file)
b) Kesulitan dalam mengakses data
- Lingkungan pemrosesan file
konvensional tidak memungkinkan data yang di perlukan diambil dengan cara
yang nyaman dan efisien
c) Isolasi Data
- Data terbesar di berbagai file, dan file mungkin dalam format yang berbeda, menulis program aplikasi baru untuk mengambil data yang sesuai sulit
d) Masakah Integritas
- Nilai data yang disimpan dalam
database harus memenuhi jenis konsistensi tertentu
- Contrait dalam tipe data, referensi, dll
e) Masalah Otomisitas
- Sistem komputer, seperti perangkat
lain dapat mengalami kegagalan
- Dalam banyak aplikasi, sangat penting bahwa, jika terjadi kegagalan, data dipulihkan ke status konsisten yang ada sebelum kegagalan
f) Anomali Akses Bersamaan
- Demi kinerja sistem secara keseluruhan dan respons yang lebih cepat, banyak sistem memungkinkan banyak pengguna untuk memperbaui data secara bersamaan
g) Masalah Keamanan
- Tidak setiap pengguna sistem database
dapat mengakses semua data
Data Abstraction
1. Physical Level
- Tingkat abstraksi terendah
menjelaskan bagaimana data sebenarnya disimpan
- Tingkat fisik menggambarkan struktur
data tingkat rendah yang kompleks secara rinci
2. Logical Level
- Tingkat abstraksi berikutnya yang
lebih tinggi menjelaskan data apa yang disimpan dalam database, dan
hubungan apa yang ada di antara data tersebut
3. View Level
- Tingkat abstraksi tinggi hanya
menjelaskan sebagian dari keseluruhan database
Relational Database
- Menggunakan kumpulan tabel untuk
mempresentasikan data dan hubungan di antara data tersebut
- Setiap tabel memiliki beberapa kolom,
dan setiap kolom memiliki nama yang unik
- Tabel juga dikenal sebagai relasi
- Model berbasis rekaman dinamai
demikian karena database terstruktur dalam rekaman format tetap dari
beberapa jenis
- Setiap tabel berisi rekaman dari tipe
tertentu, setiap tipe rekaman mendefinisikan sejumlah tetap bidang, atau
atribut
- Kolom tabel sesuai dengan atribut
tipe record dan model data
- Relasional adalah model data yang
paling banyak digunakan dan majoaty luas sistem database saat ini
didasarkan pada model relasional
Structure Of Relational Database
Database – Tabel – Record
- Setiap tabel diberi nama unik
- Setiap tabel memiliki kolom untuk
mempresentasikan atribut datanya
- Setiap tabel memiliki record data
- Setiap record memiliki nilai untuk
setiap kolom
- Baris/rekaman dalam tabel
mempresentasikan hubungan di antara sekumpulan nilai
Kunci Utama
Id : relasi struktur
Nama : nama instruktur
Gaji : instruktur gaji
Dept_name : nama dept tersebut
- Relation → table
- Tuple → row
- Attributes → column of a table
Order Of The Tuples
ü Urutannya Tidak
Relevan
ü Karena relasi
adalah sekumpulan tupel
ü Dan juga bisa
diurutkan berdasarkan query dan index
Attribute Types
ü Himpunan nilai
yang diizinkan untuk setiap atribut disebut domain atribut
ü Nilai atribut
(biasanya) diperlukan untuk menjadi atom, tidak dapat dibagi
ü Nilai khusus
null adalah anggota setiap domain
ü Nilai null
menyebabkan kompilasi dalam definisi banyak operasi
Keys
ü Harus memiliki cara untuk menentukan bagaimana tupel dalam relasi tertentu
ü Dibedakan diekspresikan
dalam atributnya
ü Nilai dari nilai
atribut tupel harus sedemikian rupa sehingga bisa unik mengidentifikasi tupel
tersebut
ü Tidak ada dua
tupel dalam suatu relasi yang diizinkan memiliki nilai yang persis sama untuk
semuan atribut
Superkey
ü Superkey
sekumpulan satu atau lebih atribut yang diambil secara selektif memungkinkan
kita untuk mengidentifikasi secara unik tupel dalam relasi
ü Misalnya atribut
ID dari relasi instruktur cukup untuk membedakan satu instruktur tuple dari
yang lain jadi, id adalah superkey
ü Atribut nama
instruktur, sebaiknya, bukan kunci super karena beberapa instruktur mungkin
memeiliki nama yang sama
ü Secara formal,
misalkan R menunjukkan himpunan atribut dalam skema relasi r.
ü Jika kita
mengatakan bahwa bagian dari superkey r untuk r
ü Kami membatasi pertimbangan
pada contoh relasi, di mana tidak ada dua tupel yang berbeda memiliki nilai
yang sama pada semua atribut di K
ü Artinya, jika ra
dan t2 berada di rand tal=2, ,maka t1.k!=T2.K
Candidate Key
ü kunci super mungkin bisa berisi atribut asing
ü Misalnya
kombinasi ID dan nama adalah superkey untuk instruktur relasi
ü Jika k adalah
kunci super maka begitu juga superset dari semua k
ü Superkey:
minimal kunci kandidat
ü Ada kemungkinan
bahwa beberapa set atribut yang berbeda dapat berfungsi sebagai kunci kandidat
ü Misalkan
kombinasi nama dan nama dept cukup untuk membedakan antara anggota relasi
instruktur
ü Kemudian, [ID]
dan (nama,nama dapartemen) keduanya adalah kunci kandidat
ü Meskipun atribut
ID dan nama bersama sama dapat membedakan tuple instruktur, kombinasi mereka,
[ID, nama], tidak membentuk kunci kandidat
ü Karena ID
atribut itu sendiri adalah kunci kandidat
Primary Key
ü Kunci kandidat
yang dipilih oleh perancang database sebagai cara utama untuk mengidentifikasi
tupel dalam suatu relasi
ü Kunci (baik kandidat utama, atau super) adalah
properti dari seluruh relasi daripada tupel individu
ü Dua tupel
individu dalam relasi dilarang memiliki nilai yang sama pada atribut kunci pada
saat yang sama
ü Penunjukkan
kunci merupakan kendala dalam dunia usaha yang sebenarnya.
ü Harus dipilih
dengan hati-hati
ü Nama seseorang
jelas tidak cukup, karena mungkin ada banyak orang nama yang sama
ü Di Amerika
Serikat, atribut nomor jaminan sosial seseorang akan menjadi kunci kandidat
ü Sejak non US.
Penduduk biasanya tidak memiliki nomor jaminan sosial, perusahaan internasional
harus membuat pengenal unik mereka sendiri
ü Alternatifnya
adalah menggunakan beberapa kombinasi unik dari atribut lain sebagai kunci
ü Kunci utama
harus dipilih sedemikian rupa sehingga nilai atributnya tidak pernah atau
sangat jarang berubah
ü Misalnya bidang
alamat seseorang tidak boleh menjadi bagian dari kunci utama, karena
kemungkinan akan berubah
ü Nomor jaminan
sosial, sebaiknya, dijamin tidak akan pernah berubah
ü Pengidentifikasi unik yang dibuat oleh perusahaan umumnya tidak berubah, kecuali jika dua perusahaan bergabung, dalam kasus seperti itu, pengidentifikasian yang sama mungkin telah dikeluarkan oleh kedua perusahaan dan realokasi pengidentifikasian mungkin diperlukan untuk memastikan unik.
Foreign
Key
- Foreign Key adalah sebuah column atau
field yang berfungsi sebagai kunci tamu dimana kunci ini akan kita gunakan
untuk relasi antar tabel.
Relational Query Languages
- Bahasa Query A adalah
bahasa di mana pengguna meminta informasi dari database
- Bahasa ini adalah
bahasa dimana pengguna meminta informasi dari database
- Bahasa-bahasa ini
biasanya berada pada level yang lebih tinggi daripada bahasa pemrograman
standar
- Query bahasa bisa
yang dikategorikan sebagai prosedural atau nonprosedural
- Bahasa Query dapat
dikategorikan sebagai prosedural atau nonprosedural
- Prosedur pengguna
menginstruksikan sistem untuk melakukan urutan operasi pada database untuk
menghitung hasil yang diinginkan, misalnya aljabar relasional
- Nonprosedural
pengguna menggambarkan informasi yang diinginkan tanpa memberikan prosedur
khusus untuk memperoleh informasi itu
Komentar
Posting Komentar