SISTEM BASIS DATA SANTI WIDIANTI
SISTEM Definisi sebuah tatanan yang terdiri atas sejumlah komponen fungsional (dengan tugas/fungsi khusus) yang saling berhubungan dan secara bersama-sama bertujuan untuk memenuhi suatu proses/pekerjaan tertentu Contoh Sistem Kendaraan Sistem Pernafasan Sistem Perguruan Tinggi
SISTEM BASIS DATA Definisi : perpaduan antara basis data dan sistem manajemen basis data (SMBD) Basis Data (Database) : Kumpulan data yang terintegrasi yang diorganisasikan bagi pemakai dalam suatu organisasi Komponen: Hardware, Sistem Operasi, Basis Data DBMS : MySQL, Ms. SQL Server, Interbase, Paradox, Ms. Acces, DB 2, Informix Pemakai : Programmer, User Aplikasi Aplikasi Lain
SISTEM MANAJEMEN BASIS DATA / DBMS Definisi : Perangkat lunak sistem yang memungkinkan para pemakai membuat, memelihara, mengontrol, dan meng-akses basis data dengan cara praktis dan efisien. DBMS dapat digunakan untuk mengakomodasikan berbagai macam pemakai yang memiliki kebutuhan akses yang berbeda-beda. DBMS pada umumnya menyediakan fasilitas atau fitur-fitur yang memungkinkan data dapat diakses dengan mudah, aman, dan cepat.
FITUR YANG TERSEDIA Keamanan : DBMS menyediakan sistem pengamanan data sehingga tidak mudah diakses oleh orang yang tidak memiliki hak akses. Independensi : DBMS menjamin independensi antara data dan program, data tidak bergantung pada program yang meng-akses-nya, karena struktur data-nya dirancang berdasarkan kebutuhan informasi, bukan berdasarkan struktur program. Sebaliknya program juga tidak bergantung pada data, sehingga walaupun struktur data diubah, program tidak perlu berubah.
FITUR YANG TERSEDIA Konkruensi / data sharing : data dapat diakses secara bersamaan oleh beberapa pengguna karena manajemen data dilaksanakan oleh DBMS. Integritas : DBMS mengelola file-file data serta relasi-nya dengan tujuan agar data selalu dalam keadaan valid dan konsisten Pemulihan : DBMS menyediakan fasilitas untuk memulihkan kembali file-file data ke keadaan semula sebelum terjadi-nya kesalahan (error) atau gangguan baik kesalahan perangkat keras maupun kegagalan perangkat lunak.
FITUR YANG TERSEDIA Kamus / katalog sistem : DBMS menyediakan fasilitas kamus data atau katalog sistem yang menjelaskan deskripsi dari field-field data yang terkandung dalam basisdata. Perangkat Produktivitas : DBMS menyediakan sejumlah perangkat produktivitas sehingga memudahkan para pengguna untuk menarik manfaat dari database, misalnya report generator (pembangkit laporan) dan query generator (pembangkit query / pencarian informasi).
KEUNGGULAN DBMS Mengurangi duplikasi data atau data redundancy Menjaga konsistensi dan integritas data Meningkatkan keamanan data Meningkatkan effisiensi dan effektivitas penggunaan data Meningkatkan produktivitas para pengguna data Memudahkan pengguna dalam menggali informasi dari kumpulan data
KEUNGGULAN DBMS Meningkatkan pemeliharaan data melalui independensi data Meningkatkan pemakaian bersama dari data Meningkatkan layanan backup dan recovery data Mengurangi konflik antar pengguna data
KELEMAHAN DBMS Memerlukan suatu skill tertentu untuk bisa melakukan administrasi dan manajemen database agar dapat diperoleh struktur dan relasi data yang optimal Memerlukan kapasitas penyimpanan baik eksternal (disk) maupun internal (memory) agar DBMS dapat bekerja cepat dan efisien. Harga DBMS yang handal biasanya sangat mahal Kebutuhan akan sumber daya (resources) biasanya cukup tinggi
KELEMAHAN DBMS Konversi dari sistem lama ke sistem DBMS terkadang sangat mahal, disamping biaya pengadaan perangkat keras dan perangkat lunak, diperlukan pula biaya pelatihan. Apabila DBMS gagal menjalankan misinya maka tingkat kegagalan menjadi lebih tinggi karena banyak pengguna yang bergantung pada sistem ini.
TUJUAN DBMS Menyediakan sarana antar muka (interface) dalam meng-akses data secara efisien tanpa harus melihat kerumitan atau detail tentang cara data direkam dan dipelihara. DBMS memiliki arsitektur untuk melakukan abstraksi dari data sehingga dapat diperoleh independensi data-program.
TUJUAN DBMS Beberapa DBMS berbasis objek sebenarnya tetap menggunakan file data relasional biasa, dengan kata lain, programnya berbasis objek tetapi datanya masih model relasional biasa. Software seperti ini biasanya disebut sebagai Object Oriented Relational DataBase Management System (OORDBMS), misalnya Visual dBase.
LEVEL ABSTRAKSI DALAM DATABASE Pada tahun 1975, badan standarisasi nasional Amerika ANSI-SPARC (American National Standards Institute Standards Planning and Requirements Committee) menetapkan tiga level abstraksi dalam database, yaitu: Level Eksternal (external level) / Level Pandangan (view level) Level Konseptual (conceptual level) Level Internal (internal level) / Level Fisik (physical level)
LEVEL FISIK/INTERNAL Level fisik merupakan level paling rendah Menggambarkan bagaimana data disimpan secara fisik dalam bentuk kode, teks, angka, bit. Pada level ini didefinisikan allokasi ruang penyimpanan data, deskripsi data dalam penyimpanan, kompressi data (agar lebih hemat), dan enkripsi data (agar lebih aman). Misalnya kita memiliki data mahasiswa. Pada level fisik data mahasiswa dipandang dengan memperhatikan bahwa dalam data tersebut ada atribut Nama yang disimpan sepanjang 20 byte
LEVEL KONSEPTUAL/LOGIKA Level Konseptual adalah level dari para administrator database, pada level ini didefinisikan hubungan antar data secara logik, sehingga diperlukan struktur data secara lengkap. Para administrator database memahami bagaimana satu view dijabarkan dari beberapa file data, demikian pula pada saat perancangan database mereka dapat saja membagi data menjadi beberapa file agar dapat diakses dan disimpan secara efisien.
LEVEL KONSEPTUAL/LOGIKA menggambarkan data apa yang disimpan dalam basis data dan hubungan relasi yang terjadi antara data dari keseluruhan basis data memperhatikan data apa sebenarnya (secara fungsional) disimpan dalam basis data dan hubungannya dengan data yang lain Pemakai tidak memperdulikan kerumitan dalam struktur level fisik lagi, penggambaran cukup dengan memakai kotak, garis,dan hubungan secukupnya
LEVEL PANDANGAN PEMAKAI (USER VIEW)/EKSTERNAL Level abstraksi data tertinggi yang menggambarkan hanya sebagian saja yang dilihat dan dipakai dari keseluruhan database, hal ini disebabkan beberapa pemakai database tidak membutuhkan semua isi database. Yang dimaksud dengan user/pemakai disini adalah programmer, end user atau DBA. Setiap user mempunyai ‘bahasa’ yang sesuai dengan kebutuhannya. programmer : bahasa yang digunakan adalah bahasa pemrograman seperti C, COBOL, atau PL/I 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
LEVEL PANDANGAN PEMAKAI (USER VIEW)/EKSTERNAL Level yang berhubungan langsung dengan pengguna database. Pada level ini pengguna (user) hanya bisa melihat struktur data sesuai dengan keperluannya sehingga setiap user bisa memiliki pandangan (view) yang berbeda dari user lainnya. Pada level ini pula dimungkinkan pandangan user berbeda dengan representasi fisik dari data, misalkan untuk data hari secara fisik data direkam dalam bentuk kode (1, 2, 3, dst) sedang user melihat data dalam bentuk teks nama hari (Ahad, Senin, Selasa, …). Data yang dilihat oleh user seakan-akan berasal dari satu file, secara fisik mungkin diambil dari beberapa file yang berelasi.
Agar independensi data dapat dicapai maka disediakan pemetaan antar lapisan (level), yatiu pemetaan eksternal konseptual dan pemetaan konseptual-internal. Pada pemetaan eksternal-konseptual, DBMS dapat memetakan field-field data dari user-view ke dalam struktur data yang sesungguhnya. Pada pemetaan konseptual-internal, DBMS dapat menemukan rekaman fisik dari data yang didefinisikan pada struktur logika.
BAHASA DBMS Implementasi bahasa DBMS bervariasi sesuai dengan variasi perusahaan yang merancangnya, namun pada prinsipnya bahasa ini bisa dikategorikan ke dalam tiga komponen bahasa, yaitu: 1. Data Definition/Decription Language (DDL) 2. Data Manipulation Language (DML) 3. Device Control Media Language (DCML)
Data Definition/Decription Language (DDL) Komponen bahasa DBMS yang digunakan untuk mendefinisikan struktur data antara lain perintah untuk membuat tabel baru (CREATE) dimana terdefinisi komponen/field data dengan tipe dan panjangnya, mengubah index (INDEX, REINDEX) agar setiap rekord dalam satu file data dapat diakses melalui indeks-nya, mengubah struktur (MODIFY STRUCT) dari file data, dan sebagainya. Komponen bahasa ini banyak digunakan oleh para administrator basisdata pada saat merencanakan atau membangun file-file basisdata.
Data Manipulation Language (DML) Komponen bahasa DBMS yang digunakan untuk memanipulasi data, komponen ini diperlukan oleh para pengguna untuk memanipulasi data, antara lain perintah-perintah untuk melakukan hal-hal berikut ini: * Mengambil data dari basisdata (LIST, DISPLAY) * Menambah data kedalam basisdata (INSERT, APPEND) *meremajakan data yang ada dalam basisdata (UPDATE)
Data Manipulation Language (DML) * menghapus data yang tidak diperlukan (DELETE) * meng-urutkan data (SORT) * menghitung frekuensi data (COUNT) * mencari data (SEEK, FIND)
DML PROSEDURAL Pada DML Prosedural ketika data akan dimanipulasi maka perintah harus disertai dengan perintah-perintah bagaimana data diakses dari file database. Perintah DML Prosedural biasanya termuat dalam bahasa pemrograman tingkat tinggi (high level programming language) seperti COBOL, C, C++ dan sebagainya. Pada DML non-Prosedural data dapat dimanipulasi langsung tanpa harus memerintahkan bagaimana data dibaca dari file.
DML NON-PROSEDURAL Perintah DML non-Prosedural biasanya digunakan dalam bahasa-bahasa DBMS seperti pada dBase, Access, Paradox, FoxPro, SQL, dan sebagainya.
DEVICE CONTROL MEDIA LANGUAGE (DCML) DCML adalah komponen bahasa DBMS yang digunakan untuk mengatur perekaman atau penyimpanan data secara fisik. Komponen bahasa DCML digunakan oleh operator-operator sistem basisdata didalam mengatur file-file data secara fisik. Perintah-perintah yang termuat dalam komponen ini, antara lain perintah perintah: merekam (Write Record, Create Table), menghapus (Drop, Delete Table).
MODEL DATA Definisi : sekumpulan tool konseptuall untuk mendeskripsikan data, relasi-relasi antar data, semantic data & konsistensi konstrain. Menyatakan hubungan antar rekaman yang tersimpan dalam basis data. model data terbagi dalam tiga kelompok besar Object-based logical models Entity Relationship Model Object Oriented Model record-based logical models Model Relational Model Hierarkhi Model Network
ENTITY RELATIONAL MODEL E-R model didasarkan atas persepsi terhadap dunia nyata yanga terdiri dari sekumpulan objek, disebut entity dan hubungan antar objek tersebut, disebut relationship. Entity adalah objek di dunia yang bersifat unik. Setiap entity mempunyai atribut yang membedakannya dengan entity lainnya. Contoh : entity Mahasiswa, mempunyai atribut Nim, Nama, Alamat dan Tanggal lahir. Pemodelan data dengan model E-R menggunakan diagram E-R. Diagram E-R terdiri dari : Kotak persegi panjang, menggambarkan himpunan entity Elip, menggambarkan atribut-atribut entity Diamon, menggambarkan hubungan antara himpunan entity Garis, yang menghubungkan antar objek dalam diagram E-R
OBJECT ORIENTED MODEL Model berorientasi objek berbasiskan kumpulan objek. Setiap objek berisi: Nilai yang disimpan dalam variable instant, dimana variable “melekat” dengan objek itu sendiri. Metoda : operasi yang berlaku pada objek yang bersangkutan Objek-objek yang memiliki tipe nilai & metode yang dikelompokkan dalam satu kelas. Kelas disini mirip dengan abstrak pada bahasa pemrograman. Sending a message : sebuah objek dapat mengakses data sebuah yang lain hanya dengan memanggil metode dari objek tersebut.
MODEL RELASIONAL Model relasional menggunakan kumpulan tabel-tabel untuk merepresentasikan data dan relasi antar data-data tersebut. Setiap tabel terdiri atas kolom-kolom, dan setiap kolom mempunyai nama yang unik
Dari table diatas berikan contoh: a. Nama Field. b. Data Value. c Dari table diatas berikan contoh: a. Nama Field b.Data Value c. Atribut d.Record e.Entity
MODEL HERARKI menyerupai pohon yang dibalik Menggunakan pola hubungan orangtua anak Setiap simpul menyatakan sekumpulan medan Simpul yang terhubung dengan level dibawahnya disebut orang tua Setiap orang tua hanya bisa mempunyai 1 anak, bisa banyak anak tetapi anak hanya mempunyai 1 ortu Simpul yg punya anak disebut akar, dan simpul yang tidak punya anak disebut daun Hubungan antara ortu dan anak disebut cabang. Contoh DBMS yang pakai model herarki: Information Management System, dikembangkan oleh IBM dan Rockwell International Corporation
Universitas Gunadarma Perguruan Tinggi Universitas Gunadarma Matakuliah Basis Data Struktur Data Sistem Pakar Dosen Deasy Indayanti Doddy Iskandar Leli Safitri Maulana Iwan Setiadi
MODEL JARINGAN Data dalam model jaringan direpresentasikan dengan sekumpulan record (Pascal), dan relasi antara data direpresentasikan oleh record & link. Link dipandang sebagai pointer. Record-record diorganisasikan sebagai graf. Model ini hampir sama dengan model herarkis. Perbedaannya pada model ini satu anak bisa mempunyai lebih dari 1 ortu Istilah ortu dalam model jaringan disebut sebagai pemilik, sedangkan anak disebut sebagai anggota Contoh DBMS yang menggunakan model jaringan yaitu CA-IDMS/DB dan Integrated database management system yang dibangun oleh Cullinet Software Inc.
Universitas Gunadarma Perguruan Tinggi Universitas Gunadarma Matakuliah Basis Data Struktur Data Sistem Pakar Dosen Deasy Indayanti Doddy Iskandar Iwan Setiadi
LATIHAN Apa perbedaan basis data dan sistem basis data? Sebutkan elemen-elemen yang menyusun sistem basis data! Jelaskan bagaimana pengguna awam memandang data dalam sistem basis data! Jelaskan kegunaan dari level konseptual dalam arsitektur sistem basis data! Jelaskan perbedaan dari model data yang berbasis obyek dan model data yang berbasis record Diberikan ilustrasi kasus sebagai berikut: Sebuah perusahaan retailer memiliki domain usaha jual beli barang. Barang-barang yang diperjual belikan dikelompokkan menjadi 2 kelompok yaitu busana dan bahan makanan. Setiap pelanggan dimungkinkan untuk melakukan pembelian beberapa barang, dan setiap barang mungkin dibeli oleh beberapa pelanggan. Tetapi setiap barang hanya dibeli dari seorang distributor, meskipun seorang distributor dimungkinkan untuk menjual beberapa jenis barang sekaligus. Gambarkan kasus tersebut diatas dengan: model relasional model hierarki model model network
SEKIAN TERIMA KASIH