Selasa, 23 Juni 2009

DDL & DML

DML

DML merupakan bagian untuk memanipulasi basis data seperti :
- Pengaksesan data, (misal Query: perintah langsung mengakses data base)
- Penghapusan
- Penambahan
- Pengubahan data
DML juga dapat digunakan untuk melakukan komputasi data
contoh :
INSERT
DELETE
UPDATE

Berikut adalah contoh DML untuk komputasi data


Berikut adalh contoh DML
pengaksesan data(CREATE QUERY)



DDL

DDL mendefinisikan struktur basis data, seperti pembuatan basis data, pembuatan tabel dan sebagainya.
Contoh :
CREATE DATABASE
CREATE TABLE

Tampilan tabel pada DDL


Berikut adalah contoh DDL
CREATE TABLE

Jumat, 19 Juni 2009

CONTOH BILLING RUMAH SAKIT

Dibawah ini adalah contoh billing untuk pembayaran transaksi dirumah sakit atas nama Nn. Astri Lestari

SOLUSI KOKURANCY

Locking adalah salah satu mekanisme pengontrolan concurrency.
ketika suatu transaksi memerlukan jaminan kalau record yang diinginkan tidak berubah secara transaksi.
Cara kerja dari locking/ kunci :
Dapat diasumsikan bahwa terdapat 2 macam kunci :
a) Kunci X yang bersifat eksklusif
b) Kunci S yang bersifat dapat digunakan secara bersama-sama.
Pernyataan dari penggunaan kunci X dan kunci S, sebagai berikut :
1. Jika transaksi A menggunakan kunci X pada record R, maka permintaan transaksi B harus menunggu sampai A melepaskan kunci. Pelepasan kunci X dengan perintah syinpoint yang berfungsi menyatakan akhir dari suatu transaksi dimana basis data berada pada state yang konsisten. Bila SYN ditetapkan maka nilai transaksi dapat commit dan semua transaksi dapat memproses lebih lanjut.
2. Jika transaksi menggunakan kunci S, maka B harus menunggu sampai A melepaskan kunci tersebut atau bila menggunakan kunci S maka B dapat menggunakan kunci S bersama A.

keterangan:
* SYN (syinchpoint) adalah pelepasan sebuah kunci pada suatu variabel yang dikunci. Efek dari SYN adalah perintah menjadi sukses.
* Kunci S tidak bisa melakukan modifikasi atau (hanya kunci X yang bisa)


masalah konkurancy pada tanggal 18 lalu belum ada solusinya, pada hari ini penulis akan memposting solusinya.
1. Solusi untuk kasus masalah kehilangan modifikasi
gambar diatas adalah solusi untuk kasus masalah kehilangan modifikasi. T9 tidak dapat melakukan modifikasi kalau t8 tidak melakukan SYN (syinpoint).

2. Solusi untuk kasus modifikasi sementara
pada kasus modifikasi sementara, solusi yang didapat adalah seperti yang tertera pada gambar diatas. T7 tidak dapat melakukan modifikasi kalau T5 tidak melakukan SYN (syinpoint). Pada kasus ini tidak ada Roll back.

3. Solusi untuk kasus analisa yang tidak konsisten
Gambar diatas adalah solusi untuk kasus analisa yang tidak konsisten. penyelesaian kasus ini sama dengan solusi untuk kasus modifikasi sementara dan kasus kehilangan modifikasi yaitu pada T9 tidak dapat melakukan modifikasi apabila T7 tidak melakukan SYN (syonpoint). artinya kalau pada T7 sudah melakukan synpoint maka T9 baru bisa melakukan modifikasi.

Kamis, 18 Juni 2009

CONCURANCY

Performance DBMS
1. Multi user (dapat dipakai lebih dari satu pemakai)
2. Real Time Access
3. Sharing Database
4. Distribution & Sentralized
Concurancy terjadi karena performance dari DBMS
Ada 3 masalah yang disebabkan oleh Concurency
1. Masalah kehilangan modifikasi (lost update problem)
Masalah ini timbul jika 2 transaksi mengakses item database yang sama mengakibatkan nilai dari database tersebut menjadi tidak benar.
Contoh :
Resume: Paramitha T & T dan Satriavi T&T merupakan relasi dari Blue Sky Airlines. Blue Sky Airlines mempunyai ekonomi class sebanyak A1-A5. Satriavi T&T mendapatkan reserve dari salah satu customer yang menerangkan bahwa customer ini akan memesan seat A1-A4 pada Blue Sky Airlines. Pada waktu yang bersamaan Paramitha Tour juga mendapati bookingan seat A2-A5 pada Blue Sky Airline. Jika transaksi dieksekusi secara serial transaksi 1 diproses setelah transaksi yang lain tanpa operasi interleaved (selang waktu operasi), maka seat yang trbooking adalah A2-A5 tanpa terkecuali transaksi tersebut diproses secara konkuren maka bookingan seat yang sesungguhnya menjadi tidak benar (A1-A4)

