Sabtu, 26 November 2011

Database



DATABASE

 

Properti Database
Database adalah koleksi data item yang saling terkait terkelola sebagai satu unit. Beberapa definisi lain
tentang database adalah :
1. Relational data structure used to store, query, and retrieve information.
fwie.fw.vt.edu/tws-gis/glossary.htm
2. A shared collection of logically related data designed to meet the information needs of multiple
users in an organization. www.cbu.edu/~lschmitt/I351/glossary.htm
3. an organized body of related information wordnet.princeton.edu/perl/webwn
4. database is an organized collection of computer records. In libraries, one of the most common
types of databases consists of records describing articles in periodicals otherwise known as a
periodical index. www.lib.utexas.edu/help/glossary/d.html
Istilah “database” juga digunakan di dunia perpustakan untuk menjelaskan sekumpulan informasi yang
biasanya tersimpan dan dapat diakses di perpustakaan, seperti yang dijelaskan pada definisi ke 4. Untuk
membuat definisi database yang kita maksud lebih jelas dan tepat, maka beberapa karakteristik dari
database adalah :
1. pengelolaan melalui dengan suatu Database Management System (DBMS)
2. ada lapisan-lapisan abstraksi data
3. data fisik yang independen
4. data logis yang independen
Berikut penjelasan karakteristik-karakteristik tersebut.
DBMS
Database Management System merupakan software yang disediakan oleh penyedia database untuk :
• mengelola dan memelihara data
• memindahkan data ke dan dari file data fisik yang dibutuhkan
• mengelola akses data yang bersamaan oleh beberapa pengguna
• mengawasi pembaharuan data dan mencegah konflik perubahan data
• mengelola transaksi sehingga perubahan data terjadi secara lengkap atau tidak terjadi perubahan
jika transaksi batal atau gagal
• mendukung bahasa query
• pengawasan back up database dan pemulihan dari kesalahan
• mekanisme keamanan
Lapisan-lapisan abstraksi data /Layers of Data Abstraction
Database memiliki kapabilitas unik unik untuk menyajikan informasi ke banyak pengguna sesuai dengan permintaan masing-masing. Pengguna di sini bisa saja manusia atau aplikasi yang masuk secara sah ke database untuk menyimpan atau mendapatkan data. Aplikasi tersebut adalah program yang dirancang untuk menyelesaikan tugas-tugas bisnis tertentu seperti sistem pemesanan barang,
System penggajian, sistem akuntansi.Database memungkinkan setiap pengguna (manusia atau aplikasi) mendapatkan informasi hasil pengolahan data yang berbeda satu sama lain. Yang satu minta laporan pendapatan bulan tertentu
sementara yang lain mencetak transaksi hari ini, pengguna lain melakukan pencarian terhadap data tertentu. Masing-masing menggunakan data dari database yang sama. Setiap perubahan data yang dilakukan oleh salah satu, akan juga ditemukan oleh yang lain. Lapisan-lapisan abstraksi data dapat digambarkan seperti pada Figure 1-1 dimana
ada 3 lapisan yaitu
lapisan fisik, lapisan logika dan lapisan luar.
a. lapisan fisik
lapisan fisik berisi file data yang menyimpan semua data untuk database. Hampis esmua DBMS yang moderen mengijinkan data base disimpan dalam multiple data files (banyak file untuk 1 database).
Kecuali MS Access menyimpan database dalam 1 file sehingga tidak mampu mengatasi ukuran data yang besar, tapi cocok untuk data personal.
DBMS dan sistem operasi secara otomatis mengelola data files : membuka, menutup, membaca dan menulis data ke dan dari file.
Pengguna database tidak perlu langsung berhubungan dengan lapisan fisik yaitu data files saat menggunakan database. Data-data yang tersimpan dalam file diwakili oleh
lapisan berikutnya yaitu lapisan logika.
b. lapisan logika
Ini adalah lapisan abstraksi pertama dalam database. Lapisan fisik bukan lapisan abstraksi karena datanya nyata, bukan abstrak. Lapisan logika terdiri dari struktur data abstrak yang sama dengan lapisan data. DBMS mengubah data di data file menjadi struktur/susunan yang sesuai. Lapisan ini sering disebut skema, istilah yang digunakan untuk koleksi semua data yang tersimpan dalam database.
Pada lapisan inilah struktur tabel database yang disusun oleh manusia dan kemudian data dalam tabeltabel itulah yang kemudian diakses oleh manusia menggunakan bahasa query yang ada di lapisan luar.
c. lapisan luar
Lapisan luar atau mmodel luar adalah layar kedua abstrak dalam database. Lapisan ini terdiri dari tampilan pengguna yang disebut subskema. Lapisan ini adalah tempat dimana pengguna dan aplikasi yang mengakses database berhubungan dan menghasilkan query ke database.
Data fisik yang independen/ Physical Data Independence
Kemampuan mengubah struktur file database secara fisik tanpa mengganggu pengguna dan proses yang berlaku disebut physical data independence. Seberapa besar perubahan yang dapat dilakukan tanpa berpengaruh pada lapisan logika disebut derajat physical data independence.
Data logis yang independen/ Logical Data Independence kemampuan untuk membuat perubahan pada lapisan logika tanpa mengganggu penggunan dan pross
yang sedang berlaku disebut logical data independence. Perubahan pada lapisan logika juga berlaku pada lapisan fisik. Misalnya penambahan data di lapisan logika, berarti menambah data pada lapisan fisik.
Perubahan format data pada lapisan logika akan berdampak pada lapisan fisik juga. Perubahan yang dimaksud termasuk penghapusan data.
Model Database yang Umum

