Anda di halaman 1dari 60

PERTEMUAN PERTAMA

 Data ialah fakta mengenai suatu benda, orang, entiti, kejadian atau yang sejenisnya. 

 Informasi ialah data yang telah diproses dan disusun ke dalam bentuk yang boleh
digunakan
untuk membuat keputusan 
Ukuran Unit Dijual
Barang
3 20
5 15
7 50
9 60
11 10

Gambar 1.1 Permintaan Ukuran Barang Dalam Sehari


1.1.1 Pengoperasian Data

Operasi
DATA INFORMASI
Data

Fakta yang diproses,


punya bentuk dan corak

Gambar 1.3 Mengganti Data Menjadi Informasi

Pengoperasian data yang sering dilakukan ialah:

Validasi: Data yang diambil dan direkam


Pengurutan: Data perlu diurutkan mengikut aturan tertentu seperti besar ke kecil, dalam
susunan menaik atau menurun dan sebagainya supaya mudah
dianalisis.
Pengelompokan:Biasanya data yang telah diurutkan bisa dikelompokkan mengikut aturan-
aturan tertentu, misalnya permintaan barang dengan ukuran tertentu.
Pencarian: Operasi ini akan lebih cepat jika data telah diurutkan atau
dikelompokkan.
Penghitungan: Ini termasuk penghitungan arithmetik, penghitungan dan operasi
pengurutan.
Pengiktiaran: Operasi ini penting untuk mewakili data yang lebih pendek dan padat.
Contoh pengiktiaran ialah mencari jumlah atau rerata.
1.2 Ciri-Ciri Data

Ketepatan: Keputusan yang dibuat berdasarkan informasi yang tidak


tepat merupakan keputusan yang buruk. Ketepatan merujuk
kepada sejauh mana informasi itu bebas daripada kesalahan.
Kesempurnaan: Informasi yang sempurna tiada kekurangan data-data
tertentu. Keputusan mestilah dibuat berdasarkan inforamasi
yang cukup.
Integritas: Informasi yang berintegritas sangat besar nilainya. Informasi
bermakna jika dipercayai, mempunyai sifat keaslian
(authenticity) dan berautoriti (authority).
Tepat Waktu: Maksudnya informasi tepat waktu dan berguna, ada
hubungannya dengan keputusan yang akan dibuat dan tidak
ketinggalan zaman.
PERTEMUAN KEDUA

1.3 Basis Data

 Basis data ialah himpunan data yang berhubungan dan digunkan bersama oleh
berbagai kategori pengguna untuk memenuhi informasi suatu organisasi. 

Data-data akan membutuhkan biaya pemeliharaan yang tinggi, oleh sebab itu suatu sistem pemeliharaan
data dan informasi sebaiknya dibuat secara lebih baik. Sistem ini yang dikenal dengan Sistem Manajemen
Basis Data (Database Management System atau disingkat DBMS) digunakan di hampir setiap organisasi di
seluruh dunia hari ini.
 DBMS ialah suatu sistem software yang memperbolehkan pengguna membuat,
mengubah, mengisi, menyusun,
memperbaiki dan memelihara basis data. DBMS juga berawal dari data-data yang ada
dalam basis data. 
Aplikasi
Basis Data

Basis Data DBMS

Pengguna

Gambar 1.4 Komponen Sistem Basis Data


Aplikasi basis data merupakan suatu cara penggunaan yang mungkin ditulis dalam satu bahasa
pemrograman seperti C, C++, COBOL, Visual Basic atau Delphi untuk
menyelesaikan suatu permasalahan dengan menghubungkannya dengan
basis data (software).

DBMS hanya merujuk kepada software yang berinteraksi antara basis data dengan pengguna
atau dengan aplikasi basis data sementara sistem basis data meliputi komponen yang lebih
luas termasuk basis data, DBMS, pengguna dan program seperti yang ditunjukkan pada
Contoh 1.4.

 Sistem basis data ialah keseluruhan sistem yang terdiri dari basis data,
DBMS, bahasa pemrograman dan pengguna yang semuanya bekerja secara
bersama sebagai sebuah sistem. 

1.4 Contoh Sistem Basis Data

Bagian
Pengkatalogan

Bagian
Pinjaman/Pengembalin Basis
Data

Pelangga
Pgawai
n
Pimpinan
Pustakawan

Gambar 1.5 Sistem Basis Data Perpustakaan


PERTEMUAN KETIGA

1.5 Sistem Basis Data Terpusat

1.5.1 Komputer Pusat (Telepemprosesan)


Contoh DBMS yang mendukung program komputer pusat ialah ORACLE, ADABAS, SYBASE, MySQL dan lain-
lain.

Basis
Data

KomputerUtama atau Mini

Gambar 1.6 Arsitektur Komputer Terpusat


1.5.2 Arsitektur Client-Server

 Server basis data ialah satu software yang dijalankan pada komputer server
untuk memberi data-data kepada komputer clien yang dimintanyat. 

Contoh DBMS yang mendukung arsitektur client-server ialah Microsoft Acces, ORACLE, Power
Builder dan lain-lain.

1.5.3 Basis Data Pribadi


Basis data pribadi dirancang dan diimplementasikan untuk seorang pengguna saja pada
suatu saat. yang menggunakan DBMS seperti Microsoft Access, FoxPro, dBase IV dan
lain-lain.

1.5.4 Basis Data Multimedia Pada Internet

1.6 Sistem Basis Data Tersebar

 Sistem basis data tersebar ialah sebuah basis data logikal yang disebarkan
kepada beberapa komputer pada lokasi yang berlainan tetapi bekerja secara
bersama. 

Arsitektur client-server biasa dikembangkan menjadi sistem basis data tersebar jika satu rangkaian
tempat disambungkan kepada satu atau lebih rangkaian tempat yang lain atau kepada satu sistem
basis data tesebar. Ini digambarkan dalam Gambar 1.7.
PD