2. Masalah Modifikasi Sementara ( Uncommited Update Problem). Masalah ini timbul jika transaksi membaca suatu record yang sudah dimodifikasi oleh transaksi lain tetapi belum terselesaikan (uncommited) terdapat kemungkinan kalau transaksi tersebut dibatalkan (rool back)
Contoh :

Resume: Pada kasus modifikasi sementara terjadi suatu kesalahan, karena pada T6 (write seat) pada satriavi tour yang seharusnya terjadi pergantian seat dari A6-A10 menjadi A11-A15, ternyata modifikasi tersebut tidak berlaku karena pada saat T7 terjadi Roll Back(Pembatalan sepihak) yang disebabkan sistem mndadak error maka T6 (write seat) adalah tetap dan A11-A15 masuk pada roll back

3. Masalah Analisa Yang Tidak Konsisten ( Problem of Inkonsistensy Analisa)
Masalah ini timbul jika sebuah transaksi membaca suatu nilai tetapi transaksi yang ke 2 meng update beberapa nilai tersebut selama eksekusi transaksi pertama.
Contoh:

Resume:
T1 pada paramita tour diinformasikan seat yang masih available adalah A=A1-A10,B=B10-B24,C=C20-C24
T2 pada paramitha tour terdapat variabel pesanan =A, seat yang diambil adalah A5-A10
T3 tadinya satriavi tour akan membooking A5-A10, tapi karena seat tersebut sudah diambil oleh paramitha tour, jadi satriavi tou mengambil A15-A20
T4 pada paramitha tour terdapat variabel pesanan =B, seat yang diambil adalah B10-B20
T5 satriavi tour memesan seat C=C20-C22
T6 commit ( instruksi proses sukses dikerjakan)
T7 paramitha tour akan mengambil C20-C24, tapi karena C20-C22sudah diambil oleh satriavi tor maka paramita tour mengambil bangku C23-C24.

APLIKASI SQL

SQL adalah perintah yang bisa langsung dijalankan. Aplikasi SQL bersifat Open Source ( dapat didown load secara gratis/ tidak punya ijin lisensi)
Sasaran SQL
a. menciptakan basis data dan struktur relasi
b. melakukan manajemen data tingkat dasar
c. membentuk query sederhana dan komplek
d. melakukan tugas-tugas dengan seminimal mungkin memakai struktur dan sintaks perintah relatif mudah dipelajari
e. harus portable
Jenis SQL
1. Interactive SQL adalah perintah SQL yang langsung dapat dioperasikan
2. Static SQL adalah bersifat embedded ( disisipkan ke dalam sebuah program)
3. Dynamic SQL adalah kombinasi antara interactive dan static
Subdivisi SQL
1. DDL (Data Definition Language) adalah satu set dari tabel yang disimpan dalam file khusus disebut data dictionary/directory.
2. DML ( Data Manipulation Language) adalah bahasa yang memperbolehkan pemakai untuk akses atau memanipulasi data sebagai yang telah diorganisasikan sebelumnya dalam model data yang tepat.
DCL (Data Control Language) adalah suatu perintah-perintah dalam bahasa query yang dipergunakan secara khusus untuk menontrol server komputer.

Contoh aplikasi SQL



NORMALISASI

Normalisasi merupakan proses pengelompokan elemen data menjadi tabel-tabel yang menunjukan entity dan relasinya.
Normalisasi adalah pengelompokan atribut-atribut dari suatu relasi sehingga membentuk WELL STRUCTURE RELATION. Well Structure Relation adalah sebuah relasi yang jumlah kerangkapan datanya sedikit (minimum amount of redudancy), serta memberikan kemugkinan bagi user untuk melakukan INSERT, DELETE, dan MODIFY terhadap baris-baris data pada relation tersebut, yang tidak berakibat terjadinya ERROR atau INKONSESTENSI DATA, yang disebabkan oleh operasi-operasi tersebut.

PROBLEM-PROBLEM PADA RELATION YANG SUDAH DINORMALISASI

