Jumat, 30 Januari 2009

RELASI DAN HIMPUNAN RELASI


Relasi menunjukkan adanya hubungan diantara sejumlah entitas yang berasal dari himpunan entitas yang berbeda. Misalnya, entitas seorang mahasiswa dengan nim =’2007104024’ dan nama_mhs =’gogol’ (yang ada di himpunan entitas mahasiswa) mempunyai relasi dengan entitas sebuah mata kuliah dengan kode_kul = ‘SI-07’ dan nama_kul =’basis data’. Relasi di antara kedua entitas tadi mengandung arti bahwa mahasiswa tersebut sedang mengambil/mempelajari mata kuliah tersebut di sebuah perguruan tinggi yang kita tinjau.


Sabtu, 24 Januari 2009

KARDINALITAS/DERAJAT RELASI


Kardinalitas relasi menunjukkan jumlah maksimum entitas yang dapar berelasi dengan entitas pada himpunan entitas yang lain.

1. satu ke satu (one to one)

yang berarti setiap entitas pada himpunan entitas A berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas B, dan begitu juga sebaliknya setiap entitas pada himpunan entitas B berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas A

2. satu ke banyak (one to many)

yang berarti setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B, tetapi tidak sebaliknya, dimana setiap entitas pada himpunan entitas B berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas A.

3. banyak ke satu (many to one)

yang berarti setiap entitas pada himpunan entitas A berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas B, tetapi tidak sebaliknya, dimana setiap entitas pada himpunan entitas A berhubungan dengan paling banyak satu entitas pada himpunan entitas B

4. banyak ke banyak (many to many)

yang berarti setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B dan demikian juga sebaliknya, dimana setiap entitas pada himpunan entitas B dapat berhubungan dengan banyak entitas pada himpunan entitas A.

DIAGRAM ENTITY-RELATIONSHIP (DIAGRAM E-R)


Model entity relationship yang berisi komponen-komponen himpunan entitas dan himpunan relasi yang masing-masing dilengkapi dengan atribut-atribut yang merepresentasikan seluruh fakta dari dunia nyata yang kita tinjau, dapat digambarkan dengan lebih sistematis dengan menggunakan diagram E-R.

1. Relasi satu ke satu (one to one)

2. Relasi satu ke banyak (one to many)

3. Relasi banyak ke banyak (many to many)


Minggu, 18 Januari 2009

DEKOMPOSISI HIMPUNAN ENTITAS DAN NORMALISASI


Sebuah himpunan entitas yang ada dalam sebuah diagram E-R dapat kita dekomposisi menjadi beberapa himpunan entitas baru karena pertimbangan dan efisiensi ruang penyimpanan atau karena pertimbangan kemudahan/kecepatan pengaksesan data. Upaya dekomposisi ini senantiasa akan menghasilkan satu himpunan entitas kuat dan satu atau beberapa himpunan entitas lemah atau sub entitas.
Secara umum ada dua bentuk dekomposisi himpunan entitas, yaitu :
1. Dekomposisi atribut (dekomposisi vetikal)
Dekomposisi ini dilakukan dengan cara membagi sebuah himpunan entitas menjadi dua atau lebih dengan pemisahan atribut.
2. Dekomposisi entitas (dekomposisi horisontal)
Dekomposisi ini dilakukan dengan cara membagi sebuah himpunan entitas menjadi dua atau lebih dengan pemisahan entitas.
FLEKSIBILITAS
Dalam perancangan basis data perlu adanya fleksibilitas. Faktor ini memang bukan faktor utama, tetapi sering kali pula menjadi salah satu parameter untuk menentukan bagus tidaknya sebuah desain basis data. Fleksibilitas dalam desain basis data dapat direalisasikan dalam bentuk :
1. Penambahan atribut
2. Pemilihan domain atribut yang lebih luas
3. Generalisasi
4. Perubahan struktur entitas dari yang berorientasi kolom menjadi berorientasi baris


HIMPUNAN ENTITAS LEMAH


