Selasa, 28 Mei 2019

Modul - Basis Data - Bab 01 - Pengenalan Basis Data



Modul Basis Data / Database

Download Modul Basis Data Bab 01 - Pengenalan Basis Data

Bab 01 - Pengenalan Basis Data

Abstract
"Modul ini mempelajari pengenalan basis data."

Kompetensi
"Mahasiswa mampu menjelaskan konsep basis data, mampu menjelaskan komponen dalam basis data,mampu menyebutkan dan menjelaskan keuntungan dan kelebihan penggunaan basis data."

Sebelum muculnya konsep basis data, untuk organisasi/perusahaan menggunakan pendekatan
flat file untuk manajemen datanya. Pada pendekatan ini, user pada tiap departemen dalam suatu
organisasi memiliki program aplikasi sendiri dan setiap program aplikasi menyimpan data mereka
masing-masing
Pendekatan ini memiliki berbagai kelemahan, antara lain:
 Tempat penyimpanan – menghasilkan biaya penyimpanan tinggi untuk dokumen kertas/
magnetik form yang digunakan.
 Kerangkapan data – data yang sama disimpan di berbagai tempat penyimpanan yang
berbeda sehingga organisasi memiliki banyak data yang rangkap.
 Data Updating – perubahan terhadap data harus dilakukan berulang kali mengingat data
yang sama terdapat di berbagai tempat penyimpanan.
 Currency of Information – memiliki potensi masalah jika gagal untuk memperbarui data
pada semua file yang terpengaruh.
 Task-Data Dependency – pengguna tidak dapat memperoleh tambahan informasi saat
membutuhkan informasi tambahan.

Konsep Basis Data
Pendekatan basis data mengubah model penyimpanan data yang ada pada pendekatan flat
file dimana data disimpan di setiap departemen menjadi terkumpul dalam satu basis data yang
dapat dipakai secara bersama oleh seluruh pengguna dalam organisasi / perusahaan.

Kelebihan Basis Data
Pendekatan basis data memberikan banyak keuntungan (kelebihan), antara lain:
1. Pengendalian terhadap kerangkapan data
Dilakukan dengan cara data hanya disimpan sekali. Hal ini mengurangi kerangkapan data
dan megurangi biaya untuk tempat penyimpnan.
2. Konsistensi Data
Dilakukan dengan cara data disimpan hanya sekali dalam basis data sehingga jika terjadi
perubahan pada nilai data tersebut, perubahan hanya dilakukan satu kali dan nilai baru
tersebut akan tersedia untuk semua pengguna.
3. Dapat memperoleh lebih banyak informasi dari data yang sama. Pengguna basis data dapat
memeperoleh informasi selain dari informasi rutin yang dikelolanya karena semua data lain
berada dalam basis data yang sama. Dengan demikian kebutuhan akan informasi selain dari
informasi rutin dapat terpenuhi.
4. Data dapat dipakai secara bersama (shared)
Data yang ada pada basis data menjadi milik seluruh organisasi dan dapat dipakai secara bersama oleh
pengguna yang berwenang pada saat bersamaan.
5. Memperbaiki integritas data
Intergritas data mengacu pada validitas dan konsistensi dari data yang disimpan. Integritas biasanya
diekspresikan dalam batasan (constraints) yang merupakan aturan yang konsisten dan tidak dapat
dilanggar.Jika kerangkapan data dikontrol dan kekonsistenan data dapat dijaga maka data
menjadi akurat
6. Meningkatkan keamanan data
Keamanan basis data melindungi basis data dari pengguna yang tidak memiliki otorisasi. DBA
dapat menentukan batasan-batasan pengaksesan data, misalnya dengan memberikan
password dan pemberian hak akses bagi pemakai (misal : modify, delete, insert, retrieve).
7. Economy of scale
Dengan menggabungkan semua data operasional organisasi ke dalam satu basis data dengan
aplikasi yang dibutuhkan dapat menghasilkan penghematan biaya. Anggaran yang biasanya
dialokasikan ke setiap departemen untuk pengembangan dan pemeliharaan dari sistem file
mereka dapat digabung sehingga menurunkan total biaya dan menciptakan economy of scale.
8. Meningkatkan aksesibilitas terhadap data dan respon yang lebih baik
Akibat dari integrasi data yang melewati batasan-batasan departemen dapat langsung diakses
oleh pengguna. Ini berarti menyediakan sistem dengan fungsi yang lebih baik. Pengguna dapat
memperoleh data yang dibutuhkan dengan cepat dengan menggunakan query language.
9. Dapat meningkatkan data independence (kemandirian data)
Dapat digunakan untuk bermacam-macam program aplikasi tanpa harus merubah format data
yang sudah ada