PD

PD PD
Pelayan Pelayan
PD PD

PD

Gambar 1.7 Sistem Basis Data Tersebar Jumlah


Jenis Jenis Pengguna Contoh
Kegunaan Arsitektur Bersama

Sistem Pemesanan
Organisasi Komputer Pusat 25 - 100 Tiket Kapal Terbang
Kumpulan Client-server < 25 Sistem Basis Data
Kerja Perpustakaan
Pribadi Komputer Peribadi 1 Sistem Basis Data
Klinik
Umum Internet Tidak Perdagangan
Terbatas Elektronik
Organisasi Perusahaan
Global Tersebar > 100 Asuransi
Multinasional

Gambar 1.8 Ciri-Ciri Kegunaan Dan Arsitektur Basis Data


PERTEMUAN KEEMPAT

1.7 Pemprosesan Data

Bit
Bit unit terkecil data yang boleh diwakili oleh sistem komputer.

Byte ialah sekumpulan 8 bit yang boleh mewakili satu aksara.

Byte

Field sekumpulan aksara yang memberi sesuatu makna bagi


Field mewakili satu unit data seperti nombor kode pengenalan,
tempat lahir dan sebagainya.

Record satu set field yang berhubungan yang menerangkan tentang


Recor sesuatu objek.
d

File
File satu himpunan record yang berkaitan, misalnya file rekod-
rekod pelajar dalam sesuatu kelas.

Gambar 1.9 Hierarki Data


1.7.1 Sistem Pemprosesan Manual

1.7.2 Sistem Pemprosesan File

Nama File data-datanya


PELAJAR no_pelajar, nama, alamat, kod_kursus, jabatan
KURSUS kod_kursus, nama kursus, no_staf, skedul (no_kursi, hari dan waktu)
PEGAWAI no_staf, nama, alamat, jabatan
STAF no_staf, nama, alamat, gaji, potongan, tanggal_lahir, tanggal_mulai_kerja,pendidikan,
jabatan Fail Penggunaan Output

Jadual
PELAJAR
Pelajar

Penjaduala
n
Kursus Kelas

KURSUS
Jabatan
Pendaftar

KURSUS

Penjaduala Jadual Gambar 1.10 Sistem Pemprosesan


n Pegawai
Pegawai File Sebuah Universitas
PEGAWAI
Dekan

Gaji

Penggajian
STAF
Cek
Gaji

Bendahara
Kelemahan sistem pemprosesan file tersebut diatas :
1. Perulangan Data
(a) Perulangan Data
(b) Ketakselarasan (inconsistency) Data -> integrity data.
(c) Kontrol Data Yang Lemah
2. Pemisahan Data
3. Kebergantungan Format Data
4. Ketakserasian File

1.7.3 Sistem Basis Data


Sistem basis data dirancang dengan tujuan mengatasi kelemahan-kelemahan yang ada dalam
sistem pemprosesan file.

Basis Data Penggunaan Output

Jadual
Pelajar
Penjadualan
Pelajar
PELAJAR Kelas
DBMS
KURSUS
Penjadualan
STAF Pegawai Jadual
Pegawai

Gaji
Penggajian

Pengguna Cek
Gaji

Gambar 1.11 Sistem Basis Data Sebuah Universitas


1.7.4 Kelemahan Sistem Basis Data

1. Biaya DBMS adalah tinggi


2. Penambahan Biaya Peralatan
3. Biaya Penggantian
4. Ukuran dan Kerumitan DBMS
5. Prestasi Mungkin Menurun
6. Risiko Kegagalan
PERTEMUAN KELIMA
PERKEMBANGAN BASIS DATA SAAT INI

Gambar 2.1 Evolution of Database Technologi


2.1 ORDBMS

2.1.1 ORDBMS (Object Relational Database Management System)


Penggunaan teknologi RDBMS pada awalnya sangat dominan, tetapi dikarenakan fasilitas–
fasilitas yang ada pada RDBMS tidak lagi sesuai dengan aplikasi tingkat lanjut, maka RDBMS
digantikan dengan OODBMS. Pada OODBMS terdapat banyak sekali bentuk-bentuk object oriented
seperti metode encapsulation, inheritance, polymorphism, dll.

Penggunaan OODBMS untuk suatu organisasi yang sangat besar dan universal tidak lagi sesuai sehingga
untuk mendukung kinerja dari organisasi tersebut dibutuhkan suatu ORDBMS (Objeck Relational Database
Management System).

ORDBMS memiliki fasilitas untuk mendefinisikan data yang kompleks, menspesialisasikan


struktur indeks dibutuhkan untuk mengefisienkan pengambilan data. ORDBMS digunakan untuk dua
sampai tiga dimensional data.

2.1.2 Perbandingan antara OODBMS dan ORDBMS

Gambar 2.2 Perbandingan antara OODBMS dan ORDBMS


2.2 Data Warehousing

2.2.1.Konsep Data Warehousing


Konsep dasar dari data warehousing adalah informasi yang dikumpulkan dalam suatu gudang
penyimpanan dan merepresentasikan solusi untuk pengaksesan data didalam sistem non
relasional. Sehingga data warehousing dapat disebut sebagai database yang berorientasi pada
subyek, terintegrasi, mempunyai Time Variant dan bersifat non volatile untuk kumpulan data
yang mendukung dalam pengambilan keputusan.