Himpunan entitas lemah berisi entitas-entitas yang kemunculannya tergantung pada eksistensinya dalam sebuah relasi terhadap entitas lain (strong entity). Himpunan entitas yang demikian biasanya tidak memiliki atribut yang dapat berfungsi sebagai key, yang benar-benar dapat menjamin keunikan entitas di dalamnya.
SUB ENTITAS
Sub entitas merupakan himpunan entitas yang beranggotakan entitas-entitas yang merupakan bagian dari himpunan entitas yang lebih superior/utama. Sub entitas ini merupakan hasil dari dekomposisi (spesialisasi) himpunan entitas berdasarkan pengelompokan tertentu.
VARIAN RELASI
Relasi yang terjadi diantara dua himpunan entitas yang berbeda disebut sebagai relasi biner (binary relation), yang merupakan relasi yang paling sering umum di gunakan. Semua relasi yang ditunjukkan pada contoh-contoh sebelumnya merupakan contoh relasi biner. Namun demikian, ada kalanya kita juga menggunakan relasi yang hanya menggunakan relasi yang hanya melibatkan sebuah himpunan entitas atau lebih dari dua himpunan entitas.
1. Relasi tunggal (unary relation)
Relasi tunggal merupan relasi yang terjadi dari sebuah himpunan entitas ke himpunan entitas yang sama.
2. Relasi multi entitas (N-ary relation)
Relasi multi entitas merupakan relasi dari tiga himpunan entitas atau lebih. Bentuk relasi semacam ini sedapat mungkin dihindari, karena akan mengaburkan derajat relasi yang ada dalam relasi tersebut.
3. Relasi ganda (redundant relation)
Ada kalanya, relasi yang muncul antara dua himpunan entitas tidak hanya satu relasi, tetapi ada lebih dari satu relasi. Relasi demikian disebut relasi ganda.


MODEL DATA LANJUTAN VARIAN ENTITAS


Idealnya, himpunan entitas yang kita libatkan dalam sebuah diagram E-R adalah himpunan entitas kuat/bebas. Himpunan entitas demikian tidak memiliki ketergantungan dengan himpunan entitas lainnya. Himpunan entitas mahasiswa, dosen dan kuliah sebagaimana yang telah ditunjukkan pada bab sebelumnya dapat digolongkan sebagai himpunan entitas kuat, yang masing-masing dapat berdiri sendiri. Sebagai himpunan entitas yang kuat/bebas, kemunculan entitas-entitas di dalam nya tidak tergantung pada keberadaan entitas di himpunan entitas yang lain. Ketiga himpunan entitas tersebut juga bukan merupakan bagian (sub) dari himpunan entitas yang lain.
Namun demikian, dalam pembuatan diagram E-R kita tidak selalu dapat melibatkan himpunan entitas seperti itu. Ada kalanya kita juga melibatkan himpunan entitas yang lemah atau merupakan bagian dari himpunan entitas yang lainnya


TAHAPAN PEMBUATAN DIAGRAM E-R


1. Tahap pembuatan diagram E-R awal
• Mengidentifikasi dan menetapkan seluruh himpunan entitas yang akan terlibat
• Menentukan atribut-atribut key dari masing-masing himpunan entitas
• Mengidentifikasi dan menetapkan seluruh himpunan relasi diantara himpunan entitas-himpunan entitas yang ada beserta foreign key
• Menentukan derajat/kardinalitas relasi untuk setiap himpunan relasi
• Melengkapi himpunan entitas dan himpunan relasi dengan atribut-atribut deskriptif
2. Tahap optimasi diagram E-R

DIAGRAM E-R DENGAN KAMUS DATA
Obyektif utama dari pembuatan diagram E-R adalah untuk menunjukkan objek-objek (himpunan entitas) apa saja yang ingin dilibatkan dalam sebuah basis data dan bagaimana hubungan yang terjadi diantara objek-objek tersebut. Pada sebuah sistem yang ruang lingkupnya lebar dan kompleks, penggambaran atribut-atribut dalam sebuah diagram E-R sering kali malah mengganggu objektif yang ingin dicapai tersebut. Kita dapat memisahkan pendeklarasian atribut-atribut ini dari diagram E-R dan menyatakannya dalam sebuah kamus data. Kamus data berisi daftar atribut yang di apit kurung kurawal (‘{‘ dan ‘}’). Atribut yang berfungsi sebagai key juga dibedakan dengan atribut yang bukan key dengan menggaris bawahi atribut tersebut.


