RELATIONAL DATABASE

RELATIONAL DATABASE

Pengertian

Relational Database adalah suatu model database yang disajikan dalam bentuk tabel. Model ini pertama kali diperkenalkan oleh E.F.Codd pada bulan juni 1970 dalam sebuah paper berjudul:

"A Relational Model of Data for Large Shared Data Banks" 

 Tujuan Relational Database

1. Untuk menekankan kemandirian data

2. Menghilangkan inkonsistensi dan redudansi data menggunakan konsep normalisasi

3. Meningkatkan kemampuan akses data

Karakteristik Relational Database

1. Struktur Tabular

2. Satu bahasa digunakan untuk semua pemakai

3. Data dihubungkan melalui nilai data

Contoh

 

Komponen Model Data Relasional :

1. Struktur Data (data diorganisasi dalam bentuk tabel)

2. Manipulasi Data (menggunakan SQL)

3. Integritas Data (menjamin konsistensi data)

Struktur Data

  • Struktur berbentuk tabel data dua dimensi

contoh :

 

  •  Struktur yang baik adalah relasi yang mengandung redudansi minimal dan mengizinkan pengguna untuk menyisipkan, memodifikasi serta menghapus baris-baris tanpa menimbulkan kesalahan.

Manipulasi Data

Data Definition Language (DDL) 
  • Create
  • Drop
  • Alter
Dara Manipulation language (DML) 
  • Insert 
  • Delete
  • Update
  • Select

Batasan Integritas Data

  • Domain Atribut

           Setiap nilai yang disimpan dalam kolom sebuah ralasi harus memiliki jangkauan nilai yang sama

  • Aturan Integritas

           Aturan yang menjamin setiap atribut primary key bernilai valid (unik dan buka null)

  • Referensial Integrity

           Garis yang menghubungkan antara satu tabel dengan tabel lain  

  • Contoh Domain Atribut dan Aturan Integritas
      
  •  Contoh Integritas Refensial
   

PROSES DESIGN DAN LIFE CYCLE SISTEM BASIS DATA

Life Cycle Database

Daur Hidup (Life Cycle) yang Umum dari Aplikasi Basis Data

  • Systems Definition
  • Database Design
  • Implementation
  • Loading/Data Convertion
  • Konversi Aplikasi
  • Testing & Validasi
  • Operations
  • Control & Maintenance

Definisi Sistem :

  • ruang lingkup basis data
  • pemakai
  • aplikasi

Design :

  • logical design à ER/EER 
  • physical design untuk suatu DBMS

Implementasi

  • membuat basis data
  • membuat program aplikasi

Loading/ Konversi Data

  • memasukkan data ke dalam basis data
  • mengkonversi file yang sudah ada ke dalam format basis data dan kemudian memasukkannya dalam basis data 

Konversi Aplikasi

Semua aplikasi dari sistem sebelumnya dikonversikan ke dalam sistem basis data.

Testing dan Validasi

Sistem yang baru harus ditest dan divalidasi (diperiksa keabsahannya).

Operasi                           

Pengoperasian basis data dan aplikasinya.

Monitoring dan Maintenance:

Selama operasi, sistem dimonitor dan diperlihara. Baik data maupun program aplikasi masih dapat terus tumbuh dan berkembang.                

DATABASE DESIGN

Proses Design Sistem Basis Data

Basis Data biasanya merupakan salah satu bagian dari suatu sistem informasi yang besar yang antara lain terdiri dari:

  •  Data
  •  Perangkat lunak DBMS
  •  Perangkat keras komputer
  •  Perangkat lunak dan sistem operasi komputer
  •  Program-program aplikasi
  •  Pemrogram, dll
  1. Pengumpulan dan analisa requirement
  2. Design basis data conceptual
  3. Pemilihan DBMS
  4. Mapping dari conceptual ke logical
  5. Physical Design
  6. Implementasi 

Keenam phase dalam proses design tidak perlu dilaksanakan secara mutlak, mungkin ada umpan balik antar phase dan dalam masing-masing phase

Proses design terdiri dari dua proses yang paralel yaitu:

  • proses design dari data dan struktur dari basis data (data driven)
  • proses design dari program aplikasi dan pemrosesan basis data (process driven)

Mengapa Harus Paralel

Karena kedua proses tersebut saling bergantungan.