• Berorientasi subyek artinya mengatur semua subyek utama pada suatu organsisasi yang memfokuskan
pada basis datanya bukan pada aplikasi yang digunakan untuk pengambilan keputusan.
• Terintegrasi artinya pemakaian data bersama-sama sering menyebabkan data tidak konsisten sehingga
cara pandang pemakai terhadap data menjadi tidak sama. Agar terintegrasi pembentukan sumber data
harus standar dan konsisten.
• Time Variant, data yang ada pada gudang hanya valid dan akurat pada titik waktu tertentu atau interval
tertentu.
• Non-volatile, data tidak di-update secara real time tetapi selalu diperbaharui dari sistem operasi pada
database yang ada.
2.2.2 Keuntungan dari Data Warehousing
1. Hasil yang diperoleh dari investasi lebih tinggi
2. Kompetitif
3. Meningkatkan produktivitas perusahaan

Jenis database yang tersimpan di dalam media penyimpanan data berdasarkan penggunaan data :
• Database yang memiliki data sering di-update disebut data OLTP (Online Transaction Processing).
Data OLTP sering juga disebut data operasional, mencerminkan sifat aplikasi database yang dinamik.
• Database yang memiliki data sering digunakan untuk query disebut DSS (Decision Support System).
Data DSS sering disebut data analitikal, mencerminkan sifat aplikasi database yang relatif statik.
Gambar 2.3 Perbandingan antara Data Operasional dan Data DSS
PERTEMUAN KEENAM
2.3 Data Mart

Data mart adalah database yang berisikan data yang menjelaskan satu segmen operasi
perusahaan. Misalnya perusahaan mungkin memiliki data mart pemasaran, data
mart sumber daya manusia, dsb.
2.4 Data Mining
Data mining adalah proses menemukan hubungan dalam data yang tidak diketahui oleh
pemakai. Data mining membantu pemakai dengan mengungkapkan berbagai
hubungan dan menyajikannya dengan suatu cara yang dapat dimengerti
sehingga dapat menjadi dasar pengambilan keputusan.

Contoh Data Mining :


Sebuah bank telah memutuskan untuk menawarkan reksadana kepada para pelanggannya.
Manajemen bank ingin mengarahkan materi promosi pada segmen pelanggan yang
memberikan potensi bisnis terbesar.
• Data Mining Berdasarkan Verifikasi
• Data Mining Berdasarkan Penemuan
• Kombinasi Data Mining Verifikasi dan Penemuan
2.5 Web Database
Informasi pada Web disimpan di dalam sebuah dokumen. Dokumen–dokumen ini yang
menjadi unsur utama di dalam Web dapat dinyatakan dalam beberapa tipe. Tipe yang paling populer
adalah dokumen hypertext yang disusun menurut bahasa khusus seperti Hypertext Mark Up
Language (HTML). Dokumen HTML ini terdiri atas teks, spesifikasi jenis huruf dan instruksi
format lainnnya, dan didalamnya juga terdapat link ke dokumen lainnya atau ke halaman lain
pada dokumen yang sama dengan menggunakan suatu protokol yang disebut dengan Hypertext
Transfer Protocol (HTTP). Dokumen dan lokasi antar dokumen ini diidentifikasi oleh sebuah
alamat yang disebut Uniform Resourcer Locator (URL) .

2.5.1 WEB Sebagai Bentuk Aplikasi Basis Data


A. Kebutuhan akan Web-Integrasi DBMS
Beberapa kebutuhan di bawah ini dapat menjadi acuan bagi suatu organisasi yang ingin
menggunakan aplikasi basis data berbasis web yang lebih fleksibel yaitu :
1. Kemampuan mengakses data organisasi dengan aturan yang aman.
2. Data dan konektifitas vendor yang independen yang memperbolehkan kebebasan
memilih DBMS saat ini dan masa yang akan datang.
3. Kemampuan antar muka basis data dengan web browser dan web server
4. Solusi konektifitas yang memberikan keuntungan untuk semua bentuk DBMS di semua
organisasi.
5. Pendekatan open-arsitektur agar dapat digunakan dengan berbagai macam sistem dan
teknologi.
6. Solusi untuk biaya konektifitas dengan memberikan skalabilitas pengembangan dan
perubahan strategi, dan juga menolong pengurangan biaya pengembangan dan
pemeliharaan aplikasi.
7. Mendukung transaksi yang diminta oleh banyak HTTP
8. Mendukung untuk sesi dan aplikasi berdasarkan otentikasi.
9. Menerima kinerja
10.Meminimalkan kelebihan administrasi
11.Mempunyai peralatan produktifitas untuk dapat dikembangkan, diperlihara dengan mudah
dan cepat.
B. Arsitektur Web-DBMS
Ada dua macam implementasi sistem client server yaitu sistem client server sederhana (2
tier) dan sistem client server kompleks (3 tier).

1. Sistem client server sederhana

Gambar 2.4 Konfigurasi 2 tier


2. Sistem client server kompleks (3 tier)
Beberapa keuntungan jenis arsitektur ini adalah :
- Memungkinkan akses database yang besar
- Menaikkan performa
- Biaya untuk hardware dapat dikurangi
- Biaya komunikasi berkurang
- Meningkatkan kekonsistenan
- Map ke arsitektur open-system dengan sangat alami

Gambar 2.5 Konfigurasi 3 tier


PERTEMUAN KETUJUH

C. Antar muka Web dengan basis data


Adanya antar muka antara web dan basis data menjadi penting dikarenakan dua alasan
yaitu:
1. Bersamaan dengan adanya pertumbuhan perdagangan elektronik atau ECommerce, pengolahan
transaksi harus dapat dihubungkan dengan web.
2. Keterbatasan yang dimiliki oleh dokumen HTML, seperti :
a. Pemakaian dokumen web yang tetap tidak memungkinkan penampilan disesuaikan dengan
keinginan pemakai, misalnya sebuah perusahaan mungkin menginginkan materi promosinya
disesuaikan dengan keinginan pembeli.
b. Pada saat data di suatu basis data mengalami perubahan, maka dokumen–dokumen web yang
melibatkan data yang sama menjadi tidak diperbaharui kembali jika tidak segera disesuaikan. Hal
ini
2.5.2 akan
Menyediakan Akses ke Basis
semakin merepotkan Data pada
jika dokumen WWWtersebar di sejumlah lokasi.
tersebut
Web server menggunakan interface standard yaitu Common Gateway Interface (CGI)
sebagai software penengah antara Web server sebagai front-end interface dari pemakai
dengan DBMS sebagai back-end nya, untuk memfasilitasi pengaksesan basis data yang
heterogen/kompleks.