a. Flat Files
Flat files adalah file sistem operasi yang record dalam filenya tidak berisi informasi tentang struktur file atau hubungan antar record yang dikomunikasikan ke aplikasi yang menggunakannya. Flat file bukan database karena tidak masuk dalam kriteria di atas yang sudah dibahas. Figure 1-2 adalah contoh flat file yang diambil dari MS access database miliki perusahaan Northwind. Kolom judul sengaja ditambahkan untuk menjelaskan isi dari data, jadi sebenarnya kolom judul itutidak ada.
Yang tersimpan dalam file adalah record saja. Data customer disimpadan pada file Customer dengan setiap recod mewakili satu customer Northwind. Setiap karyawan Northwind memiliki satu record di file Employee.
Data pemesanan (order) disimpan dalam 2 flat file: file Order berisi record pesanan customer yang terdiri dari ID customer, nama karyawan yang menerim order, tanggal pesanan dsb. Sementara di file Order Detil berisi item tiap pesanan. Satu pesanan dapat terdiri dari beberapa barang dan detil tiap barang seperti harga ID produk, jumlah barang yang dipesan dan diskon. Northwind memiliki aplikasi yang mampu menghasilkan informasi berdasarkan data dari flat file nya.
Aplikasi ini harus menghubungkan data di antara 5 file dengan membaca 1 pesanan/order dan
mengikuti langkah ini:
1. gunakan customer ID untuk menjcari nama dari customer di file Customer
2. gunakan employee ID untuk mencari nama karyawan yang bersangkutan di file Employee
3. gunakan order ID untuk mencari item barang yang sesuai di file Order Detail
4. dan untuk setiap item gunakan product ID untuk mencari nama produk yang sesuai di file Produk. Cara ini memang rumit untuk membuat satu laporan pemesanan dari data di flat file.
Alternatif lain adalah menggabungkan semua data menjadi satu file data. Alternatif ini akan menyederhanakan
pencarian data, tapi penambahan data harus lengkap, artinya kita tidak dapat menambahkan data customer jika customer itu tidak memesan barang.
b. Hierarchical Model
Model ini menyusun record-record dalam suatu hirarki seperti struktur organisasi. Setiap file dari flat file menjadi tipe record atau node dalam hirarki, dan untuk memudahkan disebut record. Record-record terhubung melalui pointer yang berisi alamat record yang terkait. Pointer memberi tahu sistemkomputer dimana record tersebut tersimpan secara fisik, seperti alamat yang mengacu ke suatu
gedung tertentu di dunia nyata.
Setiap pointer membuat hubungan parent-child, yang juga disebut oneto-
many relationship. Satu parent bisa punya banyak child, tapi setiap child memiliki 1 parent. Misal 1 manager memimpin banyak karyawan, tapi 1 karyawan memiliki 1 manager. Model ini menyebabkan masalah dalam kasus Northwind. Satu order tidak hanya punya satu customer, tapi juga punya satu karyawan yang menerima order tersebut. Pada Figure 1-3, Order dan Employee
serta Order Detail dan Product tidak terhubung dengan garis tegas karena tidak ada pointer yang menghubungkan mereka, sekalipun seharusnya berhubungan. Ini akibat aturan yang tegas : 1 childpunya 1 parent.
Figure 1-3. Hierarchical Model Structure for northwind Figure 1-4 menunjukkan isi dari recod yang terpilih dalam model hirarki Nortwind. Record customer ALFKI menunjuk ke order pertama (ID 10643) dan order tersebut memiliki pointer menunjuk ke order
berikutnya (ID 10692).
Masing-masing order menunjuk ke detil ordernya. Karena tidak ada hubungan
dengan file Employee dan Product maka tidak dapat mendapatkan informasi yang berkaitan dengan record pemesanan di 2 file tersebut.
Figures 1-4.Hierarchical model record contents for northwind
c. Relational Model
Model ini berusaha mengatasi masalah pada model sebelumnya yang tidak fleksibel. Model relational database mampu menghubungkan record-record yang dibutuhkan. Model ini dibangun sedemikian rupa sehingga permintaan atau query dapat bekerja dengan sekumpulan data, tidak dengan satu record seperti pada model hierarchical.
Model relational menyajikan data dalam tabel dua dimensi, seperti spreadsheet hanya saja tidak dipresentasikan dalam tabel seperti spreadsheet tetapi menggunakan kombinasi atau joining relational tabel untuk menghasilkan view atau hasil tampilan.
Figure 1-5 memberikan gambaran bagaimana hubungan antar tabel yang diwakili dengan garis antartabel.
Hubungan yang dapat terjadi adalah : one-to-many relationship. Garis tunggal menjelaskan ONE dan garis bercabang menjelaskan MANY. Contoh ONE customer berelasi dengan MANY order dan ONE order berelasi dengan MANY order details. Diagram yang dipakai pada figure tersebut adalah
ERD atau Entity-Relationship Diagram.
Figure 1-5. Relational model structure for Northwind Figure 1-6 memberikan gambaran bagaiman relasi antara 3 tabel: Customer, Order dan Employee saling terhubung sehingga memungkinkan menghasilkan informasi pesanan barang tiap customer
lengkap dengan data karyawan yang menerima pesanan. Figure 1-6 Relational table contents for Northwind
d. Object-Oriented Model
Model ini berusaha menjawab kesulitan RDBMS (Relational Database Management Systems) untuk mengatasi tipe data yang kompleks seperti file citra, file gambar dan file audio-video. Ini semua karena adanya Internet dan WWW yang memungkinkan pengiriman data yang kompleks itu.
Object adalah pengelompokkan logis dari data yang berelasi dan program logis yang mewakili hal nyata di dunia seperti customer, employee, order, product.
Item data seperti : customer ID, customer name disebut varibel di model OO dan disimpan dalam tiap objek. Variabel-variabel hanya bisa diakses melalui method. Sementara istilah method adalah aplikasi program logis yang menggunakan object tertentu dan menyediakan fungsi tertentu sperti check customer credit card limit, update alamat customer.
Figure 1-7 menunjukkan objek Customer sebagai contoh implementasi OO. Pada inti lingkaran terdapat variabel-variabel tentang objek dan kumpulan variabel itu dikelilingi oleh method yang menunjukkan bahwa hanya dengan melalui method saja varibel tersebut dapat diakses. Ini adalah konsep encapsulate, salah satu konsep penting di OO model. Figure 1-7 The Anatomy of an object
Diadaptasi dari :
Oppel, Andy. Databases Demystified: A self-teaching guide. McGraw-Hill. Ca. 2004.
1.PENGENALAN BASIS DATA

