Kamis, 21 April 2016

Konsep Dasar Database



KONSEP DASAR

Database adalah suatu susunan/kumpulan data operasional lengkap dari suatu organisasi/perusahaan yang diorganisir/dikelola dan simpan secara terintegrasi dengan menggunakan metode tertentu dengan menggunakan komputer sehingga mampu menyediakan informasi yang diperlukan pemakainya.

SISTEM DATABASE adalah suatu sistem penyusunandan pengelolaan record-record dengan menggunakan komputer, dengan tujuan untuk menyimpan atau merekam serta memelihara data operasional lengkap sebuah organisasi/perusahaan sehingga mampu menyediakan informasi yang diperlukan pemakai untuk kepentingan proses pengambilan keputusan.

KOMPONEN DASAR DARI SISTEM DATABASE

Terdapat 4 komponen pokok dari system database:
A.  DATA, dengan ciri-ciri :
1.      Data disimpan secara terintegrasi (Integrated) Terintegrated yaitu Database merupakan kumpulan dari berbagai macam file dari aplikasi-aplikasi yang berbeda yang disusun dengan cara menghilangkan bagian-bagian yang rangkap (redundant)
2.      Data dapat dipakai secara bersama-sama(shared) Shared yaitu Masing-masing bagian dari database dapat diakses oleh pemakai dalam waktu yang bersamaan, untuk aplikasi yang berbeda.

B.  Perangkat Keras (HARDWARE)

Terdiri dari semua peralatan perangkat keras computer yang digunakan untuk pengelolaan sistem database berupa :
1.      Peralatan untuk penyimpanan misalnya disk, drum, tape
2.      Peralatan input dan output
3.      Peralatan komunikasi data, dll

C.  Perangkat Lunak (SOFTWARE)

Berfungsi sebagai perantara (interface) antara pemakai dengan data phisik pada database, dapat berupa :
1.  Database Management System (DBMS)
2.  Program-program aplikasi & prosedur-prosedur


D.  Pemakai (USER)

Terbagi menjadi 3 klasifikasi :
1.      Database Administrator (DBA), orang/tim yang bertugas mengelola system database secara keseluruhan
2.      Programmer, orang/tim membuat program aplikasi yang mengakses database dengan menggunakan bahasa pemprograman
3.      End user, orang yang mengakases database melalui terminal dengan menggunakan query language atau program aplikasi yang dibuat oleh programmer

DATA PADA DATABASE DAN HUBUNGANNYA

Ada 3 jenis data pada sistem database, yaitu:
1.      Data operasional dari suatu organisasi, berupa data yang disimpan didalam database
2.      Data masukan (input data), data dari luar system yang dimasukan melalui peralatan input (keyboard) yang dapat merubah data operasional
3.      Data keluaran (output data), berupa laporan melalui peralatan output sebagai hasil dari dalam system yang mengakses data operasional

CONTOH PENGGUNAAN DATABASE

° Pembelian barang di supermarket, kasir akan melakukan scan barcode yang ada di barang, pada saat tersebut program akan mengakses data pada database kemudian mengurangi stok barang yang ada sesuai dengan jumlah pembelian konsumen
° Pembelian barang dengan menggunakan kartu kredit, card reader akan membaca apakah kartu kredit tersebut memiliki limit yang cukup, dan memasukkan data pembelian dalam database kartu kredit, juga ada pemeriksaan apakah kartu tersebut tidak dalam daftar kartu di curi/hilang

KEUNTUNGAN PEMAKAIAN SISTEM DATABASE

1.  Terkontrolnya kerangkapan data dan inkonsistensi
2.  Terpeliharanya keselarasan data
3.  Data dapat dipakai secara bersama-sama
4.  Memudahkan penerapan standarisasi
5.  Memudahkan penerapan batasan-batasanpengamanan.
6.  Terpeliharanya intergritas data
7.  Terpeliharanya keseimbangan atas perbedaan kebutuhan data dari setiap aplikasi
8.  Program / data independent

KERUGIAN PEMAKAIAN SISTEM DATABASE

1.  Mahal dalam implementasinya
2.  Rumit/komplek
3.  Penanganan proses recovery & backup sulit
4.  Kerusakan pada sistem basis data dapat mempengaruhi departemen yang terkait


ISTILAH-ISTILAH YG DIPERGUNAKAN DALAM SISTEM BASIS DATA

a.      Enterprise yaitu suatu bentuk organisasi Contoh :
Enterprise: Sekolah Ú Database Nilai
Enterprise: Rumah sakit Ú Database AdministrasiPasien
b.      Entitas yaitu suatu obyek yang dapat dibedakan dengan objek lainnya Contoh :
Database Nilai Ú entitas: mahasiswa, Matapelajaran Database Administrasi Pasien entitas: pasien, dokter, obat.

c.       Atribute/field   yaitu   setiap   entitas   mempunyai   atribut   atau   suatu   sebutan   untuk mewakili suatu entitas.
Contoh :
Entity siswa Ú field = Nim, nama_siswa,alamat,dll Entity nasabah Ú field=Kd_nasabah,nama_nasabah,dll
d.      Data value yaitu data aktual atau informasi yang disimpan pada tiap data elemen atau atribute.
Contoh : Atribut nama_karyawan Ú sutrisno, budiman, dll
e.       Record/tuple  yaitu  kumpulan  elemen-elemen  yang  salingberkaitan  menginformasikan tentang suatu entity secara lengkap.
Contoh : record mahasiswa Ú nim, nm_mhs, alamat.