Dua pendekatan yang digunakan untuk mengakses sebuah basis data yaitu :
1. Akses dengan CGI Script ; menggunakan bahasa PERL, Tcl atau C
2. Akses dengan JDBC : menggunakan bahasa pemrograman Java, dimana JDBC ini sebagai
penghubung Object Conectivity Database (ODBC) yang akan membentuk Relational Database
Management System (RDBMS).
Gambar 2.6 Relasi DBMS
2.5.3 Keuntungan dan Kelemahan Web-DBMS

Keuntungan nya :
1. Kesederhanaan / Simplicity
2. Platform yang Independen
3. Graphical User Interface (GUI )
4. Standarisasi
5. Mendukung pertukaran antar platform
6. Akses yang transparan
7. Pemasangan instalasi yang diperhitungkan
8. Inovasi

Kelemahan nya :
1. Keandalan data
2. Keamanan data
3. Biaya
4. Skalabilitas
5. Keterbatasan fungsional dari HTML
6. Kestatisan
7. Kinerja
8. Peralatan untuk pembangunan yang tidak baik
PERTEMUAN KEDELAPAN
MODEL BASIS DATA

3.1 MODEL HIRARKI

Model hirarki dikenal sebagai model struktur pohon, di mana data direpresentasikan dalam bentuk
pohon.

Beberapa ketentuan dan sifat model hirarki :


1. Terdapat suatu kumpulan jenis record (R1, R2, ... , Rn) yang di dalam tiap record masing-masing
ada
field yang berfungsi sebagai pengenal (identifier). Field ini disebut sebagai field kunci.
2.Terdapat suatu kumpulan kaitan yang menghubungkan semua jenis record, sehingga membentuk
diagram struktur data.
3.Kaitan tersebut membentuk satu pohon yang semua ujungnya mengarah ke daun.

Gambar 3.1 Model Basis Data Hirarki


4. Tidak mungkin ada elemen yang mempunyai lebih dari satu parent.
5. Setiap kaitan bersifat tunggal - jamak artinya jika Ri merupakan parent dari Rj pada suatu hirarki,
maka setiap record Rj akan ada tepat hanya satu record Ri yang berkaitan.

Model hierarki mempunyai dua konsep struktur data yaitu record dan parent-child relationship (PCR).
Record adalah kumpulan nilai-nilai field yang memberikan informasi pada suatu entitas atau relaionship.
Record-record yang sejenis dikelompokkan dalam record type.

PCR type terdiri dari satu record dari parent record type dan beberapa record dari child record type.

Gambar 3.2 Penguraian Suatu Record


Dari gambar di atas :
Record type :
DEPARTEMENT, EMPLOYEE, PROJECT, DEPENDENT, SUPERVISEE dan WORKER

PCR type :
(department, employee), (department, project), (employee, dependent), (employee, supervisee),
(project, worker)

Masalah yang terjadi pada model hierarki adalah :


1. Relasi M:N
2. Sebuah record type berperan sebagai child pada lebih dari satu PCR type
3. Relasi N-ary dengan lebih dari dua record type

Contoh masalah duplikasi data :


PROJECT EMPLOYEE
A E1, E3, E5
B E2, E4, E6
C E1, E4
D E2, E3, E4, E5
Untuk mengatasi masalah tersebut digunakan pointer

Gambar 3.3 Penyeleaian Masalah Duplikasi Data


Gambar 3.4 Sebuah database yang terdiri dari beberapa struktur pohon

PERTEMUAN KESEMBILAN
3.2 MODEL JARINGAN

Model jaringan dikenal sebagai STRUKTUR PLEX.


Pada dasarnya struktur jaringan ini merupakan perluasan dari struktur hirarki. Kalau pada struktur
hirarki, setiap child hanya mempunyai satu parent. Sedangkan pada struktur jaringan, setiap child
dapat mempunyai lebih dari satu parent.
Beberapa ketentuan untuk Model Jaringan
1. Terdapat lebih dari satu edge antara pasangan node
2. Tidak ada konsep Root Node
3. Suatu node dapat mempunyai lebih dari satu parent node.
4. Gambar di bawah ini menunjukkan suatu jaringan yang terdiri dari node R1, R2, ... , R5 dan edge L12,
L13, L14 dst.

Jika diterapkan dalam sistem basis data, node dari suatu jaringan menyatakan tipe record dan edge
menyatakan hubungan antara tipe record . Dalam bentuk yang umum, edge dapat menyatakan relasi
TUNGGAL-TUNGGAL, TUNGGAL-JAMAK, JAMAK-JAMAK.
Struktur Data Model Jaringan
Ada dua struktur data pada basis data Model Jaringan, yaitu RECORD dan SET.
Sruktur ini dikemukakan dalam DBTG ( Database Task Group).

Setiap TIPE SET mempunyai satu tipe record yang diyatakan sebagai TIPE RECORD OWNER dan satu
atau lebih tipe record yang dinyatakan sebagai TIPE RECORD MEMBER. Seandainya tidak ada record
member yang dikaitkan dengan dengan suatu owner maka dikatakan set adalah kosong atau nol.

