Proses normalisasi adalah suatu teknik
untuk mengorganisasi data ke dalam tabel-tabel yang menunjukkan
entitas dan relasinya untuk memenuhi kebutuhan pamakai di dalam suatu
organisasi.
Tujuan Normalisasi:
Untuk
menghilangkan kerangkapan data
Untuk
mengurangi kompleksitas
Untuk mempermudah
pemodifikasian data
Asumsi Proses Bisnis:
1.Setiap pegawai hanya ditempatkan di satu
kantor cabang
2.Pegawai yang memiliki jabatan yang sama bisa
mendapatkan gaji yang berbeda
3.Desain tidak membicarakan
kemungkinan mutasi pegawai dari satu cabang ke cabang
lainnya
Primary Key : NIK
Ketergantungan
fungsional:
Tabel
di atas sudah memenuhi bentuk normal 1 (1NF) dan bentuk normal 2
(2NF), tetapi belum memenuhi bentuk normal 3 (3NF) karena masih
terdapat ketergantungan transitif yaitu antara kd_cabang dengan
almt_cbg serta antara kd_cabang dengan no_telp, dimana almt_cbg
tergantung secara fungsional pada kd_cabang dan no_telp juga
bergantung secara fungsional terhadap kd_cabang. Dengan demikian
diagram relationship yang dapat dibentuk berdasarkan studi kasus dari
tabel di atas adalah:
ERD
adalah suatu pemodelan dari basisdata relasional yang didasarkan atas
persepsi di dalam dunia nyata, dunia ini senantiasa terdiri dari
sekumpulan objek yang saling berhubungan antara satu dengan yang
lainnya. Suatu objek disebut entity dan hubungan yang dimilikinya
disebut relationship.menjadi mentalist Suatu entity bersifat unik dan
memiliki atribut sebagai pembeda dengan entity lainnya. Contoh :
entity Mahasiswa, mempunyai atribut nama, umur, alamat, dan nim.
•
Diamon,
menggambarkan hubungan antara himpunan entitas
•
Garis, yang
menghubungkan antar objek dalam diagram E-R,
Di
dalam pembuatan diagram E-R perlu diperhatikan penentuan sesuatu
konsep apakah merupakan suatu entity, atribut atau relationship.
Tipe Entity
Entity dapat berupa obyek secara fisik seperti orang, rumah, atau
kendaraan. Entity dapat pula berupa obyek secara konsep seperti
pekerjaan , perusahaan, dan sebagainya.
Tipe entity merupakan
sekumpulan obyek dalam dunia nyata yang mempunyai properti yang sama
atau berasal dari entity yang sejenis. Terdapat dua tipe Entity,
Entity Kuat dan Entity Lemah. Entity kuat adalah entity yang
keberadaanya tidak tergantung pada entity lain,. Sedangkan Entity
Lemah keberadaanya tergantung pada entity
Entity disajikan dalam
bentuk persegi panjang, entity kuat disajikan dengan perseg panjang
dengan satu garis, sedangkan entity lemah disajikan dengan persegi
panjang dobel .
ATRIBUT
Atribut adalah karakteristik dari entity atau relationship, yang
menyediakan penjelasan detail tentang entity atau relationship
tersebut. Nilai Atribut merupakan suatu data aktual atau informasi
yang disimpan pada suatu atribut di dalam suatu entity atau
relationship. Atribut digambarkan dalam bentuk oval.
Dibawah
ini adalah sebuah contoh ERD
:
Keterangan :
• Nomor Account dan sisa uang merupakan suatu
atribut yang mendeskripsikan entitas account.
• Nasabah sebagai
entitas dideskripsikan oleh atribut nama dan alamat.
• Account
dan nasabah sebagai entitas memiliki relasi yang dihubungkan oleh
cust_acc yang memiliki atribut tanggal transaksi suatu nasabah
terhadap accountnya.
Kardinalitas Relasi
ERD yang mempersentasikan suatu basisdata
relasional senantiasa memiliki relasi-relasi dari sejumlah entitas
yang dapat ditentukan banyaknya. Banyaknya suatu relasi yang dimiliki
oleh suatu relasi entitas disebut derajat relasi. Derjat relasi
maksimum disebut dengan kardinalitas sedangkan derajad minimum
disebut dengan modalitas. Kardinalitas yang terjadi diantara dua
himpunan entitas (misal A dan B) dapat berupa:
• One to One,
satu record dipetakan dengan satu record di entitas lain. Contoh:
satu nasabah punya satu account.
• One to Many, Satu record dapat dipetakan menjadi beberapa
record di entitas lain. Contoh: satu nasabah dapat punya lebih dari
satu account.
• Many to Many, Beberapa record dapat dipetakan menjadi beberapa
record di entitas lain. Contoh: satu nasabah dapat memiliki lebih
dari satu account. Satu account dapat dimiliki lebih dari satu
nasabah (join account).
ENTITAS RELATIONSHIP DIAGRAM
(ERD)
Definisi Entity Relational Diagram
(ERD)
Penyajian
data dengan menggunakan Entity dan relationship
1.Entity
-Entity
adalah objek yang dapat dibedakan dalam dunia nyata
-Entity
Set adalah kumpulan dari entity yang sejenis
-Entity
Set dapat berupa :
oObjek
secara Fisik: Rumah, kendaraan, Peralatan
oObjek
secara konsep: Pekerjaan, Perusahaan, Rencana
2.Atribut
Karakteristik
dari Entity
atau
relationship,
yang menyediakan penjelasan detail tentang entity
atau relationship
tersebut.
รพJenis Atribut:
-Nilai Atribut :
Data actual atau informasi yang disimpan pada suatu atribut di dalam
suatu entity atau relationship
-Key
Atribut yang digunakan untuk menentukan suatu Entity secara
unik
-Atribut Simple
Atribut yang bernilai tunggal
Contoh:
-Atribut Multivalue
Atribut yang memiliki sekelompok nilai untuk setiap instant Entity
Atribut :
Atribut Multivalue
-Atribut composite
Suatu atribut yang terdiri dari beberapa atribut yang lebih kecil
yang mempunyai arti tertentu
-Atribut Derivatif
Suatu
atribut yang dihasilkan dari atribut yang lain.
3.Relationship
-Definisi:
Hubungan yang terjadi antara satu atau lebih entity. -Relationship Set:
Kumpulan Relationship yang sejenis -Derajat dari Relationship:
Menjelaskan jumlah Entity yang berpartisipasi dalam suatu
Relationship Unary
Degree (Derajat Satu) Binary
Degree (Derajat Dua) Ternary
Degree (Derajat Tiga)
4.Cardinality Ratio Constraint
Definisi :Menjelaskan
batasan Jumlah keterhubungan satu Entity
dengan Entity
lainnya.
Sebuah
sistem manajemen basis data relasional atau dalam bahasa
Inggrisnya dikenal sebagai relational
database management system (RDBMS)
adalah sebuah program
komputer (atau secara lebih tipikal adalah seperangkat program
komputer) yang dirancang untuk mengatur/memanajemen sebuah basis data
sebagai sekumpulan data yang disimpan secara terstruktur, dan
melakukan operasi-operasi atas data atas permintaan penggunanya .
1.2.PENGENALAN
DB2
Juni
1970, Dr. Edgar F. Codd mempublikasikan sebuah paper “entitled A
Relational Model of Data
for
Large Shared Data Banks” yang disponsori IBM yang akhirnya sebagai
cikal bakal RDBMS
(Relational
Database Management Systems)
�� IBM
membuat bahasa untuk memanipulasi penyimpanan data dengan model Codd
(SEQUEL = Structure English Query Language, yang akhirnya di
plesetkan orang Inggris jadi SQL = Structured
Query
Language)
�� 1979,
Relational Software, Inc (sekarang dikenal sebagai Oracle
Corporation) merilis implementasi
SQL
a.Pengertian
DB2
DB2
adalah software yang mempunyai sejarah yang cukup lama, dan merupakan
database pertama yang menggunakan SQL.
DB2
adalah keluarga sistem manajemen database relasional (RDBMS) produk
dari IBM yang melayani sejumlah sistem operasi yang berbeda platform.
Menurut IBM, DB2 memimpin dalam hal pangsa pasar database dan
kinerja. Meskipun produk DB2 yang ditawarkan untuk sistem berbasis
UNIX dan sistem operasi komputer pribadi, DB2 jejak produk database
Oracle dalam sistem berbasis UNIX dan Microsoft Access.
b.Perkembangan
DB2
-Akhir
tahun 70-an = Riset penyusunan teknologi relasional.
-tahun
80-an = Program DB2 untuk VM. VSE, MVS, AS/400, OS/2.
-Tahun
90-an = Produk DB2 untuk AIX, HP-UX, SOLARIS, NT, SINIX
c.Kelebihan
kelebihan DB2
Dapat
dijalankan pada bermacam-macam platform Menunjang client/server
platform, aplikasi multimedia, object oriented.
Dirancang
untuk memperoleh informasi dalam bisnis berskala kecil maupun besar.
Memiliki
alat yang mengizinkan user membuat macam-macam aplikasi untuk
mengakses dan bekerja dengan data. Memenuhi kebutuhan bisnis untuk
aplikasi-aplikasi baru.
d.DB2
Product family
Produk-produk
DB2 yang dijalankan pada OS/2 dan platform yang
berhubungan dengan produk tersebut dikenal sebagai versi DB2 Common
Server. Hal ini untuk membedakan bahwa produk-produk tersebut dapat
dijalankan pada platform yang sejenis, yang berisikan fungsi produk
yang serupa dan menggunakan bersama source code yang sama.
Produk-produk DB2
Common Server merupakan client/server RDBMS untuk server IBM dan
server non IBM, dan workstation yang berisikan fungsi-fungsi dimana
aplikasi dapat dijalankan pada lingkungan client yang luas,
fungsi-fungsi untuk menyimpan dan mengelola data, dan gateway yang
mengizinkan pengaksesan data dengan SQL pada lingkungan yang
heterogen.
e.
DB2 UTILITY
Digunakan
untuk menjalankan fungsi-fungsi system administrasi yang berbeda,
seperti loading tables, recover, repairing data, serta monitoring dan
tuning sistem DB2.
Utilitas
terbagi dalam 3 kategori :
Utilitas
Setup atau move, berfungsi memuat data kedalam tabel dan
sebaliknya.Terdiri dari 2 fungsi : Load dan Uload
Utilitas
Maintenance, berfungsi mengatur kembali tabel space atau index,
memperoleh kembali ruang yang telah dihapus, memperbaiki statistik
yang disimpan pada DB2 catalog. Terdiri dari 2 fungsi : Reorganize
dan update.
Utilitas
Recovery, untuk menempatkan kembali basis data pada keadaan
sekarang. terdiri dari 2 fungsi, yaitu : backup dan reco
1.3.PENGENALAN
ORACLE
a.Computing
Model Oracle
Oracle
Corporation mengeluarkan produk Oracle 10g berbasis grid computing.
Grid computing adalah arsitektur TI baru yang menghasilkan sistem
informasi perusahaan yang berbiaya rendah dan lebih adaptif terhadap
dinamika bisnis. Dengan grid computing, sejumlah komponen hardware
dan software yang modular dan independen akan dapat dikoneksikan dan
disatukan untuk memenuhi tuntutan kebutuhan bisnis. Lebih jauh, dari
sisi ekonomi, implementasi grid computing berarti membangun pusat
komputasi data yang tangguh dengan struktur biaya variatif yang bisa
disesuaikan dengan kebutuhan.
Dalam
mengadopsi grid computing, perusahaan tidak perlu mengambil langkah
secara revolusioner, karena aplikasi yang sebelumnya telah dijalankan
akan tetap bekerja seperti sebelumnya. Dan dimungkinkan pula untuk
mengadopsi teknologi grid computing pada aplikasi yang telah
dijalankan, bahkan tanpa memerlukan banyak penulisan ulang
konfigurasi sistem.
b.Overview
perintah SQL
Perintah
untuk mengambil/menampilkan data
dari satu atau lebih tabel dengan kriteria
SQL
singkatan dari Structured Query Language. SQL adalah bahasakomputer
yang standart untuk mengakses dan memanipulasi database.Seluruh
aplikasi database yang beredar di pasaran, baik yang gratismaupun
yang berlisensi, mengadopsi bahasa SQL untuk mengolahdatabasenya.
Beberapa SQL command
atau perintah SQL yang harus diketahui adalah :
CREATE
DATABASE, untuk membuat sebuah database.
DROP
DATABASE, untuk menghapus sebuah database.
CREATE
TABLE, untuk membuat sebuah table.
ALTER
TABLE, untuk memodifikasi sebuah table.
DROP
TABLE, untuk menghapus sebuah table.
SELECT,
untuk menampilkan data dari database
UPDATE, untuk memodifikasi data dari database
INSERT INTO, untuk menambah data di database.
DELETE,
untuk menghapus data dari database
1.2.
PENGELOMPOKAN SQL
1.
DDL (Data Definition Language) DDL
merupakan bagian dari SQL yang digunakan untuk mendefenisikan data
dan proyek database. Perintah digunakan untuk mendefenisikan suatu
proyek, yaitu membuat, mengubah, menghapus dan memberikan
izin. Beberapa perintah pada SQL yang temasuk DDL, seperti
: Create
Table
untuk Membuat TabelCreate
Index
untuk Membuat IndexCreate
View
untuknMembuat ViewAlter
Table
untuk Mengubah atau menyisipkan ke dalam tabelDrop
Table
untuk Menghapus Tabel
Drop
Index
untuk Menghapus IndexDrop
View
untuk Menghapus ViewGrant
untuk Memberi izin akses kepada user 2.
DML (Data Manipulation Language) DML
merupakan bagian dari SQL yang digunakan untuk memanipulasi data.
Perintah-perintah ini bertugas untuk melakukan query dan perubahan
yg dilakukan dalam suatu tabel Beberapa perintah SQL yang
termasuk DML, Seperti :Select
diigunakan
untuk memilih data dari suatu tabel atau viewInsert
digunakan
untuk Menyisipkan baris dari suatu tabelDelete
digunakan
untuk Menghapus baris dari suatu tabel UpDate
digunakan
untuk Mengubah isi dari kolom (field) pada suatu tabelCommit
digunakan
untuk Menuliskan perubahan ke dalam diskRollback
dingunakan
untuk Membatalkan perubahan yang dilakukan setelah perintah Commit
yang berakhir.
3.
DCL
atau Data
Control Language
DCL
atau Data control Languange adalah perintah SQL yang berhubungan
dengan manipulasi user dan hak akses (priviledges). Perintah SQL
yang termasuk dalam DCL antara lain :
GRANT
REVOKE
1.3.
CONTOH KASUS
A.
DATA DEFINITION LANGUAGE (DDL) :
Digunakan
untuk mendefinisikan data dengan menggunakan perintah :
create,drop, alter.Komponen
– komponen
yang ada di dalam data definition language (DLL)
CREATE
TABLE
Fungsi
: membuat tabelContoh :CREATE TABLE PERSONEL(REGNO CHAR(10) NOT
NULL,NAME CHAR(45) NOT NULL,ADDRESS CHAR(45),BIRTH DATE NOT NULL
WITH DEFAULT,PRIMARY KEY (REGNO))
MODIFY
TABLE
Fungsi:
membuat nama teble baru
DROP
TABLE
Fungsi
: menghapus indexSintaks :DROP INDEX indexnameContoh :DROP INDEX
PRSONIDX
Arsitektur Basis data merupakan suatu kumpulan data yang
tersimpan secara sistematik dimana user dapat melihat data dan bagaimana cara
user melihat data tersebut.Arsitektur ini juga berfungsi memberikan kerangka
kerja bagi pembangunan basis data.
LEVEL ARSITEKTUR
BASIS DATA
Menurut ANSI/SPARC, arsitektur basis data terbagi atas tiga
level yaitu :
1. Internal/Physical Level:
berhubungan dengan bagaimana data disimpan secara fisik
(physical storage). Internal level adalah level terendah untuk
merepresentasikan basis data.
2. External /View Level: berhubungan dengan bagaimana data direpresentasikan
dari sisi setiap user. View level adalah level user, yang dimaksud dengan user
adalah programmer, end user atau Database Administrator (DBA). (programmer :
bahasa yang digunakan adalah bahasa pemrograman seperti C, COBOL, atau PL/I),
(end user : bahasa yang digunakan adalah bahasa query atau menggunakan
fasilitas yang tersedia pada program aplikasi pada level eksternal )
3. Conceptual/Logical Level: Yang menghubungkan antara internal & external
level. Conceptual level adalah sebuah representasi seluruh muatan informasi
yang dikandung oleh basis data.
1.2.DATA
INDEPEDENCE
Tujuan utama dari 3 tingkat arsitektur adalah memelihara kemandirian data
(data independence) yang berarti perubahan yang terjadi pada tingkat yang lebih
rendah tidak mempengaruhi tingkat yang lebih tinggi.
Jenis-jenis Data Independence :
1.Physical
Data Independence
Merubah level internal tanpa
mengganggu skema conceptual atau eksternal.
2.Logical Data
Independence
Merubah level conceptual tanpa
menggangu skema eksternal.
Prinsip ini harus diterapkan dalam
pengelolaan sistem basis data dengan alasan:
1.DBA dapat
mengubah isi, lokasi, perwujudan dalam organisasi basis data tanpa mengganggu
program aplikasi yang sudah ada.
2.Pabrik/software
pengelolaan data datap memperkenalkan produk-produk baru tanpa mengganggu
program aplikasi yang sudah ada.
3.Untuk
memindahkan perkembangan program aplikasi.
4.Memberikan
fasilitas pengontrolan terpusat oleh DBA.
1.3.
KONSEP DBMS
DBMS (Data Base Management System) adalah suatu
program yang digunakan untuk memanage dan diberikan kontrol akses pada data
yang tersimpan pada data base, DBMS juga bisa diartikan sebagai pengolah basis
data. Contohnya : oracle, Ms.SQL, Ms.Accsess, MySQL, postgressSQL, DB2.
KOMPONEN
DBMS
Sebuah DBMS (Database Management System) umumnya memiliki sejumlah komponen
fungsional (modul) seperti
File Manager,yang mengelola
ruang dalam disk&struktur data yang dipakai untuk mempresentasikan
informasi yang tersimpan dalam disk.
Database Manager,yang
menyediakan interface antara data low-level yang ada di basis data dengan
program aplikasi dan query yang diberikan ke sistem.
Query Processor,yang
menterjemahkan perintah-perintah dalam query languange ke perintah
low-level yang dapat dimengerti oleh database manager.
DML Precompiler,yang
mengkonversi perintah DML yang ditambahkan dalam sebuah program aplikasi
pemanggil prosedural normal dalam bahasa induk.
DDL Compiler,yang mengkonversi
perintah-perintah DDL ke dalam sekumpulan tabel yang mengandung metada.
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 kesalahan sistem, kerusakan
hard disk, dsb,
5. Data Dictionary, DBMS
harus menyediakan data dictionary,
6. Performance, DBMS harus
menangani unjuk kerja dari semua fungsi seefisien mungkin.
Bahasa DBMS
Semua DBMS memiliki dua macam bahasa yang digunakan untuk mengelola dan
mengorganisasikan data, yaitu:
1.1 Bahasa Definisi Data (DDL)
DDL adalah perintah-perintah yang biasa digunakan
oleh administrator basis data untuk mendefinisikan skema basis data dan juga
sub-skema. Hasil kompilasi dari pernyataan-pernyataan DDL disimpan dalam
berkas-berkas spesial yang disebut katalog sistem. Katalog sistem ini memadukan
metadata. yaitu data yang menjelaskan objek-objek dalam basis data. 1.2Bahasa Manipulasi Data (DML)
DML adalah perintah-perintah yang digunakan untuk
melakukan hal-hal seperti berikut:
Mengambil
data pada basis data.
Menambahkan
data pada basis data.
Mengubah
data pada basis data.
Menghapus
data pada basia data
1.4. MODEL DATA
1.Model data berbasis objek
merupakan paradigma pemrograman yang berorientasikan
kepada objek. Semua data dan fungsi di dalam paradigma ini dibungkus dalam kelas-kelas
atau objek-objek. Bandingkan dengan logika pemrograman terstruktu
2.
Model data berbasis record.
Macam maca jenis mode data berbasis record :
1. Relational model, data data disajikan dalam bentuk table.
2. Network model, data data disajikan dalam bentuk jaringan.
3.
Model data fisik.
Menggambarkan data di tingkat internal, penyimpanan data secara detailnya
dengan format record penyusunan record dan jalur akses.
4.
Model data konseptual.
Menyediakan konsep yang sesuai dengan perpsepsi pemakai yang memandang datanya.
1.5. DATA
DICTIONARY
Data
dictionary adalah tempat penyimpanan informasi yang menggambarkan data dalam
database. Data dictionary biasa disebut juga dengan metadata atau data mengenai
data.
Berisi
tentang :
-Nama-nama user yang mempunyai wewenang
untuk menggunakan DBMS.
-Nama-nama
item data yang ada dalam database.
-Jenis
dan ukuran item data.
-Batasan
untuk masing-masing item data.
-
1.6.
ARSITEKTUR DBMS MULTIUSER
Teleprocessing
Arsitektur
tradisional untuk system multiuser adalah teleprocessing, dimana satu computer
dengan sebuah CPU dan sejumlah terminal.
File-Server
Proses
didistribusikan ke dalam jaringan, sejenis LAN (Local Area Network). File server mengendalikan file yang
diperlukan oleh aplikasi dan DBMS. Meskipun aplikasi dan DBMS dijalankan pada
masing-masing workstation, tetapi meminta file dari file server jika
diperlukan.
Kerugian arsitektur file-server
adalah:
-Terdapat
lalulintas jaringan yang besar.
-Masing-masing workstation membutuhkan
copy DBMS.
-Control terhadap concurrency, recovery
dan integrity menjadi kompleks karena sejumlah DBMS mengakses file secara
bersamaan.
Client Server
Client server
menunjukkan cara komponen software berinteraksi dalam bentuk system.