Kamus data :
• Mahasiswa = {nim, nama_mhs, alamat_mhs, tgl_lhr}
• Kuliah = {kode_kul, nama_kul, sks, semester}
• Dosen = {nama_dos, alamat_dos}
• Mempelajari = {nim, kode_kul, indeks_nilai}
• Mengajar = {kode_kul, nama_dos, waktu, tempat}


Jumat, 16 Januari 2009

MODEL DATA


Model data dapt didefinisikan sebagai perangkat knseptual untuk menggambarkan data, hubungan data, semantic (makna) data dan batasan data.

Ada 2 cara dalam mempresentasikan model data :

1. Model lojik data berdasarkan objek yang terdiri dari :

o Model keterhubungan entitas

o Model berorientasi objek

o Model data semantic

o Model data fungsional

2. Model lojik berdasarkan record

o Model relasional

o Model hirarkis

o Model jaringan

Namun dari sekian banyak model data diatas,model data yang paling popular digunakan dalam perancangan basis data adalah model keterhubungan entitas. Semesta data yang ada di dunia nyata diterjemahkan atau ditransformasikan dengan memanfaatkan sejumlah perangkat konseptual menjadi sebuah diagram data, yang umum disebut sebagai diagram entity relationship (diagram E-R)

BOYCE-CODD NORMAL FORM (BCNF)


Untuk mendapatkan table yang baik adalah dengan menerapkan BCNF. Sebuah table dikatakan berada dalam BCNF jika untuk semua KF engan notasi X Y, maka X harus merupakan super key pada table tersebut. Jika tidak demikian, maka table tersebut harus didekomposisi berdasarkan KF yang ada, sedemikian sehingga X menjadi super key dari table-tabel hasil dekmposisi.

nama_dosen

alamat_dosen

Ir.opank

Bode sari no 5005

Adit s.pg

Palimanan no 556 cirebon

Beli s.teh

Sisiampel ja no 212 ambon

KF dari table ini adalah : nama_dosen alamat_dosen. Table ini telah memenuhi BCNF, karena (nama_dosen) merupakan super key dari table tersebut.

KETERGANTUNGAN FUNGSIONAL


Diberikan sebuah table T berisi paling sedikit 2 buah atribut, yaitu A dan B. kita dapat menyatakan notasi berikut ini :

A B

Yang berarti A secara fungsional menentukan B atau B secara fungsional tergantung pada A.

mata_kuliah

NIM

nama_mahasiswa

indeks_nilai

Struktur data

2007104001

bedul

A

Struktur data

2007104002

sopo keh

B

Basis data

2007104001

Bedul

Basis data

2007104024

gogol

Basis data

2007104003

Mr bean

Bahasa Indonesia

2007104001

Bedul

B

matematika

2007104024

Gogol

C

Dengan melihat data diatas (dengan asumsi bahwa data tersebut memadai) dan dengan pertimbangan intuisi kita, maka KF yang dapat kita ajukan adalah :

a. Nim nama_mahasiswa

Yang berarti bahwa atribut nama_mahasiswa hanya tergantung pada atribut nim. Hal ini dibuktikan dari fakta : untuk setiap niali nim yang sama maka pasti nilai nama_mahasiswa nya juga sama.

b. Mata_kuliah indeks_nilai

Yang berarti bahwa atribut indeks_nilai tergantung paa atribut nama_kuliah dan nim secara bersama-sama. Memang kita tidak dapat menunjukkan fakta, bahwa untuk setiap nilai nama_kuliah dan nim yang sama, maka nilai indeks_nilai nya juga sama, karena (nama_kuliah, nim) merupakan key (sehingga bersifat unik) untuk table tersebut. Akan tetapi, KF tersebut sesuai dengan pengertian bahwa setiap indeks nilai di peruntukkan pada mahasiswa tertentu untuik mata kuliah tertentu yang diambilnya.

Rabu, 14 Januari 2009

MACAM-MACAM KEY DAN ATRIBUT