Kelemahan Basis Data
Selain keuntungan, basis data juga memiliki beberapa kelemahan, antara lain :
1. Rumit
Harapan akan fungsi yang baik dari sebuah basis data yang baik membuat basis data menjadi
software yang rumit. Perancang, pengembang, DBA, basis data administrator, dan pengguna
akhir harus memahami fungsi basis data agar dapat mengambil manfaat dari basis data.
Kegagalan dalam memaminya akan menyebabkan keputusan yang buruk bagi organisasi dan
membahayakan organisasi.
2. Biaya basis data
Biayanya sangat mahal karena menyangkut biaya-biaya untuk hardware and software.
3. Terdapat tambahan biaya hardware
Harus menggunakan biaya tambahan untuk hardware, storage, and network.
4. Terdapat biaya konversi
Diperlukan biaya yang besar untuk berpindah dari aplikasi/sistem yang lama ke dalam sistem
dan hardware basis data yang baru. Diperlukan pulan biaya untuk pelatihan staf untuk
menggunakan sistem yang baru ini serta tambahan biaya untuk mempekerjakan staff khusus
seperti DBA, dan lain-lain.

Karakteristik Basis Data
Untuk mempelajari basis data lebih lanjut, terlebih dahulu kita harus mengetahui karakteristik dari
basis data itu sendiri. Karakteristik dari basis data antara lain:
1. Tujuan dari basis data adalah untuk membantu manusia agar dapat melacak segala sesuatu
yang dianggap penting.
2. Data disimpan pada tabel. Tabel terdiri dari baris dan kolom seperti yang terlihat
pada spreadsheet. Basis data memiliki beberapa tabel, dimana setiap tabel menyimpan data
tentang suatu hal yang berbeda.
3. Setiap baris dalam suatu tabel menyimpan data dari instance yang berbeda. Misalnya pada
tabel MAHASISWA:
 Baris 1 menyimpan data untuk Pratama
 Baris 2 menyimpan data untuk Parto
 Baris 3 menyimpan data untuk Pardede
4. Setiap kolom dalam suatu tabel menyimpan karakteristik dari suatu instance tersebut.
Misalnya pada tabel MAHASISWA:
 Kolom 1 menyimpan data untuk NPM seorang mahasiswa
 Kolom 2 menyimpan data untuk namaMhsw seorang mahasiswa
 Kolom 3 menyimpan data untuk Jurusan seorang mahasiswa
5. Basis data menyimpan data dan relasi. Basis data hanya terdiri dari data
tentang mahasiswa, mata kuliah, dosen, dan nilai. Tetapi juga terdapat
relasi(relationship) antara baris-baris pada tabel-tabel di dalam basis data tersebut.

Konsep Dasar Basis Data
Data adalah fakta atau angka yang disimpan atau dicatat. Informasi adalah data yang diolah dan
disajikan sehingga memiliki suatu arti. Data pada tabel MAHASISWA, MATA KULIAH, dan NILAI
dapat menghasilkan informasi tentang IPK mahasiswa.
Basis data selain untuk mencatat atau menyimpan data-data, juga dapat digunakan untuk
membentuk suatu informasi. Basis data terdiri dari 2 tabel atau lebih dimana tabel-tabel tersebut
saling berhubungan digunakan untuk memenuhi kebutuhan para pemakai dalam suatu
organisasi. Setiap tabel pada basis data biasanya berisi tentang suatu hal.
Sistem manajemen basis data adalah perangkat lunak yang menciptakan, proses, dan
mengelola basis data. Contoh dari sistem manajemen basis data adalah Microsoft Access, SQL
Server, MySQL, ORACLE.
Saat ini basis data yang banyak digunakan adalah model basis data relasional. Model ini
diperkenalkan oleh E.F. Codd pada tahun 1970, menggunakan matematika yang dikenal sebagai
aljabar relasional. Saat ini model relasional digunakan sebagai model standar untuk basis
data komersial.
Istilah Dasar dalam Model Basis data Relasional
Beberapa isilah yang digunakan dalam basis data relasional adalah:
• Entitas
Adalah suatu obyek yang terdapat di dunia nyata yang bisa dibedakan dengan obyek yang
lainnya dimana obyek ini memiliki segala sesuatu yang dapat dilacak oleh penggunanya
seperti pelanggan, pegawai, penjualan.
• Atribut
Adalah karakteristik dari suatu entitas. Contoh: atribut dari pelanggan adalah nomor
pelanggan, nama pelanggan, alamat, no telpon.
• Relasi
Relasi adalah tabel dua dimensi yang memiliki karakteristik sebagai berikut:
 Barisnya merupakan data tentang suatu entitas
 Kolom-kolomnya terdiri dari data tentang atribut sebuah entitas
 Semua data pada kolom yang sama memiliki jenis yang sama
 Setiap kolom mempunyai nama yang unik
 Sel dari suatu tabel menyimpan 1 nilai
 Urutan kolom tidak penting
 Urutan baris tidak penting
 Dua baris tidak mungkin identik (tidak ada duplikasi)
