Pengantar Basis Data SISTEM BASIS DATA I WAN H. Manihuruk, S.kom [email protected] Outline Database DBMS Levels of Abstraction Data Models Database Language [email protected] Database Kumpulan file / tabel / arsip yang saling berhubungan yang disimpan dalam media penyimpanan elektronis Himpunan kelompok data yang saling berhubungan yang diorganisasi sedemikian rupa agar dapat dimanfaatkan dengan cepat dan mudah Database / basis data merupakan kumpulan data, berisi informasi tentang organisasi / enterprise tertentu [email protected] Database Management Systems “A collection of interrelated data and a set of programs to access those data” (Silberschatz, Korth and Sudarshan. Database System Concepts) “A software package designed to store and manage databases” (Ramakrishnan and Gehrke. Database Management Systems) [email protected] Keuntungan Penggunaan DBMS Data independence DBMS memungkinkan pemisahan pengelolaan data dari program aplikasi Efficient data access DBMS menyediakan variasi teknik yang handal dalam penyimpanan dan pengambilan data Data integrity and security DBMS memungkinkan penjagaan integrity contraint dan access control [email protected] Keuntungan Penggunaan DBMS (lan.) Data administration Concurrent access and crash recovery DBMS dilenngkapi dengan penjadwalan operasi konkuren dan melindungi user dari efek kegagalan sistem Reduced application development time DBMS mendukung fungsi-fungsi penting yang umum pada aplikasi dalam penyimpanan data [email protected] Levels of Abstraction Physical level : menunjukkan bagaimana sebuah record data disimpan Logical level : menunjukkan data yang tersimpan dalam basis data, dan relasi antar data. type customer = record name : string; street : string; city : integer; end; View level : program aplikasi menyembunyikan detil tipe data. View juga dapat menyembunyikan informasi tertentu (mis: salary) untuk kepentingan keamanan [email protected] View of Data Arsitektur sistem basis data [email protected] Data Models Kumpulan tools konseptual dalam menggambarkan data, data relationships, data semantics, data constraints Konsep data model: ER Model Relational Model [email protected] Entity-Relationship Model Entity (entitas): “sesuatu” atau “objek” di dunia nyata yang dapat dibedakan dari objek lain Entitas digambarkan dalam basis data sebagai sekumpulan atribut (attribute) Contoh: customers (cust_name, address, dll) accounts(account_number, balance, dll) Relationship (relasi): hubungan antar entitas [email protected] Entity-Relationship Model (lan.) Skema basis data dapat dimodelkan dengan diagram ER Diagram ER dibangun dari komponen berikut: Entitas -> segi empat Atribut -> elips Relasi -> belah ketupat [email protected] Contoh diagram ER [email protected] Relational Model Menggunakan sekumpulan table yang menggambarkan data dan relasi antar data Setiap table memiliki banyak kolom, dan setiap kolom memiliki nama yang unique [email protected] Contoh relational model [email protected] Database Language Sistem basis data menyediakan data definition language (DDL) untuk menspesifikasi skema basis data, dan data manipulation language (DML) untuk mengekspresikan query basis data [email protected] DDL Contoh: create table account ( account-numberchar(10), balance integer) Kompiler DDL men-generate table-table yang tersimpan dalam basis data pada data dictionary Data dictionary berisi metadata (data tentang data) Database schema Data storage and definition language Bahasa yang digunakan dalam menspesifikasi struktur penyimpanan dan metode akses pada sistem basis data [email protected] DML Bahasa yang digunakan untuk pengaksesan dan manipulasi data Disebut juga query language contoh: select customer.customer-name from customer where customer.customer-id = ‘192-83-7465’ Terdapat dua kelas: Procedural – user menentukan data apa yang dibutuhkan dan bagaimana mendapatkan data tersebut Nonprocedural – user menentukan data apa yang dibutuhkan namun tanpa menyebutkan bagaimana cara mendapatkan data tersebut SQL adalah query language yang paling banyak digunakan [email protected]