Terdapat dua set . E1 sebagai record owner dan J1, J2, serta S1, S2 sebagai record member.
Sedangkan set yang kedua yaitu E2 sebagai owner dan S3 sebagai member. E1 dan E2 adalah
EMPLOYEE. J1 dan J2 adalah JOB. S1, S2, S3 adalah SKILL.
Tipe record merupakan pendeskripsian field-field yang meliputi :
* Nama field
* Panjang field
* Jenis field

Nasabah, cabang merupakan tipe record owner.


Nas-rek dan cab-rek merupakan tipe set.
Set occurence menunjukkan hubungan pointer link dalam network.
Pada tabel diatas terdapat 5 set occurence yaitu record owner : Titin, Ade, Ita, BNI Kramat dan BNI
Kota.
Record occurence : segala kejadian pada record, baik itu isinya maupun manipulasi pada datanya.
PERTEMUAN KESEPULUH
DBTG (Database Task Group)
DBTG merupakan kelompok tugas (task group) dari CODASYL (Conference of Data System
Language) Programming Language Committee yang dipublikasikan pada April 1971. DBTG
merupakan dokumen penting yang berisi proposal tentang bahasa-bahasa untuk definisi dan
pemrosesan data pada struktur basis data jaringan.

DBTG berisi proposal untuk 3 bahasa yaitu :


1.Skema DDL.
Bahasa yang mendefinisikan model data dengan pemetaannya (mapping) ke penyimpanan
(storage). Skema DDL ini menggambarkan struktur basis data jaringan.
2. Sub Skema DDL.
Bahasa untuk mendefinisikan sub model data dengan pemetaannya ke model data
(mendefinisikan eksternal view). Sub skema DDL harus mempunyai sintaks yang kompatibel
dengan beberapa bahasa pemrograman.
3. DML.
Adalah DBTG "data sublanguage" yang mempunyai sintaks yang kompatibel dengan host
language (bahasa pemrograman) di mana data tersebut digunakan. DML berisi kumpulan operator-
operator untuk memanipulasi basis data jaringan yang telah didefinisikan pada skema dan sub
skema DDL. Yang dimaksud user dalam DBTG adalah seorang programmer aplikasi.
Mendefinisikan Skema DDL
Ada 4 bagian :
1. Deskripsi skema.
Digunakan untuk memberikan nama skema basis data.
2. Deskripsi area.
Menyatakan bagian dari memori yang dipesan dengan cara memberi nama. Dalam satu skema bisa
terdapat lebih dari satu area.
3. Deskripsi Record.
Mendefinisikan record dan field-fieldnya..
4. Deskripsi Set.
Mendefinisikan nama set dan karakteristik dari set dalam basis data.

Contoh : Aplikasi Inventory.

Terdapat relasi TUNGGAL-JAMAK antara PRODUCT dengan INVENTORY dan antara WAREHOUSE
dengan INVENTORY.
Tipe record PRODUCT terdiri dari 2 field yaitu PRODUCT# dan PROD-DESCRIPTION.
Tipe record WAREHOUSE terdiri dari field WHSE# dan WHSE-CAPACITY.
Tipe record INVENTORY terdiri dari field SERIAL#, P#, W# dan SPOILAGE-DATE.
Maka skema DDL-nya sbb : SET NAME IS STORAGE
OWNER IS PRODUCT
SCHEMA NAME IS INVENTORY. ORDER IS FIRST
AREA NAME IS STOCK. MEMBER IS INVENTORY
INSERTION IS AUTOMATIC
RECORD NAME IS PRODUCT RETENTION IS FIXED
LOCATION MODE IS CALC USING CHECK IS PRODUCT# IN PRODUCT=P#
PRODUCT# SET SELECTION IS BY VALUE OF
DUPLICATES ARE NOT ALLOWED PRODUCT#
01 PRODUCT# PIC 9999.
01 PROD-DESCRIPTION PIC X(20) SET NAME IS CONTENTS
OWNER IS WAREHOUSE
RECORD NAME IS WAREHOUSE ORDER IS SORTED BY DEFINED KEY
LOCATION MODE IS CALC USING MEMBER IS INVENTORY
WHSE# INSERTION IS AUTOMATIC
DUPLICATES ARE NOT ALLOWED RETENTION IS MANDATORY
01 WHSE# PIC 99. KEY IS ASCENDING P# DUPLICATES ARE
01 WHSE-CAPACITY PIC 999999. FIRST
CHECK IS WHSE# IN WAREHOUSE=W#
RECORD NAME IS INVENTORY SET SELECTION IS STRUCTURAL
LOCATION MODE IS VIA STORAGE SET WHSE#=W#
01 SERIAL# PIC 999999.
01 P# PIC 9999. END SCHEMA.
01 W# PIC 99.
01 SPOILAGE-DATE PIC 999999.
Sub Skema DDL
Contoh sub skema dari database Inventory,

ADD SUBSCHEMA NAME IS SUB-INVENTORY


OF SCHEMA NAME IS INVENTORY

ADD RECORD PRODUCT


ELEMENT IS
PRODUCT#

ADD RECORD WAREHOUSE


ELEMENT IS
WHSE#

ADD RECORD INVENTORY


ELEMENTS ARE
SERIAL#
SPOILAGE-DATE

ADD SET STORAGE


ADD SET CONTENTS
DML
Perintah-perintah yang tersedia untuk DML pada IDMS :
FIND : mencari lokasi dari record
GET : mengambil record
OBTAIN : sama seperti FIND diikuti oleh GET
MODIFY : memodifikasi record
ERASE : menghapus record
STORE : membuat record baru
CONNECT : menghubungkan record dengan data-set
DISCONNECT : memisahkan record dengan data-set.

Misalnya kita akan membuat suplier baru pada tabel suplier, dapat kita tuliskan sebagai berikut :
MOVE 'S8' TO S# IN S
MOVE 'ALI' TO SNAME IN
S
MOVE 50 TO STATUS IN
S
MOVE 'JAKARTA' TO
CITY IN S
STORE S
PERTEMUAN KESEBELAS