f.        File  yaitu  kumpulan  record-record  sejenis  yang  mempunyai  panjang  elemen  sama, atribute yang sama namun berbeda-beda data valuenya
g.      Kunci elemen data yaitu tanda pengenal yang secara unik mengindentifikasikan entitas dari suatu kumpulan entitas.

TUJUAN PERANCANGAN DATABASE:

1.      Untuk memenuhi informasi yang berisi kebutuhankebutuhan user secara khusus dan aplikasinya.
2.      Memudahkan pengertian struktur informasi


3.      Mendukung kebutuhan–kebutuhan pemrosesan dan beberapa objek penampilan (respone time, processing time dan strorage space).

APLIKASI DATABASE DALAM LIFE CYCLE

1.      Pendefinisian Sistem (System definition) Pendefinisian ruang lingkup dari sistem database, pengguna dan aplikasinya.
2.      Perancangan Database (Database Design) Perancangan database secara logika dan fisik pada suatu sistem database sesuai dengan sistem manajemen database yang diinginkan.
3.      Implementation Pendefinisian database secara konseptual, eksternal dan internal, pembuatan file–file database yang kosong serta implementasi aplikasi software.
4.      Pengambilan dan Konversi Data (Loading atau data convertion) Database ditempatkan dengan baik, sehingga jika ingin memanggil data secara langsung ataupun merubah file–file yang ada dapat di tempatkan kembali sesuai dengan format sistem databasenya
5.      Konversi Aplikasi (Aplication conversion) Pengkonversian aplikasi agar dapat berjalan dengan database baru.
6.      Pengujian dan Validasi (Testing dan Validation) Pengujian dengan menjalankan database dengan memberikan data-data ȃrealÈ„ untuk menemukan kesalahan yang mungkin terjadi.
7.      Monitoring dan Maintenance Montoring adalah proses pemantau performa dari database, jika performa database menurun maka dapat dilakukan proses tuning dan reorganized Maintenance adalah proses manajemen database selama database berjalan dan jika ada perubahan maka dapat dilakukan upgrade.

ADA 6 FASE PROSES PERANCANGAN DATABASE

1.      Pengumpulan dan analisa
a.      Menentukan kelompok pemakai dan bidang-bidang aplikasinya
b.      Peninjauan dokumentasi yang ada
c.       Analisa lingkungan operasi dan pemrosesan data
d.      Daftar pertanyaan dan wawancara

2.
Perancangan database secara konseptual


a.   Perancangan skema konseptual

b.   Perancangan transaksi yang akan terjadi dalam database.
3.
Pemilihan DBMS

a.   Faktor teknis

Contoh faktor teknik :

Tipe model data ( hirarki, jaringan atau relasional ), Struktur penyimpanan dan
jalur

pengaksesan yang didukung system manajemen database, Tipe interface  dan


programmer, Tipe bahasa query



b.      Faktor Ekonomi dan Politik organisasi Faktor-faktor ekonomi: Biaya penyiadaan hardware dan software, Biaya konversi pembuatan database, Biaya personalia, dll Faktor Organisasi :

Analisa Kasus

ü  Perpustakaan Smart adalah perpustakaan umum yang anggotanya pelajar,mahasiswa dan masyarakat yang didirikan oleh Walikota Jakarta Barat. Keberadaan perpustakaan berlokasi di Walikota yang aplikasi pelayanan masih bersifat tradisional.

ü  Prosesnya :
a.      Setiap calon anggota yang akan menjadi anggota harus mengisi formulir dengan biaya administrasi Rp.10.000,-
b.      Anggota dapat meminjam buku maksimal 3 buku
c.       Untuk masa peminjaman selama 1 minggu (7 hari)
d.      Keterlambatan pengembalian dikenakan denda sesuai dengan kondisi denda, diantaranya :
1.      Denda keterlambatan pengembalian dikenakan biaya administrasi Rp.500 perharinya (bukti surat denda terlampir)
2.      Denda Buku perpustakaan rusak maka dikenakan biaya revisi buku perpustakaan(biaya ini dikenakan setelah buku diperbaiki).(bukti surat denda terlampir)
3.      Denda Buku Hilang, maka dikenakan biaya penggantian seharga buku tersebut.(bukti surat denda terlampir)
4.      Perpustakaan smart dapat menerima sumbangan dari donatur statusnya (anggota atau masyrakat luas).

Analisa Kasus Enterprise

(Pembahasan di Kelas)
ü  Buat   Enterprise   dari   Perpustakaan   SmartÈ„   yang   ditentukan   dari   :Entitas, Atribute/Field, value data, record dan bentuk tabel tabel dari Enterprise
ü  Bentuk Gambar dari Enterprise Perpustakaan (yang menghubungkan relasi antara Entitas, Atribute, value data, record dan tabel-tabel)