Basis data (Database) adalah sekumpulan data yang terintegrasi yang diorganisasi untuk memenuhi kebutuhan pemakai untuk keperluan organisasi. DBMS (Data Base Management System) adalah perangkat lunak yang menangani semua pengaksesan ke data base.
Sistem Basis Data = DBMS + Basis data Struktur File Database:
1. Data adalah satu satuan informasi yang akan diolah, dimana sebelum diolah dikumpulkan di dalam suatu file database. Pengumpulan data dilakukan secara sistematis menurut struktur file database tersebut.
2. RECORD adalah data yang isinya merupakan satu kesatuan seperti Nama, Alamat, Nomor Telepon. Setiap keterangan yang mencakup Nama, Alamat dan Nomor Telepon dinamakan satu record. Dan setiap record diberi nomor urut yang disebut nomor record (Record Number). Ukuran suatu file database ditentukan oleh jumlah record yang tersimpan di dalamnya.
3. FIELD adalah sub bagian dari Record. Dari contoh isi record diatas maka terdiri
dari 3 field, yaitu field Nama, field Alamat dan field Nomor Telepon. Gambar berikut menunjukan sebuah file DataBase dengan ketentuan : Nama File : Data.DBF
Jumlah Record : 5 buah Isi Field : Nama, Alamat, No_Telp Data : Record No.1 Monica Rawasari 12345678 Rec.No 5 Nama : Alamat : No_Telp : Rec.No 4 Nama : Monica Alamat : Raw No_Telp : 1278 Rec.No 3 Nama : Eko P Alamat : Rawasari No_Telp : 123456153 Rec.No 2 Nama : Monica Alamat : No_Telp : 12345678 Rec.No 1 Nama:Monica Alamat : Rawasari No_Telp : 12345678
Perbedaan
File manajemen tradisional File manajemen data base
1. Program Oriented
2. Kaku
3. Kerangkapan data
1. Data Oriented
2. Luwes
3. Tidak terjadi kerangkapan data
Kelemahan
File manajemen tradisional File manajemen data base
1. Timbulnya data rangkap
dan ketidak konsistenan
data
2. Data tidak dapat digunakan
secara bersama-sama
3. Kesukaran dalam
mengakses data
4. Tidak fleksibel
5. Data tidak standart
1. Storage yang dibutuhkan
besar
2. Dibutuhkan tenaga spesialis
3. Software mahal
4. Kerusakan pada data base
dapat mempengaruhi
departemen lain yang terkait
Keuntungan file manajemen data base :
1. Tidak terjadi kerangkapan data
2. Data lebih konsisten
3. Data dapat digunakan bersama-sama
4. Data dapat distandarisasi
5. Keamanan data dapat terjamin
6. Integritas data terpelihara
7. Data independen
Database System
Database Management Sistem(DBMS)
Application
Programs
End Users
Database
Komponen DBMS
Hardware
 Meliputi PC sampai dengan jaringan komputer.