BASIS DATA RELASIONAL


• Pengertian Basis Data Relasional
Basis Data relasional menggunakan tabel dua dimensi yang terdiri atas baris dan kolom untuk
memberi gambaran sebuah berkas data.

Contoh Tabel dan keterhubungannya :

MATAKULIAH MHS

NILAI
• Keuntungan Basis Data Relasional
1. Bentuknya sederhana
2. Mudah melakukan berbagai operasi data

• Istilah dalam Basis Data Relasional :


Relasi:
Sebuah tabel yang terdiri dari beberapa kolom dan beberapa baris.
Atribut:
Kolom pada sebuah relasi
Tupel
Baris pada sebuah relasi
Domain
Kumpulan nilai yang valid untuk satu atau lebih atribut
Derajat (degree)
Jumlah atribut dalam sebuah relasi
Cardinality
Jumlah tupel dalam sebuah relasi
• Relational Key
Super key
Satu atribut/kumpulan atribut yang secara unik mengidentifikasi sebuah tupel di dalam relasi
Candidate key
Atribut di dalam relasi yang biasanya mempunyai nilai unik
Primary key
Candidate key yang dipilih untuk mengidentifikasikantupel secara unik dalam relasi
Alternate key
Candidate key yang tidak dipilih sebagai primary key
Foreign key
Atribut dengan domain yang sama yang menjadi kunci utama pada sebuah relasi tetapi pada
relasi lain atribut tersebut hanya sebagai atribut biasa

• Relational Integrity Rules


Null
Nilai suatu atribut yang tidak diketahui dan tidak cocok untuk baris (tuple) tersebut
Entity Integrity
Tidak ada satu komponen primary key yang bernilai null.
Referential Integrity
Suatu domain dapat dipakai sebagai kunci primer bila merupakan atribut tunggal pada domain
yang bersangkutan.
• Bahasa Pada Basis data Relational
Menggunakan bahasa query → pernyataan yang diajukan untuk mengambil informasi

Terbagi 2 :
1. Bahasa Formal
Bahasa query yang diterjemahkan dengan menggunakan simbol-simbol matematis.
Contoh: Aljabar relasional
Kalkulus relasional
• Aljabar Relasional
Bahasa query prosedural → pemakai menspesifikasikan data apa yang dibutuhkan dan bagaimana
untuk mendapatkannya.
• Kalkulus Relasional
Bahasa query non-prosedural → pemakai menspesifikasikan data apa yang dibutuhkan tanpa
menspesifikasikan bagaimana untuk mendapatkannya.
Terbagi 2 :
Kalkulus Relasional Tupel
Kalkulus Relasional Domain

2. Bahasa Komersial
Bahasa Query yang dirancang sendiri oleh programmer menjadi suatu program aplikasi agar pemakai

lebih mudah menggunakannya (user friendly).

Contoh :
• QUEL
Berbasis pada bahasa kalkulus relasional
• QBE
Berbasis pada bahasa kalkulus relasional
• SQL
Berbasis pada bahasa kalkulus relasional dan aljabar relasional
Contoh-contoh Basis Data Relasional :
- DB2 → IBM
- ORACLE → Oracle
- SYBASE → Powersoft
- INFORMIX → Informix
- Microsoft Access → Microsoft
PERTEMUAN KEDUABELAS

PROSES PERANCANGAN DATABASE

Tujuan Perancangan Database


1. untuk memenuhi informasi yang berisikan kebutuhan-kebutuhan user secara khusus dan aplikasi-
aplikasinya.
2. memudahkan pengertian struktur informasi
3. mendukung kebutuhan-kebutuhan pemrosesan dan beberapa obyek penampilan (response time, processing time, dan
storage space)

Aplikasi database dalam life cycle


Siklus kehidupan sistem informasi sering disebut macro life cycle, dimana siklus kehidupan basis data merupakan micro
life cycle.

Aktifitas-aktifitas yang berhubungan dengan database sebagai micro life cycle dan termasuk fase-fasenya sbb :
1. System definition
Definisi ruang lingkup database (misal : para pemakai, aplikasi-aplikasinya, dsb.)
2. Design
Pada bagian dari fase ini, perancangan sistem database secara fisik dan secara logika pada DBMS telah selesai.
3. Implementation
Pemrosesan dari penulisan definisi database secara konseptual, eksternal, dan internal, pembuatan file-file database
yang kosong, dan implementasi aplikasi-aplikasi software.
4. Loading atau Data Conversion
Database ditempatkan baik secara memanggil data secara langsung ataupun merubah file-file yang ada ke dalam format

sistem database dan memangggilnya kembali.


5. Application Conversion
Beberapa aplikasi software dari suatu sistem sebelumnya dikonversikan ke suatu sistem yang baru.
6. Testing dan Validation
Sistem yang baru ditest dan diuji kebenarannya
7. Operation
Operasi-operasi pada sistem database dan aplikasi-aplikasinya.
8. Monitoring dan Maintenance
Selama fase operasi, sistem secara konstan memonitor dan memelihara database. Pertambahan dan pengembangan
data dan aplikasi-aplikasi software dapat terjadi. Modifikasi dan pengaturan kembali database mungkin diperlukan dari
Proses Perancangan Database
6 Fase proses perancangan database :
1. Pengumpulan data dan analisis
2. Perancangan database secara konseptual
3. Pemeliharaan DBMS
4. Perancangan database secara logika (data model mapping)
5. Perancangan database secara fisik
6. Implementasi Sistem database.

Gambar fase-fase perancangan database untuk database yang besar :