4.      Perancangan database secara logik (data model mapping)
a.      Pemetaan (Transformasi data)
Transformasi yang tidak tergantung pada sistem, pada tahap ini transformasi tidak mempertimbangkan karakteristik yang spesifik atau hal– hal khusus         yang              akan diaplikasikan pada sistem manajemen database
b.      Penyesuaian skema ke DBMS
Penyesuaian skema yang dihasilkan dari tahap Pemetaan untuk dikonfirmasikan pada bentuk implementasi yang spesifik dari suatu model data seperti yang digunakan oleh sistem manajemen database yang terpilih.
5.      Perancangan database secara fisik

a.      Response Time

Waktu transaksi database selama eksekusi untuk menerima respon

b.      Space Utility

Jumlah ruang penyimpanan yang digunakan oleh database file dan struktur     jalur pengaksesannya

c.       Transaction Throughput

Merupakan nilai rata–rata transaksi yang dapat di proses permenit oleh sistem database dan  merupakan parameter kritis dari sistem transaksi
6.      Phase Implementasi Sistem Database

DBMS (Database Management Systems)

DBMS adalah perangkat lunak yang menangani semua pengaksesan database yang mempunyai fasilitas membuat, mengakses, memanipulasi dan memelihara basis data

BAHASA dalam DBMS

a.      Data Definision Language (DDL)
Hasil kompilasi dari perintah DDL adalah satu set dari table yang disimpan dalam file khusus disebut data dictionary/directory.
b.      Data Manipulation Language (DML)
Bahasa yang memperbolehkan pemakai untuk akses atau memanipulasi data sebagai yang telah diorganisasikan sebelumnya dalam model data yang tepat
Secara dasar ada dua tipe DML :
1.      Prosedural,  yang  membutuhkan  pemakai  untuk  menspesifikasikan  data  apa  yang dibutuhkan dan bagaimana untuk mendapatkannya contoh dbase III, foxbase


2.      Non prosedural, yang membutuhkan pemakai untuk menspesikasikan data apa yang dibutuhkan tanpa menspesifikasikan bagaimana untuk mendapatkannya. Contoh SQL, QBE.

FUNGSI DBMS

1.      Data Definition, DBMS harus dapat mengolah pendefinisian data
2.      Data Manipulation, DBMS harus dapat menangani permintaan dari pemakai untuk mengakses data
3.      Data Security & Integrity, DBMS harus dapat memeriksa security dan integrity data yang didefinisikan oleh DBA.
4.      Data Recovery & Concurency, DBMS harus dapat menangani kegagalan kegagalan pengaksesan database yang dapat disebabkan oleh sesalahan sistem, kerusakan disk, dsb
5.      Data Dictionary, DBMS harus menyediakan data dictionary.
6.      Performance, DBMS harus menangani unjuk kerja dari semua fungsi seefisien mungkin.

KOMPONEN DBMS

1.      Query Prosesor, komponen yang mengubah bentuk query kedalam instruksi kedalam database manager
2.      Database Manager, menerima query & menguji eksternal & konceptual untuk menentukan apakah record record tersebut dibutuhkan untuk memenuhi permintaan kemudian database manager memanggil file manager untuk menyelesaikan permintaan
3.      File Manager, memanipulasi penyimpanan file dan mengatur alokasi ruang penyimpanan disk
4.      DML Prosessor, modul yang mengubah perintah DML yang ditempelkan kedalam program aplikasi dalambentuk fungsi-fungsi
5.      DDL Compiler, merubah statement DDL menjadi kumpulan table atau file yang berisi data dictionary / meta data Dictionary Manajer, mengatur akses dan memelihara data dictionary.

PERBEDAAN TRADITIONAL FILE MANAGEMENT (FMS) DENGAN DATABASE MANAGEMENTSISTEM (DBMS)


TRADITIONAL FILE MANAGEMENT
1.      Bersifat program oriented
2.      Bersifat kaku
3.      Terjadi kerangkapan data dan tidak terjaminnya keselarasan data ( data inkonsistensi)

DATABASE FILE MANAGEMENT (DBMS)

1.  Bersifat data oriented
2.  Bersifat luwes/fleksible
3.  Kerangkapan data serta keselarasan data dapat terkontrol


Keterangan :

Program oriented ȃ Susunan data di dalam file , distribusi data pada peralatan strorage, dan organisasi filenya dipilih sedemikian rupa, sehingga program aplikasi dapat menggunakan secara optimal ȃ
Data oriented ȃ Susunan data, organisasi file pada database dapat dirubah, begitu pula strategi aksesnya tanpa mengganggu program aplikasi yang sudah ada ȃ.

ARSITEKTUR SISTEM DATABASE

Terbagi menjadi 3 tingkatan :
1.      Internal level yaitu menerangkan struktur penyimpanan basisdata secara fisik dan organisasi file yang digunakan ȃ
2.      konseptual level yang menerangkan secara menyeluruh dari basisdata dengan menyembunyikan penyimpanan data secara fisik ȃ Ekternal level yang menerangkan View basisdata dari sekelompok pemakai.

DATA INDEPENDENCE