• Ketergantungan Fungsional (Functional dependency)
Ketergantungan fungsional terjadi ketika nilai satu atribut (satu set
atribut) menentukan nilai atrubt kedua (nilai satu set atribut kedua).
Contohnya:
NPM  NamaMahasiswa
(dibaca NPM menentukan NamaMahasiswa atau NamaMahasiswa bergantung secara fungsi
pada NPM)
Ketergantungan fungsional bisa berdasarkan pada persamaan seperti pada:
TotalHarga= Jumlah x HargaSatuan
(Jumlah, HargaSatuan)  TotalHarga
Tetapi ketergantungan fungsional bukan persamaan. Contoh:
NPM  NamaMahasiswa
NPM  Alamat
NPM  (NamaMahasiswa, Alamat)
• Determinant
Pada ketergantungan fungsional NPM  NamaMahasiswa; atribut di sebelah
kiri ketergantungan fungsional disebut sebagai determinant. Suatu determinant disebut unik
jika dan hanya jika menentukan setiap kolom lain dalam suatu relasi.
Suatu determinan dapat disebut sebagai composite determinant jika determinant dari suatu
ketergantungan fungsional terdiri dari lebih dari satu atribut. Contoh:
(NPM, KodeMatakuliah)  (Nilai)
• Candidate key
Key adalah kombinasi dari satu atau lebih kolom yang digunakan untuk mengidentifikasi
baris-baris dalam suatu relasi. Candidate Key adalah key yang menentukan semua kolom
lain dalam suatu relasi. Pada tabel MATAKULIAH, NamaMatkul adalah Candidate Key.
• Composite key
adalah key yang terdiri dari dua atau lebih kolom.
• Primary key
Adalah candidat key yang dipilih sebagai primary key sebagai sarana untuk mengidentifikasi
baris-baris dalam sebuah relasi.
 Dalam satu tabel hanya ada satu primary key.
 Primary key dapat berupa composite key.
 Primary key yang ideal biasanya pendek, berupa angka, dan tidak pernah berubah.
• Surrogate key
adalah kolom yang ditambahkan pada suatu tabel untuk bertindak sebagai primary key.
DBMS akan membuat nilai kolom tersebut unik secara otomatis pada saat baris data pada
tabel tersebut dibuat.
Contoh:
RENTAL_PROPERTY (Street, City, State/Province, Zip/PostalCode, Country,
Rental_Rate)
RENTAL_PROPERTY(PropertyID, Street, City, State/Province, Zip/PostalCode,
Country, Rental_Rate)
• Foreign key
adalah kolom atau komposite kolom dimana kolom tersebut merupakan primary key pada
tabel lain (yang menjadi referensi).
Contoh:
DOSEN(KodeDosen, NamaDosen, NoTelpon)
MATAKULIAH(KodeMatKul, NamaMatKul, KodeDosen)
• Referential integrity constraint
Adalah penyataan yang membatasi nilai-nilai foreign key ke nilai-nilai yang sudah ada sebagai
primary key pada relasi yang berhubungan.
• Normal form
Tabel-tabel pada basis data harus memenuhi aturan normalisasi, yaitu bebas dari
ketergantungan struktural atau anomali yang disebabkan oleh modifikasi data. Anomali ini
disebut modification anomalies. Modification Anomalies terdiri dari:
 Deletion anomaly
