Pertemuan 6 Sistem Basis Data Presented by : Sity Aisyah Nasution, M.Kom Email : dryesha@gmail.com Blog : yeshasalsabila.blogspot.com
Pokok Bahasan 1 2 3 4 5 6 Komponen Sistem Basis Data Abstraksi Data Schema 4 Bahasa Basis Data 5 Struktur Sistem Keseluruhan 6 Pemanfaatan Ilmu Basis Data
Komponen Sistem Basis Data Pengertian Sistem Basis Data (database) : Sistem Basis Data merupakan sistem yang terdiri dari kumpulan file atau tabel yang saling berhubungan & memungkinkan beberapa pemakai mengakses dan memanipulasinya. Sistem Basis Data merupakan sistem yang menyusun & mengelola data organisasi perusahaan, sehingga mampu menyediakan informasi yang diperlukan oleh pemakai. Sistem basis data terdapat komponen-komponen utama yaitu : 1. Perangkat Keras (hardware) Perangkat keras (hardware) yang biasanya terdapat dalam sebuah basis data adalah komputer untuk sistem stand alone, sistem jaringan (network), memori sekunder yang online (harddisk), memori sekunder yang offline (disk), dan perangkat komunikasi untuk sistem jaringan.
2. Sistem Operasi Sistem operasi merupakan program yang mengaktifkan sistem komputer, mengendalikan seluruh sumber daya dalam komputer dan melakukan operasi-operasi dasar dalam komputer, pengelolaan file, dan lain-lain. Program pengelola basis data akan aktif (running) jika sistem operasi yang dikehendaki sesuai. Sistem operasi yang biasa digunakan : MS-DOS, MS-Windows, UNIX, LINUX, Novel_Netware, dan lain-lain.
3. Basis Data Basis Data merupakan koleksi dari data yang terorganisasi dengan cara sedemikian rupa sehingga data tersebut mudah disimpan dan dimanipulasi. Sebuah sistem basis data dapat memiliki beberapa basis data. Setiap basis data dapat memiliki sejumlah objek basis data (seperti tabel, indeks, dan lain-lain). Di samping berisi atau menyimpan data, setiap basis data juga mengandung/menyimpan definisi struktur.
4. Database Management System (DBMS) Database Management System (DBMS) merupakan kumpulan program aplikasi yang digunakan untuk membuat dan mengelola basis data. DBMS merupakan perangkat lunak (software) yang menentukan bagaimana data tersebut diorganisasi, disimpan, diubah dan diambil kembali. Perangkat lunak ini juga menerapkan mekanisme pengamanan data, pemakaian data bersama, dan konsistensi data. Perangkat lunak yang termasuk DBMS adalah sebagai berikut : Nama DBMS Nama Perusahaan Access Microsoft Corporation DB2 IBM Informix Ingres Computer Associate MySQL The MySQL AB Company Oracle Oracle Corporation PostgreSQL ww.postgrsql.com Sybase Sybase Inc Tabel 1.1. Daftar DBMS
5. Pemakai (Users) Pemakai atau users adalah beberapa jenis atau tipe pemakai pada sistem basis data, berdasarkan cara mereka berinteraksi pada basis data, diantaranya yaitu : Programmer Aplikasi adalah pemakai yang berinteraksi dengan basis data melalui DML (Data Manipulation Language), yang disertakan dalam program yang ditulis dalam bahasa pemrograman induk (seperti pascal, cobol, clipper, foxpro, dan lain-lain) atau orang yang membuat program aplikasi yang menggunakan basis data. User Mahir (Casual User) adalah pemakai yang berinteraksi dengan sistem tanpa menulis modul program. Pemakai menggunakan query (untuk akses data), dengan bahasa query yang telah disediakan oleh suatu DBMS.
User Umum (Naive User) adalah pemakai yang berinteraksi dengan sistem basis data melalui pemanggilan satu program aplikasi permanen, yang telah ditulis atau disediakan sebelumnya. User Khusus (Specialized User) adalah pemakai yang menulis aplikasi basis data non konvensional untuk keperluan khusus, seperti aplikasi sistem pakar, pengolahan citra, dan lain-lain.
6. Administrator Basis Data (database Administrator) adalah orang yang bertanggungjawab terhadap pengelolaan basisdata. Tugas Database Administrator (DBA) : Mendefinisikan basisdata Mendefinisikan struktur penyimpanan dan metode akses Memodifikasi skema dan organisasi fisik Menjamin otorisasi untuk mengakses data Menentukan sekuritas basisdata
Abstraksi Data Salah satu tujuan dari DBMS adalah untuk menyediakan fasilitas/antarmuka (interface) kepada user. Untuk itu sistem tersebut akan menyembunyikan detail tentang bagaimana data disimpan dan dipelihara, sehingga data yang terlihat oleh user sebenarnya berbeda dengan yang tersimpan secara fisik. Abstraksi data merupakan tingkatan-tingkatan pengguna dalam memandang bagaimana sebenarnya data diolah dalam sebuah sistem database sehingga menyerupai kondisi yang sebenarnya dihadapi oleh pengguna sehari-hari. Sebuah DBMS seringkali menyembunyikan detail tentang bagaimana sebuah data disimpan dan dipelihara (diolah) dalam sebuah sistem database, dengan tujuan untuk memudahkan pengguna dalam menggunakan DBMS tersebut. Karena itu seringkali data yang terlihat oleh pemakai sebelumnya berbeda dengan yang tersimpan secara fisik.
Level Fisik (Physical Level) Abstraksi data terbagi menjadi 3 level, yaitu : Level Fisik (Physical Level) Lapis fisik merupakan lapis terendah, lapis ini menjelaskan bagaimana (how) data sesungguhnya disimpan. Pada lapis ini struktur data dijabarkan secara rinci yang dibutuhkan oleh seorang system engineer dan umumnya digunakan oleh para pakar software dan hardware. Physical level sering disebut sebagai level eksternal yang merupakan bentuk implementasi conceptual, yaitu suatu pandangan perancang yang berkaitan dengan permasalahan teknik penyimpanan data dalam basis data ke dalam media penyimpanan yang digunakan. Pandangan ini bersifat sangat teknis & lebih berorientasi pada mesin, yaitu berkaitan dengan organisasi berkas basis data.
Level Konseptual (Conceptual Level) Lapis konseptual merupakan lapis abstraksi yang lebih rendah dari lapis logika dan lebih tinggi dari lapis fisik. Lapis ini menjabarkan data apa (what) saja yang sesungguhnya disimpan pada basis data, dan juga menjabarkan hubungan-hubungan antar data secara keseluruhan. Seorang pengguna dalam level ini dapat mengetahui bahwa data mahasiswa disimpan pada tabel mahasiswa, tabel krs, tabel transkrip dan lain sebagainya. Level ini biasa dipakai oleh DBA. Conseptual Level / Global Logical Data juga merupakan suatu pandangan perancang basis data yang berkaitan dengan data apa saja yang perlu disimpan dalam basis data dan penjelasan mengenai hubungan antara data yang satu dengan data yang lainnya.
Level Pandangan Pemakai (View Level) Lapis pandangan merupakan lapis tertinggi pada abstraksi data. Pada lapis ini pengguna hanya mengenal struktur data yang sederhana, yang berorientasi pada kebutuhan pengguna. Level Pandangan Pemakai (View Level/Application Programmer Logical File) merupakan pandangan para pemakai basis data pada masing-masing pemakai basis data sehingga memiliki cara pandang yang berbeda-beda tergantung pada macam data apa saja yang tersedia atau dapat diakses oleh pemakai. Data yang dikenal oleh masing-masing pengguna bisa berbeda-beda dan barangkali hanya mencakup sebagian dari basis data. Misalnya: Bagian keuangan hanya membutuhkan data keuangan, jadi yang digambarkan hanya pandangan terhadap data keuangan saja, begitu juga dengan bagian akuntansi, hanya membutuhkan data akuntansi saja. Jadi tidak semua pengguna database membutuhkan seluruh informasi yang terdapat dalam database tersebut. Application Programmer Logical File dapat ditunjukkan menggunakan schema dan subschema basis data.
Contoh : Terdapat struktur data bertipe record seperti berikut : Pegawai = RECORD Nama : String; Alamat : String; Bagian : String; Gaji : LongInt; End: Field Tipe Data Pada contoh ini record pegawai berisi 4 buah field (nama, alamat, bagian, gaji). Setiap field memiliki nama, dan setiap nama memiliki tipe data. Pada level fisik, pegawai dapat dijabarkan sebagai blok data yang terletak pada lokasi berurutan (satuan byte). Pada level konseptual masing-masing record dijabarkan dengan definisi tipe data . pada level view, user tertentu hanya boleh mengakses data tertentu, contohnya, seorang yang menangani penggajian berhak mengetahui gaji seseorang bahkan mengubahnya, tetapi orang yang bekerja di bagian lain tentu tidak boleh melihatnya.
Gambar 1.1 Level Abstraksi Data View 1 View 2 View 3 Skema Konseptual Skema Fisik Gambar 1.1 Level Abstraksi Data
Schema Schema memberikan deskripsi hubungan logik antar data dalam basis data secara lengkap, termasuk di dalamnya nama dan deskripsi semua atribut, record, dan batasan nilai untuk semua aplikasi yang menggunakan basis data tersebut. Schema menunjukkan pandangan seorang perancang yang digunakan pada lingkup sistem atau organisasi secara keseluruhan.
Subschema Subschema merupakan deskripsi terpisah dari atribut, record, dan batasan nilai yang akan digunakan oleh sebuah program aplikasi. Subschema menunjukkan pandangan seorang application programmer terhadap data yang digunakannya pada lingkup aplikasi tertentu. Penyebutan schema dan subschema hanya berbeda pada lingkupnya saja. Jika data & kerelasian yg digambarkan berada pada lingkup sistem atau organisasi disebut schema, tetapi jika data dan kerelasian yg digambarkan sebuah aplikasi disebut subschema.
Instance Schema Instance Schema menunjukkan isian nilai-nilai aktual elemen data dalam sebuah relasi. Instance schema diperlukan untuk menunjukkan nilai data sesungguhnya yang ada di schema atau subschema. Instance schema sebenarnya adalah sama dengan relasi yang direpresentasikan dalam bentuk tabel.
Contoh penulisan notasi untuk schema dan subschema : Mata_kuliah_schema : (Kode_MK Char(5), Nama_MK Char(50), SKS Num(1), Semester Num(1), Status Char(5), Primary Key (Kode_MK)) Contoh penulisan instance schema : Kode_MK Nama_MK SKS Semester Status PA115 PPN 3 1 Wajib PR202 Pemrograman 2 2 SI138 Basis Data 4
Bahasa Basis Data (Database Language) Adalah suatu cara untuk berinteraksi atau berkomunikasi antara pemakai dengan basis data yang diatur dalam bahasa khusus yang ditetapkan oleh perusahaan. Database Language dipilah menjadi 2 (dua) yaitu : Data Definition Language (DDL) dan Data Manipulation Language (DML).
Data Definition Language (DDL) Data Definition Language (DDL) merupakan satu paket bahasa DBMS yang berguna untuk melakukan spesifikasi terhadap skema basis data. DDL juga merupakan struktur basis data yang menggambarkan desain basis data secara keseluruhan. Dengan DDL dapat membuat tabel baru & mengubah tabel, dan hasil dari kompilasi perintah DDL adalah kumpulan tabel yang disimpan dalam file khusus yang disebut kamus data (data dictionary).
Kamus Data (Data Dictionary) merupakan suatu meta data (super data) yaitu data yang mendeskripsikan data sesungguhnya. Kamus data akan selalu diakses dalam suatu operasi basis data sebelum suatu file data yang sesungguhnya diakses. Struktur penyimpan dan metode akses yang digunakan oleh sistem basis data disebut dengan data storage and definition language. CREATE TABLE Tblmahasiswa ( Nim CHAR(9), Nama CHAR (30), IPK NUMERIC (4))
Data Manipulation Language (DML) Data Manipulation Language (DML) merupakan satu paket bahasa DBMS yang memperbolehkan pemakai untuk mengakses atau memanipulasi data sebagaimana yang telah diorganisasikan sebelumnya dalam model data yang tepat. Bentuk manipulasi : Pencarian kembali data lama Penyisipan data baru Penghapusan data Pengubahan data
DML mempunyai 2 (dua) tipe yaitu : procedural dan non procedural. Procedural digunakan oleh pemakai pada saat membutuhkan spesifikasi data apa yang dibutuhkan dan bagaimana cara mendapatkannya, sedang kan Non Procedural digunakan oleh pemakai pada saat membutuhkan spesifikasi data tanpa harus mengetahui bagaimana cara mendapatkannya. Contoh paket bahasa procedural adalah dBASE III, FoxBase, sedangkan non procedural adalah SQL (Structured Query Language). Contoh query untuk menampilkan data mahasiswa yang memiliki IPK lebih besar sama dengan 3,00 adalah sebagai berikut : SELECT* FORM Tblmahasiswa WHERE IPK>=3.00
Struktur Sistem Keseluruhan 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 metadata
Gambar 1.2 Komponen Sistem Basis Data Naïve User Programer Aplikasi Casual User Database Admin Program Aplikasi System Calls Query Skema Basis Data DML Precompiler Query Processor DDL Compiler Kode Obyek Program Aplikasi Database Manager File Manager File Data Kamus Data Gambar 1.2 Komponen Sistem Basis Data
Manajer Basis Data (Database Manager) 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 Pelaksanaan Keamanan Backup dan recovery Kontrol konkurensi
Pemanfaatan Ilmu Basis Data Bidang Fungsional : Bentuk Perusahan : Kepegawaian Perbankan Pergudangan (inventory) Rumah Sakit Akuntansi Produsen Barang Reservasi Sekolah Layanan Pelanggan Telekomunikasi
Thank You