Merupakan salah satu kelebihan sistem database dimana DBA dapat merubah struktur storage & stategi akses dalam pengembangan sistem database tanpa mengganggu program- program aplikasi yang sudah ada.

2 TINGKAT DATA INDEPENDENCE

1.      Physical data independence yaitu perubahan internal schema dapat dilakukan tanpa menggangu conceptual schema
2.      Logical data independence yaitu conceptual schema dapat dirubah tanpa mempengaruhi ekternal schema.


ALASAN PERLUNYA PRINSIP DATA INDEPENDENCE DITERAPKAN PADA PENGELOLAAN SISTEM DATABASE

1.      Database  Administrator  dapat  merubah  isi,  lokasi  dan  organisasi  database  tanpa mengganggu program aplikasi yang ada.
2.      Vendor  hardware  &  software  pengelolaan  data  bisa  memperkenalkan  produk  - produk baru tanpa mengganggu program - program aplikasi yang telah ada
3.      Untuk memudahkan perkembangan program aplikasi
4.      Memberikan fasilitas pengontrolan terpusat oleh DBA demi security dan integritas data, dengan memperhatikan perubahan - perubahan kebutuhan user.






PENGERTIAN MODEL DATA :

Sekumpulan konsep-konsep untuk menerangkan data, hubungan-hubungan antara data dan batasan-batasan data yang terintegrasi di dalam suatu organisasi

JENIS-JENIS MODEL DATA

A.  Model data berbasis objek
B.  Model data berbasis record
C.  Model data fisik
D.  Model data konseptual

A.  OBJECT BASED DATA MODEL

Model data berbasis objek menggunakan konsep entitas, atribut dan hubungan antar entitas. Terdiri dari :
1.  Entity Relationship model
2.  Semantik data model



1. ENTITY RELATIONSHIP MODEL

Model untuk menjelaskan hubungan antar data dalam basis data berdasarkan suatu persepsi bahwa real word terdiri dari objek-object dasar yang mempunyai hubungan atau relasi antara objek-objek tersebut

E-R MODEL berisi ketentuan /aturan khusus yang harus dipenuhi oleh isi database. Aturan terpenting adalah MAPPING CARDINALITIES, yang menentukan jumlah entity yang dapat dikaitkan dengan entity lainnya melalui relationship-set.

Simbol yang digunakan :


: Menunjukan object dasar


: Menunjukan relasi


: Menunjukan atribut dari objek dasar



: Menunjukan adanya relasi


Contoh Kasus ER - Model


2. BINARY MODEL

Pemetaan data dengan menggunakan 0 dan 1, atau true dan false dengan kondisi tertentu atau hanya dalam alternatif.

3. SEMANTIC MODEL

Hampir sama dengan Entity Relationship model dimana relasi antara objek dasar tidak dinyatakan dengan symbol tetapi menggunakan kata-kata (Semantic). Sebagai contoh, dengan masih menggunakan relasi pada Bank X sebagaimana contoh sebelumnya, dalam semantic model adalah seperti terlihat pada gambar di atas. Tanda-tanda yang menggunakan dalam semantic model adalah sebagai berikut :

: Menunjukkan adanya relasi
: menunjukkan atribut

Contoh kasus Semantic model



B.  RECORD BASED DATA MODEL
Model ini berdasarkan pada record untuk menjelaskan kepada user tentang hubungan logic antar data dalam basis data


PERBEDAAN DENGAN OBJECT BASED DATA MODEL

Pada record based data model disamping digunakan untuk menguraikan struktur logika keseluruhan dari suatu database, juga digunakan untuk menguraikan implementasi dari sistem database (higher level description of implementation)
Terdapat 3 data model pada record based data model :

1.  Model Relational,

Dimana data serta hubungan antar data direpresentasikan oleh sejumlah tabel dan masing- masing tabel terdiri dari beberapa kolom yang namanya unique. Model ini  berdasarkan notasi teori himpunan (set theory), yaitu relation.
Contoh : data base penjual barang terdiri dari 3 tabel :
  Supllier
  Suku_cadang
  Pengiriman

SUPPLIER



2.  Model Hirarki
Dimana data serta hubungan antar data direpresentasikan dengan record dan link (pointer), dimana record-record tersebut disusun dalam bentuk tree (pohon), dan masing-masing node pada tree tersebut merupakan record/grup data elemen dan memiliki hubungan cardinalitas 1:1 dan 1:M.



3.  Model Jaringan

Distandarisasi tahun 1971 oleh Database Task Group (DBTG) atau disebut juga model CODASYL (Conference on Data System Language), mirip dengan hirarkical model dimana data dan hubungan antar data direpresentasikan dengan record dan links. Perbedaannya terletak pada susunan record dan linknya yaitu network model menyusun record-record dalam bentuk graph dan menyatakan hubungan cardinalitas
1:1, 1:M dan N:M



C.P         HYSICAL DATA MODEL

Digunakan untuk menguraikan data pada internal level Beberapa model yang umum digunakan :
ü  Unifying model
Model ini menggabungkan memori dan transaksi database dalam satu   kesatuan
model.
ü  Frame memory
Frame Memory adalah sebuah virtual view dari tempat penyimpanan   sekunder yang digunakan untuk mendukung penyimpanan record database