Misalkan kita menghapus data dengan RepairNumber 2100. Data yang terhapus bukan
hanya data tentang repair, tetapi data tentang mesin juga akan terhapus (informasi
tentang mesin Lathe dengan AcuisitionPrice 4750 akan hilang).
Dari kasus di atas, ketika kita menghapus satu baris pada tabel tersebut, kita akan
kehilangan 2 fakta sekaligus (machine dan repair) karena struktur tabel tersebut
memaksa demikian. Kondisi tersebut dinamakan deletion anomaly.
 Insertion anomaly
Pada tabel EQUIPMENT_REPAIR, misalkan kita ingin memasukan data repair. Untuk
memasukan data tersebut selain diperlukan:
 Data Repair, yaitu: RepairNumber, RepairDate, dan RepairAmount.
 Juga perlu data Machine, yaitu: ItemNumber, Type, dan AcquisitionCost.
Artinya ketika kita hanya perlu memasukan data tentang satu entity (repair), kita
diharuskan memasukan data tentang entity lain (machine) karena kondisi struktur tabelnya
mengharuskan demikian. Kondisi ini dinamakan insertion anomaly
 Update anomaly.
Pada tabel EQUIPMENT_REPAIR, misalkan kita akan mengubah data (update). Misalkan
kita akan mengubah data baris terakhir menjadi:
Terlihat bahwa “Drill Press” memiliki dua nilai AcquisitionCost yang berbeda. Sehingga
terjadi data inconsistency. Kondisi demikian dinamakan update anomaly
Bentuk normal terdiri dari: 1NF, 2NF, 3NF, BCNF, dan DK/NF (akan dipelajari lebih lanjut
pada pertemuan berikutnya).
Komponen Basis Data
Komponen sistem basis data terdiri dari:
1. User (pengguna)
Pengguna sistem basis data
2. Aplikasi Basis Data
Program komputer yang digunakan oleh user untuk bekerja.
3. DBMS
Sistem manajemen basis data yang membuat, memproses, dan mengatur basis basis
datas.
4. Basis data
Komponen Sistem Basis Data dengan SQL
1. User (pengguna)
Pengguna sistem basis data
2. Aplikasi basis data
Program komputer yang digunakan oleh user untuk bekerja.
3. Structured Query Language (SQL)
Bahasa standar (secara internasional) yang dapat digunakan untuk melakukan query
terhadap data pada semua sistem basis data
4. DBMS
Sistem manajemen basis data yang membuat, memproses, dan mengatur basis data.
basis datas.
5. Basis data
Komponen Sistem Basis Data kelas Perusahaan (Enterprise-class Database System)
Komponen dari Enterprise-class Database System terdiri dari:
1. User (pengguna)
Pengguna sistem basis data
2. Database Application
– Client/Server application
 Program aplikasi diinstal di client dan terkoneksi dengan database server
 Dikembangkan dengan Visual Basic, C++, atau Java
– E-commerce
 Program berjalan pada web server
 User menggunakannya melalui Web browser (Internet Explorer atau Firefox)
 Web server yang sering digunakan: IIS atau Apache
 Dikembangkan dengan PHP, Java, Microsoft .Net
– Reporting Application
 Mempublikasikan hasil dari query pada basis data melalui portal atau web site
suatu organisasi atau perusahaan
 Dibuat menggunakan third-party report generator dan digital dashboard
product seperti Cognos dan MicroStrategy
– XML Web Services
 Memanfaatkan teknologi XML sehingga memungkinkan komunikasi antar
program aplikasi yang berbeda
 Dikembangkan dengan Java atau Microsoft .Net (C## atau VB .Net)
3. Structured Query Language (SQL)
Bahasa standar (secara internasional) yang dapat digunakan untuk melakukan query
terhadap data pada semua sistem basis data
4. DBMS
 Memproses perintah SQL
 Menyediakan fasilitas untuk membuat, memproses dan mengelola basis data
 Contoh: Microsoft Access, Microsoft SQL Server, Oracle dan DB2
Database application mengambil dan menyimpan data dari basis data dengan mengirim
perintah SQL ke DMBS
5. Basis data
merupakan koleksi dari tabel-tabel yang terintegrasi

Sumber :
Modul Perkuliahan - Basis Data - Program Studi Sistem Informasi - Fakultas Ilmu Komputer - Universitas Mercu Buana