Pada dasar nya, key adalah satu atau gabungan dari beberapa atribut yang dapat membedakan dari setiap baris data (row) dalam table secara unik.
Macam-macam key :
1. Super key
Merupakan satu atau lebih atribut (kumpulan atribut) yang dapat membedakan setiap baris data dalam sebuah tabel secara unik.
2. Candidat key
Merupakan kumpulan atribut minimal yang dapat membedakan setiap baris data dalam sebuah table secara unik.
3. Key primer
4. Foreign key
5. Composite key
Macam-macam atribut :
1. Atribut deskriptif. Merupakan atribut-atribut yang tidak menjadi atau merupakan anggota dari key primer.
2. Atribut sederhana. Atribut atomic yang tidak dapat dipilah lagi.
3. Atribut komposit. Merupakan atribut yang masih dapt diuraikan lagi menjadi sub-sub atrbut yang masing-masing memiliki makna.
4. Atribut bernilai tunggal. Ditujukan pada atribut-atribut yang memiliki paling banyak satu nilai untuk setiap baris data.
5. Atribut bernilai banyak. Ditujukan pada atribut-atribut yang dapat kita isi lebih dari satu nilai tetapi jenisnya sama.
6. Atribut harus bernilai. Sejumlah atribut pada sebuah table yang kita tetapkan harus berisi data, dan nilai nya tidak boleh kosong.
7. Atribut turunan. Atribut yang nilai-nilainya diperoleh dari pengolahan atau dapat diturunkan dari atribut atau table lain yang berhubungan.


NORMALISASI DATA


Perancangan basis data diperlukan, agar kita bias memiliki basis data yang kompak dan efisien dalam penggunaan ruang penyimpanan, cepat dalam pengaksesan, dan mudah dalam pemanipulasian (tambah, hapus, ubah, dll) data. Dalam merancang basis data, kita dapat melakukannya dengan :
1. Menerapkan normalisasi terhadap struktur table yang telah diketahui
2. Langsung membuat table entity-relationship
Normalisasi sendiri merupakan cara pendekatan lain dalam membangun desain lojik basis data relasional yang tidak secara langsung berkaitan dengan model data, tetapi dengan menerapkan sejumlah aturan dan criteria standar untuk menghasilkan struktur table yang normal.
Dalam pendekatan normalisasi, perancang atau desainer basis data bertitik tolak dari situasi yang nyata. Ia telah memiliki item-item data yang siap ditempatkan dalam baris dan kolom pada table-tabel relasional. Sementara pendekatan kedua, dengan langsung membuat moel data lebih tepat dilakukan jika yang telah diketahui baru prinsip-prinsip system secara keseluruhan.


RELASI ANTAR TABEL


Contoh table nilai
mata_kuliah NIM nama_mahasiswa indeks_nilai
Struktur data 2007104001 bedul A
Struktur data 2007104002 sopo keh B
Basis data 2007104001 Bedul 
Basis data 2007104024 gogol 
Basis data 2007104003 Mr bean 
Bahasa Indonesia 2007104001 Bedul B
matematika 2007104024 Gogol C