D.  MODEL DATA KONSEPTUAL

Model yang dibuat berdasarkan anggapan bahwa dunia nyata terdiri dari koleksi obyek- obyek dasar yang dinamakan entitas (entity) serta hubungan (relationship) antara entitasentitas itu. Biasanya direpresentasikan dalam bentuk Entity Relationship Diagram.

Manfaat Penggunaan CDM dalam perancangan database :
° Memberikan gambaran yang lengkap dari struktur basis data yaitu arti, hubungan, dan batasan-batasan
° Alat komunikasi antar pemakai basis data, designer, dan analis.


Analisa Kasus (Perpustakaan Smart Lanjutan

Slide 1 & 2)
  Buat Model data berbasis objek (Semantik Model)
  Buat Model data berbasis record

Model Relational               Model Jaringan                  Model hirarki





PENGERTIAN

ENTITY RELATIONSHIP


Entity relationship Adalah jaringan yang menggunakan susunan data yang disimpan dari sistem secara abstrak. Entity-relationship dari model terdiri dari unsur-unsur entity dan relationship antara entity-entitiy tersebut.

SIMBOL-SIMBOL ER-DIAGRAM



KOMPONEN ENTITY RELATIONSHIP
1.      Entitas yaitu suatu kumpulan object atau sesuatu yang dapat dibedakan atau dapat diidentifikasikan secara unik. Dan kumpulan entitas yang sejenis disebut dengan entity set.
2.      Relationship yaitu hubungan yang terjadi antara satu entitas atau lebih
3.        Atribut, kumpulan elemen data yang membentuk suatu entitas.
4.        Indicator tipe terbagi 2 yaitu :
a. Indicator tipe asosiatif object
b.  Indicator tipe super tipe


ENTITY SET TERBAGI ATAS :

1.      Strong entity set yaitu entity set yang satu atau lebih atributnya digunakan oleh entity set lain sebagai key. Digambarkan dengan empat persegi panjang.
Misal :
E adalah sebuah entity set dengan atribute-atribute a1, a2,..,an, maka entity set tersebut direpresentasikan dalam  bentuk  tabel  E  yang  terdiri  dari  n  kolom, dimana setiap kolom berkaitan dengan atribute-atributenya.
2.      Weak Entity set, Entity set yang bergantung terhadap strong entity set. Digambarkan dengan empat persegi panjang bertumpuk.
Misal :
A  adalah  weak entity set dari  atribute-atribute a1,  a2,  ..,  ar  dan  B adalah  strong entity set dengan atribute-atribute b1, b2,..,bs, dimana b1 adalah atribute  primary  key, maka weak entity set direpresentasikan berupa table A, dengan
atribute-atribute {b1} u {a1,a2,.., ar}

Contoh : Strong entity set


NOPEG
NAMA
200107340
BILLY
200307569
FUAD
200107341
NINING
200107486
FINTRI

Weak entity set transaction

NOPEG
TANGGUNGAN
TANGGAL LAHIR
JENIS KELAMIN
200107340
HAFIDZ
22-03-2006
LAKI-LAKI
200307569
RENI
13-05-1999
PEREMPUAN
200107341
RAFFA
21-06-2006
LAKI-LAKI
200107486
NAIA
25-10-2006
PEREMPUAN

JENIS –JENIS ATRIBUT
1.  KEY  Ãšatribut yang digunakan untuk menentukan suatu entity secara unik
2.      ATRIBUT SIMPLE Úatribut yang bernilai tunggal


3.      ATRIBUT MULTI VALUE Úatribut yang memiliki sekelompok nilai untuk setiap instan entity

Pada gambar dibawah ini, yang menjadi atribut key adalah NIP. Tgl Lahir dan Nama adalah atribut simple. Sedangkan Gelar merupakan contoh atribut multivalue.


4.      ATRIBUT COMPOSIT ÚSuatu atribut yang terdiri dari beberapa atribut yang lebih kecil yang mempunyai arti tertentu contohnya adalah atribut nama pegawai yang terdiri dari nama depan, nama tengah dan nama belakang.

5.      ATRIBUT DERIVATIF ÚSuatu atribut yg dihasilkan dari atribut yang lain. Sehingga umur yang merupakan hasil kalkulasi antara Tgl Lahir dan tanggal hari ini. Sehingga keberadaan atribut umur bergantung pada keberadaan atribut Tgl Lahir.

DERAJAT RELATIONSHIP

menjelaskan jumlah entity yang berpartisipasi dalam suatu relationship



MAPPING CARDINALITY

Banyaknya entity yang bersesuaian dengan entity yang lain melalui relationship

JENIS-JENIS MAPPING :

1.  One to one
2.  Many to One atau One to many
3.  Many to many

REPRESENTASI DARI ENTITY SET

Entity set direpresentasikan dalam bentuk tabel dan nama yang unique. Setiap tabel terdiri dari sejumlah kolom, dimana masing-masing kolom diberi nama yang unique pula
·         CARDINALITY  RATIO  CONSTRAINT,  Menjelaskan  batasan  jml  keterhubungan satu entity dgn entity lainnya Jenis Cardinality Ratio = 1:1 1:N/ N:1 M : N





