Basis Data dan Sistem Basis Data Hans F. Wowor Salaki R. Joshua Pengertian Dasar Basis Data Sekumpulan data yang terintegrasi yang diorganisasi untuk memenuhi kebutuhan para pemakai dalam suatu organisasi. DBMS (Database Management Systems) Perangkat lunak yang menangani semua pengaksesan ke database. Sistem Basis Data DBMS + Basis Data Penggambaran Sistem Basis Data Perbedaan Manajemen Database Dengan File Manajemen Tradisional File Manajemen Tradisional Program Oriented Kaku Kerangkapan Data Memungkinkan terjadi Manajemen Database Data Oriented Luwes Kerangkapan Data Terkontrol Keuntungan Database Terkontrolnya kerangkapan data Terpeliharanya kekonsistenan data Data dapat dipakai bersama-sama Data dapat distandarisasikan Keamanan data dapat terjamin Integritas data terpelihara Data independence Beberapa Istilah Dalam Database Entitas Enterprise Atribut (Elemen Data) Nilai Data (Data Value) Kunci Elemen Data (Key Data Elemen) Record Data Komponen-komponen Sistem Database 1. 2. 3. 4. Perangkat Keras (Hardware) Perangkat Lunak (Software) Basis Data (Database) Pemakai (User) a. Pemakai Mahir (Expert User) b. Pemakai Akhir (End user) 1. Perangkat keras (Hardware) Komputer Memori sekunder yang on-line (harddisk) Memori sekunder yang off-line untuk keperluan backup data Media perangkat komunikasi (untuk sistem jaringan) 2. Perangkat Lunak (Software) Ada 3 jenis perangkat lunak yang terlibat dalam pengelolaan basis data yaitu : a. Sistem operasi b. Sistem pengelola Basis Data (Database Management System-DBMS) c. Aplikasi pengguna Basis Data 2.a. Sistem Operasi Sistem operasi merupakan program yang mengaktifkan/mengfungsikan sistem komputer, mengendalikan seluruh sumber daya dalam komputer dan melakukan operasi-operasi dasar dalam komputer. 2.b. Sistem Pengelola basis data Sistem pengelola basis data, lebih popular dengan istilah DBMS, adalah suatu perangkat lunak utama dalam pengelolaan Basis Data Diorganisasi secara fisik, dengan tujuan untuk menangani pembuatan, pemeliharaan, dan pengendalian/akses data dalam basis data. Contoh Produk DBMS Microsoft SQL server, Microsoft Access, Oracle, MySQL, dll. 2.c. Aplikasi Pengguna Basis Data Merupakan kelompok perangkat lunak yang bersentuhan langsung dengan pemakai basis data Dikembangkan oleh pengembang aplikasi sesuai kebutuhan user 3. Pemakai (Brainware) Administrator Basis Data b. Pengembang Aplikasi c. Pemakai mahir d. Pemakai akhir a. 3.a. Administrator Basis Data Merupakan pemakai yang berinteraksi langsung dengan DBMS Tugas utamanya adalah mengkonfigurasi sistem basis data secara keseluruhan. 3.b. Pengembang Aplikasi Merupakan suatu komunitas/kelompok pemakai database Tugas utamanya adalah membangun dan mengembangkan aplikasi pengguna basis data yang nantinya akan dimanfaatkan oleh kelompok pamakai akhir (end user). 3.c. Pemakai Mahir Merupakan kelompok pamakai yang dapat berinteraksi langsung dengan basis data Menggunakan fasilitas antar muka dan fitur-fitur yang telah tersedia pada DBMS yang akan digunakan dalam mengelola basis data. 3.c. Pemakai Akhir Merupakan kelompok pemakai yang berperan dalam pemasukan data (data entry) dalam rangka membentuk basis data yang lengkap Memanfaatkan program/aplikasi pengguna basis data yang telah dibuat. Abstraksi Data Adalah tingkatan tentang bagaimana basis data dilihat dan direpresentasikan dalam sebuah sistem basis data. Tiga tingkatan/level abstraksi data tersebut yaitu : – Tingkat penampakan (view level) – Tingkat lojik/konseptual (conceptual Level) – Tingkat Fisik (Physical Level) 1. Tingkat penampakan (view level) Merupakan level tertinggi dari abstraksi data yang hanya menunjukkan sebagaian dari basis data. Banyak pemakai dalam sistem basis data tidak akan terlibat dengan semua data dan informasi yang tersimpan. Para pemakai umumnya hanya membutuhkan sebagian data/informasi dalam basis data yang kemunculannya dimata pemakai diatur oleh aplikasi pengguna basis data. 2. Tingkat konseptual (conceptual Level) Merupakan level yang menggambarkan data apa yang sebenarnya (secara fungsional) disimpan dalam basis data dan hubungannya dengan data lain. 3. Tingkat Fisik (Physical Level) Merupakan level terendah dalam abtraksi data, yang menunjukkan bagaimana sesungguhnya suatu data diorganisasi dan disimpan. Bahasa Basis Data Cara berinteraksi atau berkomunikasi antar pemakai dengan basis data diatur dalam bahasa khusus yang ditetapkan oleh pihak pembuat DBMS. Sebuah bahasa basis data biasanya dipilah ke dalam 2 kelompok yaitu : – Data definition language (DDL) – Data manipulation Language (DML) Jenjang data 23 Characters : merupakan bagian data yang terkecil, dapat berupa karakter numerik, huruf ataupun karakter-karakter khusus (special characters) yang membentuk suatu item data / field. Field : merepresentasikan suatu atribut dari record yang menunjukkan suatu item dari data, seperti misalnya nama, alamat dan lain sebagainya. Kumpulan dari field membentuk suatu record. 24 Record : Kumpulan dari field membentuk suatu record. Record menggambarkan suatu unit data individu yang tertentu. Kumpulan dari record membentuk suatu file. Misalnya file personalia, tiap-tiap record dapat mewakili data tiap-tiap karyawan. File: File terdiri dari record-record yang menggambarkan satu kesatuan data yang sejenis. Misalnya file mata pelajaran berisi data tentang semua mata pelajaran yang ada. 25 Database : Kumpulan dari file / tabel membentuk suatu database 26 Tipe File File Induk (master File) -file induk acuan (reference master file) : file induk yang recordnya relatif statis, jarang berubah nilainya. Misalnya file daftar gaji, file mata pelajaran. -file induk dinamik (dynamic master file): file induk yang nilai dari record-recordnya sering berubah atau sering dimutakhirkan (update) sebagai hasil dari suatu transaksi. Misalnya file induk data barang, yang setiap saat harus di up-date bila terjadi transaksi. 28 File Transaksi (transaction file) File ini bisa disebut file input; digunakan untuk merekam data hasil dari transaksi yang terjadi. Misalnya file penjualan yang berisi data hasil transaksi penjualan. File Laporan (Report file) File ini bisa disebut output file, yaitu file yang berisi informasi yang akan ditampilkan. 29 File Sejarah (history file) File ini bisa disebut file arsip (archival file), merupakan file yang berisi data masa lalu yang sudah tidak aktif lagi, tetapi masih disimpan sebagai arsip. File Pelindung (backup file) File ini merupakan salinan dari file-file yang masih aktif di dalam database pada suatu saat tertentu. File ini digunakan sebagai 30 pelindung atau cadangan bila file database MODEL DATA Definisi : sekumpulan tool konseptuall untuk mendeskripsikan data, relasi-relasi antar data yang Menyatakan hubungan antar rekaman yang tersimpan dalam basis data. Model data terbagi dalam tiga kelompok besar Model Model Model Model Model Entity-Relationship Relational Object Oriented Model Hierarki Network 31 ENTITY RELATIONAL MODEL E-R model didasarkan atas persepsi terhadap dunia nyata yang terdiri dari sekumpulan objek, disebut entity dan hubungan antar objek tersebut, disebut relationship. Pemodelan data dengan model E-R menggunakan diagram E-R. Diagram E-R terdiri dari : – Kotak persegi panjang, menggambarkan himpunan entity – Elips, menggambarkan atribut-atribut entity – Diamon, menggambarkan hubungan antara himpunan entity – Garis, yang menghubungkan antar objek dalam diagram E-R 32 HOBY ORANG TUA 1 n senangi punya 1 1 MAHASISWA n ambil m n n daftar ajar 1 JURUSAN MATAKULIAH 1 miliki n m RUANG 1 DOSEN 33 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. 34 MAHASISWA MATA KULIAH Nama Tgl_lahir Alamat NoHp JenisKelamin Gol_darah Kode_MK Nama_MK Sks Semester Hitung IP Mengambil MataKuliah Pembayaran 35 Model Relational Model data relational menggambarkan data dalam bentuk tabel-tabel. Asosiasi antar tabel didefinisikan lewat penggunaan kunci tamu (foreign key) Dengan menggunakan model ini, pencarian field dari suatu tabel atau banyak tabel dapat dilakukan dengan cepat. Pencarian atribut yang berhubungan pada tabel yang berbeda dapat dilakukan dengan menghubungkan terlebih dahulu tabel-tabel tersebut dengan menggunakan atribut yang sama (joint operation). 36 Contoh 37 MODEL HIERARKI menyerupai pohon yang dibalik Menggunakan pola hubungan orangtua anak Pada puncak hirarki diesbut dengan akar (root). Tiap entitas tingkat atas (parent) mempunyai satu atau lebih sub-entitas (children) sehingga setiap entitas hanya boleh mempunyai satu induk, tetapi dapat mempunyai banyak anak. Pada model data hirarki, hubungan antar entitas dinyatakan dalam satu-banyak (one to many) atau satu-satu (one to one). Dalam satu Universitas terdapat banyak Fakultas dan setiap Fakultas terdapat banyak Dosen atau banyak Mahasiswa, dan seterusnya. Tanda panah menunjukkan 38 derajat keterhubungan “banyak”. 39 MODEL JARINGAN Model ini hampir sama dengan model hierarkis. Perbedaannya dalam model ini setiap entitas dapat mempunyai banyak induk dan banyak anak. Dalam model ini lebih sedikit terdapat data rangkap, namun lebih banyak terdapat hubungan antar entitas, sehingga akan menambah informasi hubungan yang harus disimpan dalam database. hal ini akan menambah volume dan kerumitan dalam penyimpanan berkas data. 40 41 Bahasa Basis data Merupakan sejumlah perintah (statement) yang diformulasikan dan dapat diproses untuk melakukan suatu aksi tertentu. Contoh Bahasa basis data: SQL,dBase, Quel Basis data dipilah dalam 3 bentuk, - Data Definition Language (DDL) - Data Manipulation Language (DML) 42 1. Data Definition Language (DDL) Struktur basis data yang menggambarkan desain basis data secara keseluruhan dispesifikasikan dengan bahasa khusus yang disebut data definition language. Dengan bahasa inilah dapat dibuat tabel baru, membuat indeks, mengubah tabel, menetukan truktur penyimpanan tabel, dsb. 2. Data Manipulation Language (DML) DML berisi kumpulan perintah yang berguna untuk melakukan manipulasi dan pengambilan data pada suatu basis data. Manipulasi data dapat berupa : – Penyisipan/penambahan data baru ke suatu basis data – Penghapusan data dari suatu basis data – Pengubahan data di suatu basis data Terima Kasih