SISTEM BASIS DATA II 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.
TUJUAN BASIS DATA
Mengatur data sehingga diperoleh kemudahan, ketepatan, dan kecepatan dalam pengambilan kembali Tidak adanya redudansi/kerangkapan data dan menjaga konsistensi data Pengaturan dalam pemilahan data sesuai dengan fungsi dan jenisnya
MANFAAT BASIS DATA
Kecepatan dan kemudahan (Speed) Kebersamaan pemakaian (Sharability) Pemusatan kontrol data (Integrated) Efisiensi ruang penyimpanan (Space) Keakuratan (Accuracy) Ketersediaan (Availability) Kelengkapan(Completeness) Keamanan (Security) Kemudahan dalam pembuatan program aplikasi baru User view
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.
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 perintahperintah 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 operatoroperator 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).
Pengertian Basis Data Relasional
Pada model relasional, basis data akan “disebar” atau dipilah-pilah ke dalam berbagai tabel dua dimensi. Setiap tabel selalu terdiri atas lajur mendatar yang disebut baris data (row / record) dan lajur vertikal yang biasa disebut dengan kolom (column / field).
Contoh Tabel dan keterhubungannya
Keuntungan Basis Data Relasional 1. Bentuknya sederhana 2. Mudah melakukan berbagai operasi data Istilah dalam Basis Data Relasional Relasi Relasi merupakan sebuah tabel yang terdiri dari beberapa kolom dan beberapa baris. Relasi menunjukkan adanya hubungan diantara sejumlah entitas yang berasal dari himpunan entitas yang berbeda. Entitas merupakan individu yang mewakili sesuatu yang nyata dan dapat dibedakan dengan yang lainnya.
Istilah dalam Basis Data Relasional Atribut
Atribut merupakan kolom pada sebuah relasi. Setiap entitas pasti memiliki aribut yang mendeskripsikan karakter dari entitas tersebut. Penentuan atau pemilihan atribut-atribut yang relevan bagi sebuah entitas merupakan hal penting dalam pembentukan model data. Tuple Tuple merupakan baris pada sebuah relasi atau kumpulan elemen-elemen yang saling berkaitan menginformasikan tentang suatu entitas secara lengkap. Satu record mewakili satu data atau informasi tentang seseorang, misalnya : NPM, nama mahasiswa, alamat, kota, dll.
Istilah dalam Basis Data Relasional Domain : Kumpulan nilai yang valid untuk satu atau lebih Atribut Derajat (degree) : Jumlah atribut dalam sebuah relasi Cardinality : Jumlah tupel dalam sebuah relasi
Istilah dalam Basis Data Relasional
Relational Key Super key Satu atribut / kumpulan atribut yang secara unik mengidentifikasi sebuah tuple di dalam relasi Candidate key Suatu atribut atau satu set minimal atribut yang mengidentifikasikan secara unik suatu kejadian spesifik dari entitas. Atribut di dalam relasi yang biasanya mempunyai nilai unik. Satu set minimal dari atribut menyatakan secara tak langsung dimana kita tidak dapat membuang beberapa atribut dalam set tanpa merusak kepemilikan yang unik.
Relational Key Primary key Merupakan satu atribut atau satu set minimal atribut yang tidak hanya mengidentifikasikan secara unik suatu kejadian spesifik, tapi juga dapat mewakili setiap kejadian dari suatu entitas. Candidate key yang dipilih untuk mengidentifikasikan tuple secara unik dalam relasi. Setiap kunci candidate key punya peluang menjadi primary key, tetapi sebaiknya dipilih satu saja yang dapat mewakili secara menyeluruh terhadap entitas yang ada. Alternate key Merupakan candidate key yang tidak dipakai sebagai primary key atau Candidate key yang tidak dipilih sebagai primary key.
Relational Key Foreign key (Kunci Tamu)
Atribut dengan domain yang sama yang menjadi kunci utama pada sebuah relasi tetapi pada relasi lain atribut tersebut hanya sebagai atribut biasa. Kunci tamu ditempatkan pada entitas anak dan sama dengan primary key induk direlasikan.
Relational Integrity Rules 1. Null Nilai suatu atribut yang tidak diketahui dan tidak cocok untuk baris (tuple) tersebut. Nilai (konstanta) Null digunakan untuk menyatakan / mengisi atribut-atribut yang nilainya memang belum siap/tidak ada. 2. Entity Integrity Tidak ada satu komponen primary key yang bernilai null. 3. Referential Integrity Suatu domain dapat dipakai sebagai kunci primer bila merupakan atribut tunggal pada domain yang bersangkutan.
Bahasa Pada Basis data Relational
Bahasa Query (Query Language) lebih ditekankan pada aspek pencarian data dari dalam tabel. Aspek pencarian ini sedemikian penting karena merupakan inti dari upaya untuk pengelolaan data.
Bahasa query terbagi 2 1. Bahasa Formal
Bahasa query yang diterjemahkan dengan menggunakan simbol-simbol matematis. Contoh : `Aljabar Relasional Bahasa query prosedural : pemakai menspesifikasikan data apa yang dibutuhkan dan bagaimana untuk mendapatkannya
Bahasa query terbagi 2 Kalkulus Relasional
Bahasa query non-prosedural : pemakai menspesifikasikan data apa yang dibutuhkan tanpa menspesifikasikan bagaimana untuk mendapatkannya. Terbagi 2 : 1. Kalkulus Relasional Tupel 2. Kalkulus Relasional Domain
Bahasa query terbagi 2 2. Bahasa Komersial Bahasa Query yang dirancang sendiri oleh programmer menjadi suatu program aplikasi agar pemakai lebih mudah menggunakannya (user friendly). Contoh :
QUEL
Berbasis pada bahasa kalkulus relasional Tupel
QBE
Berbasis pada bahasa kalkulus relasional Domain
SQL
Berbasis pada bahasa kalkulus relasional dan aljabar relasional
Contoh-contoh Basis Data Relasional DB2
produksi IBM ORACLE produksi Oracle SYBASE produksi Powersoft INFORMIX produksi Informix Microsoft Access produksi Microsoft
LATIHAN Apa perbedaan basis data dan sistem basis data? Sebutkan komponen yang menyusun sistem basis data! Jelaskan bagaimana pengguna awam memandang data dalam sistem basis data! Diberikan ilustrasi kasus sebagai berikut: Sebuah perusahaan retailer memiliki domain usaha jual beli barang. Barangbarang 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:
1. 2. 3. 4.
1.
model data relasional
SEKIAN TERIMA KASIH