Cardinality 1:1,1:M,M:N




Logical Record Structured (LRS)
LRS Ú representasi dari struktur record-record pada tabel-tabel yang terbentuk dari hasil relasi antar himpunan entitas. Menentukan Kardinalitas, Jumlah Tabel dan Foreign Key (FK).
Gambar di atas menunujukan relasi dengan kardinalitas 1-1, karena:

1 supir hanya bisa mengemudikan 1taksi, dan

1 taksi hanya bisa dikemudikan oleh 1 supir.
Relasi 1-1 akan membentuk 2 tabel: Tabel Supir (nosupir, nama, alamat)
Tabel Taksi (notaksi, nopol, merk, tipe)




Gambar di atas menunujukan relasi dengan kardinalitas 1-M, karena:

1 Dosen bisa membimbing banyak Kelas, dan

1 Kelas hanya dibimbing oleh 1 Dosen.
Relasi 1-M akan membentuk 2 tabel: Tabel Dosen (nip, nama, alamat)
Tabel Kelas (kelas, jurusan, semester, jmlmhs)

LRS yang terbentuk sbb:




Gambar di atas menunujukan relasi dengan kardinalitas M-M, karena:

1 Mahasiswa bisa belajar banyak Mata Kuliah, dan

1 Mata Kuliah bisa dipelajari oleh banyak Mahasiswa.
Relasi M-M akan membentuk 3 tabel: Tabel Mahasiswa (nim, nama, alamat)
Tabel Mtkuliah (kdmk, nmmk, sks)
Tabel Nilai (nim, kdmk, nilai) Ú menggunakan super key/composite key

Participation Constraint

Menjelaskan apakah keberadaan suatu entity tergantung pada hubungannya dengan entity lain. Terdapat dua macam participation constrain yaitu:
1.      Total participation constrain yaitu:


Keberadaan suatu entity tergantung pada hubungannya dengan entity lain.
Didalam diagram ER digambarkan dengan dua garis penghubung antar entity dan relationship.
2.      Partial participation, yaitu
Keberadaan suatu entity tidak tergantung pada hubungan dengan entity lain. Didalam diagram ER digambarkan dengan satu garis penghubung.


INDICATOR TIPE

Indicator tipe asosiatif object berfungsi sebagai suatu objek dan suatu relationship.


Indicator tipe super tipe, terdiri dari suatu object dan satu subkategori atau lebih yang dihubungkan dengan satu relationship yang tidak bernama.

Analisa Kasus ERD Perpustakaan Smart (Lanjutan dari Slide 1,2 & 3)

1. Pembuatan gambar ERD dari Perpustkaan Smart Langkah –langkah pembuatan ER diagram Tentukan entity entity yang diperlukan Tentukan relationship antar entity entity.
Tentukan cardinality ratio dan participation constraint Tentukan attribute attribute yang diperlukan dari tiap entity Tentukan key diantara attribute attribute.
Tentukan LRS dari masing-masing relasi
Hindari penamaan entity, relationship dan atribute yang sama


TEHNIK NORMALISASI BEBERAPA PENGERTIAN NORMALISASI :

Normalisasi  merupakan  proses  pengelompokan  elemen  data  menjadi  tabeltabel  yang menunjuk-kan                            entity    dan    relasinya.    Normalisasi   adalah    proses    pengelompokan atributeatribute dari suatu relasi sehingga membentuk WELL STRUCTURE RELATION. Keuntungan dari normalisasi, yaitu :
1.  Meminimalkan ukuran penyimpanan yang diperlukan untuk menyimpan data.
2.  Meminimalkan resiko inkonsistensi data pada basis data
3.  Meminimalkan kemungkinan anomali pembaruan
4.  Memaksimalkan stabilitas struktur data

WELL STRUCTURE RELATION

Adalah sebuah relasi yang jumlah kerangkapan datanya sedikit (minimum Amount Of Redundancy), serta memberikan kemungkinan 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.

Contoh :
Terdapat sebuah relation Course, dengan ketentuan sbb:
1.      Setiap mahasiswa hanya boleh mengambil satu matakuliah saja.
2.      Setiap matakuliah mempunyai uang kuliah yang standar (tidak tergantung pada mahasiswa yang mengambil matakuliah tsb).

RELASI KURSUS


·         Relasi di atas merupakan sebuah relation yang sederhana dan terdiri dari 3 kolom/attribute
·         Bila diteliti secara seksama, maka akan ditemukan redundancy pada datanya, dimana biaya kuliah selalu berulang pada setiap mhs. Akibatnya besar kemungkinan terjadi Error atau inkonsistensi data, bila dilakukan update terhadap relation tsb yang disebut dengan Anomali
ANOMALY merupakan penyimpangan-penyimpangan atau Error atau inkonsistensi data yang terjadi pada saat dilakukan proses insert, delete maupun update.
Terdapat 3 jenis Anomali :