6 fase di atas tidak harus diproses berurutan. Pada beberapa hal, rancangan tsb dapat dimodifikasi dari
yang pertama dan sementara itu mengerjakan fase yang terakhir (feedback loop antara fase) dan feedback
loop dalam fase sering terjadi selama proses perancangan.

Fase 1 : Pengumpulan data dan analisa


Aktifitas-aktifitas pengumpulan data dan analisa :
1. Menentukan kelompok pemakai dan bidang-bidang aplikasinya
2. Peninjauan dokumentasi yang adaDokumen yang ada yang berhubungan dengan aplikasi-aplikasi
dipelajari dan dianalisa.
3. Analisa lingkungan operasi dan pemrosesan data
4. Daftar pertanyaan dan wawancara
Fase 2 : Perancangan database secara konseptual
Fase perancangan database secara konseptual mempunyai 2 aktifitas paralel :
1. Perancangan skema konseptual :
2. Perancangan transaksi :

Fase 3 : Pemilihan DBMS


Faktor-faktor ekonomi dan organisasi yang mempengaruhi satu sama lain dalam pemilihan DBMS :
1. Struktur data
2. Personal yang telah terbiasa dengan suatu sistem
3. Tersedianya layanan penjual Keberadaan fasilitas pelayanan penjual
Fase 4 : Perancangan database secara logika (pemetaan model data)
Pemetaannya dapat diproses dalam 2 tingkat :
1. Pemetaan system-independent :
2. Penyesuaian skema ke DBMS yang spesifik :

Hasil dari fase ini memakai perintah-perintah DDL

Fase 5 : Perancangan database secara fisik


Beberapa petunjuk dalam pemilihan perancangan database secara fisik :
1. Response time :
2. Space utility :
3. Transaction throughput :

Fase 6 : Implementasi sistem database


PETEMUAN KETIGABELAS

NORMALISASI
Definisi
Normalisasi adalah suatu teknik untuk mengorganisasi data ke dalam tabel-tabel untuk
memenuhi kebutuhan pemakai di
dalam suatu organisasi.
Tujuan dari normalisasi
 Untuk menghilangkan kerangkapan data
 Untuk mengurangi kompleksitas
 Untuk mempermudah pemodifikasian data
Proses Normalisasi
Data diuraikan dalam bentuk tabel, selanjutnya dianalisis berdasarkan persyaratan tertentu ke beberapa

tingkat.
Apabila tabel yang diuji belum memenuhi persyaratan tertentu, maka tabel tersebut perlu dipecah
menjadi beberapa tabel yang lebih sederhana sampai memenuhi bentuk yang optimal.
Tahapan Normalisasi
Bentuk Tidak Normal
 Menghilangkan perulangan group
Bentuk Normal Pertama (1NF)
 Menghilangkan ketergantungan sebagian
Bentuk Normal Kedua (2NF)
 Menghilangkan ketergantungan transitif
Bentuk Normal Ketiga (3NF)
 Menghilangkan anomali-anomali hasil dari ketergantungan fungsional
Bentuk Normal Boyce-Codd (BCNF)
 Menghilangkan Ketergantungan Multivalue
Bentuk Normal Keempat (4NF)
 Menghilangkan anomali-anomali yang tersisa
Ketergantungan Fungsional
Definisi :
Atribut Y pada relasi R dikatakan tergantung fungsional pada atribut X (R.X ---> R.Y), jika
dan hanya jika setiap nilai X pada relasi R mempunyai tepat satu nilai Y pada R.

Misal, terdapat skema database Pemasok-barang :


Pemasok (No-pem, Na-pem)

Tabel PEMASOK-BARANG

No-pem Na-pem
P01 Baharu
P02 Sinar
P03 Harapan

Ketergantungan fungsional dari tabel PEMASOK-BARANG adalah : No-pem ---> Na-pem

Ketergantungan Fungsional Penuh

Definisi :
Atribut Y pada relasi R dikatakan tergantung fungsional penuh pada atribut X pada relasi R, jika Y tidak
tergantung pada subset dari X (bila X adalah key gabungan)
Contoh :
KIRIM-BARANG( No-pem, Na-pem, No-bar, Jumlah)
No-pem Na-pem No-bar Jumlah
P01 Baharu B01 1000
P01 Baharu B02 1500
P01 Barharu B03 2000
P02 Sinar B03 1000
P03 Harapan B02 2000

Ketergantungan fungsional :
No-pem --> Na-pem
No-bar, No-pem --> Jumlah (Tergantung penuh terhadap keynya)

Ketergantungan Transitif

Definisi :
Atribut Z pada relasi R dikatakan tergantung transitif pada atribut X , jika atribut Y tergantung pada atribut X
pada relasi R dan atribut Z tergantung pada atribut Y pada relasi R. (X → Y, Y → Z , maka X → Z )
Contoh :

No-pem Kode-kota Kota No-bar Jumlah


P01 1 Jakarta B01 1000
P01 1 Jakarta B02 1500
P01 1 Jakarta B03 2000
P02 3 Bandung B03 1000
P03 2 Surabaya B02 2000

Ketergantungan transitif :
No-pem → Kode-kota
Kode-kota → Kota , maka
No-pem → Kota

Bentuk Normal Kesatu (1NF)


Suatu relasi dikatakan sudah memenuhi Bentuk Normal Kesatu bila setiap data bersifat atomik yaitu
setiap irisan baris dan kolom hanya mempunyai satu nilai data

Tabel KIRIM-1 (Unnormal) No-pem Kode-kota Kota No-bar Jumlah


P01 1 Jakarta B01 1000
B02 1500
B03 2000
P02 3 Bandung B03 1000
P03 2 Surabaya B02 2000
Tabel KIRIM-2 (1NF)

No-pem Kode-kota Kota No-bar Jumlah Kode-kota


No-pem
P01 1 Jakarta B01 1000

P01 1 Jakarta B02 1500