Yang dapat disimpulkan dari data nilai tersebut adalah :
1. Data nilai merepresentasikan adanya relasi antara data mahasiswa dengan data kuliah untuk menunjukkan mata kuliah yang diambil oleh mahasiswa dan indeks nilai yang diperoleh mahasiswa yang diperoleh mahasiswa untuk mata kulaih yang diikutinya.
2. Seorang mahasiswa dapat mengambil beberapa mata kuliah atau tidak mengikuti mata kuliah apapun (misalnya : mahasiswa bernama bedul mengambil 3 mata kuliah dan mahasiswa bernama bagonk yang tidak terlihat menunjukkan ia tidak kuliah apapun.
3. Satu mata kuliah dapat diikuti oleh beberapa mahasiswa (misalnya : mata kuliah struktur data diikuti 2 mahasiswa, basis data diikuti 3 mahasiswa).
4. 3 mata kuliah sudah mempunyai data indeks nilai dan ada 1 mata kulaih (basis data) belum mempunyai data indeks nilai (datanya masih kosong).


BASIS DATA RELASIONAL


Pada model relasional, basis data akan disebar (dipilah-pilah) ke dalam berbagai table 2 dimensi. Setiap table selalu terdiri dari lajur mendatar yang disebut dengan baris data (row/record) dan lajur vertical yang biasa disebut engan kolom (column/field). Disetiap pertemuan baris data dan kolom itulah item-item data (satuan data terkecil) ditempatkan. Dalm kehidupan kita sehari-hari. Table merupakn bentuk natural (alamiah) dalam menyatakan fakta/data yang sering kita gunakan.
Contoh table
Table mahasiswa
NIM Nama Mahasiswa Alamat Tgl Lahir
2007104024 Gogol Setu jero 04 juni 1986
2007104003 Mr.bean Grewal 00 juli 1988
2007104001 Bedul Sindang laut 32 mei 1989
2007104009 bagonk plumbon 40 april 1990

Table dosen
nama_dosen alamat_dosen
Ir.opank Bode sari no 5005
Adit s.pg Palimanan no 556 cirebon
Beli s.teh Sisiampel ja no 212 ambon



ABSTRAKSI DATA


1. Level fisik (physical level)
Merupakn level terendah dalam abstraksi dataq yang menunjukan bagaimana sesungguhnya data disimpan. Pada level ini pemakai melihat data sebagai gabungan dari struktur dan datanya sendiri.
2. Level lojik/konseptual (conceptual level)
Merupakan level berikutnya dalam abstraksi data yang menggambarkan data apa yang sebenarnya (secara fungsional) disimpan dalam basis data dan hubungan nya dengan data yang lain.
3. Level penampakan (view level)
Merupakan level tertinggi dari abstrksi data yang hanya menunjukan sebagian dari basis data. Banyak user dalam sistem basis data tidak akan terlibat (concern) dengan semua data/informasi yang ada/disimpan. 


Senin, 12 Januari 2009

BAHASA BASIS DATA


1. Data definition language (DDL)

o Membuat table baru

o Membuat indeks

o Mengubah table

o Menentukan struktur penyimpanan table

2. Data manipulation language (DML)

o Penyisipan/penambahan data baru ke suatu basis data (insert)

o Penghapusan data dari suatu basis data (delete)

o Pengubahan data di suatu basis data (update)

o Menampilkan data (select)

3. Data control language (DCL)

DCL terdiri atas sekelompok perintah SQL untuk memberikan hak otoritas mengakses database, mengalokasika space, pendefinisian space, dan pengauditan penggunaan database. Beberapa perintah ini merupakan fungsi dari DBA (database administrator).

Perintah SQL DCL : commit, rollback, grant, revoke

Secara umum DCL merupakan bahasa yang digunakan untuk melakukan pengelolaan pemakai yang dapat melakukan akses dan manipulasi database, terutama perintah grant dan revoke

SISTEM BASISDATA WEB


System Basisdata Web adalah system terdistribusi yang berbasis hypertext. Dokumen-dokumen yang menjadi unsure utama didalam web dinyatakan dalam beberapa type. Type yang paling popular adalah dokumen hypertext yang disusun menurut bahasa khusus seperti HTML (Hypertext Markup Language). Dokumen HTML terdiri dari text, spesifikasi jenis huruf dan instruksi format lainnya didalamnya juga dibuat hyperlink dengan audio maupun image.

KOMPONEN SISTEM BASISDATA

1. Perangkat keras (hardware)

o Computer

o Memory sekunder yang online (harddisk)

o Memory sekunder yang ofline (flashdisk dll)

o Media/perangkat komunikasi

2. System operasi (operating system)

o Ms-dos

o Ms-windows 3.1

o Ms-windows 95

o Ms-windows 98

o Ms-windows 2000

o Ms-windows xp

o Ms-windows vista

o Ms windows 2000 server

o Linux

o Sun-solaris

3. Basis data (database)

Berisi table/file, indeks, dll

4. System (aplikasi/perangkat lunak) pengelola basisdata (DBMS)

o Dbase III+

o Dbase IV

o Foxbase

o Rbase

o Ms-access

o Borland-paradox

o Borland-interbase

o Oracle

o Mysql

o Ms-sql server

5. Pemakai (user)

o Programmer aplikasi

o User mahir

o User umum

o User khusus

6. Aplikasi lain yang bersifat optional

o Visual basic

o Power builder

o C++

o Java

o Php

o delphi