1.      Insertion Anomali
Error yang terjadi sebagai akibat operasi insert record/tuple pada sebuah  relation contoh :
Ada matakuliah baru (CS-600) yang akan diajarkan, maka matakuliah tsb tidak         bisa di insert ke dalam relation tsb sampai ada mhs yang mengambil                           matakuliah tsb.
2.      Deletion Anomali
Error yang terjadi sebagai akibat operasi delete record/tuple pada sebuah relation Contoh :
Mhs   dengan   student-id   92-425,   memutuskan  untuk  batal  ikut   kuliah  CS-400, karena dia merupakan satu-satunya peserta matakuliah tsb, maka bila                     record/tuple
tsb didelete akan berakibat hilangnya informasi bahwa mata-      kuliah     CS-400,     biayanya 150.
3.      Update Anomali
Error yang terjadi sebagai akibat inkonsistensi data yang terjadi sebagai akibat  dari operasi update record/tuple dari sebuah relation
Contoh :
Bila biaya kuliah untuk matakuliah CS-200 dinaikan dari 75 menjadi 100, maka
harus dilakukan beberapa kali modifikasi terhadap record-record, tuple-tuple   mhs yang mengambil matakuliah CS-200, agar data tetap konsisten.
Berdasarkan teori normalisasi, relation course dipecah menjadi 2 relation terpisah , sebagai berikut :

PROBLEM-PROBLEM PADA RELATION YANG SUDAH DINORMALISASI

° Performance problem
Masalah terhadap performa database
° Referential Integrity Problem
Masalah yang timbul terhadap referensi antar data-data diantara dua tabel      atau lebih

BEBERAPA KONSEP YANG HARUS DIKETAHUI:

a.      Field/ Atribut Kunci
b.      Kebergantungan Fungsi

1.      Key Field / atribute kunci dalam database:

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 satu attribute atau satu set minimal attribute yang mengidentifikasikan secara unik suatu kejadian yang spesifik dari entity.

3.  Primary key

Yaitu satu atribute atau satu set minimal atribute yang tidak hanya mengidentifikasikan secara unik suatu kejadian yang spesifik tapi juga dapat mewakili setiap kejadian dari suatu entity

4.  Alternate key

Yaitu kunci kandidat yang tidak dipakai sebagai primary key

5.  Foreign key