P01 1 Jakarta B03 2000

P02 3 Bandung B03 1000


No-bar
P03 2 Surabaya B02 2000

Diagram Ketergantungan Fungsional


Bentuk Normal Kedua (2NF)
Suatu relasi dikatakan sudah memenuhi Bentuk Normal
Kedua bila relasi tersebut sudah memenuhi bentuk Normal
kesatu, dan atribut yang bukan key sudah tergantung penuh
terhadap keynya.

Tabel PEMASOK-1 (2NF)

No-pem Kode-kota Kota

P01 1 Jakarta

P02 3 Bandung

P03 2 Surabaya
Bentuk Normal Ketiga (3NF)
Suatu relasi dikatakan sudah memenuhi Bentuk Normal ketiga bila relasi tersebut sudah
memenuhi bentuk Normal kedua dan atribut yang bukan key tidak tergantung transitif terhadap
keynya.

Tabel KIRIM-3 (3NF)

No-pem No-bar Jumlah

P01 B01 1000


P01 B02 1500
P01 B03 2000
P02 B03 1000
P03 B02 2000

Tabel PEMASOK-2 (3NF) Tabel PEMASOK-3 (3NF)

No-pem Kode-kota Kode-kota Kota


P01 1 1 Jakarta
P02 3 2 Surabay
a
P03 2
3 Bandung
Normalisasi pada database perkuliahan

Asumsi :
 Seorang mahasiswa dapat mengambil beberapa mata kuliah
 Satu mata kuliah dapat diambil oleh lebih dari satu mahasiswa
 Satu mata kuliah hanya diajarkan oleh satu dosen
 Satu dosen dapat mengajar beberapa mata kuliah
Seorang mahasiswa pada mata kuliah tertentu hanya mempunyai satu nilai

Tabel MAHASISWA-1 ( Unnormal )


No-Mhs Nama-Mhs Jurusan Kode-MK Nama-MK Kode- Nama-Dosen Nilai
Dosen
2683 Welli MI MI350 Manajeme DB B104 Ati A
MI465 A & P Sistem B317 Dita B
5432 Bakri TI MI350 Manajemen B104 Ati C
DB
AK210 Akuntansi D310 Lia B
MK300 Pemasaran B212 Lola A

Tabel MAHASISWA-2 ( 1NF )


No-Mhs Nama-Mhs Jurusan Kode-MK Nama-MK Kode- Nama-Dosen Nilai
Dosen
2683 Weli MI MI350 Manajeme DB B104 Ati A
2683 Weli MI MI465 A & P Sistem B317 Dita B
5432 Bakri TI MI350 Manajemen B104 Ati C
DB
5432 Bakri TI AK210 Akuntansi D310 Lia B
5432 Bakri TI MK300 Pemasaran B212 Lola A
Diagram Ketergantungan Fungsional

Tabel KULIAH (2NF)

Tabel MAHASISWA-3 (3NF)


Tabel NILAI (3NF)

Tabel MATAKULIAH (3NF)

Tabel DOSEN (3NF)


PDERTEMUAN KEEMPATBELAS

ENHANCED ENTITY RELATIONSHIP (EER) DIAGRAM

Model EER berisikan seluruh konsep model ER ditambah konsep-konsep dari subclass dansuperclass,
dan konsep-konsep yang berhubungan yaitu specialization dan generalization. Konsep lainnya yang
termasuk dalam model EER yaitu Category.

Specialization
Specialization adalah proses pendefinisian suatu himpunan subclass dari suatu entitas;
entitas ini disebut superclass dari specialization. Himpunan subclass tsb membentuk
specialization yang telah didefinisikan berdasarkan beberapa sifat/karakteristik yang
istimewa dari suatu entitas pada suatu superclass yang menggambarkan perbedaan yang
jelas antara entitas tsb.

Generalization
Generalization adalah proses pendefinisian entitas-entitas yang disatukan menjadi entitas
superclass tunggal dari entitas aslinya yang merupakan subclass istimewa. Proses
generalization dapat dipandang sebagai kebalikan dari proses specialization.
Contoh

Generalize Superclass VEHICLE


Category REGISTERED_VEHICLE
Pada gambar di atas, terdapat 2 category yaitu OWNER yang merupakan sebuah subclass dari
gabungan PERSON, BANK, dan COMPANY, yang lainnya yaitu REGISTERED_VEHICLE yang
merupakan subclass dari gabungan CAR dan TRUCK.

Sebuah category dapat mempunyai 2 atau lebih superclass yang menggambarkan jenis-jenis entitas
yang berbeda, sebaliknya relationship superclass/subclass lainnya selalu memiliki superclass tunggal.

Suatu category adalah subset dari gabungan superclass-nya. Oleh sebab itu suatu entitas yang
merupakan anggota OWNER harus berisikan sedikitnya 1 superclass, tetapi tidak harus menjadi
anggota dari seluruh superclass. Hal ini menggambarkan batasan bahwa seorang OWNER mungkin
saja suatu COMPANY, sebuah BANK, atau perorangan (PERSON).

Perbedaan antara dua gambar di atas (generalize superclass VEHICLE dengan category
REGISTERED_VEHICLE) :

Pada generalize superclass VEHICLE :


-Setiap mobil dan truk adalah vehicle
-Jika dipisahkan, tidak dapat dihindari bahwa akan terdapat jenis entitas lain seperti entitas
BICYCLE

Pada category REGISTERES_VEHICLE


-Terdiri dari beberapa mobil dan beberapa truk, tetapi tidak seluruh mobil dan truk yang
diregistrasikan
-Category registered_vehicle menyatakan hanya mobil dan truk saja, dan bukan jenis entitas lain
yang dapat menjadi anggota REGISTERED_VEHICLE
SEKIAN & T’KASIH

Anda mungkin juga menyukai