·
 Tempat penyimpanan
· secondary (manegtic disk), I/O device ex :
disk drives), device Controller, I/O Channels, dan lainnya.
 Hardware processor dan main memory, digunakan untuk
·
mendukung saat eksekusi system software database.
Software
 DBMS, operating system, network software (jika diperlukan) dan
·
program aplikasi pendukung lainnya.
Data
 Data pada sebuah system
· database baik itu single-user system
maupun multi-user system harus terintegrasi dan dapat
ddigunakan bersama (Integrated and Shared).
 Digunakan oleh organisasi dan deskripsi dari data disebut
·
schema.
Procedures
 Instrukti dan aturan yang harus disertakan dalam mendesain
·
dan menggunakan database dan DBMS.
People
· DA (Data Administrator), seseorang yang berwenang untuk
membuat keputusan stategis dan kebijakan mengenai data yang
ada
· DBA (DataBase Administrator), menyediakan dukungan teknis
untuk implementasi keputusan tersebut, dan bertanggungjawab
atas keseluruhan kontrol system pada level teknis
· Database Designer (Logical and Physical)
· Application Programmers, bertanggungjawab untuk membuat
aplikasi database dengan menggunakan bahasa pemrograman
yang ada, seperti : C++, Java, dan lainnya.
· End Users, Siapapun yang berinteraksi dengan sistem secara
online melalui workstation/terminal.
Kerugian DBMS
 Rumit (
·Complexity)
Karena penetapan fungsi dari DBMS yang baik, menyebabkan
DBMS menjadi software yang cukup rumit. Seluruh user harus
mengetahui fungsi-fungsi yang ada dengan baik, sehingga dapat
memperoleh manfaatnya.
 Ukuran (
·Size)
Kerumitan dan banyaknya fungsi yang ada menyebabkan DBMS
memerlukan banyak software pendukung yang mengakibatkan
penambahan tempat penyimpanan dan memory.
 Biaya DBMS (
·Cost of DBMS)
 Biaya Tambahan Hardware (
·Additional hardware costs)
 Biaya Konversi (
·Cost of conversion)
 Performance