yaitu satu atribute (atau satu set atribute) yang melengkapi satu relationship (hubungan yang menunjukkan ke induknya.

° Super key = S#, SNAME, KODE
° Candidat key = S#, SNAME
° Primary key = S#
° Altenative key = SNAME
° Foreign key = KODE

b.  Ketergantungan Kunci

1.      Ketergantungan Fungsional (Fungsional Dependent)
Keterkaitan antar hubungan antara 2 atribute pada sebuah relasi. Dituliskan dengan cara : A -> B, yang
berarti :
Atribute B fungsionality Dependent terhadap atribute Aatau Isi (value) atribute           A menentukan isi atribute B
Definisi dari functional dependent :
Diketahui sebuah relasi R, atribute Y dari R adalah FD pada atribute X dari R ditulis R.X -> R.Y jika dan hanya jika tiap harga X dalam R bersesuaian dengan tepatsatu harga Y dalam R.

2.      Fully Functionaly Dependent (FFD)

Suatu rinci data dikatakan fully functional dependent pada suatu kombinasi    rinci data jika functional dependent pada kombinasi rinci data dan tidak                       functional dependent pada bagian lain dari kombinasi rinci data.


Definisi dari FDD:
Atribute Y pada relasi R adalah FFD pada atribute X pada relasi R jika Y FD     pada X tida FD pada himpunan bagian dari X
Contoh:

PersonID,                     Project,                       Project_budget Ú

time_spent_byperson_onProject (bukan FFD) PersonID, Project Ú time_spent_byperson_onProject (FDD)
3.      Ketergantungan Partial
Sebagian dari kunci dapat digunakan sebagai kunci utama
4.      Ketergantungan Transitif
Menjadi atribute biasa pada suatu relasi tetapi menjadi kunci pada relasi lain
5.      Determinan
Suatu atribute (field) atau gabungan atribute dimana beberapa atribute lain bergantung sepenuhnya pada atribute tersebut.


LANGKAH - LANGKAH PEMBENTUKAN NORMALISASI:



1. Bentuk tidak normal (Unnormalized Form):
Bentuk ini merupakan kumpulan data yang akan direkam, tidak ada keharusan mengikuti suatu format tertentu. Dapat saja data tidak lengkap atau terduplikasi. Data dikumpulkan apa adanya sesuai dengan saat menginput.


Contoh data :



Ket : PA = Penasehat Akademik
Siswa yg punya nomor siswa, nama, dan PA mengikuti 3 mata pelajaran/kelas. Disini ada perulangan kelas 3 kali ini bukan bentuk 1 NF.
1.   Bentuk Normal Ke Satu (1 NF/First Normal Form)
Suatu relasi 1NF jika dan hanya jika sifat dari setiap relasi atributnya bersifat atomik.
Atom adalah zat terkecil yang masih memiliki sifat induknya, bila dipecah lagi maka ia tidak memiliki sifat induknya.
Ciri-ciri 1 NF :
° Setiap data dibentuk dalam flat file, data dibentuk dalam satu record demi satu record nilai dari field berupa ȃatomic valueÈ„
° Tidak ada set atribute yang berulang atau bernilai ganda
° Tiap field hanya satu pengertian

3.  Bentuk Normal Ke Dua (2 NF /Second Normal Form)
Bentuk normal kedua mempunyai syarat yaitu bentuk data telah memenuhi kriteria bentuk normal kesatu. Atribute bukan kunci haruslah bergantung secara fungsi pada kunci utama/primary key. Sehingga untuk membentuk normal kedua haruslah sudah ditentukan kunci-kunci field. Kunci field haruslah unik dan dapat mewakili atribute lain yg menjadi anggotanya.
Misal :
Dari contoh relasi Siswa pada I NF terlihat bahwa kunci utama/primary key adalah nomor siswa. Nama siswa dan PA bergantung fungsi pada no_siswa, tetapi kode_kelas bukanlah fungsi dari siswa, maka file siswa dipecah menjadi 2 relasi.

Relasi Siswa




dan
Relasi ambil_kelas

No-siswa
Kode_kelas
22890100
1234
22890100
1543
22890101
1234
22890101
1775
22890101
1543

4.  Bentuk Normal Ke Tiga (3 NF / Third Normal Form)
Untuk menjadi bentuk normal ketiga maka relasi haruslah dalam bentuk  normal kedua dan semua atribute bukan primer tidak punya hubungan yang transitif. Dengan kata lain, setiap atribute bukan kunci haruslah bergantung hanya pada primary key dan pada primary key secara menyeluruh.
Contoh pada bentuk normal  kedua di  atas  termasuk juga  bentuk normal  ke tiga karena seluruh atribute yang ada disitu bergantung penuh pada kunci primernya.
5.  Boyce-Codd Normal Form ( BCNF)
BCNF mempunyai paksaan yg lebih kuat dari bentuk normal ketiga. Untuk menjadi BCNF, relasi harus dalam bentuk normal kesatu dan setiap atribute harus bergantung fungsi pada atribute superkey Pada contoh di bawah ini terdapat relasi seminar dengan
ketentuan sbb :
a.  kunci primer adalah no_siswa+seminar.
b.  Siswa boleh mengambil satu atau dua seminar.
c.  Setiap siswa dibimbing oleh salah satu diantara 2 instruktur seminar  tsb.
d.  Setiap instruktur boleh hanya mengambil satu seminar saja. Pada contoh ini no_siswa dan seminar menunjuk seorang instruktur :

Relasi seminar


no_siswa
Seminar
Instruktur
22890100
2281
Si doel
22890101
2281
Pak tile
22890102
2291
Mandra
22890101
2291
Basuki
22890109
2291
Basuki

Bentuk relasi seminar adalah bentuk normal ketiga, tetapi tidak BCNF karena nomor seminar masih bergantung fungsi pada instruktur, jika setiap instruktur dapat mengajar hanya pada satu seminar. Seminar bergantung fungsi pada satu atribute bukan superkey seperti yg disyaratkan oleh BCNF. Maka relasi seminar haruslah dipecah menjadi dua yaitu :


Relasi pengajar


6.      Bentuk Normal Ke Empat (4 NF)
Relasi R adalah bentuk 4 NF jika dan hanya jika relasi tersebut juga termasuk BCNF dan semua ketergantungan multivalue adalah juga ketergantungan fungsional

7.      Bentuk Normal Ke Lima (5 NF)

Disebut  juga  PJNF  (Projection  Join  Normal  Form)  dari   4   NF  dilakukan  dengan menghilangkan ketergantungan join yang bukan merupakan kunci kandidat.


KASUS PENERAPAN NORMALISASI


PT. SANTA PURI                              FAKTUR PEMBELIAN BARANG
Jalan senopati 11 Yogyakarta

Kode Suplier    : G01                                                  Tanggal : 05/09/2000 Nama Suplier : Gobel Nustra Nomor                                               : 998
Kode
Nama Barang
Qty
Harga
Jumlah
A01
AC SPLIT ½ PK AC SPLIT 1 PK
10.0
10.0
135,000
200,000
1,350,000
2,000,000

Total Faktur
3,350,000
Jatuh tempo faktur : 09/09/2000

1.           Step 1 bentuk unnormalized




2.  Step 2 bentuk 1 NF

3.      Step 3 bentuk 2 NF

4.      Step IV Bentuk 3 NF


Latihan
Buatlah bentuk Normalisasi dari dokumen berikut ini :
Kartu pengobatan masyarakat
No Pasien : 1234/PO/IV/99                                                  Tanggal Pendaftaran : 1 Mei 1999
Data Pasien dari, NOPEN : 1000019999                             Nama Pasien : Bachtiar Jose
Alamat Pasien, Jalan : Kebon Jeruk No. 27                         Kelurahan : Palmerah
Kecamatan : Kemanggisan                                                   Wilayah : Jakarta Barat
Kode Pos :11530                                                                    Telepon : 5350999









ALJABAR RELATIONAL


BAHASA QUERY FORMAL


Adalah kumpulan operasi terhadap relasi, dimana setiap operasi menggunakan satu atau lebih relasi untuk menghasilkan satu relasi yang baru


Tidak ada komentar:

Posting Komentar