ISYS6508
Database System
Week 1
1. Introduction
2. Database Approach
Introduction
Meskipun belum genap berusia 50 tahun, riset basis data (database) memiliki dampak
besar pada ekonomi dan masyarakat, menciptakan sektor industri bernilai antara US $ 35-US
$ 50 miliar per tahun. Database, merupakan pengembangan yang paling penting di bidang
rekayasa perangkat lunak. Database merupakan kerangka kerja yang mendasari sistem
informasi. Dalam beberapa tahun terakhir database mengalami perkembangan signifikan
dalam peningkatan hardware, kapasitas hardware, dan komunikasi serta kemunculan internet,
e-commerce, bisnis intelijen, komunikasi mobile dan komputasi grid, termasuk mengubah
cara kerja dalam organisasi
Teknologi basis data (database) telah menjadi bidang yang menarik untuk dikerjakan,
sejak kemunculannya, telah menjadi katalisator bagi banyak perkembangan penting dalam
rekayasa perangkat lunak. Riset basis data (database) belum berakhir dan masih banyak
masalah yang perlu diatasi. Selain itu, karena sistem basis data (database) aplikasi menjadi
semakin kompleks, kita harus memikirkan kembali algoritma yang banyak digunakan saat
ini, seperti algoritme untuk penyimpanan file, akses file, dan pengoptimalan kueri. Algoritma
query ini telah membuat kontribusi signifikan dalam rekayasa perangkat lunak dan, kepastian
dalam penggunaan serta pengembangan algoritma baru yang akan memiliki efek yang serupa.
Basis data (database) sekarang menjadi bagian integral dari kehidupan sehari-hari kita
yang sering kita tidak sadari bahwa kita menggunakan salah satu dari aplikasi yang
menggunakan basis data (database). Untuk memulai diskusi kita tentang database, di bagian
ini kita akan mempelajari beberapa aplikasi sistem yang menggunakan basis data (database),
untuk menjadi kumpulan data terkait dan sistem manajemen basis data (DBMS). DBMS
merupakan perangkat lunak yang mengelola dan mengontrol akses ke database. DBMS
hanyalah sebuah program yang berinteraksi dengan database dalam pelaksanaannya. Kami
juga menggunakan sistem basis data (database) yang lebih inklusif sebagai kumpulan
program aplikasi yang berinteraksi dengan database. Beberapa aplikasi yang menggunakan
database:
Database Approach
Beberapa definisi database yang mudah anda pahami sehingga Anda dapat memahami
konsep database sepenuhnya. Database adalah satu (tunggal), namun memiliki media
penyimpanan data yang besar, dapat digunakan secara bersamaan oleh banyak departemen
dan pengguna. Alih-alih file terputus dengan data yang berlebihan, semua item data
terintegrasi dengan jumlah minimum duplikasi. Database tidak lagi dimiliki oleh satu
departemen tetapi merupakan sumber daya perusahaan bersama. Database tidak hanya
menyimpan data operasional organisasi, tetapi juga deskripsi data. Karena alasan ini,
database juga didefinisikan sebagai kumpulan catatan terpadu yang menggambarkan diri
sendiri. Deskripsi data dikenal sebagai katalog sistem (atau kamus data atau metadata - “data
tentang data”). Ini adalah sifat yang menggambarkan diri dari database yang menyediakan
independensi program-data.
Pendekatan Basis data adalah memisahkan antara definisi data dengan aplikasi,
dimana pengguna hanya melihat tampilan untuk objek data secara eksternal tetapi tidak
mengetahui bagaimana fungsi objek dan pendefinisikan objek data. Pendekatan ini disebut
sebagai abstraksi data. Salah satu keuntungan dari pendekatan ini adalah bahwa kita dapat
mengubah definisi internal suatu objek tanpa mempengaruhi pengguna objek, asalkan definisi
eksternal tetap sama. Dengan cara yang sama, pendekatan database berikutnya adalah
memisahkan struktur data dari program aplikasi dan menyimpannya dalam database. Jika
struktur data baru ditambahkan atau struktur yang ada dimodifikasi, maka program aplikasi
tidak terpengaruh, asalkan mereka tidak secara langsung bergantung pada apa yang telah
dimodifikasi. Misalnya, jika kita menambahkan bidang baru ke catatan atau membuat file
baru, aplikasi yang ada tidak akan terpengaruh. Namun, jika kami menghapus bidang dari file
yang digunakan program aplikasi, maka program aplikasi tersebut dipengaruhi oleh
perubahan ini dan harus dimodifikasi sesuai dengan kebutuhan.
Pernyataan lain dalam definisi database yang harus kita jelaskan adalah "secara logis
terkait." Ketika kita menganalisis kebutuhan informasi dari suatu organisasi, kita berusaha
untuk mengidentifikasi entitas, atribut, dan hubungan. Entitas adalah objek yang berbeda
Hardware
DBMS dan aplikasi membutuhkan perangkat keras untuk dijalankan. Perangkat keras
dapat berkisar dari satu komputer pribadi ke satu mainframe atau jaringan komputer.
Perangkat keras tertentu bergantung pada persyaratan organisasi dan DBMS yang
digunakan. Beberapa DBMS hanya berjalan pada perangkat keras atau sistem operasi
tertentu, sementara yang lain berjalan di berbagai perangkat keras dan sistem operasi.
DBMS membutuhkan jumlah minimum memori utama dan ruang disk untuk
dijalankan, tetapi konfigurasi minimum ini mungkin tidak selalu memberikan kinerja
yang dapat diterima. Konfigurasi perangkat keras yang disederhanakan dan
diilustrasikan pada Gambar 1.3. terdiri dari jaringan server kecil, dengan server pusat
yang terletak di London menjalankan backend dari DBMS, yaitu bagian dari DBMS
yang mengelola dan mengontrol akses ke database. Ini juga menunjukkan beberapa
komputer di berbagai lokasi menjalankan frontend dari DBMS, yaitu bagian dari
DBMS yang berinteraksi dengan pengguna. Ini disebut arsitektur client-server:
backend adalah server dan frontend adalah klien.
Software
Komponen perangkat lunak terdiri dari perangkat lunak DBMS itu sendiri dan
program aplikasi, bersama dengan sistem operasi, termasuk perangkat lunak jaringan
jika DBMS digunakan melalui jaringan. Biasanya, program aplikasi ditulis dalam
bahasa pemrograman generasi ketiga (3GL), seperti C, C ++, C #, Java, Visual Basic,
COBOL, Fortran, Ada, atau Pascal, atau bahasa generasi keempat (4GL), seperti
sebagai SQL, tertanam dalam bahasa generasi ketiga. Target DBMS mungkin
memiliki perangkat generasi keempatnya sendiri yang memungkinkan pengembangan
aplikasi secara cepat melalui penyediaan bahasa query nonprocedural, pembuat
laporan, generator bentuk, generator grafik, dan generator aplikasi. Penggunaan alat
generasi keempat dapat meningkatkan produktivitas secara signifikan dan
menghasilkan program yang lebih mudah dikelola.
Database Designer
Dalam proyek-proyek desain database besar, kita dapat membedakan antara dua jenis
perancang: perancang basis data logis dan perancang basis data fisik. Perancang database
logis berkaitan dengan mengidentifikasi data (yaitu entitas dan atribut), hubungan antara data,
Perancang basis data fisik memutuskan bagaimana desain database logis harus secara
fisik direalisasikan. Hal ini melibatkan:
memetakan desain database logis ke dalam satu set tabel dan batasan integritas.
memilih struktur penyimpanan spesifik dan metode akses untuk data untuk mencapai
kinerja yang baik.
merancang tindakan keamanan apa pun yang diperlukan pada data.
Banyak bagian dari desain database fisik sangat bergantung pada target DBMS, dan
mungkin ada lebih dari satu cara untuk menerapkan suatu mekanisme. Akibatnya, perancang
database fisik harus sepenuhnya menyadari fungsi dari DBMS target dan harus memahami
kelebihan dan kekurangan dari setiap implementasi alternatif. Perancang basis data fisik
harus mampu memilih strategi penyimpanan yang sesuai yang memperhitungkan
penggunaan. Sedangkan desain database konseptual dan logis berkaitan dengan apa, desain
database fisik berkaitan dengan bagaimana. Ini membutuhkan keterampilan yang berbeda,
yang sering ditemukan pada orang yang berbeda.
End-Users
Pengguna akhir adalah "klien" dari database, yang telah dirancang dan
diimplementasikan dan dipelihara untuk melayani kebutuhan informasi mereka. Pengguna
akhir dapat diklasifikasikan bagaimana cara mereka menggunakan system:
Naïve User biasanya tidak menyadari DBMS. Mereka mengakses database melalui
program aplikasi yang ditulis khusus yang berusaha membuat operasi sesederhana
mungkin. Mereka menjalankan operasi basis data dengan memasukkan perintah
sederhana atau memilih opsi dari menu. Ini berarti bahwa mereka tidak perlu tahu apa
pun tentang database atau DBMS. Misalnya, kasir di supermarket lokal menggunakan
barcode reader untuk mengetahui harga barang tersebut. Namun, ada program aplikasi
yang menampilkan barcode, mencari harga barang di database, mengurangi bidang
basis data yang berisi jumlah barang-barang seperti itu di stok, dan menampilkan
harga di kasir.
Sophisticated users Di ujung lain dari spektrum, pengguna akhir yang canggih akrab
dengan struktur database dan fasilitas yang ditawarkan oleh DBMS. Pengguna akhir
yang canggih dapat menggunakan bahasa query tingkat tinggi seperti SQL untuk
melakukan operasi yang diperlukan. Beberapa pengguna akhir yang canggih bahkan
dapat menulis program aplikasi untuk mereka gunakan sendiri.
Gambar 1.4 Arsitektur Database ANSI SPARC (Sumber Connolly & Begg (2015)
1. Database adalah kerangka kerja yang mendasari sistem informasi, secara mendasar
mengubah banyak cara organisasi beroperasi.
2. DBMS adalah sistem perangkat lunak yang memungkinkan pengguna untuk
mendefinisikan, membuat, memelihara, dan mengontrol akses ke database. Program
aplikasi adalah program komputer yang berinteraksi dengan Database dengan
mengeluarkan permintaan yang sesuai (biasanya pernyataan SQL) ke DBMS. Sistem
basis data yang lebih inklusif digunakan untuk menentukan kumpulan program
aplikasi yang berinteraksi dengan database bersama dengan DBMS dan database itu
sendiri.
3. Semua akses ke database adalah melalui DBMS. DBMS menyediakan bahasa Definisi
Data (DDL), yang memungkinkan pengguna untuk mendefinisikan database, dan
bahasa Manipulasi Data (DML), yang memungkinkan pengguna untuk memasukkan,
memperbarui, menghapus, dan mengambil data dari database.
4. Arsitektur database ANSI-SPARC menggunakan tiga level abstraksi: eksternal,
konseptual, dan internal. tingkat eksternal terdiri dari pandangan pengguna tentang
database. tingkat konseptual adalah pandangan komunitas dari database: ia
menetapkan konten informasi dari seluruh basis data, terlepas dari pertimbangan
penyimpanan. tingkat konseptual mewakili semua entitas, atribut mereka, dan
hubungan mereka, serta batasan pada data, dan informasi keamanan dan integritas.
tingkat internal adalah tampilan komputer dari database: ia menentukan bagaimana
data direpresentasikan, bagaimana catatan diurutkan, indeks dan pointer apa yang ada,
dan sebagainya.
5. Model data adalah kumpulan konsep yang dapat digunakan untuk mendeskripsikan
sekumpulan data, operasi untuk memanipulasi data, dan satu set batasan integritas
untuk data. Model data dibagi ke dalam tiga kategori besar: model data berbasis
objek, model data berbasis-rekaman, dan model data fisik. Dua yang pertama
Connolly, T., & Begg, C. (2015). Database System A Practical Approach to Design,
Implemetation, and Management 6th Edition. Pearson