1. Performance Problem
Adalah mengatasi tahapan kunci anomali (Insert, Delete, update) sehingga data menjadi konsisten dan akan mengurangi kerangkapan dari data (redudancy data)
2. Referntial Integrity Problem
Adalah pembentukan beberapa tabel hasil dari uji normalisasi akan menghemat memori data dan keterhubungan antar tabel akan membentuk relation structure well ( struktur relasi yang baik)
Beberapa konsep yang harus diketahui :
a) Field / atribut kunci
1. Super Key
Yaitu himpunan dari satu atau lebih entitas yang digunakan untuk mengidentifikasikan secara unik sebuah entitas dalam entitas set.
2. Candidate Key
Yaitu suatu atribut atau satu set minimal atribut yang mengidentifikasikan secara unik suatu kejadian yang spesifik dari entity
3. Primary Key
Yaitu suatu atribut atau satu set minimal atribut yang tidak hanya mengidentifikasikan secara unik suatu kejadian yang spesifik tapi juga dapat mewakili setiap kejadian dari suaru entity.
4. Alternatite Key
Yaitu kunci kandidat yang tidak dipakai sebagai primary key
5. Foreign Key
Yaitu suatu atribut (satu set atribut) yang melengkapi sutu relationship (hubungan yang menunjukan ke induknya.

b). Ketergantungan Kunci
1. Ketergantungan Fungsional (Fungsional Dependent) adalah keterkaitan antar hubungan antara dua atribut pada sebuah relasi
2. Fully Functinaly Dependent (FFD) adalah suatu rinci data dikatakan FFD pada suatu kombinasi rinci data jika Functional Dependent pada kombinasi rinci data dan tidak Functional Dependent pada bagian lain dari kombinasi rinci data.
3. Ketergantungan Partial (sebagian dari kunci dapat digunakan sebagai kunci utama)
4. Ketergantungan Transitif (menjadi atribut biasa pada suatu relasi tapi menjadi kunci pada relasi lain)
5. Determinan adalah suatu atribut (field) atau gabungan atribut dimana beberapa atribut lain bergantung sepenuhnya pada atribut tersebut.

BENTUK-BENTUK NORMALISASI
1. Bentuk tidak normal (Unnormalized form)
Merupakan kumpulan data yang akan direkam, tidak ada keharusan mengikuti suatu format tertntu. contoh :

2. Bentuk Normal ke Satu (1NF/ First Normal Form) . Suatu relasi 1NF jika setiap relasi atributnya bersifat atomik ( zat terkecil yang masih memiliki sifat induknya)
contoh :


3. Bentuk Normal Ke Dua (2NF/ Second Normal Form) mempunyai syarat yaitu bentuk data telah memenuhi kriteria bentuk 1NF. Atribut bukan kunci haruslah bergantung secara fungsi pada kunci utama / primary key. Sehingga unuk membentuk 2NF haruslah sudah ditentukan kunci-kunci Field. Kunci Field haruslah unik dan dapat mewakili atribut lain yang menjadi anggotanya. Contoh :


4. Bentuk Normal Ke Tiga (3NF/ Third Normal Form). Dengan kata lain, setiap atribut bukan kunci haruslah bergantung hanya pada primary key dan pada primary key secara menyeluruh.
Contoh :

Senin, 30 Maret 2009

ENTERPRISE PERPUSTAKAAN


gambar di atas adalah contoh Enterprise PNRI dalam prosedur peminjaman buku kepada pemustaka. pada gambar di atas terdapat tiga tabel yaitu tabel petugas, tabel pemustaka, dan tabel referensi buku. ketiga tabel tersebut saling berintegrasi satu sama lain yang mana masing-masing tabel berisi record-record yang berbeda.
dalam membuat enterprise kita menggunakan DDL (data definition language) karena bahasa DDL menerjemahkan apa saja yang terdapat dalam enterprise. hasil kompilasi dari perintah DDL adalah satu set dari tabel yang disimpan dalam data dictionary. selain menggunakan bahasa DDL, dalam membuat suatu enterprise kita juga menggunakan DML (data manipulation language) yaitu bahasa yang di pakai untuk memanipulasi data. DML ada dua yaitu prosedural (menggunakan aplikasi database III, foxbase) dan non prosedural (menggunakan aplikasi SQL, QBE).
DDL dan DML ini digunakan untuk membuat struktur database yang nantinya akan dimasukkan ke dalam suatu tempat yang berisi kumpulan dari file tabel. kumpulan dari file tabel ini terdapat pada level internal, level ini menerangkan tentang struktur penyimpanan basis data secara fisik dan organisasi file yang digunakan pad alevel internal inilah database manager menerima query dan menguji eksternal dan konseptual untuk menentukan apakah record-record tersebut dibutuhkan untuk memenuhi permintaan, kemudian database manager memanggil file manager untuk menyelesaikan permintaan. file manager ini bertugas memanipulasi penyimpanan file dan mengatur alokasi ruang penyimpanan tersebut