·
Pada dasarnya DBMS dibuat untuk menyediakan banyak aplikasi,
akibatnya mungkin beberapa aplikasi akan berjalan tidak seperti
biasanya.
 Higher impact of a failure
·
Karena system yang terpusat, jika seluruh user dan aplikasi
terakses dari DBMS maka kerusakan pada bagian manapun dari
sistem, akan menyebabkan operasi terhenti.
Fungsi-fungsi DBMS

1. Data definition
DBMS harus dapat mengolah pendefinisian data
2. Data manipulation
DBMS harus dapat menangani permintaan-permintaan dari
pemakai untuk mengakses data

3. Data security and integrity
DBMS harus dapat memeriksa keamanan dan integriti data yang
didefinisikan oleh DBA

4. Data recovery and concurrency
DBMS harus dapat menangani kegagalan pengaksesan database
yang disebabkan oleh kesalahan system, kerusakan disk dan
sebagainya.
DBMS harus dapat memantau pengaksesan data yang konkuren
yaitu bila satu data diakses secara bersama-sama oleh lebih dari
satu pemakai pada saat bersamaan
5. Data dictionary
Tempat penyimpanan informasi yang menggambarkan data
dalam database. Data dictionary disebut juga metadata (data
mengenai data)
Berisi tentang:
 Nama-nama user yang mempunyai wewenang untuk
·
penggunaan DBMS
 Nama-nama item data
·
 Jenis-jenis dan ukuran item data
·
 Batasan untuk masing-masing item data
·

6. Performance
DBMS harus dapat menangani unjuk kerja dari semua fungsi seefisien
Mungkin

Model Data
Kumpulan konsep-konsep yang terintegrasi untuk menggambarkan
data, relationships antar data, dan batasan-batasan data dalam
organisasi.

 Data Model terdiri dari :
·
 Bagian struktural, berisikan sekumpulan aturan berdasarkan
§
database yang dapat dibuat;
 Bagian manipulasi, mendefinisikan tipe operasi yang boleh
§
dilakukan;
 Aturan-aturan Integritas.
§
· Kegunaan untuk
 Merepresentasikan data kedalam bentuk yang lebih mudah
§
untuk dipahami.
 untuk menetapkan konsistensi dalam memandang,
§
mengorganisir, menginterpretasikan dan memperlakukan
database.
· Jenis-jenis Model data :
 Object-Based Data Models
·
Entity-Relationship, Semantic, Functional, Object-Oriented.
· Record-Based Data Models
Relational Data Model, Network Data Model, Hierarchical Data
Model.
· Physical Data Models
Menerangkan bagaimana data disimpan dalam komputer,
merepresentasikan informasi seperti ; struktur record,
permintaan record, dan jalur akses
· Conceptual Modelling
 Skema konseptual merupakan bagian utama dari system
·
yang menampilkan view seluruh user.
 Merupakan representasi yang akurat dan lengkap dari
·
kebutuhan data pada organisasi.
 Merupakan proses pembentukan suatu model informasi
·
yang digunakan dalam organisasi yang terlepas dari detail
implementasi.
 Hasilnya merupakan model data konseptual.