Contoh:

  1. Menentukan data item yang akan disimpan dalam basis data tergantung dari aplikasi basis data tersebut, juga dalam menentukan struktur dan akses path.
  2. Design dari program aplikasi tergantung dari struktur basis datanya.
  3. Biasanya condong ke salah satu.

Phase 1: Pengumpulan Data &  Analisa Requirement

  • Pengidentifikasian group pemakai dan area aplikasi
  • Penelitian kembali dokumen-dokumen yang sudah ada yang berhubungan dengan aplikasi à form, report, manual, organization chart, dsb
  • Analisa lingkungan operasi dan kebutuhan dari pemrosesan, seperti tipe transaksi, input/output, frekuensi suatu transaksi, dsb
  • Transfer informasi informal ke dalam bentuk terstruktur menggunakan salah satu bentuk formal dari requirement specification (bentuk diagram) seperti Flow Chart, DFD, UML Diagram, dll. Hal ini dilakukan untuk mempermudah pemeriksaan kekonsistenan, ketepatan, dan kelengkapan dari spesifikasi.

Phase 2: Design Conceptual

Phase 2A: Design Conceptual Schema

-          High level data model, bukan implementation-level data model

-          Memberikan gambaran yang lengkap dari struktur basis data yaitu arti, hubungan, dan batasan-batasan.

-          Conceptual schema bersifat tetap

-          Alat komunikasi antar pemakai basis data, designer, dan analis

Phase 2A: Design Conceptual Schema

-          Harus bersifat:

-          Mampu menyatakan relationship, batasan-batasan

-          Diagram

-          Formal, minimum dalam menyatakan spesifikasi data (tidak ada duplikasi)

-          Simple

-          Conceptual data model harus DBMS independent à ER/EER

Contoh ERD :

 

 

 

Strategi untuk Design Schema

Top Down:

  • mulai dengan beberapa high level entity type
  • bagi lagi (top down) menjadi beberapa lower-level entity type dan relationship type

Bottom Up:

  • mulai dengan atribut
  • kelompokkan menjadi entity type & relationship type
  • tambahkan relationship-relationship baru bila ada

Inside Out:

  • bentuk khusus dari bottom-up
  • mula-mula ditentukan entity type yang merupakan pusat/bagian terpenting
  • tambahkan entity type dan relationship lain yang berhubungan satu sama lain

Mixed:

  • requirement dibagi-bagi menggunakan strategi top down
  • sebagian dari schema di-design dari partisi-partisi menggunakan strategi bottom-up
  • bagian-bagian dari komponen-komponen tersebut kemudian digabungkan

Phase 2b: Design Transaksi

  • Pada saat suatu basis data di-design, aplikasi dari transaksi utama harus sudah diketahui
  • Transaksi-transaksi baru dapat didefinisikan kemudian
  • Tentukan karakteristik dari transaksi  dan periksa apakah basis data sudah memuat semua informasi untuk melaksanakan transaksi
  • Transaksi dapat dibagi dalam 3 bagian yaitu:

                                            - retrieval

                                            - update

                                            - mixed

  • Phase 2a dan 2b sebaiknya dilaksanakan secara paralel dengan menggunakan umpan balik agar didapat design schema dan transaksi yang stabil

Phase 3: Pemilihan DBMS

Pemilihan DBMS ditentukan oleh sejumlah faktor antara lain:

  • faktor teknis: storage, akses path, user interface, programmer, bahasa query, data models
  • faktor ekonomi: software, hardware, maintenance, training, operasi, konversi, teknisi, dll
  • faktor organisasi: kompleksitas, data, sharing antar aplikasi, perkembangan data, pengontrolan data

Phase 4: Mapping dari Data Model

  • Memetakan conceptual model ke dalam DBMS
  • Menyesuaikan schema dengan DBMS pilihan
  • Hasil pemetaan biasanya berupa DDL

Phase 5: Physical Design

  • Struktur storage, akses path untuk mendapatkan performance yang baik
  • Kriteria baik dapat dilihat dari:

                          - response time

                          - pemakaian storage

                          - throughput (jumlah transaksi per unit waktu)

  • Perlu tuning untuk memperbaiki performance berdasarkan statistik pemakaian

Phase 6: Implementasi Sistem Basis Data

  • DDL dan SDL dari DBMS dikompilasi membentuk schema basis data dan basis data yang masih kosong
  • Basis data dapat dimuati (di-load) dari sistem yang lama
  • Transaksi dapat diimplementasikan oleh program aplikasi dan dikompilasi
  • Siap dioperasikan

 
 

Komentar