·
Basis data relasional (relational database) ialah model data yang
berbentuk tabel dua dimensi yang terdiri atas baris dan kolom.
Contoh : Mobil
Nopol Jenis Warna
B 123 RU Sedan Merah
B 8956 PL Truk Hitam
B 1221 Y Mini Van Silver
Keuntungan basis data relasional
1. bentuknya sederhana
2. mudah melakukan berbagai operasi data
Istilah dalam basis data relasional
1. relasi : sebuah tabel yang terdiri dari beberapa kolom dan
beberapa baris
2. atribut/field : kolom pada sebuah relasi
3. tupel/record : baris pada sebuah relasi
4. domain : kumpulan nilai yang valid untuk satu atau lebih atribut
5. degree (derajat) : jumlah atribut dalam sebuah relasi
6. cardinality : jumlah tupelo dalam sebuah relasi
Relational key :
1. Super key
Satu atau kumpulan atribut yang secara unik mengidetifikasi
sebuah tupel didalam relasi.
2. Candidate key
Atribut didalam relasi yang biasanya mempunyai nilai unik.
3. Primary key
Candidate key yang dipilih untuk mengidentifikasikan tupel
secara unik dalam relasi.
4. Alternate key
Candidate key yang tidak terpilih sebagai primary key.
5. Foreign key
Atribut dengan domain yang sama yang menjadi kunci utama
pada sebuah relasi tetapi pada relasi lain atribut tersebut hanya
menjadi atribut biasa.
Relational integrity role :
1. Null
Nilai suatu atribt yang tidak diketahui dan tidak cocok untuk
tupel tersebut.
2. Entity Integrity
Tidak ada satu komponen primary key yang bernilai null.
3. Referential Integrity
Suatu domain dapat dipakai sebagai kunci utama bila merupakan
atribut tunggal pada domain yang bersangkutan.
Contoh penerapan :
MHS
NPM Nama Alamat
12100748 Rino Depok
10296126 Astuti Jakarta
11299577 Rica Depok
11100396 Iin Depok
MKUL
KDMK Mata_Kuliah SKS
KD-011409 Konsep SI 3
KK-045325 Automata 3
KK-045210 Pengantar Basis Data 2
NILAI
NPM KDMK MID FINAL
12100748 KD-011409 90 90
11299577 KK-045325 85 90
11100396 KK-045210 85 90
LINGKUNGAN BASIS DATA
Tingkat eksternal yaitu menerangkan view data base dari sekelompok pemakai. Tingkat konseptual yaitu menerangkan informasi database secara menyeluruh dengan menyembunyikan data secara fisik. Tingkat internal yaitu menerangkan struktur
penyimpanan database secara fisik.
View1
Skema konseptual
Skema Internal
Tingkat Eksternal View 2 View 3
Tingkat Konseptual
Tingkat Internal
Contoh
Tingkat eksternal Tingkat konseptual Tingkat internal Data independen : kapasitas untuk mengubah skema pada satu level sistem basis data tanpa mengubah skema pada level lain.
1. Physical Data Independent, perubahan pada skema internal tidak
mempengaruhi skema lain.
2. Logical Data Independent, perubahan pada skema konseptual
tidak mempengaruhi skema lain.
Mapping (Transformasi), proses pendefinisian informasi dari satu
level ke level lainnya.
 Konseptual /internal mapping, pendefinisian hubungan antara
·
view konseptual dengan database dilevel internal.
 Eksternal /konseptual mapping, pendefinisian hubungan antara
·
view konseptual dengan database dilevel eksternal.
01 PEG_REC
02 Peg.no pic x (6)
02 Dept.no pic x (4)
02 Gaji pic 9 (6)
Pegawai
Nomor Pegawai char 6
Nomor Dept char 4
Gaji num 6
File Pegawai Length = 22
Prefix type = byte (6) Offset = 0
Emp# type = byte (6) Offset = 6
Index empty
Dep# type = byte (4) Offset = 12
Pay type = full word Offset = 16

Tidak ada komentar:

Posting Komentar